Agora RTC Objective-C API Reference  Refactor
IAgoraRtcEngine.h
Go to the documentation of this file.
1 //
2 // Agora Rtc Engine SDK
3 //
4 // Copyright (c) 2018 Agora.io. All rights reserved.
5 //
6 #pragma once
7 
8 #include "AgoraBase.h"
9 #include "AgoraMediaBase.h"
10 #include "IAgoraLog.h"
11 #include "AgoraOptional.h"
12 #include "IAudioDeviceManager.h"
13 #include "IAgoraRhythmPlayer.h"
14 #include "IAgoraMediaEngine.h"
15 #include "IAgoraH265Transcoder.h"
16 
17 namespace agora {
18 namespace rtc {
19 
20 template <typename T>
21 static void SetFrom(Optional<T>* s, const Optional<T>& o) {
22  if (o) {
23  *s = o;
24  }
25 }
26 
27 template <typename T>
28 static void ReplaceBy(Optional<T>* s, const Optional<T>& o) {
29  *s = o;
30 }
31 
32 //class IAudioDeviceManager;
33 
70 };
71 
85 };
86 
105 };
106 
155 };
156 
201 };
202 
227 };
228 
243 };
244 
252 };
253 
254 struct RtcConnection;
255 
259 {
328  unsigned short txPacketLossRate;
341 };
342 
347 {
355  int quality;
411  int mosValue;
420  uint32_t plcCount;
421 
442  unsigned int rxAudioBytes;
443 
445  uid(0),
446  quality(0),
449  audioLossRate(0),
450  numChannels(0),
452  receivedBitrate(0),
453  totalFrozenTime(0),
454  frozenRate(0),
455  mosValue(0),
457  plcCount(0),
458  totalActiveTime(0),
459  publishDuration(0),
460  qoeQuality(0),
462  rxAudioBytes(0) {}
463 };
464 
484  int e2eDelay;
488  int width;
492  int height;
544  int mosValue;
548  unsigned int rxVideoBytes;
549 };
550 
552  struct Region {
558  double x; // [0,1]
561  double y; // [0,1]
565  double width; // [0,1]
567  double height; // [0,1]
571  int zOrder; // optional, [0, 100] //0 (default): bottom most, 100: top most
572 
576  double alpha;
577 
579  renderMode; // RENDER_MODE_HIDDEN: Crop, RENDER_MODE_FIT: Zoom to fit
580 
582  : uid(0),
583  x(0),
584  y(0),
585  width(0),
586  height(0),
587  zOrder(0),
588  alpha(1.0),
589  renderMode(media::base::RENDER_MODE_HIDDEN) {}
590  };
591 
604  const char* backgroundColor; // e.g. "#C0C0C0" in RGB
608  const Region* regions;
614  const char* appData;
618 
620  : canvasWidth(0),
621  canvasHeight(0),
622  backgroundColor(NULL),
623  regions(NULL),
624  regionCount(0),
625  appData(NULL),
626  appDataLength(0) {}
627 };
628 
635  int width;
639  int height;
643  int videoGop;
663 
664  // width / height default set to 0 means pull the stream with its original
665  // resolution
667  : width(0),
668  height(0),
669  videoGop(30),
670  videoFramerate(15),
671  videoBitrate(400),
673  audioBitrate(48),
674  audioChannels(1) {}
675 };
676 
686 };
687 
694  int width;
698  int height;
706  int bitrate;
720  bool owner;
729  const char* injectStreamUrl;
733  const char* publishUrl;
737  const char* rawStreamUrl;
740  const char* extraInfo;
741 
743  : width(640),
744  height(360),
745  framerate(15),
746  bitrate(500),
747  defaultLayout(1),
749  owner(true),
752  injectStreamUrl(NULL),
753  publishUrl(NULL),
754  rawStreamUrl(NULL),
755  extraInfo(NULL) {}
756 };
757 
766 };
767 
780 
782  TCP_PROXY = 2,
784 };
785 
789 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
790 
793  CAMERA_DIRECTION cameraDirection;
794 #else
795 
796  char deviceId[MAX_DEVICE_ID_LENGTH];
797 #endif
798 
799 #if defined(__ANDROID__)
800 
803  char cameraId[MAX_DEVICE_ID_LENGTH];
804 #endif
805 
809 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
810  cameraDirection = CAMERA_REAR;
811 
812 #else
813  memset(deviceId, 0, sizeof(deviceId));
814 #endif
815 
816 #if defined(__ANDROID__)
817  memset(cameraId, 0, sizeof(cameraId));
818 #endif
819  }
820 };
830  bool isCaptureWindow; // true - capture window, false - capture display
834  uint32_t displayId;
839  Rectangle screenRect; //Windows only
857 
859 };
860 
861 #if (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
862 
864 struct SIZE {
867  int width;
870  int height;
871 
872  SIZE() : width(0), height(0) {}
873  SIZE(int ww, int hh) : width(ww), height(hh) {}
874 };
875 #endif
876 
877 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
878 
883 struct ThumbImageBuffer {
887  const char* buffer;
891  unsigned int length;
895  unsigned int width;
899  unsigned int height;
900  ThumbImageBuffer() : buffer(nullptr), length(0), width(0), height(0) {}
901 };
905 enum ScreenCaptureSourceType {
907  ScreenCaptureSourceType_Unknown = -1,
909  ScreenCaptureSourceType_Window = 0,
911  ScreenCaptureSourceType_Screen = 1,
913  ScreenCaptureSourceType_Custom = 2,
914 };
916 struct ScreenCaptureSourceInfo {
920  ScreenCaptureSourceType type;
924  view_t sourceId;
928  const char* sourceName;
932  ThumbImageBuffer thumbImage;
936  ThumbImageBuffer iconImage;
940  const char* processPath;
944  const char* sourceTitle;
950  bool primaryMonitor;
951  bool isOccluded;
955  Rectangle position;
956 #if defined(_WIN32)
957 
960  bool minimizeWindow;
967  view_t sourceDisplayId;
968  ScreenCaptureSourceInfo() : type(ScreenCaptureSourceType_Unknown), sourceId(nullptr), sourceName(nullptr),
969  processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false), minimizeWindow(false), sourceDisplayId((view_t)-2) {}
970 #else
971  ScreenCaptureSourceInfo() : type(ScreenCaptureSourceType_Unknown), sourceId(nullptr), sourceName(nullptr), processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false) {}
972 #endif
973 };
977 class IScreenCaptureSourceList {
978  protected:
979  virtual ~IScreenCaptureSourceList(){};
980 
981  public:
987  virtual unsigned int getCount() = 0;
997  virtual ScreenCaptureSourceInfo getSourceInfo(unsigned int index) = 0;
1004  virtual void release() = 0;
1005 };
1006 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
1007 
1015 
1018 };
1019 
1021  const char* imageUrl;
1022  int fps;
1025 };
1026 
1066 
1067  #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
1068 
1080  #else
1081 
1086  Optional<bool> publishScreenTrack;
1092  Optional<bool> publishSecondaryScreenTrack;
1098  Optional<bool> publishThirdScreenTrack;
1104  Optional<bool> publishFourthScreenTrack;
1105  #endif
1106 
1246 
1249 
1250  void SetAll(const ChannelMediaOptions& change) {
1251 #define SET_FROM(X) SetFrom(&X, change.X)
1252 
1258 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
1261 #else
1262  SET_FROM(publishScreenTrack);
1263  SET_FROM(publishSecondaryScreenTrack);
1264  SET_FROM(publishThirdScreenTrack);
1265  SET_FROM(publishFourthScreenTrack);
1266 #endif
1285  SET_FROM(token);
1291 #undef SET_FROM
1292  }
1293 
1294  bool operator==(const ChannelMediaOptions& o) const {
1295 #define BEGIN_COMPARE() bool b = true
1296 #define ADD_COMPARE(X) b = (b && (X == o.X))
1297 #define END_COMPARE()
1298 
1299  BEGIN_COMPARE();
1305 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
1308 #else
1309  ADD_COMPARE(publishScreenTrack);
1310  ADD_COMPARE(publishSecondaryScreenTrack);
1311  ADD_COMPARE(publishThirdScreenTrack);
1312  ADD_COMPARE(publishFourthScreenTrack);
1313 #endif
1332  ADD_COMPARE(token);
1338  END_COMPARE();
1339 
1340 #undef BEGIN_COMPARE
1341 #undef ADD_COMPARE
1342 #undef END_COMPARE
1343  return b;
1344  }
1345 
1347  if (this != &replace) {
1348 #define REPLACE_BY(X) ReplaceBy(&X, replace.X)
1349 
1355 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
1358 #else
1359  REPLACE_BY(publishScreenTrack);
1360  REPLACE_BY(publishSecondaryScreenTrack);
1361  REPLACE_BY(publishThirdScreenTrack);
1362  REPLACE_BY(publishFourthScreenTrack);
1363 #endif
1382  REPLACE_BY(token);
1388 #undef REPLACE_BY
1389  }
1390  return *this;
1391  }
1392 };
1393 
1416 };
1417 
1421 };
1422 
1432  bool stopAudioMixing;
1438  bool stopAllEffect;
1445 
1446  LeaveChannelOptions() : stopAudioMixing(true), stopAllEffect(true), stopMicrophoneRecording(true) {}
1447 };
1448 
1460  public:
1462 
1463  virtual const char* eventHandlerType() const { return "event_handler"; }
1464 
1474  virtual void onJoinChannelSuccess(const char* channel, uid_t uid, int elapsed) {
1475  (void)channel;
1476  (void)uid;
1477  (void)elapsed;
1478  }
1479 
1490  virtual void onRejoinChannelSuccess(const char* channel, uid_t uid, int elapsed) {
1491  (void)channel;
1492  (void)uid;
1493  (void)elapsed;
1494  }
1495 
1503  virtual void onProxyConnected(const char* channel, uid_t uid, PROXY_TYPE proxyType, const char* localProxyIp, int elapsed) {
1504  (void)channel;
1505  (void)uid;
1506  (void)proxyType;
1507  (void)localProxyIp;
1508  (void)elapsed;
1509  }
1510 
1516  virtual void onError(int err, const char* msg) {
1517  (void)err;
1518  (void)msg;
1519  }
1520 
1536  virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay,
1537  unsigned short lost) __deprecated {
1538  (void)uid;
1539  (void)quality;
1540  (void)delay;
1541  (void)lost;
1542  }
1543 
1549  virtual void onLastmileProbeResult(const LastmileProbeResult& result) {
1550  (void)result;
1551  }
1552 
1579  virtual void onAudioVolumeIndication(const AudioVolumeInfo* speakers, unsigned int speakerNumber,
1580  int totalVolume) {
1581  (void)speakers;
1582  (void)speakerNumber;
1583  (void)totalVolume;
1584  }
1585 
1594  virtual void onLeaveChannel(const RtcStats& stats) { (void)stats; }
1595 
1603  virtual void onRtcStats(const RtcStats& stats) { (void)stats; }
1604 
1618  virtual void onAudioDeviceStateChanged(const char* deviceId, int deviceType, int deviceState) {
1619  (void)deviceId;
1620  (void)deviceType;
1621  (void)deviceState;
1622  }
1623 
1630  virtual void onAudioMixingPositionChanged(int64_t position) {}
1631 
1638  virtual void onAudioMixingFinished() __deprecated {}
1646  virtual void onAudioEffectFinished(int soundId) {}
1647 
1657  virtual void onVideoDeviceStateChanged(const char* deviceId, int deviceType, int deviceState) {
1658  (void)deviceId;
1659  (void)deviceType;
1660  (void)deviceState;
1661  }
1662 
1685  virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality) {
1686  (void)uid;
1687  (void)txQuality;
1688  (void)rxQuality;
1689  }
1690 
1697  virtual void onIntraRequestReceived() {}
1698 
1709  virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo& info) {
1710  (void)info;
1711  }
1712 
1721  (void)info;
1722  }
1723 
1736  virtual void onLastmileQuality(int quality) { (void)quality; }
1737 
1748  virtual void onFirstLocalVideoFrame(VIDEO_SOURCE_TYPE source, int width, int height, int elapsed) {
1749  (void)source;
1750  (void)width;
1751  (void)height;
1752  (void)elapsed;
1753  }
1754 
1765  virtual void onFirstLocalVideoFramePublished(VIDEO_SOURCE_TYPE source, int elapsed) {
1766  (void)source;
1767  (void)elapsed;
1768  }
1769 
1786  virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) __deprecated {
1787  (void)uid;
1788  (void)width;
1789  (void)height;
1790  (void)elapsed;
1791  }
1792 
1801  virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation) {
1802  (void)uid;
1803  (void)width;
1804  (void)height;
1805  (void)rotation;
1806  }
1807 
1835  (void)source;
1836  (void)state;
1837  (void)error;
1838  }
1839 
1851  virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed) {
1852  (void)uid;
1853  (void)state;
1854  (void)reason;
1855  (void)elapsed;
1856  }
1857 
1865  virtual void onFirstRemoteVideoFrame(uid_t userId, int width, int height, int elapsed) {
1866  (void)userId;
1867  (void)width;
1868  (void)height;
1869  (void)elapsed;
1870  }
1871 
1891  virtual void onUserJoined(uid_t uid, int elapsed) {
1892  (void)uid;
1893  (void)elapsed;
1894  }
1895 
1910  virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason) {
1911  (void)uid;
1912  (void)reason;
1913  }
1914 
1927  virtual void onUserMuteAudio(uid_t uid, bool muted) {
1928  (void)uid;
1929  (void)muted;
1930  }
1931 
1946  virtual void onUserMuteVideo(uid_t userId, bool muted) {
1947  (void)userId;
1948  (void)muted;
1949  }
1950 
1963  virtual void onUserEnableVideo(uid_t uid, bool enabled) {
1964  (void)uid;
1965  (void)enabled;
1966  }
1967 
1973  virtual void onUserStateChanged(uid_t uid, uint32_t state) {
1974  (void)uid;
1975  (void)state;
1976  }
1977 
1988  virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) __deprecated {
1989  (void)uid;
1990  (void)enabled;
1991  }
1992 
2000  virtual void onLocalAudioStats(const LocalAudioStats& stats) {
2001  (void)stats;
2002  }
2003 
2011  virtual void onRemoteAudioStats(const RemoteAudioStats& stats) {
2012  (void)stats;
2013  }
2014 
2028  virtual void onLocalVideoStats(VIDEO_SOURCE_TYPE source, const LocalVideoStats& stats) {
2029  (void)source;
2030  (void)stats;
2031  }
2032 
2041  virtual void onRemoteVideoStats(const RemoteVideoStats& stats) {
2042  (void)stats;
2043  }
2049  virtual void onCameraReady() __deprecated {}
2060  virtual void onCameraFocusAreaChanged(int x, int y, int width, int height) {
2061  (void)x;
2062  (void)y;
2063  (void)width;
2064  (void)height;
2065  }
2074  virtual void onCameraExposureAreaChanged(int x, int y, int width, int height) {
2075  (void)x;
2076  (void)y;
2077  (void)width;
2078  (void)height;
2079  }
2080 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
2081 
2111  virtual void onFacePositionChanged(int imageWidth, int imageHeight,
2112  const Rectangle* vecRectangle, const int* vecDistance,
2113  int numFaces) {
2114  (void) imageWidth;
2115  (void) imageHeight;
2116  (void) vecRectangle;
2117  (void) vecDistance;
2118  (void) numFaces;
2119  }
2120 #endif
2121 
2128  virtual void onVideoStopped() __deprecated {}
2129 
2137  virtual void onAudioMixingStateChanged(AUDIO_MIXING_STATE_TYPE state, AUDIO_MIXING_REASON_TYPE reason) {
2138  (void)state;
2139  (void)reason;
2140  }
2141 
2150  virtual void onRhythmPlayerStateChanged(RHYTHM_PLAYER_STATE_TYPE state, RHYTHM_PLAYER_ERROR_TYPE errorCode) {
2151  (void)state;
2152  (void)errorCode;
2153  }
2154 
2163  virtual void onConnectionLost() {}
2164 
2177 
2182 
2194  virtual void onStreamMessage(uid_t userId, int streamId, const char* data, size_t length, uint64_t sentTs) {
2195  (void)userId;
2196  (void)streamId;
2197  (void)data;
2198  (void)length;
2199  (void)sentTs;
2200  }
2201 
2214  virtual void onStreamMessageError(uid_t userId, int streamId, int code, int missed, int cached) {
2215  (void)userId;
2216  (void)streamId;
2217  (void)code;
2218  (void)missed;
2219  (void)cached;
2220  }
2221 
2231  virtual void onRequestToken() {}
2232 
2244  virtual void onTokenPrivilegeWillExpire(const char* token) {
2245  (void)token;
2246  }
2247 
2254  (void)error;
2255  }
2256 
2267  virtual void onFirstLocalAudioFramePublished(int elapsed) {
2268  (void)elapsed;
2269  }
2270 
2278  virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed) __deprecated {
2279  (void)uid;
2280  (void)elapsed;
2281  }
2282 
2299  virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed) __deprecated {
2300  (void)uid;
2301  (void)elapsed;
2302  }
2303 
2319  (void)state;
2320  (void)error;
2321  }
2322 
2339  virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed) {
2340  (void)uid;
2341  (void)state;
2342  (void)reason;
2343  (void)elapsed;
2344  }
2345 
2359  virtual void onActiveSpeaker(uid_t userId) { (void)userId; }
2364  virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result) { (void)result; }
2382  virtual void onSnapshotTaken(uid_t uid, const char* filePath, int width, int height, int errCode) {
2383  (void)uid;
2384  (void)filePath;
2385  (void)width;
2386  (void)height;
2387  (void)errCode;
2388  }
2396  virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions& newRoleOptions) {
2397  (void)oldRole;
2398  (void)newRole;
2399  (void)newRoleOptions;
2400  }
2409  (void)reason;
2410  (void)currentRole;
2411  }
2419  virtual void onAudioDeviceVolumeChanged(MEDIA_DEVICE_TYPE deviceType, int volume, bool muted) {
2420  (void)deviceType;
2421  (void)volume;
2422  (void)muted;
2423  }
2424 
2436  virtual void onRtmpStreamingStateChanged(const char* url, RTMP_STREAM_PUBLISH_STATE state,
2438  (void)url;
2439  (void)state;
2440  (void)errCode;
2441  }
2442 
2448  virtual void onRtmpStreamingEvent(const char* url, RTMP_STREAMING_EVENT eventCode) {
2449  (void)url;
2450  (void)eventCode;
2451  }
2452 
2463  virtual void onTranscodingUpdated() {}
2464 
2480  virtual void onAudioRoutingChanged(int routing) __deprecated { (void)routing; }
2481 
2490  virtual void onAudioRoutingChanged(int deviceType, int routing) {
2491  (void)deviceType;
2492  (void)routing;
2493  }
2525  virtual void onChannelMediaRelayStateChanged(int state, int code) {
2526  (void)state;
2527  (void)code;
2528  }
2529 
2553  virtual void onChannelMediaRelayEvent(int code) __deprecated {
2554  (void)code;
2555  }
2569  virtual void onLocalPublishFallbackToAudioOnly(bool isFallbackOrRecover) {
2570  (void)isFallbackOrRecover;
2571  }
2589  virtual void onRemoteSubscribeFallbackToAudioOnly(uid_t uid, bool isFallbackOrRecover) {
2590  (void)uid;
2591  (void)isFallbackOrRecover;
2592  }
2593 
2608  virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost,
2609  unsigned short rxKBitRate) __deprecated {
2610  (void)uid;
2611  (void)delay;
2612  (void)lost;
2613  (void)rxKBitRate;
2614  }
2615 
2633  virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost,
2634  unsigned short rxKBitRate) __deprecated {
2635  (void)uid;
2636  (void)delay;
2637  (void)lost;
2638  (void)rxKBitRate;
2639  }
2640 
2650  CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason) {
2651  (void)state;
2652  (void)reason;
2653  }
2654 
2661  virtual void onWlAccMessage(WLACC_MESSAGE_REASON reason, WLACC_SUGGEST_ACTION action, const char* wlAccMsg) {
2662  (void)reason;
2663  (void)action;
2664  (void)wlAccMsg;
2665  }
2666 
2672  virtual void onWlAccStats(WlAccStats currentStats, WlAccStats averageStats) {
2673  (void)currentStats;
2674  (void)averageStats;
2675  }
2676 
2686  virtual void onNetworkTypeChanged(NETWORK_TYPE type) {
2687  (void)type;
2688  }
2689 
2697  virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType) {
2698  (void)errorType;
2699  }
2700 
2710  virtual void onPermissionError(PERMISSION_TYPE permissionType) {
2711  (void)permissionType;
2712  }
2713 
2723  virtual void onLocalUserRegistered(uid_t uid, const char* userAccount) {
2724  (void)uid;
2725  (void)userAccount;
2726  }
2727 
2736  virtual void onUserInfoUpdated(uid_t uid, const UserInfo& info) {
2737  (void)uid;
2738  (void)info;
2739  }
2746  virtual void onUploadLogResult(const char* requestId, bool success, UPLOAD_ERROR_REASON reason) {
2747  (void)requestId;
2748  (void)success;
2749  (void)reason;
2750  }
2751 
2761  virtual void onAudioSubscribeStateChanged(const char* channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState) {
2762  (void)channel;
2763  (void)uid;
2764  (void)oldState;
2765  (void)newState;
2766  (void)elapseSinceLastState;
2767  }
2768 
2778  virtual void onVideoSubscribeStateChanged(const char* channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState) {
2779  (void)channel;
2780  (void)uid;
2781  (void)oldState;
2782  (void)newState;
2783  (void)elapseSinceLastState;
2784  }
2785 
2794  virtual void onAudioPublishStateChanged(const char* channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState) {
2795  (void)channel;
2796  (void)oldState;
2797  (void)newState;
2798  (void)elapseSinceLastState;
2799  }
2800 
2810  virtual void onVideoPublishStateChanged(VIDEO_SOURCE_TYPE source, const char* channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState) {
2811  (void)source;
2812  (void)channel;
2813  (void)oldState;
2814  (void)newState;
2815  (void)elapseSinceLastState;
2816  }
2827  virtual void onExtensionEvent(const char* provider, const char* extension, const char* key, const char* value) {
2828  (void)provider;
2829  (void)extension;
2830  (void)key;
2831  (void)value;
2832  }
2841  virtual void onExtensionStarted(const char* provider, const char* extension) {
2842  (void)provider;
2843  (void)extension;
2844  }
2853  virtual void onExtensionStopped(const char* provider, const char* extension) {
2854  (void)provider;
2855  (void)extension;
2856  }
2868  virtual void onExtensionError(const char* provider, const char* extension, int error, const char* message) {
2869  (void)provider;
2870  (void)extension;
2871  (void)error;
2872  (void)message;
2873  }
2880  virtual void onUserAccountUpdated(uid_t uid, const char* userAccount){
2881  (void)uid;
2882  (void)userAccount;
2883  }
2884 
2892  (void)stream;
2893  (void)error;
2894  }
2895 
2904  (void)uid;
2905  (void)currentEvent;
2906  (void)tracingInfo;
2907  }
2908 };
2909 
2914  public:
2916 
2922  virtual int getCount() = 0;
2923 
2933  virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
2934 
2945  virtual int getDevice(int index, char deviceNameUTF8[MAX_DEVICE_ID_LENGTH],
2946  char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
2947 
2951  virtual void release() = 0;
2952 };
2953 
2958  public:
2972 
2983  virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
2984 
2993  virtual int getDevice(char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
2994 
2995 #if defined(_WIN32) || (defined(__linux__) && !defined(__ANDROID__)) || \
2996  (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
2997 
3014  virtual int numberOfCapabilities(const char* deviceIdUTF8) = 0;
3015 
3033  virtual int getCapability(const char* deviceIdUTF8, const uint32_t deviceCapabilityNumber, VideoFormat& capability) = 0;
3034 #endif
3035 
3048  virtual int startDeviceTest(view_t hwnd) = 0;
3049 
3056  virtual int stopDeviceTest() = 0;
3057 
3061  virtual void release() = 0;
3062 };
3063 
3064 
3080  const char* appId;
3086  void* context;
3091 
3095  const char* license;
3096 
3113  unsigned int areaCode;
3114 
3131 
3136 
3145 
3152 
3159 
3161  : eventHandler(NULL), appId(NULL), context(NULL),
3163  license(NULL),
3167 };
3168 
3172 public:
3178  {
3185  };
3190  {
3194  };
3195 
3198  struct Metadata
3199  {
3204  unsigned int uid;
3207  unsigned int size;
3210  unsigned char *buffer;
3214  long long timeStampMs;
3215  };
3216 
3217  virtual ~IMetadataObserver() {}
3218 
3230 
3241  virtual bool onReadyToSendMetadata(Metadata &metadata, VIDEO_SOURCE_TYPE source_type) = 0;
3242 
3250  virtual void onMetadataReceived(const Metadata &metadata) = 0;
3251 };
3252 
3253 // The error codes for media streaming
3254 // GENERATED_JAVA_ENUM_PACKAGE: io.agora.streaming
3256  // No error occurs.
3258  // A general error occurs (no specified reason).
3260  // Audio publication error.
3262  // Video publication error.
3264 
3266  // Already exist stream name.
3268 };
3269 
3270 // The connection state of media streaming
3271 // GENERATED_JAVA_ENUM_PACKAGE: io.agora.streaming
3273 
3275 
3277 
3279 
3281 
3283 };
3284 
3293 
3298 
3302  int fps;
3303 
3308 
3313 };
3314 
3320  public:
3322 
3330  (void)state;
3331  (void)error;
3332  (void)message;
3333  };
3334 
3336  (void)stats;
3337  };
3338 };
3339 
3384 
3387 
3389 #define SET_FROM(X) SetFrom(&X, change.X)
3397 #undef SET_FROM
3398  }
3399 
3401 #define BEGIN_COMPARE() bool b = true
3402 #define ADD_COMPARE(X) b = (b && (X == o.X))
3403 #define END_COMPARE()
3404 
3405  BEGIN_COMPARE();
3413  END_COMPARE();
3414 
3415 #undef BEGIN_COMPARE
3416 #undef ADD_COMPARE
3417 #undef END_COMPARE
3418  return b;
3419  }
3420 
3422  if (this != &replace) {
3423 #define REPLACE_BY(X) ReplaceBy(&X, replace.X)
3424 
3432 #undef REPLACE_BY
3433  }
3434  return *this;
3435  }
3436 };
3437 
3446 
3453 
3465  const char* channelId;
3466 
3471 
3474  remoteUid(0),
3475  channelId(NULL),
3476  localUid(0) {}
3477 };
3478 
3479 class IMediaPlayer;
3480 class IMediaRecorder;
3481 
3490  public:
3515  virtual void release(bool sync = false) = 0;
3516 
3533  virtual int initialize(const RtcEngineContext& context) = 0;
3534 
3544  virtual int queryInterface(INTERFACE_ID_TYPE iid, void** inter) = 0;
3545 
3546 
3552  virtual const char* getVersion(int* build) = 0;
3553 
3559  virtual const char* getErrorDescription(int code) = 0;
3560 
3570  virtual int queryCodecCapability(CodecCapInfo* codecInfo, int& size) = 0;
3571 
3581  virtual int queryDeviceScore() = 0;
3582 
3621  virtual int preloadChannel(const char* token, const char* channelId, uid_t uid) = 0;
3622 
3663  virtual int preloadChannel(const char* token, const char* channelId, const char* userAccount) = 0;
3664 
3684  virtual int updatePreloadChannelToken(const char* token) = 0;
3685 
3745  virtual int joinChannel(const char* token, const char* channelId, const char* info,
3746  uid_t uid) = 0;
3747 
3815  virtual int joinChannel(const char* token, const char* channelId, uid_t uid,
3816  const ChannelMediaOptions& options) = 0;
3817 
3826  virtual int updateChannelMediaOptions(const ChannelMediaOptions& options) = 0;
3827 
3845  virtual int leaveChannel() = 0;
3846 
3866  virtual int leaveChannel(const LeaveChannelOptions& options) = 0;
3867 
3884  virtual int renewToken(const char* token) = 0;
3885 
3904  virtual int setChannelProfile(CHANNEL_PROFILE_TYPE profile) = 0;
3905 
3929  virtual int setClientRole(CLIENT_ROLE_TYPE role) = 0;
3930 
3952  virtual int setClientRole(CLIENT_ROLE_TYPE role, const ClientRoleOptions& options) = 0;
3953 
3973  virtual int startEchoTest() = 0;
3974 
3991  virtual int startEchoTest(int intervalInSeconds) = 0;
3992 
4001  virtual int startEchoTest(const EchoTestConfiguration& config) = 0;
4002 
4009  virtual int stopEchoTest() = 0;
4010 
4011 #if defined(__APPLE__) && TARGET_OS_IOS
4012 
4021  virtual int enableMultiCamera(bool enabled, const CameraCapturerConfiguration& config) = 0;
4022 #endif
4023 
4038  virtual int enableVideo() = 0;
4039 
4049  virtual int disableVideo() = 0;
4050 
4062  virtual int startPreview() = 0;
4063 
4071  virtual int startPreview(VIDEO_SOURCE_TYPE sourceType) = 0;
4072 
4080  virtual int stopPreview() = 0;
4081 
4089  virtual int stopPreview(VIDEO_SOURCE_TYPE sourceType) = 0;
4090 
4124  virtual int startLastmileProbeTest(const LastmileProbeConfig& config) = 0;
4125 
4127  virtual int stopLastmileProbeTest() = 0;
4128 
4146 
4156  virtual int setBeautyEffectOptions(bool enabled, const BeautyOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
4238 
4272 
4295  virtual int setupRemoteVideo(const VideoCanvas& canvas) = 0;
4296 
4313  virtual int setupLocalVideo(const VideoCanvas& canvas) = 0;
4314 
4333  virtual int setVideoScenario(VIDEO_APPLICATION_SCENARIO_TYPE scenarioType) = 0;
4334 
4348  virtual int enableAudio() = 0;
4349 
4361  virtual int disableAudio() = 0;
4362 
4385 
4401  virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile) = 0;
4410  virtual int setAudioScenario(AUDIO_SCENARIO_TYPE scenario) = 0;
4433  virtual int enableLocalAudio(bool enabled) = 0;
4434 
4460  virtual int muteLocalAudioStream(bool mute) = 0;
4461 
4503  virtual int muteAllRemoteAudioStreams(bool mute) = 0;
4504 
4527 
4544  virtual int muteRemoteAudioStream(uid_t uid, bool mute) = 0;
4545 
4557  virtual int muteLocalVideoStream(bool mute) = 0;
4558 
4583  virtual int enableLocalVideo(bool enabled) = 0;
4584 
4624  virtual int muteAllRemoteVideoStreams(bool mute) = 0;
4625 
4648 
4665  virtual int muteRemoteVideoStream(uid_t uid, bool mute) = 0;
4666 
4684  virtual int setRemoteVideoStreamType(uid_t uid, VIDEO_STREAM_TYPE streamType) = 0;
4685 
4697 
4708 
4723  virtual int setSubscribeAudioBlocklist(uid_t* uidList, int uidNumber) = 0;
4724 
4741  virtual int setSubscribeAudioAllowlist(uid_t* uidList, int uidNumber) = 0;
4742 
4757  virtual int setSubscribeVideoBlocklist(uid_t* uidList, int uidNumber) = 0;
4758 
4775  virtual int setSubscribeVideoAllowlist(uid_t* uidList, int uidNumber) = 0;
4776 
4803  virtual int enableAudioVolumeIndication(int interval, int smooth, bool reportVad) = 0;
4804 
4825  virtual int startAudioRecording(const char* filePath,
4826  AUDIO_RECORDING_QUALITY_TYPE quality) = 0;
4848  virtual int startAudioRecording(const char* filePath,
4849  int sampleRate,
4850  AUDIO_RECORDING_QUALITY_TYPE quality) = 0;
4851 
4870  virtual int startAudioRecording(const AudioRecordingConfiguration& config) = 0;
4871 
4878 
4887  virtual int stopAudioRecording() = 0;
4888 
4900 
4912  virtual int destroyMediaPlayer(agora_refptr<IMediaPlayer> media_player) = 0;
4913 
4925 
4935  virtual int destroyMediaRecorder(agora_refptr<IMediaRecorder> mediaRecorder) = 0;
4936 
4978  virtual int startAudioMixing(const char* filePath, bool loopback, int cycle) = 0;
4979 
5023  virtual int startAudioMixing(const char* filePath, bool loopback, int cycle, int startPos) = 0;
5024 
5033  virtual int stopAudioMixing() = 0;
5034 
5043  virtual int pauseAudioMixing() = 0;
5044 
5053  virtual int resumeAudioMixing() = 0;
5054 
5063  virtual int selectAudioTrack(int index) = 0;
5072  virtual int getAudioTrackCount() = 0;
5073 
5088  virtual int adjustAudioMixingVolume(int volume) = 0;
5089 
5097  virtual int adjustAudioMixingPublishVolume(int volume) = 0;
5098 
5106  virtual int getAudioMixingPublishVolume() = 0;
5107 
5115  virtual int adjustAudioMixingPlayoutVolume(int volume) = 0;
5116 
5124  virtual int getAudioMixingPlayoutVolume() = 0;
5125 
5134  virtual int getAudioMixingDuration() = 0;
5135 
5145  virtual int getAudioMixingCurrentPosition() = 0;
5146 
5156  virtual int setAudioMixingPosition(int pos /*in ms*/) = 0;
5157 
5168  virtual int setAudioMixingDualMonoMode(media::AUDIO_MIXING_DUAL_MONO_MODE mode) = 0;
5169 
5186  virtual int setAudioMixingPitch(int pitch) = 0;
5194  virtual int getEffectsVolume() = 0;
5204  virtual int setEffectsVolume(int volume) = 0;
5228  virtual int preloadEffect(int soundId, const char* filePath, int startPos = 0) = 0;
5270  virtual int playEffect(int soundId, const char* filePath, int loopCount, double pitch, double pan, int gain, bool publish = false, int startPos = 0) = 0;
5301  virtual int playAllEffects(int loopCount, double pitch, double pan, int gain, bool publish = false) = 0;
5302 
5312  virtual int getVolumeOfEffect(int soundId) = 0;
5313 
5324  virtual int setVolumeOfEffect(int soundId, int volume) = 0;
5333  virtual int pauseEffect(int soundId) = 0;
5340  virtual int pauseAllEffects() = 0;
5349  virtual int resumeEffect(int soundId) = 0;
5356  virtual int resumeAllEffects() = 0;
5365  virtual int stopEffect(int soundId) = 0;
5372  virtual int stopAllEffects() = 0;
5381  virtual int unloadEffect(int soundId) = 0;
5388  virtual int unloadAllEffects() = 0;
5407  virtual int getEffectDuration(const char* filePath) = 0;
5424  virtual int setEffectPosition(int soundId, int pos) = 0;
5439  virtual int getEffectCurrentPosition(int soundId) = 0;
5452  virtual int enableSoundPositionIndication(bool enabled) = 0;
5473  virtual int setRemoteVoicePosition(uid_t uid, double pan, double gain) = 0;
5474 
5484  virtual int enableSpatialAudio(bool enabled) = 0;
5485 
5495  virtual int setRemoteUserSpatialAudioParams(uid_t uid, const agora::SpatialAudioParams& params) = 0;
5496 
5535 
5573  virtual int setAudioEffectPreset(AUDIO_EFFECT_PRESET preset) = 0;
5574 
5612 
5688  virtual int setAudioEffectParameters(AUDIO_EFFECT_PRESET preset, int param1, int param2) = 0;
5689 
5733  int param1, int param2) = 0;
5734 
5748  int param1, int param2) = 0;
5749 
5760  virtual int setLocalVoicePitch(double pitch) = 0;
5761 
5772  virtual int setLocalVoiceFormant(double formantRatio) = 0;
5773 
5785  virtual int setLocalVoiceEqualization(AUDIO_EQUALIZATION_BAND_FREQUENCY bandFrequency,
5786  int bandGain) = 0;
5787 
5796  virtual int setLocalVoiceReverb(AUDIO_REVERB_TYPE reverbKey, int value) = 0;
5818  virtual int setHeadphoneEQParameters(int lowGain, int highGain) = 0;
5819 
5835  virtual int setLogFile(const char* filePath) = 0;
5836 
5859  virtual int setLogFilter(unsigned int filter) = 0;
5860 
5877  virtual int setLogLevel(commons::LOG_LEVEL level) = 0;
5878 
5893  virtual int setLogFileSize(unsigned int fileSizeInKBytes) = 0;
5894 
5903  virtual int uploadLogFile(agora::util::AString& requestId) = 0;
5904 
5945  VIDEO_MIRROR_MODE_TYPE mirrorMode) = 0;
5946 
5947  // The following APIs are either deprecated and going to deleted.
5948 
5967 
5980 
5997  virtual int enableDualStreamMode(bool enabled) __deprecated = 0;
5998 
6017  virtual int enableDualStreamMode(bool enabled, const SimulcastStreamConfig& streamConfig) __deprecated = 0;
6018 
6019 
6034 
6049  const SimulcastStreamConfig& streamConfig) = 0;
6050 
6065  virtual int enableCustomAudioLocalPlayback(track_id_t trackId, bool enabled) = 0;
6066 
6085  virtual int setRecordingAudioFrameParameters(int sampleRate, int channel,
6087  int samplesPerCall) = 0;
6088 
6108  virtual int setPlaybackAudioFrameParameters(int sampleRate, int channel,
6110  int samplesPerCall) = 0;
6111 
6127  virtual int setMixedAudioFrameParameters(int sampleRate, int channel, int samplesPerCall) = 0;
6128 
6148  virtual int setEarMonitoringAudioFrameParameters(int sampleRate, int channel,
6150  int samplesPerCall) = 0;
6151 
6167  virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel) = 0;
6168 
6179  virtual int enableAudioSpectrumMonitor(int intervalInMS = 100) = 0;
6187  virtual int disableAudioSpectrumMonitor() = 0;
6188 
6214 
6228  virtual int adjustRecordingSignalVolume(int volume) = 0;
6229 
6241  virtual int muteRecordingSignal(bool mute) = 0;
6242 
6256  virtual int adjustPlaybackSignalVolume(int volume) = 0;
6257 
6258  /*
6259  * Adjust the playback volume of the user specified by uid.
6260  *
6261  * You can call this method to adjust the playback volume of the user specified by uid
6262  * in call. If you want to adjust playback volume of the multi user, you can call this
6263  * this method multi times.
6264  *
6265  * @note
6266  * Please call this method after join channel.
6267  * This method adjust the playback volume of specified user.
6268  *
6269  * @param uid Remote user ID.
6270  * @param volume The playback volume of the specified remote user. The value ranges between 0 and 400, including the following:
6271  * 0: Mute.
6272  * 100: (Default) Original volume.
6273  * 400: Four times the original volume with signal-clipping protection.
6274  * @return
6275  * - 0: Success.
6276  * - < 0: Failure.
6277  */
6278  virtual int adjustUserPlaybackSignalVolume(unsigned int uid, int volume) = 0;
6279 
6302 
6319 
6333  virtual int setHighPriorityUserList(uid_t* uidList, int uidNum, STREAM_FALLBACK_OPTIONS option) = 0;
6334 
6353  virtual int enableLoopbackRecording(bool enabled, const char* deviceName = NULL) = 0;
6354 
6355 
6368  virtual int adjustLoopbackSignalVolume(int volume) = 0;
6369 
6376  virtual int getLoopbackRecordingVolume() = 0;
6377 
6389  virtual int enableInEarMonitoring(bool enabled, int includeAudioFilters) = 0;
6390 
6401  virtual int setInEarMonitoringVolume(int volume) = 0;
6402 
6403 #if defined (_WIN32) || defined(__linux__) || defined(__ANDROID__)
6404  virtual int loadExtensionProvider(const char* path, bool unload_after_use = false) = 0;
6405 #endif
6406 
6419  const char* provider, const char* key, const char* value) = 0;
6420 
6433  virtual int registerExtension(const char* provider, const char* extension,
6435 
6456  virtual int enableExtension(
6457  const char* provider, const char* extension, bool enable=true, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
6458 
6479  virtual int enableExtension(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, bool enable = true) = 0;
6480 
6494  const char* provider, const char* extension,
6495  const char* key, const char* value, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
6496 
6511  const char* provider, const char* extension,
6512  const char* key, char* value, int buf_len, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
6513 
6527  virtual int setExtensionProperty(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, const char* key, const char* value) = 0;
6528 
6543  virtual int getExtensionProperty(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, const char* key, char* value, int buf_len) = 0;
6544 
6556  virtual int setCameraCapturerConfiguration(const CameraCapturerConfiguration& config) = 0;
6557 
6558 
6567 
6576 
6585  virtual int destroyCustomVideoTrack(video_track_id_t video_track_id) = 0;
6586 
6595  virtual int destroyCustomEncodedVideoTrack(video_track_id_t video_track_id) = 0;
6596 
6597 
6598 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
6599 
6608  virtual int switchCamera() = 0;
6609 
6617  virtual bool isCameraZoomSupported() = 0;
6618 
6626  virtual bool isCameraFaceDetectSupported() = 0;
6627 
6635  virtual bool isCameraTorchSupported() = 0;
6636 
6644  virtual bool isCameraFocusSupported() = 0;
6645 
6653  virtual bool isCameraAutoFocusFaceModeSupported() = 0;
6654 
6664  virtual int setCameraZoomFactor(float factor) = 0;
6665 
6674  virtual int enableFaceDetection(bool enabled) = 0;
6675 
6680  virtual float getCameraMaxZoomFactor() = 0;
6681 
6691  virtual int setCameraFocusPositionInPreview(float positionX, float positionY) = 0;
6692 
6700  virtual int setCameraTorchOn(bool isOn) = 0;
6701 
6709  virtual int setCameraAutoFocusFaceModeEnabled(bool enabled) = 0;
6710 
6722  virtual bool isCameraExposurePositionSupported() = 0;
6723 
6739  virtual int setCameraExposurePosition(float positionXinView, float positionYinView) = 0;
6740 
6753  virtual bool isCameraExposureSupported() = 0;
6754 
6765  virtual int setCameraExposureFactor(float factor) = 0;
6766 
6767 #if defined(__APPLE__)
6768 
6775  virtual bool isCameraAutoExposureFaceModeSupported() = 0;
6776 
6777 
6785  virtual int setCameraAutoExposureFaceModeEnabled(bool enabled) = 0;
6786 
6792  virtual int setCameraStabilizationMode(CAMERA_STABILIZATION_MODE mode) = 0;
6793 #endif
6794 
6828  virtual int setDefaultAudioRouteToSpeakerphone(bool defaultToSpeaker) = 0;
6829 
6856  virtual int setEnableSpeakerphone(bool speakerOn) = 0;
6857 
6865  virtual bool isSpeakerphoneEnabled() = 0;
6866 
6874  virtual int setRouteInCommunicationMode(int route) = 0;
6875 
6876 #endif // __ANDROID__ || (__APPLE__ && TARGET_OS_IOS)
6877 
6878 #if defined(__APPLE__)
6879 
6886  virtual bool isSupportPortraitCenterStage() = 0;
6887 
6896  virtual int enablePortraitCenterStage(bool enabled) = 0;
6897 #endif
6898 
6899 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
6900 
6910  virtual IScreenCaptureSourceList* getScreenCaptureSources(const SIZE& thumbSize, const SIZE& iconSize, const bool includeScreen) = 0;
6911 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
6912 #if (defined(__APPLE__) && TARGET_OS_IOS)
6913 
6937  virtual int setAudioSessionOperationRestriction(AUDIO_SESSION_OPERATION_RESTRICTION restriction) = 0;
6938 #endif // __APPLE__ && TARGET_OS_IOS
6939 
6940 #if defined(_WIN32) || (defined(__APPLE__) && !TARGET_OS_IPHONE && TARGET_OS_MAC)
6941 
6962  virtual int startScreenCaptureByDisplayId(uint32_t displayId, const Rectangle& regionRect,
6963  const ScreenCaptureParameters& captureParams) = 0;
6964 
6965 #endif // __APPLE__ && TARGET_OS_MAC && !TARGET_OS_IPHONE
6966 
6967 #if defined(_WIN32)
6968 
6992  virtual int startScreenCaptureByScreenRect(const Rectangle& screenRect,
6993  const Rectangle& regionRect,
6994  const ScreenCaptureParameters& captureParams) __deprecated = 0;
6995 
6996 #endif // _WIN32
6997 
6998 #if defined(__ANDROID__)
6999 
7005  virtual int getAudioDeviceInfo(DeviceInfo& deviceInfo) = 0;
7006 
7007 #endif // __ANDROID__
7008 
7009 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
7010 
7028  virtual int startScreenCaptureByWindowId(view_t windowId, const Rectangle& regionRect,
7029  const ScreenCaptureParameters& captureParams) = 0;
7030 
7046  virtual int setScreenCaptureContentHint(VIDEO_CONTENT_HINT contentHint) = 0;
7047 
7064  virtual int updateScreenCaptureRegion(const Rectangle& regionRect) = 0;
7065 
7079  virtual int updateScreenCaptureParameters(const ScreenCaptureParameters& captureParams) = 0;
7080 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
7081 
7082 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
7083 
7092  virtual int startScreenCapture(const ScreenCaptureParameters2& captureParams) = 0;
7093 
7103  virtual int updateScreenCapture(const ScreenCaptureParameters2& captureParams) = 0;
7104 
7116  virtual int queryScreenCaptureCapability() = 0;
7117 #endif
7118 
7119 #if defined(_WIN32) || defined(__APPLE__) || defined(__ANDROID__)
7120 
7136  virtual int setScreenCaptureScenario(SCREEN_SCENARIO_TYPE screenScenario) = 0;
7137 
7145  virtual int stopScreenCapture() = 0;
7146 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC) || __ANDROID__
7147 
7164  virtual int getCallId(agora::util::AString& callId) = 0;
7165 
7180  virtual int rate(const char* callId, int rating,
7181  const char* description) = 0; // 0~10
7182 
7196  virtual int complain(const char* callId, const char* description) = 0;
7197 
7218  virtual int startRtmpStreamWithoutTranscoding(const char* url) = 0;
7219 
7241  virtual int startRtmpStreamWithTranscoding(const char* url, const LiveTranscoding& transcoding) = 0;
7242 
7252  virtual int updateRtmpTranscoding(const LiveTranscoding& transcoding) = 0;
7271  virtual int stopRtmpStream(const char* url) = 0;
7272 
7273 
7276  virtual int stopLocalVideoTranscoder() = 0;
7286  virtual int startCameraCapture(VIDEO_SOURCE_TYPE sourceType, const CameraCapturerConfiguration& config) = 0;
7287 
7298  virtual int stopCameraCapture(VIDEO_SOURCE_TYPE sourceType) = 0;
7310  virtual int setCameraDeviceOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation) = 0;
7323 
7333  virtual int startScreenCapture(VIDEO_SOURCE_TYPE sourceType, const ScreenCaptureConfiguration& config) = 0;
7334 
7345  virtual int stopScreenCapture(VIDEO_SOURCE_TYPE sourceType) = 0;
7346 
7351  virtual CONNECTION_STATE_TYPE getConnectionState() = 0;
7352 
7353  // The following APIs are not implemented yet.
7354  virtual bool registerEventHandler(IRtcEngineEventHandler* eventHandler) = 0;
7355  virtual bool unregisterEventHandler(IRtcEngineEventHandler* eventHandler) = 0;
7356  virtual int setRemoteUserPriority(uid_t uid, PRIORITY_TYPE userPriority) = 0;
7357 
7369  virtual int registerPacketObserver(IPacketObserver* observer) = 0;
7370 
7393  virtual int setEncryptionMode(const char* encryptionMode) __deprecated = 0;
7394 
7411  virtual int setEncryptionSecret(const char* secret) __deprecated = 0;
7412 
7434  virtual int enableEncryption(bool enabled, const EncryptionConfig& config) = 0;
7435 
7467  virtual int createDataStream(int* streamId, bool reliable, bool ordered) = 0;
7468 
7478  virtual int createDataStream(int* streamId, DataStreamConfig& config) = 0;
7479 
7510  virtual int sendStreamMessage(int streamId, const char* data, size_t length) = 0;
7511 
7533  virtual int addVideoWatermark(const RtcImage& watermark) = 0;
7534 
7560  virtual int addVideoWatermark(const char* watermarkUrl, const WatermarkOptions& options) = 0;
7561 
7569  virtual int clearVideoWatermarks() = 0;
7570 
7571  // The following APIs are either deprecated and going to deleted.
7572 
7581  virtual int pauseAudio() __deprecated = 0;
7590  virtual int resumeAudio() __deprecated = 0;
7591 
7609  virtual int enableWebSdkInteroperability(bool enabled) __deprecated = 0;
7610 
7621  const char* id, const char* category, const char* event, const char* label, int value) = 0;
7622 
7644  virtual int registerMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type) = 0;
7645 
7654  virtual int unregisterMediaMetadataObserver(IMetadataObserver* observer, IMetadataObserver::METADATA_TYPE type) = 0;
7655 
7665  virtual int startAudioFrameDump(const char* channel_id, uid_t user_id, const char* location,
7666  const char* uuid, const char* passwd, long duration_ms, bool auto_upload) = 0;
7670  virtual int stopAudioFrameDump(const char* channel_id, uid_t user_id, const char* location) = 0;
7671 
7687  virtual int setAINSMode(bool enabled, AUDIO_AINS_MODE mode) = 0;
7688 
7720  virtual int registerLocalUserAccount(const char* appId, const char* userAccount) = 0;
7721 
7752  virtual int joinChannelWithUserAccount(const char* token, const char* channelId,
7753  const char* userAccount) = 0;
7754 
7786  virtual int joinChannelWithUserAccount(const char* token, const char* channelId,
7787  const char* userAccount, const ChannelMediaOptions& options) = 0;
7788 
7821  virtual int joinChannelWithUserAccountEx(const char* token, const char* channelId,
7822  const char* userAccount, const ChannelMediaOptions& options,
7823  IRtcEngineEventHandler* eventHandler) = 0;
7824 
7842  virtual int getUserInfoByUserAccount(const char* userAccount, rtc::UserInfo* userInfo) = 0;
7843 
7861  virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo* userInfo) = 0;
7904 
7951 
7981 
8010  virtual int stopChannelMediaRelay() = 0;
8011 
8012 
8022  virtual int pauseAllChannelMediaRelay() = 0;
8023 
8033  virtual int resumeAllChannelMediaRelay() = 0;
8034 
8048 
8064 
8079  const char* publishUrl, const DirectCdnStreamingMediaOptions& options) = 0;
8080 
8090  virtual int stopDirectCdnStreaming() = 0;
8091 
8104 
8115  virtual int startRhythmPlayer(const char* sound1, const char* sound2, const AgoraRhythmPlayerConfig& config) = 0;
8116 
8123  virtual int stopRhythmPlayer() = 0;
8124 
8133  virtual int configRhythmPlayer(const AgoraRhythmPlayerConfig& config) = 0;
8163  virtual int takeSnapshot(uid_t uid, const char* filePath) = 0;
8173  virtual int enableContentInspect(bool enabled, const media::ContentInspectConfig &config) = 0;
8174  /*
8175  * Adjust the custom audio publish volume by track id.
8176  * @param trackId custom audio track id.
8177  * @param volume The volume, range is [0,100]:
8178  * 0: mute, 100: The original volume
8179  * @return
8180  * - 0: Success.
8181  * - < 0: Failure.
8182  */
8183  virtual int adjustCustomAudioPublishVolume(track_id_t trackId, int volume) = 0;
8184 
8185  /*
8186  * Adjust the custom audio playout volume by track id.
8187  * @param trackId custom audio track id.
8188  * @param volume The volume, range is [0,100]:
8189  * 0: mute, 100: The original volume
8190  * @return
8191  * - 0: Success.
8192  * - < 0: Failure.
8193  */
8194  virtual int adjustCustomAudioPlayoutVolume(track_id_t trackId, int volume) = 0;
8195 
8225  virtual int setCloudProxy(CLOUD_PROXY_TYPE proxyType) = 0;
8234  virtual int setLocalAccessPoint(const LocalAccessPointConfiguration& config) = 0;
8235 
8243  virtual int setAdvancedAudioOptions(AdvancedAudioOptions &options, int sourceType = 0) = 0;
8244 
8255  virtual int setAVSyncSource(const char* channelId, uid_t uid) = 0;
8256 
8263  virtual int enableVideoImageSource(bool enable, const ImageTrackOptions& options) = 0;
8264 
8265  /*
8266  * Get monotonic time in ms which can be used by capture time,
8267  * typical scenario is as follows:
8268  *
8269  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8270  * | // custom audio/video base capture time, e.g. the first audio/video capture time. |
8271  * | int64_t custom_capture_time_base; |
8272  * | |
8273  * | int64_t agora_monotonic_time = getCurrentMonotonicTimeInMs(); |
8274  * | |
8275  * | // offset is fixed once calculated in the begining. |
8276  * | const int64_t offset = agora_monotonic_time - custom_capture_time_base; |
8277  * | |
8278  * | // realtime_custom_audio/video_capture_time is the origin capture time that customer provided.|
8279  * | // actual_audio/video_capture_time is the actual capture time transfered to sdk. |
8280  * | int64_t actual_audio_capture_time = realtime_custom_audio_capture_time + offset; |
8281  * | int64_t actual_video_capture_time = realtime_custom_video_capture_time + offset; |
8282  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8283  *
8284  * @return
8285  * - >= 0: Success.
8286  * - < 0: Failure.
8287  */
8288  virtual int64_t getCurrentMonotonicTimeInMs() = 0;
8289 
8305  virtual int enableWirelessAccelerate(bool enabled) = 0;
8306 
8321  virtual int getNetworkType() = 0;
8322 
8331  virtual int setParameters(const char* parameters) = 0;
8332 
8347  virtual int startMediaRenderingTracing() = 0;
8348 
8362  virtual int enableInstantMediaRendering() = 0;
8363 
8367  virtual uint64_t getNtpWallTimeInMs() = 0;
8368 
8377  virtual bool isFeatureAvailableOnDevice(FeatureType type) = 0;
8378 
8379 };
8380 
8381 class AAudioDeviceManager : public agora::util::AutoPtr<IAudioDeviceManager> {
8382  public:
8385  }
8386 };
8387 
8388 class AVideoDeviceManager : public agora::util::AutoPtr<IVideoDeviceManager> {
8389  public:
8392  }
8393 };
8394 
8395 // The following types are either deprecated or not implmented yet.
8403 };
8404 
8422 };
8423 
8424 enum VIDEO_PROFILE_TYPE { // res fps
8426  VIDEO_PROFILE_LANDSCAPE_120P = 0, // 160x120 15
8430  VIDEO_PROFILE_LANDSCAPE_180P = 10, // 320x180 15
8436  VIDEO_PROFILE_LANDSCAPE_240P = 20, // 320x240 15
8442  VIDEO_PROFILE_LANDSCAPE_360P = 30, // 640x360 15
8458  VIDEO_PROFILE_LANDSCAPE_360P_11 = 100, // 640x360 24
8460  VIDEO_PROFILE_LANDSCAPE_480P = 40, // 640x480 15
8474  VIDEO_PROFILE_LANDSCAPE_720P = 50, // 1280x720 15
8476  VIDEO_PROFILE_LANDSCAPE_720P_3 = 52, // 1280x720 30
8482  VIDEO_PROFILE_LANDSCAPE_1080P = 60, // 1920x1080 15
8484  VIDEO_PROFILE_LANDSCAPE_1080P_3 = 62, // 1920x1080 30
8486  VIDEO_PROFILE_LANDSCAPE_1080P_5 = 64, // 1920x1080 60
8488  VIDEO_PROFILE_LANDSCAPE_1440P = 66, // 2560x1440 30
8490  VIDEO_PROFILE_LANDSCAPE_1440P_2 = 67, // 2560x1440 60
8492  VIDEO_PROFILE_LANDSCAPE_4K = 70, // 3840x2160 30
8494  VIDEO_PROFILE_LANDSCAPE_4K_3 = 72, // 3840x2160 60
8496  VIDEO_PROFILE_PORTRAIT_120P = 1000, // 120x160 15
8498  VIDEO_PROFILE_PORTRAIT_120P_3 = 1002, // 120x120 15
8500  VIDEO_PROFILE_PORTRAIT_180P = 1010, // 180x320 15
8502  VIDEO_PROFILE_PORTRAIT_180P_3 = 1012, // 180x180 15
8504  VIDEO_PROFILE_PORTRAIT_180P_4 = 1013, // 180x240 15
8506  VIDEO_PROFILE_PORTRAIT_240P = 1020, // 240x320 15
8508  VIDEO_PROFILE_PORTRAIT_240P_3 = 1022, // 240x240 15
8510  VIDEO_PROFILE_PORTRAIT_240P_4 = 1023, // 240x424 15
8512  VIDEO_PROFILE_PORTRAIT_360P = 1030, // 360x640 15
8514  VIDEO_PROFILE_PORTRAIT_360P_3 = 1032, // 360x360 15
8516  VIDEO_PROFILE_PORTRAIT_360P_4 = 1033, // 360x640 30
8518  VIDEO_PROFILE_PORTRAIT_360P_6 = 1035, // 360x360 30
8520  VIDEO_PROFILE_PORTRAIT_360P_7 = 1036, // 360x480 15
8522  VIDEO_PROFILE_PORTRAIT_360P_8 = 1037, // 360x480 30
8524  VIDEO_PROFILE_PORTRAIT_360P_9 = 1038, // 360x640 15
8526  VIDEO_PROFILE_PORTRAIT_360P_10 = 1039, // 360x640 24
8528  VIDEO_PROFILE_PORTRAIT_360P_11 = 1100, // 360x640 24
8530  VIDEO_PROFILE_PORTRAIT_480P = 1040, // 480x640 15
8532  VIDEO_PROFILE_PORTRAIT_480P_3 = 1042, // 480x480 15
8534  VIDEO_PROFILE_PORTRAIT_480P_4 = 1043, // 480x640 30
8536  VIDEO_PROFILE_PORTRAIT_480P_6 = 1045, // 480x480 30
8538  VIDEO_PROFILE_PORTRAIT_480P_8 = 1047, // 480x848 15
8540  VIDEO_PROFILE_PORTRAIT_480P_9 = 1048, // 480x848 30
8542  VIDEO_PROFILE_PORTRAIT_480P_10 = 1049, // 480x640 10
8544  VIDEO_PROFILE_PORTRAIT_720P = 1050, // 720x1280 15
8546  VIDEO_PROFILE_PORTRAIT_720P_3 = 1052, // 720x1280 30
8548  VIDEO_PROFILE_PORTRAIT_720P_5 = 1054, // 720x960 15
8550  VIDEO_PROFILE_PORTRAIT_720P_6 = 1055, // 720x960 30
8552  VIDEO_PROFILE_PORTRAIT_1080P = 1060, // 1080x1920 15
8554  VIDEO_PROFILE_PORTRAIT_1080P_3 = 1062, // 1080x1920 30
8556  VIDEO_PROFILE_PORTRAIT_1080P_5 = 1064, // 1080x1920 60
8558  VIDEO_PROFILE_PORTRAIT_1440P = 1066, // 1440x2560 30
8560  VIDEO_PROFILE_PORTRAIT_1440P_2 = 1067, // 1440x2560 60
8562  VIDEO_PROFILE_PORTRAIT_4K = 1070, // 2160x3840 30
8564  VIDEO_PROFILE_PORTRAIT_4K_3 = 1072, // 2160x3840 60
8567 };
8568 
8569 } // namespace rtc
8570 } // namespace agora
8571 
8577 #define getAgoraRtcEngineVersion getAgoraSdkVersion
8578 
8580 
8583 
8590 
8592 
8593 
8600 #define getAgoraRtcEngineErrorDescription getAgoraSdkErrorDescription
8601 #define setAgoraRtcEngineExternalSymbolLoader setAgoraSdkExternalSymbolLoader
agora::rtc::IRtcEngine::setVideoEncoderConfiguration
virtual int setVideoEncoderConfiguration(const VideoEncoderConfiguration &config)=0
agora::rtc::IRtcEngine::stopLocalVideoTranscoder
virtual int stopLocalVideoTranscoder()=0
agora::rtc::WLACC_MESSAGE_REASON
WLACC_MESSAGE_REASON
Definition: AgoraBase.h:4092
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFrame
virtual void onFirstLocalVideoFrame(VIDEO_SOURCE_TYPE source, int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1748
agora::rtc::RemoteVideoStats::delay
int delay
Definition: IAgoraRtcEngine.h:480
agora::rtc::VIDEO_TRANSCODER_ERROR
VIDEO_TRANSCODER_ERROR
Definition: AgoraBase.h:3842
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition: AgoraBase.h:5595
agora::rtc::ChannelMediaOptions::publishMediaPlayerId
Optional< int > publishMediaPlayerId
Definition: IAgoraRtcEngine.h:1174
agora::rtc::IRtcEngine::configRhythmPlayer
virtual int configRhythmPlayer(const AgoraRhythmPlayerConfig &config)=0
agora::rtc::IRtcEngine::getAudioTrackCount
virtual int getAudioTrackCount()=0
agora::rtc::IRtcEngineEventHandler::onRequestToken
virtual void onRequestToken()
Definition: IAgoraRtcEngine.h:2231
agora::rtc::ChannelMediaOptions::defaultVideoStreamType
Optional< VIDEO_STREAM_TYPE > defaultVideoStreamType
Definition: IAgoraRtcEngine.h:1188
agora::rtc::DirectCdnStreamingStats::videoWidth
int videoWidth
Definition: IAgoraRtcEngine.h:3292
agora::rtc::AUDIO_EQUALIZATION_BAND_16K
@ AUDIO_EQUALIZATION_BAND_16K
Definition: IAgoraRtcEngine.h:200
agora::rtc::IRtcEngine::getVersion
virtual const char * getVersion(int *build)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_10
@ VIDEO_PROFILE_LANDSCAPE_360P_10
Definition: IAgoraRtcEngine.h:8456
agora::rtc::ExtensionInfo::mediaSourceType
agora::media::MEDIA_SOURCE_TYPE mediaSourceType
Definition: IAgoraRtcEngine.h:3445
agora::rtc::DIRECT_CDN_STREAMING_STATE_FAILED
@ DIRECT_CDN_STREAMING_STATE_FAILED
Definition: IAgoraRtcEngine.h:3280
agora::rtc::ChannelMediaOptions::SetAll
void SetAll(const ChannelMediaOptions &change)
Definition: IAgoraRtcEngine.h:1250
agora::CHANNEL_PROFILE_LIVE_BROADCASTING
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition: AgoraBase.h:268
agora::rtc::IRtcEngineEventHandler::onExtensionStopped
virtual void onExtensionStopped(const char *provider, const char *extension)
Definition: IAgoraRtcEngine.h:2853
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P_3
@ VIDEO_PROFILE_LANDSCAPE_720P_3
Definition: IAgoraRtcEngine.h:8476
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_8
@ VIDEO_PROFILE_LANDSCAPE_360P_8
Definition: IAgoraRtcEngine.h:8452
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_3
@ VIDEO_PROFILE_LANDSCAPE_360P_3
Definition: IAgoraRtcEngine.h:8444
agora::rtc::ChannelMediaOptions::publishCameraTrack
Optional< bool > publishCameraTrack
Definition: IAgoraRtcEngine.h:1041
agora::rtc::IRtcEngine::updateChannelMediaOptions
virtual int updateChannelMediaOptions(const ChannelMediaOptions &options)=0
agora::rtc::IRtcEngine::setParameters
virtual int setParameters(const char *parameters)=0
agora::rtc::ChannelMediaOptions::channelProfile
Optional< CHANNEL_PROFILE_TYPE > channelProfile
Definition: IAgoraRtcEngine.h:1193
agora::rtc::ReplaceBy
static void ReplaceBy(Optional< T > *s, const Optional< T > &o)
Definition: IAgoraRtcEngine.h:28
agora::rtc::MEDIA_DEVICE_STATE_DISABLED
@ MEDIA_DEVICE_STATE_DISABLED
Definition: IAgoraRtcEngine.h:8415
agora::rtc::IRtcEngine::setRemoteRenderMode
virtual int setRemoteRenderMode(uid_t uid, media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
agora::rtc::IRtcEngine::uploadLogFile
virtual int uploadLogFile(agora::util::AString &requestId)=0
agora::rtc::AUDIO_EQUALIZATION_BAND_FREQUENCY
AUDIO_EQUALIZATION_BAND_FREQUENCY
Definition: IAgoraRtcEngine.h:160
agora::rtc::UserInfo
Definition: AgoraBase.h:5703
agora::rtc::IRtcEngine::enableExtension
virtual int enableExtension(const char *provider, const char *extension, const ExtensionInfo &extensionInfo, bool enable=true)=0
agora::rtc::IRtcEngineEventHandler::onLocalAudioStats
virtual void onLocalAudioStats(const LocalAudioStats &stats)
Definition: IAgoraRtcEngine.h:2000
agora::rtc::ChannelMediaOptions::publishMixedAudioTrack
Optional< bool > publishMixedAudioTrack
Definition: IAgoraRtcEngine.h:1152
agora::rtc::LastmileProbeResult
Definition: AgoraBase.h:3940
agora::rtc::AudioEncodedFrameObserverConfig
Definition: AgoraBase.h:5050
agora::rtc::ScreenCaptureParameters
Definition: AgoraBase.h:4833
agora::rtc::IRtcEngine::updateLocalTranscoderConfiguration
virtual int updateLocalTranscoderConfiguration(const LocalTranscoderConfiguration &config)=0
agora::rtc::IMetadataObserver::MAX_METADATA_SIZE_IN_BYTE
@ MAX_METADATA_SIZE_IN_BYTE
Definition: IAgoraRtcEngine.h:3193
agora::rtc::IRtcEngine::initialize
virtual int initialize(const RtcEngineContext &context)=0
agora::rtc::SCREEN_SCENARIO_TYPE
SCREEN_SCENARIO_TYPE
Definition: AgoraBase.h:2551
agora::rtc::MEDIA_DEVICE_TYPE
MEDIA_DEVICE_TYPE
Definition: IAgoraRtcEngine.h:37
agora::rtc::CameraCapturerConfiguration::CameraCapturerConfiguration
CameraCapturerConfiguration()
Definition: IAgoraRtcEngine.h:808
agora::rtc::AudioVolumeInfo
Definition: AgoraBase.h:3123
agora::rtc::VideoCompositingLayout::regionCount
int regionCount
Definition: IAgoraRtcEngine.h:611
agora::rtc::VIDEO_SOURCE_TYPE
VIDEO_SOURCE_TYPE
Definition: AgoraMediaBase.h:48
agora::rtc::AUDIO_MIXING_STATE_PAUSED
@ AUDIO_MIXING_STATE_PAUSED
Definition: IAgoraRtcEngine.h:79
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P_5
@ VIDEO_PROFILE_LANDSCAPE_1080P_5
Definition: IAgoraRtcEngine.h:8486
agora::rtc::REMOTE_AUDIO_STATE
REMOTE_AUDIO_STATE
Definition: AgoraBase.h:2849
agora::rtc::RemoteAudioStats::rxAudioBytes
unsigned int rxAudioBytes
Definition: IAgoraRtcEngine.h:442
agora::rtc::BeautyOptions
Definition: AgoraBase.h:4278
agora::rtc::IRtcEngine::createMediaPlayer
virtual agora_refptr< IMediaPlayer > createMediaPlayer()=0
agora::rtc::INJECT_STREAM_STATUS_START_FAILED
@ INJECT_STREAM_STATUS_START_FAILED
Definition: IAgoraRtcEngine.h:130
agora::rtc::IMetadataObserver::METADATA_TYPE
METADATA_TYPE
Definition: IAgoraRtcEngine.h:3178
agora::rtc::SenderOptions
Definition: AgoraBase.h:1205
agora::rtc::IRtcEngineEventHandler::onConnectionStateChanged
virtual void onConnectionStateChanged(CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:2649
agora::rtc::AUDIO_EQUALIZATION_BAND_2K
@ AUDIO_EQUALIZATION_BAND_2K
Definition: IAgoraRtcEngine.h:188
agora::rtc::RemoteVideoStats::avSyncTimeMs
int avSyncTimeMs
Definition: IAgoraRtcEngine.h:527
agora::rtc::ScreenCaptureConfiguration::screenRect
Rectangle screenRect
Definition: IAgoraRtcEngine.h:839
agora::rtc::DIRECT_CDN_STREAMING_ERROR_NET_CONNECT
@ DIRECT_CDN_STREAMING_ERROR_NET_CONNECT
Definition: IAgoraRtcEngine.h:3265
agora::rtc::ScreenCaptureConfiguration::ScreenCaptureConfiguration
ScreenCaptureConfiguration()
Definition: IAgoraRtcEngine.h:858
agora::rtc::IRtcEngineEventHandler::onConnectionBanned
virtual void onConnectionBanned() 1
Definition: IAgoraRtcEngine.h:2181
agora::rtc::video_track_id_t
unsigned int video_track_id_t
Definition: AgoraMediaBase.h:32
agora::rtc::AUDIO_MIXING_STATE_STOPPED
@ AUDIO_MIXING_STATE_STOPPED
Definition: IAgoraRtcEngine.h:81
agora::rtc::UNKNOWN_AUDIO_DEVICE
@ UNKNOWN_AUDIO_DEVICE
Definition: IAgoraRtcEngine.h:41
agora::rtc::IRtcEngineEventHandler::eventHandlerType
virtual const char * eventHandlerType() const
Definition: IAgoraRtcEngine.h:1463
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_3
@ VIDEO_PROFILE_PORTRAIT_480P_3
Definition: IAgoraRtcEngine.h:8532
agora::rtc::RemoteVideoStats::width
int width
Definition: IAgoraRtcEngine.h:488
agora::rtc::VideoCompositingLayout
Definition: IAgoraRtcEngine.h:551
agora::rtc::LastmileProbeConfig
Definition: AgoraBase.h:3872
agora::rtc::LocalVideoStats::captureFrameRate
int captureFrameRate
Definition: IAgoraRtcEngine.h:274
agora::rtc::VIDEO_PROFILE_PORTRAIT_1440P_2
@ VIDEO_PROFILE_PORTRAIT_1440P_2
Definition: IAgoraRtcEngine.h:8560
agora::rtc::IVideoDeviceManager::release
virtual void release()=0
agora::rtc::InjectStreamConfig::audioBitrate
int audioBitrate
Definition: IAgoraRtcEngine.h:659
agora::rtc::ChannelMediaOptions::~ChannelMediaOptions
~ChannelMediaOptions()
Definition: IAgoraRtcEngine.h:1248
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P
@ VIDEO_PROFILE_LANDSCAPE_720P
Definition: IAgoraRtcEngine.h:8474
agora::rtc::IVideoDeviceManager::startDeviceTest
virtual int startDeviceTest(view_t hwnd)=0
agora::rtc::AUDIO_APPLICATION_PLAYOUT_DEVICE
@ AUDIO_APPLICATION_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:61
agora::rtc::IRtcEngine::enableVirtualBackground
virtual int enableVirtualBackground(bool enabled, VirtualBackgroundSource backgroundSource, SegmentationProperty segproperty, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
agora::rtc::IRtcEngine::enableEncryption
virtual int enableEncryption(bool enabled, const EncryptionConfig &config)=0
agora::rtc::AAudioDeviceManager::AAudioDeviceManager
AAudioDeviceManager(IRtcEngine *engine)
Definition: IAgoraRtcEngine.h:8383
agora::rtc::AdvancedAudioOptions::AdvancedAudioOptions
AdvancedAudioOptions()
Definition: IAgoraRtcEngine.h:1016
agora::rtc::IRtcEngine::setChannelProfile
virtual int setChannelProfile(CHANNEL_PROFILE_TYPE profile)=0
agora::rtc::DirectCdnStreamingStats::videoHeight
int videoHeight
Definition: IAgoraRtcEngine.h:3297
agora::rtc::RtcEngineContext::domainLimit
bool domainLimit
Definition: IAgoraRtcEngine.h:3151
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P_3
@ VIDEO_PROFILE_LANDSCAPE_240P_3
Definition: IAgoraRtcEngine.h:8438
agora::rtc::IRtcEngineEventHandler::onVideoPublishStateChanged
virtual void onVideoPublishStateChanged(VIDEO_SOURCE_TYPE source, const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2810
agora::rtc::RtcEngineContext::useExternalEglContext
bool useExternalEglContext
Definition: IAgoraRtcEngine.h:3144
AgoraBase.h
agora::rtc::IRtcEngine::adjustCustomAudioPlayoutVolume
virtual int adjustCustomAudioPlayoutVolume(track_id_t trackId, int volume)=0
agora::rtc::INJECT_STREAM_STATUS_STOP_NOT_FOUND
@ INJECT_STREAM_STATUS_STOP_NOT_FOUND
Definition: IAgoraRtcEngine.h:138
agora::rtc::ChannelMediaOptions::publishMicrophoneTrack
Optional< bool > publishMicrophoneTrack
Definition: IAgoraRtcEngine.h:1065
agora::rtc::IMetadataObserver::Metadata::size
unsigned int size
Definition: IAgoraRtcEngine.h:3207
agora::rtc::IRtcEngineEventHandler::onCameraFocusAreaChanged
virtual void onCameraFocusAreaChanged(int x, int y, int width, int height)
Definition: IAgoraRtcEngine.h:2060
agora::rtc::IRtcEngineEventHandler::onChannelMediaRelayEvent
virtual void onChannelMediaRelayEvent(int code) 1
Definition: IAgoraRtcEngine.h:2553
agora::rtc::AGORA_IID_AUDIO_DEVICE_MANAGER
@ AGORA_IID_AUDIO_DEVICE_MANAGER
Definition: AgoraBase.h:853
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Definition: AgoraBase.h:835
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P
@ VIDEO_PROFILE_PORTRAIT_360P
Definition: IAgoraRtcEngine.h:8512
agora::rtc::uid_t
unsigned int uid_t
Definition: AgoraMediaBase.h:29
agora::rtc::IRtcEngine::enableWirelessAccelerate
virtual int enableWirelessAccelerate(bool enabled)=0
agora::agora_refptr
Definition: AgoraRefPtr.h:44
agora::rtc::VIDEO_PROFILE_DEFAULT
@ VIDEO_PROFILE_DEFAULT
Definition: IAgoraRtcEngine.h:8566
agora::rtc::MEDIA_DEVICE_STATE_IDLE
@ MEDIA_DEVICE_STATE_IDLE
Definition: IAgoraRtcEngine.h:8409
agora::rtc::VideoCompositingLayout::canvasHeight
int canvasHeight
Definition: IAgoraRtcEngine.h:601
agora::rtc::VIDEO_PROFILE_PORTRAIT_180P_4
@ VIDEO_PROFILE_PORTRAIT_180P_4
Definition: IAgoraRtcEngine.h:8504
agora::rtc::ChannelMediaOptions::token
Optional< const char * > token
Definition: IAgoraRtcEngine.h:1212
agora::rtc::RemoteAudioStats::numChannels
int numChannels
Definition: IAgoraRtcEngine.h:373
agora::rtc::RemoteVideoStats::packetLossRate
int packetLossRate
Definition: IAgoraRtcEngine.h:508
AgoraRhythmPlayerConfig
Definition: AgoraObjects.h:2987
agora::media::IAudioSpectrumObserver
Definition: AgoraMediaBase.h:1287
agora::rtc::QUALITY_ADAPT_INDICATION
QUALITY_ADAPT_INDICATION
Definition: AgoraBase.h:2300
agora::rtc::IRtcEngine::stopLastmileProbeTest
virtual int stopLastmileProbeTest()=0
agora::rtc::PublisherConfiguration::injectStreamUrl
const char * injectStreamUrl
Definition: IAgoraRtcEngine.h:729
agora::rtc::VIDEO_APPLICATION_SCENARIO_TYPE
VIDEO_APPLICATION_SCENARIO_TYPE
Definition: AgoraBase.h:2580
agora::rtc::PublisherConfiguration::injectStreamWidth
int injectStreamWidth
Definition: IAgoraRtcEngine.h:723
agora::rtc::IRtcEngineEventHandler::onClientRoleChanged
virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions &newRoleOptions)
Definition: IAgoraRtcEngine.h:2396
agora::rtc::IRtcEngine::startPreview
virtual int startPreview(VIDEO_SOURCE_TYPE sourceType)=0
agora::rtc::VideoCompositingLayout::Region::y
double y
Definition: IAgoraRtcEngine.h:561
agora::rtc::IRtcEngine::getCurrentMonotonicTimeInMs
virtual int64_t getCurrentMonotonicTimeInMs()=0
agora::rtc::IRtcEngineEventHandler::~IRtcEngineEventHandler
virtual ~IRtcEngineEventHandler()
Definition: IAgoraRtcEngine.h:1461
agora::rtc::IRtcEngineEventHandler::onLocalVideoStats
virtual void onLocalVideoStats(VIDEO_SOURCE_TYPE source, const LocalVideoStats &stats)
Definition: IAgoraRtcEngine.h:2028
agora::rtc::ExtensionInfo
Definition: IAgoraRtcEngine.h:3441
BEGIN_COMPARE
#define BEGIN_COMPARE()
agora::rtc::IRtcEngine::setExtensionProperty
virtual int setExtensionProperty(const char *provider, const char *extension, const ExtensionInfo &extensionInfo, const char *key, const char *value)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_4K
@ VIDEO_PROFILE_LANDSCAPE_4K
Definition: IAgoraRtcEngine.h:8492
agora::rtc::RemoteVideoStats::totalActiveTime
int totalActiveTime
Definition: IAgoraRtcEngine.h:532
agora::rtc::IRtcEngineEventHandler::onUserInfoUpdated
virtual void onUserInfoUpdated(uid_t uid, const UserInfo &info)
Definition: IAgoraRtcEngine.h:2736
agora::rtc::ImageTrackOptions::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition: IAgoraRtcEngine.h:1023
agora::rtc::RemoteAudioStats::totalFrozenTime
int totalFrozenTime
Definition: IAgoraRtcEngine.h:389
agora::rtc::LocalAccessPointConfiguration
Definition: AgoraBase.h:6011
agora::rtc::CAMERA_REAR
@ CAMERA_REAR
Definition: IAgoraRtcEngine.h:763
agora::media::base::RENDER_MODE_HIDDEN
@ RENDER_MODE_HIDDEN
Definition: AgoraMediaBase.h:590
agora::rtc::IRtcEngineEventHandler::onWlAccStats
virtual void onWlAccStats(WlAccStats currentStats, WlAccStats averageStats)
Definition: IAgoraRtcEngine.h:2672
agora::rtc::MEDIA_DEVICE_STATE_UNPLUGGED
@ MEDIA_DEVICE_STATE_UNPLUGGED
Definition: IAgoraRtcEngine.h:8421
agora::rtc::AUDIO_MIXING_REASON_TOO_FREQUENT_CALL
@ AUDIO_MIXING_REASON_TOO_FREQUENT_CALL
Definition: IAgoraRtcEngine.h:94
agora::rtc::RemoteAudioStats::receivedBitrate
int receivedBitrate
Definition: IAgoraRtcEngine.h:382
agora::rtc::IMetadataObserver::getMaxMetadataSize
virtual int getMaxMetadataSize()
Definition: IAgoraRtcEngine.h:3229
agora::rtc::RtcEngineContext::threadPriority
Optional< THREAD_PRIORITY_TYPE > threadPriority
Definition: IAgoraRtcEngine.h:3135
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P_5
@ VIDEO_PROFILE_PORTRAIT_720P_5
Definition: IAgoraRtcEngine.h:8548
agora::rtc::INJECT_STREAM_STATUS_START_SUCCESS
@ INJECT_STREAM_STATUS_START_SUCCESS
Definition: IAgoraRtcEngine.h:114
agora::rtc::LiveTranscoding
Definition: AgoraBase.h:3634
agora::rtc::IRtcEngineEventHandler::onLocalUserRegistered
virtual void onLocalUserRegistered(uid_t uid, const char *userAccount)
Definition: IAgoraRtcEngine.h:2723
agora::rtc::IRtcEngineEventHandler::onWlAccMessage
virtual void onWlAccMessage(WLACC_MESSAGE_REASON reason, WLACC_SUGGEST_ACTION action, const char *wlAccMsg)
Definition: IAgoraRtcEngine.h:2661
agora::rtc::IRtcEngineEventHandler::onVideoStopped
virtual void onVideoStopped() 1
Definition: IAgoraRtcEngine.h:2128
agora::rtc::ChannelMediaOptions::autoSubscribeVideo
Optional< bool > autoSubscribeVideo
Definition: IAgoraRtcEngine.h:1164
agora::AUDIO_SESSION_OPERATION_RESTRICTION
AUDIO_SESSION_OPERATION_RESTRICTION
Definition: AgoraBase.h:775
agora::rtc::RemoteVideoStats::decoderOutputFrameRate
int decoderOutputFrameRate
Definition: IAgoraRtcEngine.h:499
agora::rtc::VIDEO_RENDER_DEVICE
@ VIDEO_RENDER_DEVICE
Definition: IAgoraRtcEngine.h:53
agora::rtc::VIDEO_PROFILE_LANDSCAPE_120P
@ VIDEO_PROFILE_LANDSCAPE_120P
Definition: IAgoraRtcEngine.h:8426
agora::rtc::IRtcEngine::updateChannelMediaRelay
virtual int updateChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration) 1=0
agora::rtc::Rectangle
Definition: AgoraBase.h:1996
agora::rtc::IDirectCdnStreamingEventHandler::onDirectCdnStreamingStateChanged
virtual void onDirectCdnStreamingStateChanged(DIRECT_CDN_STREAMING_STATE state, DIRECT_CDN_STREAMING_ERROR error, const char *message)
Definition: IAgoraRtcEngine.h:3329
agora::rtc::IRtcEngineEventHandler::onUserOffline
virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:1910
agora::rtc::CameraCapturerConfiguration::format
VideoFormat format
Definition: IAgoraRtcEngine.h:806
agora::rtc::AUDIO_SAMPLE_RATE_48000
@ AUDIO_SAMPLE_RATE_48000
Definition: AgoraBase.h:3243
agora::rtc::ChannelMediaOptions::operator=
ChannelMediaOptions & operator=(const ChannelMediaOptions &replace)
Definition: IAgoraRtcEngine.h:1346
agora::rtc::ScreenCaptureConfiguration::regionRect
Rectangle regionRect
Definition: IAgoraRtcEngine.h:856
agora::rtc::DirectCdnStreamingStats::audioBitrate
int audioBitrate
Definition: IAgoraRtcEngine.h:3312
agora::rtc::IRtcEngine::unregisterAudioSpectrumObserver
virtual int unregisterAudioSpectrumObserver(agora::media::IAudioSpectrumObserver *observer)=0
agora::rtc::IRtcEngineEventHandler::onLocalAudioStateChanged
virtual void onLocalAudioStateChanged(LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_ERROR error)
Definition: IAgoraRtcEngine.h:2318
agora::rtc::CameraCapturerConfiguration::followEncodeDimensionRatio
bool followEncodeDimensionRatio
Definition: IAgoraRtcEngine.h:807
agora::rtc::ChannelMediaOptions::publishCustomVideoTrack
Optional< bool > publishCustomVideoTrack
Definition: IAgoraRtcEngine.h:1122
agora::rtc::IRtcEngine::setColorEnhanceOptions
virtual int setColorEnhanceOptions(bool enabled, const ColorEnhanceOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
agora::rtc::IRtcEngineEventHandler::onAudioPublishStateChanged
virtual void onAudioPublishStateChanged(const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2794
agora::rtc::INJECT_STREAM_STATUS_STOP_TIMEDOUT
@ INJECT_STREAM_STATUS_STOP_TIMEDOUT
Definition: IAgoraRtcEngine.h:146
agora::rtc::InjectStreamConfig::audioChannels
int audioChannels
Definition: IAgoraRtcEngine.h:662
agora::rtc::QUALITY_REPORT_FORMAT_TYPE
QUALITY_REPORT_FORMAT_TYPE
Definition: IAgoraRtcEngine.h:8396
agora::rtc::IRtcEngineEventHandler::onVideoSubscribeStateChanged
virtual void onVideoSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2778
agora::rtc::IRtcEngineEventHandler::onAudioQuality
virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost) 1
Definition: IAgoraRtcEngine.h:1536
agora::rtc::ChannelMediaOptions::customVideoTrackId
Optional< video_track_id_t > customVideoTrackId
Definition: IAgoraRtcEngine.h:1239
agora::rtc::IRtcEngine::setVoiceConversionPreset
virtual int setVoiceConversionPreset(VOICE_CONVERSION_PRESET preset)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_6
@ VIDEO_PROFILE_LANDSCAPE_480P_6
Definition: IAgoraRtcEngine.h:8466
agora::rtc::InjectStreamConfig::InjectStreamConfig
InjectStreamConfig()
Definition: IAgoraRtcEngine.h:666
agora::rtc::IRtcEngine::unregisterEventHandler
virtual bool unregisterEventHandler(IRtcEngineEventHandler *eventHandler)=0
agora::rtc::IRtcEngine::setLocalVideoMirrorMode
virtual int setLocalVideoMirrorMode(VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
agora::rtc::IMetadataObserver::Metadata::uid
unsigned int uid
Definition: IAgoraRtcEngine.h:3204
agora::rtc::IRtcEngineEventHandlerEx
Definition: IAgoraRtcEngineEx.h:42
agora::rtc::IRtcEngine::complain
virtual int complain(const char *callId, const char *description)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_8
@ VIDEO_PROFILE_PORTRAIT_360P_8
Definition: IAgoraRtcEngine.h:8522
agora::rtc::IRtcEngineEventHandler::onRtmpStreamingEvent
virtual void onRtmpStreamingEvent(const char *url, RTMP_STREAMING_EVENT eventCode)
Definition: IAgoraRtcEngine.h:2448
agora::rtc::AUDIO_EQUALIZATION_BAND_250
@ AUDIO_EQUALIZATION_BAND_250
Definition: IAgoraRtcEngine.h:176
agora::util::AutoPtr
Definition: AgoraBase.h:89
agora::rtc::IRtcEngine::startRhythmPlayer
virtual int startRhythmPlayer(const char *sound1, const char *sound2, const AgoraRhythmPlayerConfig &config)=0
agora::rtc::IRtcEngine::queryInterface
virtual int queryInterface(INTERFACE_ID_TYPE iid, void **inter)=0
agora::rtc::IRtcEngineEventHandler::onActiveSpeaker
virtual void onActiveSpeaker(uid_t userId)
Definition: IAgoraRtcEngine.h:2359
agora::rtc::HTTPS_PROXY_TYPE
@ HTTPS_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1415
agora::rtc::RemoteVideoStats::rendererOutputFrameRate
int rendererOutputFrameRate
Definition: IAgoraRtcEngine.h:502
agora::rtc::AdvancedAudioOptions::audioProcessingChannels
Optional< int > audioProcessingChannels
Definition: IAgoraRtcEngine.h:1014
agora::rtc::IRtcEngineEventHandler::onCameraExposureAreaChanged
virtual void onCameraExposureAreaChanged(int x, int y, int width, int height)
Definition: IAgoraRtcEngine.h:2074
agora::rtc::IRtcEngine::setHeadphoneEQParameters
virtual int setHeadphoneEQParameters(int lowGain, int highGain)=0
agora::rtc::VideoCompositingLayout::Region::x
double x
Definition: IAgoraRtcEngine.h:558
agora::rtc::IRtcEngine::stopAudioFrameDump
virtual int stopAudioFrameDump(const char *channel_id, uid_t user_id, const char *location)=0
agora::rtc::IRtcEngine::startChannelMediaRelay
virtual int startChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration) 1=0
agora::rtc::RemoteAudioStats::qualityChangedReason
int qualityChangedReason
Definition: IAgoraRtcEngine.h:438
agora::rtc::IRtcEngine::enableSoundPositionIndication
virtual int enableSoundPositionIndication(bool enabled)=0
agora::view_t
void * view_t
Definition: AgoraBase.h:801
agora::rtc::DIRECT_CDN_STREAMING_ERROR_BAD_NAME
@ DIRECT_CDN_STREAMING_ERROR_BAD_NAME
Definition: IAgoraRtcEngine.h:3267
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1440P_2
@ VIDEO_PROFILE_LANDSCAPE_1440P_2
Definition: IAgoraRtcEngine.h:8490
agora::rtc::AUDIO_MIXING_REASON_STOPPED_BY_USER
@ AUDIO_MIXING_REASON_STOPPED_BY_USER
Definition: IAgoraRtcEngine.h:102
agora::rtc::IRtcEngineEventHandler::onUserMuteVideo
virtual void onUserMuteVideo(uid_t userId, bool muted)
Definition: IAgoraRtcEngine.h:1946
agora::rtc::IRtcEngine::setCloudProxy
virtual int setCloudProxy(CLOUD_PROXY_TYPE proxyType)=0
agora::rtc::VideoEncoderConfiguration
Definition: AgoraBase.h:1763
agora::rtc::RemoteAudioStats::quality
int quality
Definition: IAgoraRtcEngine.h:355
agora::rtc::IRtcEngineEventHandler
Definition: IAgoraRtcEngine.h:1459
agora::rtc::LocalVideoStats::encodedFrameHeight
int encodedFrameHeight
Definition: IAgoraRtcEngine.h:301
agora::rtc::IRtcEngine::muteRemoteAudioStream
virtual int muteRemoteAudioStream(uid_t uid, bool mute)=0
agora::rtc::AUDIO_REVERB_WET_DELAY
@ AUDIO_REVERB_WET_DELAY
Definition: IAgoraRtcEngine.h:222
agora::rtc::PRIORITY_TYPE
PRIORITY_TYPE
Definition: IAgoraRtcEngine.h:245
agora::rtc::INJECT_STREAM_STATUS_BROKEN
@ INJECT_STREAM_STATUS_BROKEN
Definition: IAgoraRtcEngine.h:154
agora::rtc::VOICE_CONVERSION_PRESET
VOICE_CONVERSION_PRESET
Definition: AgoraBase.h:4764
agora::rtc::IRtcEngineEventHandler::onUserEnableVideo
virtual void onUserEnableVideo(uid_t uid, bool enabled)
Definition: IAgoraRtcEngine.h:1963
agora::rtc::LocalVideoStats::dualStreamEnabled
bool dualStreamEnabled
Definition: IAgoraRtcEngine.h:335
agora::rtc::IRtcEngine::setLogFilter
virtual int setLogFilter(unsigned int filter)=0
agora::rtc::VIDEO_BEAUTY_EFFECT
@ VIDEO_BEAUTY_EFFECT
Definition: IAgoraRtcEngine.h:1420
agora::rtc::ChannelMediaOptions::publishTranscodedVideoTrack
Optional< bool > publishTranscodedVideoTrack
Definition: IAgoraRtcEngine.h:1146
agora::rtc::IRtcEngine::startPreview
virtual int startPreview()=0
agora::rtc::IRtcEngine::enableVideoImageSource
virtual int enableVideoImageSource(bool enable, const ImageTrackOptions &options)=0
enable or disable video image source to replace the current video source published or resume it
agora::rtc::VideoSubscriptionOptions
Definition: AgoraBase.h:1532
agora::rtc::IRtcEngineEventHandler::onAudioRoutingChanged
virtual void onAudioRoutingChanged(int routing) 1
Definition: IAgoraRtcEngine.h:2480
agora::rtc::IRtcEngine::createDataStream
virtual int createDataStream(int *streamId, DataStreamConfig &config)=0
agora::rtc::VideoCompositingLayout::Region::width
double width
Definition: IAgoraRtcEngine.h:565
agora::rtc::DIRECT_CDN_STREAMING_STATE
DIRECT_CDN_STREAMING_STATE
Definition: IAgoraRtcEngine.h:3272
agora::rtc::LocalVideoStats::regulatedCaptureFrameHeight
int regulatedCaptureFrameHeight
Definition: IAgoraRtcEngine.h:292
agora::rtc::LocalVideoStats::regulatedCaptureFrameRate
int regulatedCaptureFrameRate
Definition: IAgoraRtcEngine.h:284
agora::rtc::VOICE_BEAUTIFIER_PRESET
VOICE_BEAUTIFIER_PRESET
Definition: AgoraBase.h:4560
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1440P
@ VIDEO_PROFILE_LANDSCAPE_1440P
Definition: IAgoraRtcEngine.h:8488
agora::rtc::IRtcEngine::setScreenCaptureOrientation
virtual int setScreenCaptureOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation)=0
agora::rtc::CLOUD_PROXY_TYPE
CLOUD_PROXY_TYPE
Definition: IAgoraRtcEngine.h:772
agora::rtc::RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL
@ RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL
Definition: IAgoraRtcEngine.h:682
agora::rtc::IRtcEngine::joinChannel
virtual int joinChannel(const char *token, const char *channelId, const char *info, uid_t uid)=0
agora::rtc::PublisherConfiguration::extraInfo
const char * extraInfo
Definition: IAgoraRtcEngine.h:740
agora::rtc::EchoTestConfiguration
Definition: AgoraBase.h:5685
agora::rtc::RtcImage
Definition: AgoraBase.h:3456
agora::rtc::DIRECT_CDN_STREAMING_ERROR_OK
@ DIRECT_CDN_STREAMING_ERROR_OK
Definition: IAgoraRtcEngine.h:3257
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_11
@ VIDEO_PROFILE_PORTRAIT_360P_11
Definition: IAgoraRtcEngine.h:8528
agora::rtc::AUDIO_SCENARIO_DEFAULT
@ AUDIO_SCENARIO_DEFAULT
Definition: AgoraBase.h:2454
agora::rtc::IRtcEngineEventHandler::onError
virtual void onError(int err, const char *msg)
Definition: IAgoraRtcEngine.h:1516
agora::rtc::IRtcEngineEventHandler::onVideoRenderingTracingResult
virtual void onVideoRenderingTracingResult(uid_t uid, MEDIA_TRACE_EVENT currentEvent, VideoRenderingTracingInfo tracingInfo)
Definition: IAgoraRtcEngine.h:2903
agora::media::PRIMARY_CAMERA_SOURCE
@ PRIMARY_CAMERA_SOURCE
Definition: AgoraMediaBase.h:271
agora::rtc::ChannelMediaOptions::publishSecondaryCameraTrack
Optional< bool > publishSecondaryCameraTrack
Definition: IAgoraRtcEngine.h:1047
agora::rtc::ChannelMediaOptions::publishEncodedVideoTrack
Optional< bool > publishEncodedVideoTrack
Definition: IAgoraRtcEngine.h:1128
agora::rtc::IRtcEngineEventHandler::onContentInspectResult
virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result)
Definition: IAgoraRtcEngine.h:2364
agora::rtc::IRtcEngineEventHandler::onAudioVolumeIndication
virtual void onAudioVolumeIndication(const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Definition: IAgoraRtcEngine.h:1579
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_9
@ VIDEO_PROFILE_LANDSCAPE_360P_9
Definition: IAgoraRtcEngine.h:8454
agora::rtc::IRtcEngine::preloadChannel
virtual int preloadChannel(const char *token, const char *channelId, uid_t uid)=0
agora::rtc::RTMP_STREAM_PUBLISH_ERROR_TYPE
RTMP_STREAM_PUBLISH_ERROR_TYPE
Definition: AgoraBase.h:3363
agora::rtc::HTTP_PROXY_TYPE
@ HTTP_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1412
agora::rtc::IRtcEngineEventHandler::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) 1
Definition: IAgoraRtcEngine.h:1988
agora::rtc::IRtcEngineEventHandler::onLocalPublishFallbackToAudioOnly
virtual void onLocalPublishFallbackToAudioOnly(bool isFallbackOrRecover)
Definition: IAgoraRtcEngine.h:2569
agora::rtc::IRtcEngine::getNetworkType
virtual int getNetworkType()=0
agora::rtc::IRtcEngine::setDefaultMuteAllRemoteAudioStreams
virtual int setDefaultMuteAllRemoteAudioStreams(bool mute) 1=0
agora::rtc::AUDIO_REVERB_STRENGTH
@ AUDIO_REVERB_STRENGTH
Definition: IAgoraRtcEngine.h:226
agora::rtc::ChannelMediaOptions::publishCustomAudioTrackId
Optional< int > publishCustomAudioTrackId
Definition: IAgoraRtcEngine.h:1116
agora::rtc::SimulcastStreamConfig
Definition: AgoraBase.h:1973
agora::rtc::RemoteVideoStats::totalFrozenTime
int totalFrozenTime
Definition: IAgoraRtcEngine.h:518
agora::rtc::IRtcEngineEventHandler::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngine.h:2746
agora::rtc::PRIORITY_NORMAL
@ PRIORITY_NORMAL
Definition: IAgoraRtcEngine.h:251
agora::rtc::IRtcEngine::setEarMonitoringAudioFrameParameters
virtual int setEarMonitoringAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
agora::rtc::IRtcEngineEventHandler::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1490
agora::rtc::VIDEO_CONTENT_HINT
VIDEO_CONTENT_HINT
Definition: AgoraBase.h:2529
agora::rtc::IRtcEngine::muteAllRemoteVideoStreams
virtual int muteAllRemoteVideoStreams(bool mute)=0
agora::rtc::IRtcEngine::createDataStream
virtual int createDataStream(int *streamId, bool reliable, bool ordered)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_180P
@ VIDEO_PROFILE_PORTRAIT_180P
Definition: IAgoraRtcEngine.h:8500
agora::rtc::ChannelMediaOptions::publishCustomAudioTrack
Optional< bool > publishCustomAudioTrack
Definition: IAgoraRtcEngine.h:1112
agora::rtc::PublisherConfiguration::publishUrl
const char * publishUrl
Definition: IAgoraRtcEngine.h:733
agora::rtc::IRtcEngine::getErrorDescription
virtual const char * getErrorDescription(int code)=0
agora::rtc::VIDEO_MIRROR_MODE_TYPE
VIDEO_MIRROR_MODE_TYPE
Definition: AgoraBase.h:1709
agora::rtc::PublisherConfiguration::owner
bool owner
Definition: IAgoraRtcEngine.h:720
agora::rtc::IRtcEngineEventHandler::onExtensionEvent
virtual void onExtensionEvent(const char *provider, const char *extension, const char *key, const char *value)
Definition: IAgoraRtcEngine.h:2827
agora::rtc::IMetadataObserver::onReadyToSendMetadata
virtual bool onReadyToSendMetadata(Metadata &metadata, VIDEO_SOURCE_TYPE source_type)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_9
@ VIDEO_PROFILE_PORTRAIT_360P_9
Definition: IAgoraRtcEngine.h:8524
agora::rtc::ExtensionInfo::remoteUid
uid_t remoteUid
Definition: IAgoraRtcEngine.h:3452
agora::rtc::IRtcEngine::enableDualStreamMode
virtual int enableDualStreamMode(bool enabled, const SimulcastStreamConfig &streamConfig) 1=0
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStats
virtual void onRemoteVideoStats(const RemoteVideoStats &stats)
Definition: IAgoraRtcEngine.h:2041
agora::rtc::VIDEO_PROFILE_PORTRAIT_1080P
@ VIDEO_PROFILE_PORTRAIT_1080P
Definition: IAgoraRtcEngine.h:8552
agora::rtc::ChannelMediaOptions::publishScreenCaptureVideo
Optional< bool > publishScreenCaptureVideo
Definition: IAgoraRtcEngine.h:1073
agora::rtc::IRtcEngine::destroyCustomVideoTrack
virtual int destroyCustomVideoTrack(video_track_id_t video_track_id)=0
agora::rtc::VideoCompositingLayout::Region::renderMode
media::base::RENDER_MODE_TYPE renderMode
Definition: IAgoraRtcEngine.h:579
agora::rtc::RemoteAudioStats::frozenRateByCustomPlcCount
uint32_t frozenRateByCustomPlcCount
Definition: IAgoraRtcEngine.h:416
agora::rtc::IRtcEngine::enableInstantMediaRendering
virtual int enableInstantMediaRendering()=0
Enable instant media rendering.
agora::rtc::VIDEO_PROFILE_PORTRAIT_1080P_5
@ VIDEO_PROFILE_PORTRAIT_1080P_5
Definition: IAgoraRtcEngine.h:8556
agora::rtc::LocalVideoStats::rendererOutputFrameRate
int rendererOutputFrameRate
Definition: IAgoraRtcEngine.h:304
agora::rtc::AUDIO_MIXING_STATE_FAILED
@ AUDIO_MIXING_STATE_FAILED
Definition: IAgoraRtcEngine.h:84
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
Definition: AgoraBase.h:2286
agora::rtc::IMetadataObserver
Definition: IAgoraRtcEngine.h:3171
agora::rtc::IRtcEngine::getCallId
virtual int getCallId(agora::util::AString &callId)=0
agora::rtc::IRtcEngine::createMediaRecorder
virtual agora_refptr< IMediaRecorder > createMediaRecorder(const RecorderStreamInfo &info)=0
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::NONE_PROXY
@ NONE_PROXY
Definition: IAgoraRtcEngine.h:775
agora::rtc::IRtcEngine::setSubscribeVideoAllowlist
virtual int setSubscribeVideoAllowlist(uid_t *uidList, int uidNumber)=0
agora::rtc::IRtcEngine::release
virtual void release(bool sync=false)=0
agora::rtc::RemoteAudioStats::mosValue
int mosValue
Definition: IAgoraRtcEngine.h:411
agora::rtc::RemoteVideoStats::receivedBitrate
int receivedBitrate
Definition: IAgoraRtcEngine.h:496
agora::rtc::ColorEnhanceOptions
Definition: AgoraBase.h:4402
agora::rtc::INJECT_STREAM_STATUS_START_ALREADY_EXISTS
@ INJECT_STREAM_STATUS_START_ALREADY_EXISTS
Definition: IAgoraRtcEngine.h:118
agora::rtc::VIDEO_PROFILE_PORTRAIT_240P
@ VIDEO_PROFILE_PORTRAIT_240P
Definition: IAgoraRtcEngine.h:8506
agora::rtc::CAMERA_FRONT
@ CAMERA_FRONT
Definition: IAgoraRtcEngine.h:765
agora::rtc::PublisherConfiguration::framerate
int framerate
Definition: IAgoraRtcEngine.h:702
agora::rtc::VIDEO_PROFILE_PORTRAIT_240P_3
@ VIDEO_PROFILE_PORTRAIT_240P_3
Definition: IAgoraRtcEngine.h:8508
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Definition: AgoraBase.h:5571
agora::rtc::WLACC_SUGGEST_ACTION
WLACC_SUGGEST_ACTION
Definition: AgoraBase.h:4106
agora::rtc::AUDIO_VIRTUAL_PLAYOUT_DEVICE
@ AUDIO_VIRTUAL_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:65
agora::rtc::IRtcEngineEventHandler::onLocalVideoStateChanged
virtual void onLocalVideoStateChanged(VIDEO_SOURCE_TYPE source, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_ERROR error)
Definition: IAgoraRtcEngine.h:1834
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_TYPE
CAPTURE_BRIGHTNESS_LEVEL_TYPE
Definition: AgoraBase.h:2594
agora::rtc::IRtcEngineEventHandler::onSnapshotTaken
virtual void onSnapshotTaken(uid_t uid, const char *filePath, int width, int height, int errCode)
Definition: IAgoraRtcEngine.h:2382
agora::rtc::IRtcEngine::registerMediaMetadataObserver
virtual int registerMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type)=0
agora::rtc::IRtcEngine::stopChannelMediaRelay
virtual int stopChannelMediaRelay()=0
agora::rtc::PublisherConfiguration::bitrate
int bitrate
Definition: IAgoraRtcEngine.h:706
agora::rtc::IRtcEngine::updatePreloadChannelToken
virtual int updatePreloadChannelToken(const char *token)=0
agora::rtc::IRtcEngine::getNtpWallTimeInMs
virtual uint64_t getNtpWallTimeInMs()=0
agora::rtc::IRtcEngine::destroyCustomEncodedVideoTrack
virtual int destroyCustomEncodedVideoTrack(video_track_id_t video_track_id)=0
agora::rtc::AUDIO_MIXING_REASON_OK
@ AUDIO_MIXING_REASON_OK
Definition: IAgoraRtcEngine.h:104
agora::rtc::RemoteVideoStats::frozenRate
int frozenRate
Definition: IAgoraRtcEngine.h:522
agora::rtc::IRtcEngine::adjustLoopbackSignalVolume
virtual int adjustLoopbackSignalVolume(int volume)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_180P_3
@ VIDEO_PROFILE_LANDSCAPE_180P_3
Definition: IAgoraRtcEngine.h:8432
agora::rtc::IRtcEngine::updateDirectCdnStreamingMediaOptions
virtual int updateDirectCdnStreamingMediaOptions(const DirectCdnStreamingMediaOptions &options)=0
agora::rtc::IRtcEngine::setHighPriorityUserList
virtual int setHighPriorityUserList(uid_t *uidList, int uidNum, STREAM_FALLBACK_OPTIONS option)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_8
@ VIDEO_PROFILE_LANDSCAPE_480P_8
Definition: IAgoraRtcEngine.h:8468
agora::rtc::AVideoDeviceManager
Definition: IAgoraRtcEngine.h:8388
agora::rtc::ChannelMediaOptions::publishFourthCameraTrack
Optional< bool > publishFourthCameraTrack
Definition: IAgoraRtcEngine.h:1059
agora::rtc::IRtcEngine::setSubscribeAudioAllowlist
virtual int setSubscribeAudioAllowlist(uid_t *uidList, int uidNumber)=0
agora::rtc::SIMULCAST_STREAM_MODE
SIMULCAST_STREAM_MODE
Definition: AgoraBase.h:1955
agora::rtc::RemoteAudioStats::publishDuration
int publishDuration
Definition: IAgoraRtcEngine.h:430
agora::rtc::IRtcEngine::setDirectCdnStreamingAudioConfiguration
virtual int setDirectCdnStreamingAudioConfiguration(AUDIO_PROFILE_TYPE profile)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_180P
@ VIDEO_PROFILE_LANDSCAPE_180P
Definition: IAgoraRtcEngine.h:8430
agora::rtc::LocalTranscoderConfiguration
Definition: AgoraBase.h:3815
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_9
@ VIDEO_PROFILE_PORTRAIT_480P_9
Definition: IAgoraRtcEngine.h:8540
agora::rtc::IRtcEngine::startMediaRenderingTracing
virtual int startMediaRenderingTracing()=0
Start tracing media rendering events.
agora::rtc::IRtcEngine::setLocalRenderMode
virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
agora::rtc::REMOTE_VIDEO_STATE
REMOTE_VIDEO_STATE
Definition: AgoraBase.h:2932
agora::rtc::DirectCdnStreamingMediaOptions::SetAll
void SetAll(const DirectCdnStreamingMediaOptions &change)
Definition: IAgoraRtcEngine.h:3388
agora::rtc::RemoteAudioStats::audioLossRate
int audioLossRate
Definition: IAgoraRtcEngine.h:369
agora::rtc::VIDEO_PROFILE_PORTRAIT_1440P
@ VIDEO_PROFILE_PORTRAIT_1440P
Definition: IAgoraRtcEngine.h:8558
agora::rtc::IRtcEngine::pauseAllChannelMediaRelay
virtual int pauseAllChannelMediaRelay()=0
agora::rtc::IMetadataObserver::INVALID_METADATA_SIZE_IN_BYTE
@ INVALID_METADATA_SIZE_IN_BYTE
Definition: IAgoraRtcEngine.h:3191
agora::rtc::RemoteVideoStats::frameLossRate
int frameLossRate
Definition: IAgoraRtcEngine.h:505
agora::rtc::IRtcEngine::selectAudioTrack
virtual int selectAudioTrack(int index)=0
agora::rtc::InjectStreamConfig::videoFramerate
int videoFramerate
Definition: IAgoraRtcEngine.h:647
agora::rtc::RemoteAudioStats::receivedSampleRate
int receivedSampleRate
Definition: IAgoraRtcEngine.h:377
agora::rtc::IRtcEngine::updateRtmpTranscoding
virtual int updateRtmpTranscoding(const LiveTranscoding &transcoding)=0
agora::rtc::IPacketObserver
Definition: AgoraBase.h:3174
agora::rtc::LOCAL_VIDEO_STREAM_STATE
LOCAL_VIDEO_STREAM_STATE
Definition: AgoraBase.h:2704
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Definition: AgoraBase.h:3967
agora::rtc::AUDIO_EQUALIZATION_BAND_125
@ AUDIO_EQUALIZATION_BAND_125
Definition: IAgoraRtcEngine.h:172
agora::rtc::IRtcEngine::enableInEarMonitoring
virtual int enableInEarMonitoring(bool enabled, int includeAudioFilters)=0
agora::rtc::ChannelMediaOptions::isInteractiveAudience
Optional< bool > isInteractiveAudience
Definition: IAgoraRtcEngine.h:1234
agora::rtc::ChannelMediaOptions::enableAudioRecordingOrPlayout
Optional< bool > enableAudioRecordingOrPlayout
Definition: IAgoraRtcEngine.h:1170
agora::rtc::VIDEO_PROFILE_PORTRAIT_120P_3
@ VIDEO_PROFILE_PORTRAIT_120P_3
Definition: IAgoraRtcEngine.h:8498
agora::rtc::RemoteVideoStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:472
agora::rtc::RemoteAudioStats::totalActiveTime
int totalActiveTime
Definition: IAgoraRtcEngine.h:426
agora::rtc::IRtcEngineEventHandler::onProxyConnected
virtual void onProxyConnected(const char *channel, uid_t uid, PROXY_TYPE proxyType, const char *localProxyIp, int elapsed)
Definition: IAgoraRtcEngine.h:1503
agora::rtc::DirectCdnStreamingStats
Definition: IAgoraRtcEngine.h:3288
agora::media::AUDIO_MIXING_DUAL_MONO_MODE
AUDIO_MIXING_DUAL_MONO_MODE
Definition: IAgoraMediaEngine.h:17
agora::rtc::VideoFormat
Definition: AgoraBase.h:2484
agora::rtc::LocalVideoStats::captureFrameHeight
int captureFrameHeight
Definition: IAgoraRtcEngine.h:280
agora::rtc::IRtcEngineEventHandler::onAudioRoutingChanged
virtual void onAudioRoutingChanged(int deviceType, int routing)
Definition: IAgoraRtcEngine.h:2490
agora::rtc::AGORA_IID_VIDEO_DEVICE_MANAGER
@ AGORA_IID_VIDEO_DEVICE_MANAGER
Definition: AgoraBase.h:854
agora::rtc::IRtcEngine::startEchoTest
virtual int startEchoTest(int intervalInSeconds)=0
agora::rtc::RTMP_STREAM_LIFE_CYCLE_TYPE
RTMP_STREAM_LIFE_CYCLE_TYPE
Definition: IAgoraRtcEngine.h:679
agora::rtc::IRtcEngine::setLowlightEnhanceOptions
virtual int setLowlightEnhanceOptions(bool enabled, const LowlightEnhanceOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_6
@ VIDEO_PROFILE_PORTRAIT_360P_6
Definition: IAgoraRtcEngine.h:8518
agora::rtc::IRtcEngine::setVideoScenario
virtual int setVideoScenario(VIDEO_APPLICATION_SCENARIO_TYPE scenarioType)=0
agora::rtc::IRtcEngine::getUserInfoByUserAccount
virtual int getUserInfoByUserAccount(const char *userAccount, rtc::UserInfo *userInfo)=0
agora::rtc::DataStreamConfig
Definition: AgoraBase.h:1929
agora::rtc::IRtcEngineEventHandler::onVideoDeviceStateChanged
virtual void onVideoDeviceStateChanged(const char *deviceId, int deviceType, int deviceState)
Definition: IAgoraRtcEngine.h:1657
agora::rtc::IRtcEngine::getExtensionProperty
virtual int getExtensionProperty(const char *provider, const char *extension, const ExtensionInfo &extensionInfo, const char *key, char *value, int buf_len)=0
agora::rtc::PublisherConfiguration
Definition: IAgoraRtcEngine.h:690
agora::rtc::IRtcEngine::enableAudioVolumeIndication
virtual int enableAudioVolumeIndication(int interval, int smooth, bool reportVad)=0
agora::rtc::IRtcEngine::setAVSyncSource
virtual int setAVSyncSource(const char *channelId, uid_t uid)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_240P_4
@ VIDEO_PROFILE_PORTRAIT_240P_4
Definition: IAgoraRtcEngine.h:8510
agora::rtc::IRtcEngineEventHandler::onUserJoined
virtual void onUserJoined(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1891
agora::rtc::RemoteVideoStats::e2eDelay
int e2eDelay
Definition: IAgoraRtcEngine.h:484
agora::rtc::DirectCdnStreamingMediaOptions::customVideoTrackId
Optional< video_track_id_t > customVideoTrackId
Definition: IAgoraRtcEngine.h:3383
agora::rtc::AUDIO_EQUALIZATION_BAND_8K
@ AUDIO_EQUALIZATION_BAND_8K
Definition: IAgoraRtcEngine.h:196
REPLACE_BY
#define REPLACE_BY(X)
agora::rtc::IRtcEngine::setHeadphoneEQPreset
virtual int setHeadphoneEQPreset(HEADPHONE_EQUALIZER_PRESET preset)=0
agora::rtc::DirectCdnStreamingMediaOptions
Definition: IAgoraRtcEngine.h:3343
agora::rtc::AdvancedAudioOptions
Definition: IAgoraRtcEngine.h:1010
agora::rtc::ScreenCaptureConfiguration::displayId
uint32_t displayId
Definition: IAgoraRtcEngine.h:834
agora::rtc::PERMISSION_TYPE
PERMISSION_TYPE
Definition: AgoraBase.h:5603
agora::rtc::AUDIO_MIXING_REASON_INTERRUPTED_EOF
@ AUDIO_MIXING_REASON_INTERRUPTED_EOF
Definition: IAgoraRtcEngine.h:96
agora::rtc::RemoteAudioStats::qoeQuality
int qoeQuality
Definition: IAgoraRtcEngine.h:434
agora::rtc::IRtcEngine::setLogFileSize
virtual int setLogFileSize(unsigned int fileSizeInKBytes)=0
agora::rtc::LocalVideoStats::regulatedCaptureFrameWidth
int regulatedCaptureFrameWidth
Definition: IAgoraRtcEngine.h:288
agora::rtc::InjectStreamConfig::audioSampleRate
AUDIO_SAMPLE_RATE_TYPE audioSampleRate
Definition: IAgoraRtcEngine.h:655
agora::rtc::IRtcEngineEventHandler::onExtensionStarted
virtual void onExtensionStarted(const char *provider, const char *extension)
Definition: IAgoraRtcEngine.h:2841
agora::rtc::IRtcEngine::startAudioRecording
virtual int startAudioRecording(const char *filePath, int sampleRate, AUDIO_RECORDING_QUALITY_TYPE quality)=0
agora::rtc::VideoCompositingLayout::regions
const Region * regions
Definition: IAgoraRtcEngine.h:608
agora::rtc::IVideoDeviceCollection::~IVideoDeviceCollection
virtual ~IVideoDeviceCollection()
Definition: IAgoraRtcEngine.h:2915
agora::commons::LOG_LEVEL
OPTIONAL_ENUM_CLASS LOG_LEVEL
Definition: IAgoraLog.h:33
agora::rtc::AUDIO_MIXING_STATE_PLAYING
@ AUDIO_MIXING_STATE_PLAYING
Definition: IAgoraRtcEngine.h:77
agora::rtc::DIRECT_CDN_STREAMING_STATE_IDLE
@ DIRECT_CDN_STREAMING_STATE_IDLE
Definition: IAgoraRtcEngine.h:3274
agora::rtc::IRtcEngine::addVideoWatermark
virtual int addVideoWatermark(const char *watermarkUrl, const WatermarkOptions &options)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_8
@ VIDEO_PROFILE_PORTRAIT_480P_8
Definition: IAgoraRtcEngine.h:8538
agora::rtc::IRtcEngineEventHandler::onRemoteSubscribeFallbackToAudioOnly
virtual void onRemoteSubscribeFallbackToAudioOnly(uid_t uid, bool isFallbackOrRecover)
Definition: IAgoraRtcEngine.h:2589
agora::rtc::DirectCdnStreamingMediaOptions::publishCameraTrack
Optional< bool > publishCameraTrack
Definition: IAgoraRtcEngine.h:3349
agora::media::UNKNOWN_MEDIA_SOURCE
@ UNKNOWN_MEDIA_SOURCE
Definition: AgoraMediaBase.h:315
agora::rtc::IRtcEngineEventHandler::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Definition: IAgoraRtcEngine.h:2686
agora::rtc::RtcEngineContext::eventHandler
IRtcEngineEventHandler * eventHandler
Definition: IAgoraRtcEngine.h:3073
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_3
@ VIDEO_PROFILE_LANDSCAPE_480P_3
Definition: IAgoraRtcEngine.h:8462
agora::rtc::INJECT_STREAM_STATUS_STOP_FAILED
@ INJECT_STREAM_STATUS_STOP_FAILED
Definition: IAgoraRtcEngine.h:150
agora::rtc::IRtcEngine::setRemoteVideoSubscriptionOptions
virtual int setRemoteVideoSubscriptionOptions(uid_t uid, const VideoSubscriptionOptions &options)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_10
@ VIDEO_PROFILE_PORTRAIT_480P_10
Definition: IAgoraRtcEngine.h:8542
agora::rtc::IRtcEngine::startScreenCapture
virtual int startScreenCapture(VIDEO_SOURCE_TYPE sourceType, const ScreenCaptureConfiguration &config)=0
agora::rtc::IRtcEngine::disableVideo
virtual int disableVideo()=0
agora::rtc::AVideoDeviceManager::AVideoDeviceManager
AVideoDeviceManager(IRtcEngine *engine)
Definition: IAgoraRtcEngine.h:8390
agora::rtc::LocalVideoStats::hwEncoderAccelerating
int hwEncoderAccelerating
Definition: IAgoraRtcEngine.h:340
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStateChanged
virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:1851
agora::rtc::IAudioEncodedFrameObserver
Definition: AgoraBase.h:5068
agora::rtc::DirectCdnStreamingMediaOptions::operator=
DirectCdnStreamingMediaOptions & operator=(const DirectCdnStreamingMediaOptions &replace)
Definition: IAgoraRtcEngine.h:3421
agora::rtc::IRtcEngine::setAudioScenario
virtual int setAudioScenario(AUDIO_SCENARIO_TYPE scenario)=0
agora::rtc::IDirectCdnStreamingEventHandler::~IDirectCdnStreamingEventHandler
virtual ~IDirectCdnStreamingEventHandler()
Definition: IAgoraRtcEngine.h:3321
agora::rtc::IRtcEngine::setLocalAccessPoint
virtual int setLocalAccessPoint(const LocalAccessPointConfiguration &config)=0
agora::rtc::IRtcEngineEventHandler::onLocalVideoTranscoderError
virtual void onLocalVideoTranscoderError(const TranscodingVideoStream &stream, VIDEO_TRANSCODER_ERROR error)
Definition: IAgoraRtcEngine.h:2891
agora::rtc::IRtcEngine::setExtensionProviderProperty
virtual int setExtensionProviderProperty(const char *provider, const char *key, const char *value)=0
agora::rtc::LeaveChannelOptions
Definition: IAgoraRtcEngine.h:1426
agora::rtc::VIDEO_PROFILE_PORTRAIT_120P
@ VIDEO_PROFILE_PORTRAIT_120P
Definition: IAgoraRtcEngine.h:8496
agora::CHANNEL_PROFILE_TYPE
CHANNEL_PROFILE_TYPE
Definition: AgoraBase.h:256
agora::rtc::LocalVideoStats::sentBitrate
int sentBitrate
Definition: IAgoraRtcEngine.h:267
agora::rtc::ChannelMediaOptions::ChannelMediaOptions
ChannelMediaOptions()
Definition: IAgoraRtcEngine.h:1247
agora::rtc::IRtcEngine::stopPreview
virtual int stopPreview(VIDEO_SOURCE_TYPE sourceType)=0
agora::rtc::DIRECT_CDN_STREAMING_ERROR_AUDIO_PUBLICATION
@ DIRECT_CDN_STREAMING_ERROR_AUDIO_PUBLICATION
Definition: IAgoraRtcEngine.h:3261
agora::rtc::STREAM_SUBSCRIBE_STATE
STREAM_SUBSCRIBE_STATE
Definition: AgoraBase.h:5628
agora::rtc::IRtcEngine::startRtmpStreamWithTranscoding
virtual int startRtmpStreamWithTranscoding(const char *url, const LiveTranscoding &transcoding)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P
@ VIDEO_PROFILE_PORTRAIT_480P
Definition: IAgoraRtcEngine.h:8530
agora::rtc::IRtcEngineEventHandler::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(int elapsed)
Definition: IAgoraRtcEngine.h:2267
agora::rtc::IRtcEngine::queryDeviceScore
virtual int queryDeviceScore()=0
agora::rtc::ChannelMediaRelayConfiguration
Definition: AgoraBase.h:5309
agora::rtc::IRtcEngine::enableExtension
virtual int enableExtension(const char *provider, const char *extension, bool enable=true, agora::media::MEDIA_SOURCE_TYPE type=agora::media::UNKNOWN_MEDIA_SOURCE)=0
agora::rtc::INTERFACE_ID_TYPE
INTERFACE_ID_TYPE
Definition: AgoraBase.h:852
agora::rtc::AUDIO_REVERB_ROOM_SIZE
@ AUDIO_REVERB_ROOM_SIZE
Definition: IAgoraRtcEngine.h:218
agora::rtc::VIDEO_VIRTUAL_BACKGROUND
@ VIDEO_VIRTUAL_BACKGROUND
Definition: IAgoraRtcEngine.h:1419
agora::rtc::IRtcEngine::sendStreamMessage
virtual int sendStreamMessage(int streamId, const char *data, size_t length)=0
agora::rtc::IRtcEngine::setRemoteVoicePosition
virtual int setRemoteVoicePosition(uid_t uid, double pan, double gain)=0
agora::rtc::IRtcEngine::startCameraCapture
virtual int startCameraCapture(VIDEO_SOURCE_TYPE sourceType, const CameraCapturerConfiguration &config)=0
agora::rtc::IVideoDeviceCollection
Definition: IAgoraRtcEngine.h:2913
agora::rtc::IRtcEngine::setDualStreamMode
virtual int setDualStreamMode(SIMULCAST_STREAM_MODE mode, const SimulcastStreamConfig &streamConfig)=0
agora::rtc::VideoCompositingLayout::Region::height
double height
Definition: IAgoraRtcEngine.h:567
agora::rtc::IRtcEngine::setAINSMode
virtual int setAINSMode(bool enabled, AUDIO_AINS_MODE mode)=0
agora::rtc::LocalVideoStats::sentFrameRate
int sentFrameRate
Definition: IAgoraRtcEngine.h:271
IAgoraH265Transcoder.h
AGORA_API
#define AGORA_API
Definition: AgoraBase.h:60
agora::rtc::VIDEO_CODEC_TYPE
VIDEO_CODEC_TYPE
Definition: AgoraBase.h:1151
agora::rtc::LocalVideoStats::encodedFrameWidth
int encodedFrameWidth
Definition: IAgoraRtcEngine.h:298
agora::rtc::VideoDenoiserOptions
Definition: AgoraBase.h:4355
agora::rtc::CameraCapturerConfiguration::deviceId
char deviceId[MAX_DEVICE_ID_LENGTH]
Definition: IAgoraRtcEngine.h:796
agora::rtc::IRtcEngine::leaveChannel
virtual int leaveChannel(const LeaveChannelOptions &options)=0
agora::rtc::IRtcEngine::getLoopbackRecordingVolume
virtual int getLoopbackRecordingVolume()=0
agora::rtc::IRtcEngine::registerPacketObserver
virtual int registerPacketObserver(IPacketObserver *observer)=0
agora::rtc::DirectCdnStreamingStats::videoBitrate
int videoBitrate
Definition: IAgoraRtcEngine.h:3307
agora::rtc::IRtcEngine::stopRhythmPlayer
virtual int stopRhythmPlayer()=0
agora::rtc::IRtcEngine::muteLocalAudioStream
virtual int muteLocalAudioStream(bool mute)=0
agora::rtc::DirectCdnStreamingStats::fps
int fps
Definition: IAgoraRtcEngine.h:3302
agora::rtc::LOCAL_AUDIO_STREAM_ERROR
LOCAL_AUDIO_STREAM_ERROR
Definition: AgoraBase.h:2656
END_COMPARE
#define END_COMPARE()
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P_4
@ VIDEO_PROFILE_LANDSCAPE_240P_4
Definition: IAgoraRtcEngine.h:8440
agora::rtc::IRtcEngine::takeSnapshot
virtual int takeSnapshot(uid_t uid, const char *filePath)=0
agora::rtc::IRtcEngine::setRemoteSubscribeFallbackOption
virtual int setRemoteSubscribeFallbackOption(STREAM_FALLBACK_OPTIONS option)=0
agora::rtc::AUDIO_EQUALIZATION_BAND_1K
@ AUDIO_EQUALIZATION_BAND_1K
Definition: IAgoraRtcEngine.h:184
agora::rtc::IMetadataObserver::VIDEO_METADATA
@ VIDEO_METADATA
Definition: IAgoraRtcEngine.h:3184
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_9
@ VIDEO_PROFILE_LANDSCAPE_480P_9
Definition: IAgoraRtcEngine.h:8470
agora::rtc::IRtcEngine::enableContentInspect
virtual int enableContentInspect(bool enabled, const media::ContentInspectConfig &config)=0
agora::rtc::AUDIO_MIXING_REASON_CAN_NOT_OPEN
@ AUDIO_MIXING_REASON_CAN_NOT_OPEN
Definition: IAgoraRtcEngine.h:92
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_4
@ VIDEO_PROFILE_PORTRAIT_360P_4
Definition: IAgoraRtcEngine.h:8516
agora::rtc::RemoteAudioStats::frozenRate
int frozenRate
Definition: IAgoraRtcEngine.h:394
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_6
@ VIDEO_PROFILE_LANDSCAPE_360P_6
Definition: IAgoraRtcEngine.h:8448
agora::rtc::ChannelMediaOptions::autoSubscribeAudio
Optional< bool > autoSubscribeAudio
Definition: IAgoraRtcEngine.h:1158
agora::rtc::VirtualBackgroundSource
Definition: AgoraBase.h:4421
agora::rtc::IVideoDeviceManager
Definition: IAgoraRtcEngine.h:2957
agora::rtc::IRtcEngine::adjustCustomAudioPublishVolume
virtual int adjustCustomAudioPublishVolume(track_id_t trackId, int volume)=0
agora::rtc::IMetadataObserver::DEFAULT_METADATA_SIZE_IN_BYTE
@ DEFAULT_METADATA_SIZE_IN_BYTE
Definition: IAgoraRtcEngine.h:3192
agora::rtc::AUDIO_REVERB_WET_LEVEL
@ AUDIO_REVERB_WET_LEVEL
Definition: IAgoraRtcEngine.h:214
agora::rtc::VIDEO_CAPTURE_DEVICE
@ VIDEO_CAPTURE_DEVICE
Definition: IAgoraRtcEngine.h:57
agora::rtc::IRtcEngineEventHandler::onStreamMessage
virtual void onStreamMessage(uid_t userId, int streamId, const char *data, size_t length, uint64_t sentTs)
Definition: IAgoraRtcEngine.h:2194
agora::rtc::AUDIO_REVERB_TYPE
AUDIO_REVERB_TYPE
Definition: IAgoraRtcEngine.h:206
agora::media::base::RENDER_MODE_TYPE
RENDER_MODE_TYPE
Definition: AgoraMediaBase.h:585
agora::rtc::IRtcEngine::muteLocalVideoStream
virtual int muteLocalVideoStream(bool mute)=0
agora::rtc::LocalVideoStats::targetBitrate
int targetBitrate
Definition: IAgoraRtcEngine.h:307
agora::rtc::DirectCdnStreamingMediaOptions::publishCustomAudioTrack
Optional< bool > publishCustomAudioTrack
Definition: IAgoraRtcEngine.h:3361
agora::rtc::IMetadataObserver::UNKNOWN_METADATA
@ UNKNOWN_METADATA
Definition: IAgoraRtcEngine.h:3181
agora::rtc::INJECT_STREAM_STATUS
INJECT_STREAM_STATUS
Definition: IAgoraRtcEngine.h:110
agora::rtc::IRtcEngine::setVoiceBeautifierParameters
virtual int setVoiceBeautifierParameters(VOICE_BEAUTIFIER_PRESET preset, int param1, int param2)=0
agora::rtc::ChannelMediaOptions::publishScreenCaptureAudio
Optional< bool > publishScreenCaptureAudio
Definition: IAgoraRtcEngine.h:1079
agora::rtc::IRtcEngine::setLogLevel
virtual int setLogLevel(commons::LOG_LEVEL level)=0
agora::rtc::IRtcEngineEventHandler::onChannelMediaRelayStateChanged
virtual void onChannelMediaRelayStateChanged(int state, int code)
Definition: IAgoraRtcEngine.h:2525
agora::rtc::IRtcEngine::setExtensionProperty
virtual int setExtensionProperty(const char *provider, const char *extension, const char *key, const char *value, agora::media::MEDIA_SOURCE_TYPE type=agora::media::UNKNOWN_MEDIA_SOURCE)=0
agora::rtc::IRtcEngine::setRemoteUserPriority
virtual int setRemoteUserPriority(uid_t uid, PRIORITY_TYPE userPriority)=0
agora::rtc::RemoteAudioStats::jitterBufferDelay
int jitterBufferDelay
Definition: IAgoraRtcEngine.h:365
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P_6
@ VIDEO_PROFILE_PORTRAIT_720P_6
Definition: IAgoraRtcEngine.h:8550
agora::rtc::PublisherConfiguration::width
int width
Definition: IAgoraRtcEngine.h:694
agora::rtc::IRtcEngineEventHandler::onUserStateChanged
virtual void onUserStateChanged(uid_t uid, uint32_t state)
Definition: IAgoraRtcEngine.h:1973
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P_3
@ VIDEO_PROFILE_LANDSCAPE_1080P_3
Definition: IAgoraRtcEngine.h:8484
agora::rtc::IRtcEngineEventHandler::onRhythmPlayerStateChanged
virtual void onRhythmPlayerStateChanged(RHYTHM_PLAYER_STATE_TYPE state, RHYTHM_PLAYER_ERROR_TYPE errorCode)
Definition: IAgoraRtcEngine.h:2150
agora::rtc::IRtcEngineEventHandler::onStreamMessageError
virtual void onStreamMessageError(uid_t userId, int streamId, int code, int missed, int cached)
Definition: IAgoraRtcEngine.h:2214
agora::rtc::IRtcEngine::startDirectCdnStreaming
virtual int startDirectCdnStreaming(IDirectCdnStreamingEventHandler *eventHandler, const char *publishUrl, const DirectCdnStreamingMediaOptions &options)=0
agora::rtc::IRtcEngine::setPlaybackAudioFrameParameters
virtual int setPlaybackAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
agora::rtc::IVideoDeviceManager::getDevice
virtual int getDevice(char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::IMetadataObserver::onMetadataReceived
virtual void onMetadataReceived(const Metadata &metadata)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_4
@ VIDEO_PROFILE_PORTRAIT_480P_4
Definition: IAgoraRtcEngine.h:8534
agora::rtc::WlAccStats
Definition: AgoraBase.h:4128
agora::rtc::RtcEngineContext::logConfig
commons::LogConfig logConfig
Definition: IAgoraRtcEngine.h:3130
agora::rtc::IRtcEngineEventHandler::onRtmpStreamingStateChanged
virtual void onRtmpStreamingStateChanged(const char *url, RTMP_STREAM_PUBLISH_STATE state, RTMP_STREAM_PUBLISH_ERROR_TYPE errCode)
Definition: IAgoraRtcEngine.h:2436
agora::rtc::PublisherConfiguration::defaultLayout
int defaultLayout
Definition: IAgoraRtcEngine.h:712
agora::rtc::STREAM_FALLBACK_OPTION_DISABLED
@ STREAM_FALLBACK_OPTION_DISABLED
Definition: IAgoraRtcEngine.h:233
agora::rtc::AUDIO_EQUALIZATION_BAND_31
@ AUDIO_EQUALIZATION_BAND_31
Definition: IAgoraRtcEngine.h:164
agora::rtc::UDP_PROXY_TYPE
@ UDP_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1400
agora::rtc::VideoCompositingLayout::canvasWidth
int canvasWidth
Definition: IAgoraRtcEngine.h:596
agora::rtc::IRtcEngine::stopScreenCapture
virtual int stopScreenCapture(VIDEO_SOURCE_TYPE sourceType)=0
agora::rtc::VideoCompositingLayout::appDataLength
int appDataLength
Definition: IAgoraRtcEngine.h:617
agora::rtc::PROXY_TYPE
PROXY_TYPE
Definition: IAgoraRtcEngine.h:1394
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW
Definition: IAgoraRtcEngine.h:238
agora::rtc::ExtensionInfo::ExtensionInfo
ExtensionInfo()
Definition: IAgoraRtcEngine.h:3472
agora::rtc::MEDIA_TRACE_EVENT
MEDIA_TRACE_EVENT
Definition: AgoraBase.h:5880
agora::rtc::DirectCdnStreamingMediaOptions::DirectCdnStreamingMediaOptions
DirectCdnStreamingMediaOptions()
Definition: IAgoraRtcEngine.h:3385
agora::rtc::AUDIO_MIXING_REASON_ONE_LOOP_COMPLETED
@ AUDIO_MIXING_REASON_ONE_LOOP_COMPLETED
Definition: IAgoraRtcEngine.h:98
agora::rtc::IRtcEngine::setDirectCdnStreamingVideoConfiguration
virtual int setDirectCdnStreamingVideoConfiguration(const VideoEncoderConfiguration &config)=0
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) 1
Definition: IAgoraRtcEngine.h:1786
agora::rtc::RTMP_STREAMING_EVENT
RTMP_STREAMING_EVENT
Definition: AgoraBase.h:3434
agora::rtc::VideoCompositingLayout::Region::zOrder
int zOrder
Definition: IAgoraRtcEngine.h:571
agora::rtc::IRtcEngine::registerAudioEncodedFrameObserver
virtual int registerAudioEncodedFrameObserver(const AudioEncodedFrameObserverConfig &config, IAudioEncodedFrameObserver *observer)=0
agora::rtc::RtcEngineContext::audioScenario
AUDIO_SCENARIO_TYPE audioScenario
Definition: IAgoraRtcEngine.h:3104
agora::rtc::STREAM_FALLBACK_OPTION_AUDIO_ONLY
@ STREAM_FALLBACK_OPTION_AUDIO_ONLY
Definition: IAgoraRtcEngine.h:242
agora::rtc::IRtcEngine::joinChannel
virtual int joinChannel(const char *token, const char *channelId, uid_t uid, const ChannelMediaOptions &options)=0
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P_3
@ VIDEO_PROFILE_PORTRAIT_720P_3
Definition: IAgoraRtcEngine.h:8546
agora::rtc::AUDIO_EQUALIZATION_BAND_500
@ AUDIO_EQUALIZATION_BAND_500
Definition: IAgoraRtcEngine.h:180
agora::rtc::RemoteVideoStats::publishDuration
int publishDuration
Definition: IAgoraRtcEngine.h:536
agora::rtc::RemoteAudioStats::RemoteAudioStats
RemoteAudioStats()
Definition: IAgoraRtcEngine.h:444
agora::rtc::IRtcEngine::setDualStreamMode
virtual int setDualStreamMode(SIMULCAST_STREAM_MODE mode)=0
agora::rtc::IRtcEngine::joinChannelWithUserAccountEx
virtual int joinChannelWithUserAccountEx(const char *token, const char *channelId, const char *userAccount, const ChannelMediaOptions &options, IRtcEngineEventHandler *eventHandler)=0
agora::media::CONTENT_INSPECT_RESULT
CONTENT_INSPECT_RESULT
Definition: AgoraMediaBase.h:320
agora::rtc::LocalVideoStats::targetFrameRate
int targetFrameRate
Definition: IAgoraRtcEngine.h:310
agora::rtc::ChannelMediaOptions::enableBuiltInMediaEncryption
Optional< bool > enableBuiltInMediaEncryption
Definition: IAgoraRtcEngine.h:1220
agora::rtc::IRtcEngine::sendCustomReportMessage
virtual int sendCustomReportMessage(const char *id, const char *category, const char *event, const char *label, int value)=0
agora::rtc::IRtcEngineEventHandler::onUserMuteAudio
virtual void onUserMuteAudio(uid_t uid, bool muted)
Definition: IAgoraRtcEngine.h:1927
agora::rtc::NONE_PROXY_TYPE
@ NONE_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1397
agora::rtc::CodecCapInfo
Definition: AgoraBase.h:1751
agora::commons::LogConfig
Definition: IAgoraLog.h:82
agora::rtc::IRtcEngine::enableDualStreamMode
virtual int enableDualStreamMode(bool enabled) 1=0
agora::rtc::IRtcEngineEventHandler::onPermissionError
virtual void onPermissionError(PERMISSION_TYPE permissionType)
Definition: IAgoraRtcEngine.h:2710
agora::rtc::IRtcEngineEventHandler::onVideoSizeChanged
virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation)
Definition: IAgoraRtcEngine.h:1801
agora::rtc::MEDIA_DEVICE_STATE_TYPE
MEDIA_DEVICE_STATE_TYPE
Definition: IAgoraRtcEngine.h:8406
agora::rtc::ChannelMediaOptions::operator==
bool operator==(const ChannelMediaOptions &o) const
Definition: IAgoraRtcEngine.h:1294
createAgoraRtcEngine
AGORA_API agora::rtc::IRtcEngine *AGORA_CALL createAgoraRtcEngine()
IAgoraLog.h
agora::rtc::LocalVideoStats
Definition: IAgoraRtcEngine.h:259
agora::rtc::RemoteVideoStats::mosValue
int mosValue
Definition: IAgoraRtcEngine.h:544
agora::rtc::VIDEO_ORIENTATION
VIDEO_ORIENTATION
Definition: AgoraBase.h:935
agora::rtc::InjectStreamConfig::height
int height
Definition: IAgoraRtcEngine.h:639
agora::rtc::INJECT_STREAM_STATUS_STOP_UNAUTHORIZED
@ INJECT_STREAM_STATUS_STOP_UNAUTHORIZED
Definition: IAgoraRtcEngine.h:142
agora::rtc::IRtcEngine::muteAllRemoteAudioStreams
virtual int muteAllRemoteAudioStreams(bool mute)=0
agora::rtc::IRtcEngine::enableLoopbackRecording
virtual int enableLoopbackRecording(bool enabled, const char *deviceName=NULL)=0
agora::rtc::TCP_PROXY_AUTO_FALLBACK_TYPE
@ TCP_PROXY_AUTO_FALLBACK_TYPE
Definition: IAgoraRtcEngine.h:1409
agora::rtc::IRtcEngine::enableAudio
virtual int enableAudio()=0
agora::rtc::IDirectCdnStreamingEventHandler
Definition: IAgoraRtcEngine.h:3319
agora::rtc::STREAM_FALLBACK_OPTIONS
STREAM_FALLBACK_OPTIONS
Definition: IAgoraRtcEngine.h:229
agora::rtc::MEDIA_DEVICE_STATE_ACTIVE
@ MEDIA_DEVICE_STATE_ACTIVE
Definition: IAgoraRtcEngine.h:8412
agora::rtc::IMetadataObserver::~IMetadataObserver
virtual ~IMetadataObserver()
Definition: IAgoraRtcEngine.h:3217
agora::rtc::DirectCdnStreamingMediaOptions::operator==
bool operator==(const DirectCdnStreamingMediaOptions &o) const
Definition: IAgoraRtcEngine.h:3400
agora::rtc::AUDIO_SCENARIO_TYPE
AUDIO_SCENARIO_TYPE
Definition: AgoraBase.h:2449
agora::rtc::IRtcEngine::createCustomEncodedVideoTrack
virtual video_track_id_t createCustomEncodedVideoTrack(const SenderOptions &sender_option)=0
agora::rtc::EncryptionConfig
Definition: AgoraBase.h:5512
agora::rtc::IRtcEngine::startEchoTest
virtual int startEchoTest()=0
agora::rtc::LocalVideoStats::qualityAdaptIndication
QUALITY_ADAPT_INDICATION qualityAdaptIndication
Definition: IAgoraRtcEngine.h:314
agora::rtc::IRtcEngine::registerExtension
virtual int registerExtension(const char *provider, const char *extension, agora::media::MEDIA_SOURCE_TYPE type=agora::media::UNKNOWN_MEDIA_SOURCE)=0
agora::rtc::INJECT_STREAM_STATUS_START_TIMEDOUT
@ INJECT_STREAM_STATUS_START_TIMEDOUT
Definition: IAgoraRtcEngine.h:126
agora::rtc::RtcEngineContext::channelProfile
CHANNEL_PROFILE_TYPE channelProfile
Definition: IAgoraRtcEngine.h:3090
agora::rtc::AUDIO_PLAYOUT_DEVICE
@ AUDIO_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:45
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed) 1
Definition: IAgoraRtcEngine.h:2299
agora::rtc::REMOTE_AUDIO_STATE_REASON
REMOTE_AUDIO_STATE_REASON
Definition: AgoraBase.h:2882
agora::rtc::RtcEngineContext::autoRegisterAgoraExtensions
bool autoRegisterAgoraExtensions
Definition: IAgoraRtcEngine.h:3158
agora::rtc::RAW_AUDIO_FRAME_OP_MODE_TYPE
RAW_AUDIO_FRAME_OP_MODE_TYPE
Definition: AgoraMediaBase.h:184
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_4
@ VIDEO_PROFILE_LANDSCAPE_480P_4
Definition: IAgoraRtcEngine.h:8464
agora::rtc::IRtcEngine::setMixedAudioFrameParameters
virtual int setMixedAudioFrameParameters(int sampleRate, int channel, int samplesPerCall)=0
agora::rtc::IRtcEngineEventHandler::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const char *token)
Definition: IAgoraRtcEngine.h:2244
agora::rtc::AdvancedAudioOptions::~AdvancedAudioOptions
~AdvancedAudioOptions()
Definition: IAgoraRtcEngine.h:1017
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed) 1
Definition: IAgoraRtcEngine.h:2278
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_10
@ VIDEO_PROFILE_LANDSCAPE_480P_10
Definition: IAgoraRtcEngine.h:8472
agora::rtc::PRIORITY_HIGH
@ PRIORITY_HIGH
Definition: IAgoraRtcEngine.h:248
AgoraOptional.h
agora::rtc::IRtcEngine::startLastmileProbeTest
virtual int startLastmileProbeTest(const LastmileProbeConfig &config)=0
agora::rtc::RtcEngineContext::appId
const char * appId
Definition: IAgoraRtcEngine.h:3080
agora::rtc::RemoteVideoStats::rxVideoBytes
unsigned int rxVideoBytes
Definition: IAgoraRtcEngine.h:548
agora::rtc::RemoteAudioStats
Definition: IAgoraRtcEngine.h:347
agora::rtc::VideoCompositingLayout::VideoCompositingLayout
VideoCompositingLayout()
Definition: IAgoraRtcEngine.h:619
agora::rtc::TranscodingVideoStream
Definition: AgoraBase.h:3745
agora::rtc::IVideoDeviceCollection::setDevice
virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::IRtcEngine::setLocalRenderMode
virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode)=0
agora::rtc::IRtcEngineEventHandler::onAudioDeviceStateChanged
virtual void onAudioDeviceStateChanged(const char *deviceId, int deviceType, int deviceState)
Definition: IAgoraRtcEngine.h:1618
agora::rtc::RemoteAudioStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:351
agora::rtc::IRtcEngineEventHandler::onCameraReady
virtual void onCameraReady() 1
Definition: IAgoraRtcEngine.h:2049
agora::rtc::ChannelMediaOptions::publishThirdCameraTrack
Optional< bool > publishThirdCameraTrack
Definition: IAgoraRtcEngine.h:1053
agora::rtc::AUDIO_EFFECT_PRESET
AUDIO_EFFECT_PRESET
Definition: AgoraBase.h:4646
agora::rtc::IRtcEngine::destroyMediaPlayer
virtual int destroyMediaPlayer(agora_refptr< IMediaPlayer > media_player)=0
agora::rtc::IRtcEngine::setVoiceBeautifierPreset
virtual int setVoiceBeautifierPreset(VOICE_BEAUTIFIER_PRESET preset)=0
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStateChanged
virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:2339
agora::rtc::LocalVideoStats::captureBrightnessLevel
CAPTURE_BRIGHTNESS_LEVEL_TYPE captureBrightnessLevel
Definition: IAgoraRtcEngine.h:331
agora::rtc::IRtcEngineEventHandler::onUserAccountUpdated
virtual void onUserAccountUpdated(uid_t uid, const char *userAccount)
Definition: IAgoraRtcEngine.h:2880
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P
@ VIDEO_PROFILE_LANDSCAPE_360P
Definition: IAgoraRtcEngine.h:8442
agora::rtc::IRtcEngine::setAudioProfile
virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile, AUDIO_SCENARIO_TYPE scenario) 1=0
agora::rtc::LocalVideoStats::encoderOutputFrameRate
int encoderOutputFrameRate
Definition: IAgoraRtcEngine.h:295
agora::rtc::LocalVideoStats::codecType
VIDEO_CODEC_TYPE codecType
Definition: IAgoraRtcEngine.h:324
agora::rtc::ChannelMediaOptions::isAudioFilterable
Optional< bool > isAudioFilterable
Definition: IAgoraRtcEngine.h:1245
agora::rtc::AUDIO_AINS_MODE
AUDIO_AINS_MODE
Definition: AgoraBase.h:2385
agora::rtc::VIDEO_STREAM_TYPE
VIDEO_STREAM_TYPE
Definition: AgoraBase.h:1521
agora::rtc::VIDEO_PROFILE_PORTRAIT_4K_3
@ VIDEO_PROFILE_PORTRAIT_4K_3
Definition: IAgoraRtcEngine.h:8564
agora::rtc::IVideoDeviceManager::setDevice
virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::RtcStats
Definition: AgoraBase.h:2090
agora::rtc::PublisherConfiguration::lifecycle
int lifecycle
Definition: IAgoraRtcEngine.h:715
agora::rtc::ChannelMediaOptions::audienceLatencyLevel
Optional< AUDIENCE_LATENCY_LEVEL_TYPE > audienceLatencyLevel
Definition: IAgoraRtcEngine.h:1183
agora::rtc::RtcEngineContext::license
const char * license
Definition: IAgoraRtcEngine.h:3095
AgoraMediaBase.h
agora::rtc::PublisherConfiguration::PublisherConfiguration
PublisherConfiguration()
Definition: IAgoraRtcEngine.h:742
agora::rtc::ChannelMediaOptions::publishMediaPlayerVideoTrack
Optional< bool > publishMediaPlayerVideoTrack
Definition: IAgoraRtcEngine.h:1140
agora::rtc::VIDEO_PROFILE_PORTRAIT_1080P_3
@ VIDEO_PROFILE_PORTRAIT_1080P_3
Definition: IAgoraRtcEngine.h:8554
agora::rtc::IRtcEngine::startRtmpStreamWithoutTranscoding
virtual int startRtmpStreamWithoutTranscoding(const char *url)=0
agora::rtc::QUALITY_REPORT_HTML
@ QUALITY_REPORT_HTML
Definition: IAgoraRtcEngine.h:8402
agora::rtc::LowlightEnhanceOptions
Definition: AgoraBase.h:4314
agora::rtc::IRtcEngine::setRecordingAudioFrameParameters
virtual int setRecordingAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
agora::rtc::RemoteVideoStats::rxStreamType
VIDEO_STREAM_TYPE rxStreamType
Definition: IAgoraRtcEngine.h:512
agora::rtc::DIRECT_CDN_STREAMING_STATE_STOPPED
@ DIRECT_CDN_STREAMING_STATE_STOPPED
Definition: IAgoraRtcEngine.h:3278
agora::rtc::IRtcEngine::stopRtmpStream
virtual int stopRtmpStream(const char *url)=0
agora::rtc::IRtcEngine::adjustUserPlaybackSignalVolume
virtual int adjustUserPlaybackSignalVolume(unsigned int uid, int volume)=0
agora::rtc::IRtcEngine::startEchoTest
virtual int startEchoTest(const EchoTestConfiguration &config)=0
agora::rtc::ChannelMediaOptions::mediaPlayerAudioDelayMs
Optional< int > mediaPlayerAudioDelayMs
Definition: IAgoraRtcEngine.h:1203
agora::rtc::ChannelMediaOptions::clientRoleType
Optional< CLIENT_ROLE_TYPE > clientRoleType
Definition: IAgoraRtcEngine.h:1179
agora::rtc::LocalVideoStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:263
agora::rtc::STREAM_PUBLISH_STATE
STREAM_PUBLISH_STATE
Definition: AgoraBase.h:5659
agora::rtc::IRtcEngineEventHandler::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1474
agora::rtc::WatermarkOptions
Definition: AgoraBase.h:2053
agora::rtc::IRtcEngine::adjustPlaybackSignalVolume
virtual int adjustPlaybackSignalVolume(int volume)=0
agora::rtc::LocalAudioStats
Definition: AgoraBase.h:3300
agora::rtc::RecorderStreamInfo
Definition: AgoraBase.h:5961
agora::rtc::LOCAL_AUDIO_STREAM_STATE
LOCAL_AUDIO_STREAM_STATE
Definition: AgoraBase.h:2634
agora::rtc::VIDEO_MIRROR_MODE_DISABLED
@ VIDEO_MIRROR_MODE_DISABLED
Definition: AgoraBase.h:1721
agora::rtc::IRtcEngine::setVideoDenoiserOptions
virtual int setVideoDenoiserOptions(bool enabled, const VideoDenoiserOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
agora::rtc::AUDIO_RECORDING_QUALITY_TYPE
AUDIO_RECORDING_QUALITY_TYPE
Definition: AgoraBase.h:4917
agora::rtc::IRtcEngine::setupRemoteVideo
virtual int setupRemoteVideo(const VideoCanvas &canvas)=0
agora::rtc::IRtcEngine::stopCameraCapture
virtual int stopCameraCapture(VIDEO_SOURCE_TYPE sourceType)=0
__deprecated
#define __deprecated
Definition: AgoraBase.h:63
agora::rtc::VideoCompositingLayout::backgroundColor
const char * backgroundColor
Definition: IAgoraRtcEngine.h:604
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_4
@ VIDEO_PROFILE_LANDSCAPE_360P_4
Definition: IAgoraRtcEngine.h:8446
agora::rtc::ScreenCaptureConfiguration::params
ScreenCaptureParameters params
Definition: IAgoraRtcEngine.h:848
agora::rtc::IMetadataObserver::Metadata::buffer
unsigned char * buffer
Definition: IAgoraRtcEngine.h:3210
agora::rtc::IRtcEngine::setVoiceConversionParameters
virtual int setVoiceConversionParameters(VOICE_CONVERSION_PRESET preset, int param1, int param2)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P_5
@ VIDEO_PROFILE_LANDSCAPE_720P_5
Definition: IAgoraRtcEngine.h:8478
agora::rtc::IRtcEngine::setupLocalVideo
virtual int setupLocalVideo(const VideoCanvas &canvas)=0
agora::rtc::InjectStreamConfig
Definition: IAgoraRtcEngine.h:631
agora::rtc::HEADPHONE_EQUALIZER_PRESET
HEADPHONE_EQUALIZER_PRESET
Definition: AgoraBase.h:4818
agora::media::MEDIA_SOURCE_TYPE
MEDIA_SOURCE_TYPE
Definition: AgoraMediaBase.h:259
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P
@ VIDEO_PROFILE_LANDSCAPE_240P
Definition: IAgoraRtcEngine.h:8436
agora::rtc::ChannelMediaOptions::publishRhythmPlayerTrack
Optional< bool > publishRhythmPlayerTrack
Definition: IAgoraRtcEngine.h:1226
agora::rtc::IRtcEngine::startOrUpdateChannelMediaRelay
virtual int startOrUpdateChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration)=0
agora::rtc::ScreenCaptureConfiguration::isCaptureWindow
bool isCaptureWindow
Definition: IAgoraRtcEngine.h:830
agora::rtc::QUALITY_REPORT_JSON
@ QUALITY_REPORT_JSON
Definition: IAgoraRtcEngine.h:8399
agora::rtc::AUDIO_MIXING_REASON_ALL_LOOPS_COMPLETED
@ AUDIO_MIXING_REASON_ALL_LOOPS_COMPLETED
Definition: IAgoraRtcEngine.h:100
agora::rtc::IRtcEngine::startAudioRecording
virtual int startAudioRecording(const AudioRecordingConfiguration &config)=0
agora::rtc::IRtcEngineEventHandler::onConnectionInterrupted
virtual void onConnectionInterrupted() 1
Definition: IAgoraRtcEngine.h:2176
agora::rtc::LocalVideoStats::captureFrameWidth
int captureFrameWidth
Definition: IAgoraRtcEngine.h:277
agora::rtc::IRtcEngine::getExtensionProperty
virtual int getExtensionProperty(const char *provider, const char *extension, const char *key, char *value, int buf_len, agora::media::MEDIA_SOURCE_TYPE type=agora::media::UNKNOWN_MEDIA_SOURCE)=0
agora::rtc::RtcEngineContext
Definition: IAgoraRtcEngine.h:3069
agora::rtc::IRtcEngine::resumeAllChannelMediaRelay
virtual int resumeAllChannelMediaRelay()=0
agora::rtc::ChannelMediaOptions
Definition: IAgoraRtcEngine.h:1035
agora::rtc::IRtcEngine::enableVideo
virtual int enableVideo()=0
agora::rtc::IRtcEngine
Definition: IAgoraRtcEngine.h:3489
agora::rtc::LocalVideoStats::encodedBitrate
int encodedBitrate
Definition: IAgoraRtcEngine.h:318
agora::rtc::IVideoDeviceCollection::getDevice
virtual int getDevice(int index, char deviceNameUTF8[MAX_DEVICE_ID_LENGTH], char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::IRtcEngineEventHandler::onAudioSubscribeStateChanged
virtual void onAudioSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2761
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStats
virtual void onRemoteAudioStats(const RemoteAudioStats &stats)
Definition: IAgoraRtcEngine.h:2011
agora::rtc::IRtcEngineEventHandler::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) 1
Definition: IAgoraRtcEngine.h:2608
agora::rtc::IRtcEngine::setClientRole
virtual int setClientRole(CLIENT_ROLE_TYPE role)=0
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoFrame
virtual void onFirstRemoteVideoFrame(uid_t userId, int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1865
agora::rtc::DIRECT_CDN_STREAMING_ERROR_VIDEO_PUBLICATION
@ DIRECT_CDN_STREAMING_ERROR_VIDEO_PUBLICATION
Definition: IAgoraRtcEngine.h:3263
agora::rtc::AUDIO_MIXING_REASON_TYPE
AUDIO_MIXING_REASON_TYPE
Definition: IAgoraRtcEngine.h:90
agora::rtc::RemoteAudioStats::plcCount
uint32_t plcCount
Definition: IAgoraRtcEngine.h:420
agora::rtc::ScreenCaptureConfiguration
Definition: IAgoraRtcEngine.h:824
agora::rtc::IRtcEngine::startAudioRecording
virtual int startAudioRecording(const char *filePath, AUDIO_RECORDING_QUALITY_TYPE quality)=0
agora::rtc::IVideoDeviceManager::enumerateVideoDevices
virtual IVideoDeviceCollection * enumerateVideoDevices()=0
agora::rtc::VideoCompositingLayout::Region::Region
Region()
Definition: IAgoraRtcEngine.h:581
agora::rtc::ImageTrackOptions::fps
int fps
Definition: IAgoraRtcEngine.h:1022
agora::rtc::LOCAL_VIDEO_STREAM_ERROR
LOCAL_VIDEO_STREAM_ERROR
Definition: AgoraBase.h:2727
agora::rtc::DIRECT_CDN_STREAMING_STATE_RECOVERING
@ DIRECT_CDN_STREAMING_STATE_RECOVERING
Definition: IAgoraRtcEngine.h:3282
agora::rtc::IVideoDeviceManager::~IVideoDeviceManager
virtual ~IVideoDeviceManager()
Definition: IAgoraRtcEngine.h:2959
agora::rtc::AudioRecordingConfiguration
Definition: AgoraBase.h:4975
agora::rtc::AUDIO_RECORDING_DEVICE
@ AUDIO_RECORDING_DEVICE
Definition: IAgoraRtcEngine.h:49
agora::rtc::ExtensionInfo::channelId
const char * channelId
Definition: IAgoraRtcEngine.h:3465
agora::rtc::IMetadataObserver::Metadata::timeStampMs
long long timeStampMs
Definition: IAgoraRtcEngine.h:3214
agora::rtc::IVideoDeviceCollection::release
virtual void release()=0
agora::rtc::REMOTE_VIDEO_STATE_REASON
REMOTE_VIDEO_STATE_REASON
Definition: AgoraBase.h:2961
agora::rtc::DirectCdnStreamingMediaOptions::publishMediaPlayerAudioTrack
Optional< bool > publishMediaPlayerAudioTrack
Definition: IAgoraRtcEngine.h:3373
agora::rtc::IRtcEngine::renewToken
virtual int renewToken(const char *token)=0
agora::rtc::IRtcEngine::disableAudioSpectrumMonitor
virtual int disableAudioSpectrumMonitor()=0
agora::rtc::AUDIO_EQUALIZATION_BAND_62
@ AUDIO_EQUALIZATION_BAND_62
Definition: IAgoraRtcEngine.h:168
agora::rtc::IRtcEngine::setAdvancedAudioOptions
virtual int setAdvancedAudioOptions(AdvancedAudioOptions &options, int sourceType=0)=0
agora::rtc::IRtcEngine::startLocalVideoTranscoder
virtual int startLocalVideoTranscoder(const LocalTranscoderConfiguration &config)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_7
@ VIDEO_PROFILE_LANDSCAPE_360P_7
Definition: IAgoraRtcEngine.h:8450
agora::rtc::IRtcEngineEventHandler::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: IAgoraRtcEngine.h:2408
agora::rtc::IRtcEngine::unregisterMediaMetadataObserver
virtual int unregisterMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type)=0
agora::rtc::IRtcEngine::muteRecordingSignal
virtual int muteRecordingSignal(bool mute)=0
agora::rtc::IRtcEngine::enableSpatialAudio
virtual int enableSpatialAudio(bool enabled)=0
agora::rtc::InjectStreamConfig::videoGop
int videoGop
Definition: IAgoraRtcEngine.h:643
agora::rtc::IRtcEngine::rate
virtual int rate(const char *callId, int rating, const char *description)=0
agora::rtc::ImageTrackOptions::ImageTrackOptions
ImageTrackOptions()
Definition: IAgoraRtcEngine.h:1024
agora::rtc::FeatureType
FeatureType
Definition: IAgoraRtcEngine.h:1418
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:145
agora::rtc::INJECT_STREAM_STATUS_STOP_SUCCESS
@ INJECT_STREAM_STATUS_STOP_SUCCESS
Definition: IAgoraRtcEngine.h:134
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Definition: AgoraBase.h:4146
agora::rtc::IRtcEngineEventHandler::onAudioDeviceVolumeChanged
virtual void onAudioDeviceVolumeChanged(MEDIA_DEVICE_TYPE deviceType, int volume, bool muted)
Definition: IAgoraRtcEngine.h:2419
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_3
@ VIDEO_PROFILE_PORTRAIT_360P_3
Definition: IAgoraRtcEngine.h:8514
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P
@ VIDEO_PROFILE_PORTRAIT_720P
Definition: IAgoraRtcEngine.h:8544
agora::rtc::VideoCompositingLayout::appData
const char * appData
Definition: IAgoraRtcEngine.h:614
agora::rtc::CAMERA_STABILIZATION_MODE
CAMERA_STABILIZATION_MODE
Definition: AgoraBase.h:2610
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_6
@ VIDEO_PROFILE_PORTRAIT_480P_6
Definition: IAgoraRtcEngine.h:8536
agora::rtc::IRtcEngine::muteRemoteVideoStream
virtual int muteRemoteVideoStream(uid_t uid, bool mute)=0
agora::rtc::IRtcEngine::setRemoteVideoStreamType
virtual int setRemoteVideoStreamType(uid_t uid, VIDEO_STREAM_TYPE streamType)=0
agora::rtc::IRtcEngineEventHandler::onExtensionError
virtual void onExtensionError(const char *provider, const char *extension, int error, const char *message)
Definition: IAgoraRtcEngine.h:2868
agora::rtc::DirectCdnStreamingMediaOptions::~DirectCdnStreamingMediaOptions
~DirectCdnStreamingMediaOptions()
Definition: IAgoraRtcEngine.h:3386
agora::rtc::IRtcEngineEventHandler::onNetworkQuality
virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngine.h:1685
agora::rtc::CAMERA_DIRECTION
CAMERA_DIRECTION
Definition: IAgoraRtcEngine.h:761
agora::rtc::ChannelMediaOptions::audioDelayMs
Optional< int > audioDelayMs
Definition: IAgoraRtcEngine.h:1198
agora::rtc::IRtcEngine::setRemoteDefaultVideoStreamType
virtual int setRemoteDefaultVideoStreamType(VIDEO_STREAM_TYPE streamType)=0
agora::rtc::AUDIO_PROFILE_TYPE
AUDIO_PROFILE_TYPE
Definition: AgoraBase.h:2403
agora::rtc::DirectCdnStreamingMediaOptions::publishMicrophoneTrack
Optional< bool > publishMicrophoneTrack
Definition: IAgoraRtcEngine.h:3355
agora::rtc::IRtcEngine::setPlaybackAudioFrameBeforeMixingParameters
virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel)=0
agora::rtc::IRtcEngine::disableAudio
virtual int disableAudio()=0
agora::rtc::IRtcEngine::leaveChannel
virtual int leaveChannel()=0
agora::rtc::IRtcEngineEventHandler::onLicenseValidationFailure
virtual void onLicenseValidationFailure(LICENSE_ERROR_TYPE error)
Definition: IAgoraRtcEngine.h:2253
agora::rtc::IRtcEngine::setClientRole
virtual int setClientRole(CLIENT_ROLE_TYPE role, const ClientRoleOptions &options)=0
agora::rtc::LeaveChannelOptions::LeaveChannelOptions
LeaveChannelOptions()
Definition: IAgoraRtcEngine.h:1446
agora::rtc::IDirectCdnStreamingEventHandler::onDirectCdnStreamingStats
virtual void onDirectCdnStreamingStats(const DirectCdnStreamingStats &stats)
Definition: IAgoraRtcEngine.h:3335
agora::rtc::IMetadataObserver::MAX_METADATA_SIZE_TYPE
MAX_METADATA_SIZE_TYPE
Definition: IAgoraRtcEngine.h:3190
agora::rtc::DIRECT_CDN_STREAMING_STATE_RUNNING
@ DIRECT_CDN_STREAMING_STATE_RUNNING
Definition: IAgoraRtcEngine.h:3276
agora::rtc::MEDIA_DEVICE_STATE_NOT_PRESENT
@ MEDIA_DEVICE_STATE_NOT_PRESENT
Definition: IAgoraRtcEngine.h:8418
agora::rtc::INJECT_STREAM_STATUS_START_UNAUTHORIZED
@ INJECT_STREAM_STATUS_START_UNAUTHORIZED
Definition: IAgoraRtcEngine.h:122
agora::rtc::VideoCompositingLayout::Region::uid
uid_t uid
Definition: IAgoraRtcEngine.h:555
agora::rtc::IRtcEngine::destroyMediaRecorder
virtual int destroyMediaRecorder(agora_refptr< IMediaRecorder > mediaRecorder)=0
agora::rtc::IRtcEngine::setLogFile
virtual int setLogFile(const char *filePath)=0
agora::rtc::RtcEngineContext::context
void * context
Definition: IAgoraRtcEngine.h:3086
ADD_COMPARE
#define ADD_COMPARE(X)
agora::rtc::ImageTrackOptions
Definition: IAgoraRtcEngine.h:1020
agora::rtc::ImageTrackOptions::imageUrl
const char * imageUrl
Definition: IAgoraRtcEngine.h:1021
agora::rtc::VIDEO_PROFILE_PORTRAIT_4K
@ VIDEO_PROFILE_PORTRAIT_4K
Definition: IAgoraRtcEngine.h:8562
agora::rtc::VideoCompositingLayout::Region
Definition: IAgoraRtcEngine.h:552
agora::rtc::IRtcEngine::registerLocalUserAccount
virtual int registerLocalUserAccount(const char *appId, const char *userAccount)=0
agora::rtc::LocalVideoStats::encodedFrameCount
int encodedFrameCount
Definition: IAgoraRtcEngine.h:321
agora::rtc::IRtcEngine::stopPreview
virtual int stopPreview()=0
agora::rtc::IRtcEngine::createCustomVideoTrack
virtual video_track_id_t createCustomVideoTrack()=0
agora::rtc::RemoteVideoStats::height
int height
Definition: IAgoraRtcEngine.h:492
agora::rtc::IRtcEngine::registerEventHandler
virtual bool registerEventHandler(IRtcEngineEventHandler *eventHandler)=0
agora::rtc::IVideoDeviceCollection::getCount
virtual int getCount()=0
agora::rtc::ScreenCaptureConfiguration::windowId
view_t windowId
Definition: IAgoraRtcEngine.h:844
agora::rtc::PublisherConfiguration::height
int height
Definition: IAgoraRtcEngine.h:698
agora::rtc::ChannelMediaOptions::publishMediaPlayerAudioTrack
Optional< bool > publishMediaPlayerAudioTrack
Definition: IAgoraRtcEngine.h:1134
agora::rtc::DirectCdnStreamingMediaOptions::publishMediaPlayerId
Optional< int > publishMediaPlayerId
Definition: IAgoraRtcEngine.h:3378
agora::rtc::IRtcEngineEventHandler::onUplinkNetworkInfoUpdated
virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo &info)
Definition: IAgoraRtcEngine.h:1709
agora::rtc::VIDEO_PROFILE_TYPE
VIDEO_PROFILE_TYPE
Definition: IAgoraRtcEngine.h:8424
agora::rtc::IRtcEngine::stopDirectCdnStreaming
virtual int stopDirectCdnStreaming()=0
agora::rtc::IRtcEngine::preloadChannel
virtual int preloadChannel(const char *token, const char *channelId, const char *userAccount)=0
agora::rtc::AUDIO_EQUALIZATION_BAND_4K
@ AUDIO_EQUALIZATION_BAND_4K
Definition: IAgoraRtcEngine.h:192
agora::rtc::RtcEngineContext::RtcEngineContext
RtcEngineContext()
Definition: IAgoraRtcEngine.h:3160
agora::rtc::InjectStreamConfig::width
int width
Definition: IAgoraRtcEngine.h:635
agora::rtc::IRtcEngine::getUserInfoByUid
virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo *userInfo)=0
agora::rtc::IVideoDeviceManager::stopDeviceTest
virtual int stopDeviceTest()=0
IAgoraMediaEngine.h
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P_6
@ VIDEO_PROFILE_LANDSCAPE_720P_6
Definition: IAgoraRtcEngine.h:8480
agora::rtc::IRtcEngine::adjustRecordingSignalVolume
virtual int adjustRecordingSignalVolume(int volume)=0
agora::rtc::IRtcEngineEventHandler::onTranscodingUpdated
virtual void onTranscodingUpdated()
Definition: IAgoraRtcEngine.h:2463
agora::rtc::IRtcEngine::addVideoWatermark
virtual int addVideoWatermark(const RtcImage &watermark)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_180P_4
@ VIDEO_PROFILE_LANDSCAPE_180P_4
Definition: IAgoraRtcEngine.h:8434
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition: AgoraBase.h:745
agora::rtc::IRtcEngine::joinChannelWithUserAccount
virtual int joinChannelWithUserAccount(const char *token, const char *channelId, const char *userAccount)=0
agora::rtc::AREA_CODE_GLOB
@ AREA_CODE_GLOB
Definition: AgoraBase.h:5139
AGORA_CALL
#define AGORA_CALL
Definition: AgoraBase.h:61
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P
@ VIDEO_PROFILE_LANDSCAPE_480P
Definition: IAgoraRtcEngine.h:8460
agora::rtc::IRtcEngine::isFeatureAvailableOnDevice
virtual bool isFeatureAvailableOnDevice(FeatureType type)=0
Whether the target feature is available for the device.
agora::rtc::TCP_PROXY_TYPE
@ TCP_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1403
agora::rtc::IRtcEngineEventHandler::onDownlinkNetworkInfoUpdated
virtual void onDownlinkNetworkInfoUpdated(const DownlinkNetworkInfo &info)
Definition: IAgoraRtcEngine.h:1720
agora::rtc::IRtcEngine::getConnectionState
virtual CONNECTION_STATE_TYPE getConnectionState()=0
agora::rtc::LocalVideoStats::txPacketLossRate
unsigned short txPacketLossRate
Definition: IAgoraRtcEngine.h:328
agora::rtc::DirectCdnStreamingMediaOptions::publishCustomVideoTrack
Optional< bool > publishCustomVideoTrack
Definition: IAgoraRtcEngine.h:3367
agora::rtc::RemoteAudioStats::networkTransportDelay
int networkTransportDelay
Definition: IAgoraRtcEngine.h:359
agora::rtc::PublisherConfiguration::rawStreamUrl
const char * rawStreamUrl
Definition: IAgoraRtcEngine.h:737
agora::rtc::SetFrom
static void SetFrom(Optional< T > *s, const Optional< T > &o)
Definition: IAgoraRtcEngine.h:21
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
Definition: AgoraBase.h:4070
agora::rtc::IRtcEngineEventHandler::onLeaveChannel
virtual void onLeaveChannel(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1594
agora::rtc::AAudioDeviceManager
Definition: IAgoraRtcEngine.h:8381
agora::rtc::IMetadataObserver::Metadata
Definition: IAgoraRtcEngine.h:3199
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_10
@ VIDEO_PROFILE_PORTRAIT_360P_10
Definition: IAgoraRtcEngine.h:8526
agora::rtc::IRtcEngine::registerAudioSpectrumObserver
virtual int registerAudioSpectrumObserver(agora::media::IAudioSpectrumObserver *observer)=0
agora::rtc::IRtcEngineEventHandler::onLastmileQuality
virtual void onLastmileQuality(int quality)
Definition: IAgoraRtcEngine.h:1736
agora::rtc::IRtcEngine::startAudioFrameDump
virtual int startAudioFrameDump(const char *channel_id, uid_t user_id, const char *location, const char *uuid, const char *passwd, long duration_ms, bool auto_upload)=0
agora::rtc::LOCAL_PROXY_TYPE
@ LOCAL_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1406
agora::rtc::IRtcEngineEventHandler::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngine.h:2697
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_7
@ VIDEO_PROFILE_PORTRAIT_360P_7
Definition: IAgoraRtcEngine.h:8520
agora::rtc::DeviceInfo
Definition: AgoraBase.h:3160
agora::base::IEngineBase
Definition: AgoraBase.h:6042
agora::rtc::IRtcEngine::setLocalPublishFallbackOption
virtual int setLocalPublishFallbackOption(STREAM_FALLBACK_OPTIONS option)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_120P_3
@ VIDEO_PROFILE_LANDSCAPE_120P_3
Definition: IAgoraRtcEngine.h:8428
agora::rtc::IRtcEngine::queryCodecCapability
virtual int queryCodecCapability(CodecCapInfo *codecInfo, int &size)=0
agora::rtc::VideoRenderingTracingInfo
Definition: AgoraBase.h:5894
agora::rtc::IRtcEngine::enableAudioSpectrumMonitor
virtual int enableAudioSpectrumMonitor(int intervalInMS=100)=0
agora::rtc::IRtcEngineEventHandler::onRtcStats
virtual void onRtcStats(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1603
agora::rtc::UDP_PROXY
@ UDP_PROXY
Definition: IAgoraRtcEngine.h:778
agora::rtc::IRtcEngineEventHandler::onConnectionLost
virtual void onConnectionLost()
Definition: IAgoraRtcEngine.h:2163
SET_FROM
#define SET_FROM(X)
agora::rtc::LeaveChannelOptions::stopMicrophoneRecording
bool stopMicrophoneRecording
Definition: IAgoraRtcEngine.h:1444
agora::rtc::PublisherConfiguration::injectStreamHeight
int injectStreamHeight
Definition: IAgoraRtcEngine.h:726
agora::rtc::DIRECT_CDN_STREAMING_ERROR_FAILED
@ DIRECT_CDN_STREAMING_ERROR_FAILED
Definition: IAgoraRtcEngine.h:3259
agora::rtc::IRtcEngine::setInEarMonitoringVolume
virtual int setInEarMonitoringVolume(int volume)=0
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(VIDEO_SOURCE_TYPE source, int elapsed)
Definition: IAgoraRtcEngine.h:1765
agora::rtc::CameraCapturerConfiguration
Definition: IAgoraRtcEngine.h:787
agora::rtc::ExtensionInfo::localUid
uid_t localUid
Definition: IAgoraRtcEngine.h:3470
agora::rtc::VIDEO_PROFILE_LANDSCAPE_4K_3
@ VIDEO_PROFILE_LANDSCAPE_4K_3
Definition: IAgoraRtcEngine.h:8494
agora::rtc::DIRECT_CDN_STREAMING_ERROR
DIRECT_CDN_STREAMING_ERROR
Definition: IAgoraRtcEngine.h:3255
agora::rtc::VIDEO_PROFILE_PORTRAIT_180P_3
@ VIDEO_PROFILE_PORTRAIT_180P_3
Definition: IAgoraRtcEngine.h:8502
agora::rtc::RemoteVideoStats
Definition: IAgoraRtcEngine.h:468
agora::rtc::AUDIO_MIXING_STATE_TYPE
AUDIO_MIXING_STATE_TYPE
Definition: IAgoraRtcEngine.h:75
agora::Optional
Definition: AgoraOptional.h:413
agora::rtc::IRtcEngine::enableLocalVideo
virtual int enableLocalVideo(bool enabled)=0
agora::rtc::IRtcEngine::enableCustomAudioLocalPlayback
virtual int enableCustomAudioLocalPlayback(track_id_t trackId, bool enabled)=0
agora::rtc::ClientRoleOptions
Definition: AgoraBase.h:2335
agora::rtc::IRtcEngine::setAudioProfile
virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile)=0
agora::rtc::RTMP_STREAM_PUBLISH_STATE
RTMP_STREAM_PUBLISH_STATE
Definition: AgoraBase.h:3331
agora::rtc::AUDIO_VIRTUAL_RECORDING_DEVICE
@ AUDIO_VIRTUAL_RECORDING_DEVICE
Definition: IAgoraRtcEngine.h:69
agora::rtc::IRtcEngine::setDefaultMuteAllRemoteVideoStreams
virtual int setDefaultMuteAllRemoteVideoStreams(bool mute) 1=0
agora::rtc::InjectStreamConfig::videoBitrate
int videoBitrate
Definition: IAgoraRtcEngine.h:651
agora::rtc::IRtcEngineEventHandler::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) 1
Definition: IAgoraRtcEngine.h:2633
agora::rtc::RTMP_STREAM_LIFE_CYCLE_BIND2OWNER
@ RTMP_STREAM_LIFE_CYCLE_BIND2OWNER
Definition: IAgoraRtcEngine.h:685
agora::rtc::IRtcEngine::enableLocalAudio
virtual int enableLocalAudio(bool enabled)=0
agora::rtc::IRtcEngine::enableWebSdkInteroperability
virtual int enableWebSdkInteroperability(bool enabled) 1=0
agora::rtc::VideoCanvas
Definition: AgoraBase.h:4202
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_11
@ VIDEO_PROFILE_LANDSCAPE_360P_11
Definition: IAgoraRtcEngine.h:8458
agora::rtc::AUDIO_REVERB_DRY_LEVEL
@ AUDIO_REVERB_DRY_LEVEL
Definition: IAgoraRtcEngine.h:210
agora::rtc::VideoCompositingLayout::Region::alpha
double alpha
Definition: IAgoraRtcEngine.h:576
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P
@ VIDEO_PROFILE_LANDSCAPE_1080P
Definition: IAgoraRtcEngine.h:8482
agora::rtc::RtcEngineContext::areaCode
unsigned int areaCode
Definition: IAgoraRtcEngine.h:3113
agora::rtc::SegmentationProperty
Definition: AgoraBase.h:4488
agora::rtc::AUDIO_SAMPLE_RATE_TYPE
AUDIO_SAMPLE_RATE_TYPE
Definition: AgoraBase.h:3231
agora::rtc::IRtcEngineEventHandler::onIntraRequestReceived
virtual void onIntraRequestReceived()
Definition: IAgoraRtcEngine.h:1697
agora::rtc::track_id_t
unsigned int track_id_t
Definition: AgoraMediaBase.h:30
agora::rtc::IRtcEngineEventHandler::onLastmileProbeResult
virtual void onLastmileProbeResult(const LastmileProbeResult &result)
Definition: IAgoraRtcEngine.h:1549