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 rtm {
19 class IStreamChannel;
20 }
21 namespace rtc {
22 
23 template <typename T>
24 static void SetFrom(Optional<T>* s, const Optional<T>& o) {
25  if (o) {
26  *s = o;
27  }
28 }
29 
30 template <typename T>
31 static void ReplaceBy(Optional<T>* s, const Optional<T>& o) {
32  *s = o;
33 }
34 
35 //class IAudioDeviceManager;
36 
73 };
74 
88 };
89 
110 };
111 
160 };
161 
206 };
207 
232 };
233 
258 };
259 
267 };
268 
269 struct RtcConnection;
270 
274 {
343  unsigned short txPacketLossRate;
366 };
367 
372 {
380  int quality;
436  int mosValue;
445  uint32_t plcCount;
446 
452 
458 
479  unsigned int rxAudioBytes;
483  int e2eDelay;
484 
486  : uid(0),
487  quality(0),
490  audioLossRate(0),
491  numChannels(0),
493  receivedBitrate(0),
494  totalFrozenTime(0),
495  frozenRate(0),
496  mosValue(0),
498  plcCount(0),
501  totalActiveTime(0),
502  publishDuration(0),
503  qoeQuality(0),
505  rxAudioBytes(0),
506  e2eDelay(0) {}
507 };
508 
528  int e2eDelay;
532  int width;
536  int height;
591  int mosValue;
595  unsigned int rxVideoBytes;
596 };
597 
599  struct Region {
605  double x; // [0,1]
608  double y; // [0,1]
612  double width; // [0,1]
614  double height; // [0,1]
618  int zOrder; // optional, [0, 100] //0 (default): bottom most, 100: top most
619 
623  double alpha;
624 
625  media::base::RENDER_MODE_TYPE renderMode; // RENDER_MODE_HIDDEN: Crop, RENDER_MODE_FIT: Zoom to fit
626 
628  : uid(0),
629  x(0),
630  y(0),
631  width(0),
632  height(0),
633  zOrder(0),
634  alpha(1.0),
635  renderMode(media::base::RENDER_MODE_HIDDEN) {}
636  };
637 
650  const char* backgroundColor; // e.g. "#C0C0C0" in RGB
654  const Region* regions;
660  const char* appData;
664 
666  : canvasWidth(0),
667  canvasHeight(0),
669  regions(NULL),
670  regionCount(0),
672  appDataLength(0) {}
673 };
674 
681  int width;
685  int height;
689  int videoGop;
709 
710  // width / height default set to 0 means pull the stream with its original
711  // resolution
713  : width(0),
714  height(0),
715  videoGop(30),
716  videoFramerate(15),
717  videoBitrate(400),
719  audioBitrate(48),
720  audioChannels(1) {}
721 };
722 
732 };
733 
740  int width;
744  int height;
752  int bitrate;
766  bool owner;
775  const char* injectStreamUrl;
779  const char* publishUrl;
783  const char* rawStreamUrl;
786  const char* extraInfo;
787 
789  : width(640),
790  height(360),
791  framerate(15),
792  bitrate(500),
793  defaultLayout(1),
795  owner(true),
798  injectStreamUrl(NULL),
799  publishUrl(NULL),
800  rawStreamUrl(NULL),
801  extraInfo(NULL) {}
802 };
803 
812 };
813 
826 
828  TCP_PROXY = 2,
830 };
831 
835 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
836 
839  Optional<CAMERA_DIRECTION> cameraDirection;
840 
841  /*- CAMERA_FOCAL_LENGTH_TYPE.CAMERA_FOCAL_LENGTH_DEFAULT:
842  For iOS, if iPhone/iPad has 3 or 2 back camera, it means combination of triple (wide + ultra wide + telephoto) camera
843  or dual wide(wide + ultra wide) camera.In this situation, you can apply for ultra wide len by set smaller zoom fator
844  and bigger zoom fator for telephoto len.Otherwise, it always means wide back/front camera.
845 
846  - CAMERA_FOCAL_LENGTH_TYPE.CAMERA_FOCAL_LENGTH_WIDE_ANGLE:wide camera
847  - CAMERA_FOCAL_LENGTH_TYPE.CAMERA_FOCAL_LENGTH_ULTRA_WIDE:ultra wide camera
848  - CAMERA_FOCAL_LENGTH_TYPE.CAMERA_FOCAL_LENGTH_TELEPHOTO:telephoto camera*/
849  Optional<CAMERA_FOCAL_LENGTH_TYPE> cameraFocalLengthType;
850 #else
851 
853 #endif
854 
855 #if defined(__ANDROID__)
856 
859  Optional<const char *> cameraId;
860 #endif
865 };
875  bool isCaptureWindow; // true - capture window, false - capture display
879  int64_t displayId;
884  Rectangle screenRect; //Windows only
889  int64_t windowId;
902 
904 };
905 
906 #if (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)|| (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
907 
909 struct SIZE {
912  int width;
915  int height;
916 
917  SIZE() : width(0), height(0) {}
918  SIZE(int ww, int hh) : width(ww), height(hh) {}
919 };
920 #endif
921 
922 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE) || (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
923 
928 struct ThumbImageBuffer {
932  const char* buffer;
936  unsigned int length;
940  unsigned int width;
944  unsigned int height;
945  ThumbImageBuffer() : buffer(nullptr), length(0), width(0), height(0) {}
946 };
950 enum ScreenCaptureSourceType {
952  ScreenCaptureSourceType_Unknown = -1,
954  ScreenCaptureSourceType_Window = 0,
956  ScreenCaptureSourceType_Screen = 1,
958  ScreenCaptureSourceType_Custom = 2,
959 };
961 struct ScreenCaptureSourceInfo {
965  ScreenCaptureSourceType type;
969  int64_t sourceId;
973  const char* sourceName;
977  ThumbImageBuffer thumbImage;
981  ThumbImageBuffer iconImage;
985  const char* processPath;
989  const char* sourceTitle;
995  bool primaryMonitor;
996  bool isOccluded;
1000  Rectangle position;
1001 #if defined(_WIN32)
1002 
1005  bool minimizeWindow;
1012  int64_t sourceDisplayId;
1013  ScreenCaptureSourceInfo() : type(ScreenCaptureSourceType_Unknown), sourceId(0), sourceName(nullptr),
1014  processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false), minimizeWindow(false), sourceDisplayId(-2) {}
1015 #else
1016  ScreenCaptureSourceInfo() : type(ScreenCaptureSourceType_Unknown), sourceId(0), sourceName(nullptr), processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false) {}
1017 #endif
1018 };
1022 class IScreenCaptureSourceList {
1023  protected:
1024  virtual ~IScreenCaptureSourceList(){};
1025 
1026  public:
1032  virtual unsigned int getCount() = 0;
1042  virtual ScreenCaptureSourceInfo getSourceInfo(unsigned int index) = 0;
1049  virtual void release() = 0;
1050 };
1051 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
1052 
1060 
1063 };
1064 
1066  const char* imageUrl;
1067  int fps;
1070 };
1071 
1111 
1112  #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
1113 
1125  #else
1126 
1131  Optional<bool> publishScreenTrack;
1137  Optional<bool> publishSecondaryScreenTrack;
1143  Optional<bool> publishThirdScreenTrack;
1149  Optional<bool> publishFourthScreenTrack;
1150  #endif
1151 
1297 
1303 
1318 
1328 
1338 
1349 
1352 
1353  void SetAll(const ChannelMediaOptions& change) {
1354 #define SET_FROM(X) SetFrom(&X, change.X)
1355 
1361 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
1364 #else
1365  SET_FROM(publishScreenTrack);
1366  SET_FROM(publishSecondaryScreenTrack);
1367  SET_FROM(publishThirdScreenTrack);
1368  SET_FROM(publishFourthScreenTrack);
1369 #endif
1389  SET_FROM(token);
1400 #undef SET_FROM
1401  }
1402 
1403  bool operator==(const ChannelMediaOptions& o) const {
1404 #define BEGIN_COMPARE() bool b = true
1405 #define ADD_COMPARE(X) b = (b && (X == o.X))
1406 #define END_COMPARE()
1407 
1408  BEGIN_COMPARE();
1414 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
1417 #else
1418  ADD_COMPARE(publishScreenTrack);
1419  ADD_COMPARE(publishSecondaryScreenTrack);
1420  ADD_COMPARE(publishThirdScreenTrack);
1421  ADD_COMPARE(publishFourthScreenTrack);
1422 #endif
1442  ADD_COMPARE(token);
1453  END_COMPARE();
1454 
1455 #undef BEGIN_COMPARE
1456 #undef ADD_COMPARE
1457 #undef END_COMPARE
1458  return b;
1459  }
1460 
1462  if (this != &replace) {
1463 #define REPLACE_BY(X) ReplaceBy(&X, replace.X)
1464 
1470 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
1473 #else
1474  REPLACE_BY(publishScreenTrack);
1475  REPLACE_BY(publishSecondaryScreenTrack);
1476  REPLACE_BY(publishThirdScreenTrack);
1477  REPLACE_BY(publishFourthScreenTrack);
1478 #endif
1498  REPLACE_BY(token);
1509 #undef REPLACE_BY
1510  }
1511  return *this;
1512  }
1513 };
1514 
1537 };
1538 
1542 };
1543 
1553  bool stopAudioMixing;
1559  bool stopAllEffect;
1566 
1567  LeaveChannelOptions() : stopAudioMixing(true), stopAllEffect(true), stopMicrophoneRecording(true) {}
1568 };
1569 
1581  public:
1583 
1584  virtual const char* eventHandlerType() const { return "event_handler"; }
1585 
1595  virtual void onJoinChannelSuccess(const char* channel, uid_t uid, int elapsed) {
1596  (void)channel;
1597  (void)uid;
1598  (void)elapsed;
1599  }
1600 
1611  virtual void onRejoinChannelSuccess(const char* channel, uid_t uid, int elapsed) {
1612  (void)channel;
1613  (void)uid;
1614  (void)elapsed;
1615  }
1616 
1624  virtual void onProxyConnected(const char* channel, uid_t uid, PROXY_TYPE proxyType, const char* localProxyIp, int elapsed) {
1625  (void)channel;
1626  (void)uid;
1627  (void)proxyType;
1628  (void)localProxyIp;
1629  (void)elapsed;
1630  }
1631 
1637  virtual void onError(int err, const char* msg) {
1638  (void)err;
1639  (void)msg;
1640  }
1641 
1657  virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost) __deprecated {
1658  (void)uid;
1659  (void)quality;
1660  (void)delay;
1661  (void)lost;
1662  }
1663 
1669  virtual void onLastmileProbeResult(const LastmileProbeResult& result) {
1670  (void)result;
1671  }
1672 
1699  virtual void onAudioVolumeIndication(const AudioVolumeInfo* speakers, unsigned int speakerNumber,
1700  int totalVolume) {
1701  (void)speakers;
1702  (void)speakerNumber;
1703  (void)totalVolume;
1704  }
1705 
1714  virtual void onLeaveChannel(const RtcStats& stats) { (void)stats; }
1715 
1723  virtual void onRtcStats(const RtcStats& stats) { (void)stats; }
1724 
1738  virtual void onAudioDeviceStateChanged(const char* deviceId, int deviceType, int deviceState) {
1739  (void)deviceId;
1740  (void)deviceType;
1741  (void)deviceState;
1742  }
1743 
1750  virtual void onAudioMixingPositionChanged(int64_t position) {}
1751 
1758  virtual void onAudioMixingFinished() __deprecated {}
1759 
1767  virtual void onAudioEffectFinished(int soundId) {}
1768 
1778  virtual void onVideoDeviceStateChanged(const char* deviceId, int deviceType, int deviceState) {
1779  (void)deviceId;
1780  (void)deviceType;
1781  (void)deviceState;
1782  }
1783 
1806  virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality) {
1807  (void)uid;
1808  (void)txQuality;
1809  (void)rxQuality;
1810  }
1811 
1818  virtual void onIntraRequestReceived() {}
1819 
1830  virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo& info) {
1831  (void)info;
1832  }
1833 
1846  virtual void onLastmileQuality(int quality) { (void)quality; }
1847 
1858  virtual void onFirstLocalVideoFrame(VIDEO_SOURCE_TYPE source, int width, int height, int elapsed) {
1859  (void)source;
1860  (void)width;
1861  (void)height;
1862  (void)elapsed;
1863  }
1864 
1875  virtual void onFirstLocalVideoFramePublished(VIDEO_SOURCE_TYPE source, int elapsed) {
1876  (void)source;
1877  (void)elapsed;
1878  }
1879 
1896  virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) __deprecated {
1897  (void)uid;
1898  (void)width;
1899  (void)height;
1900  (void)elapsed;
1901  }
1902 
1911  virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation) {
1912  (void)uid;
1913  (void)width;
1914  (void)height;
1915  (void)rotation;
1916  }
1917 
1945  (void)source;
1946  (void)state;
1947  (void)reason;
1948  }
1949 
1961  virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed) {
1962  (void)uid;
1963  (void)state;
1964  (void)reason;
1965  (void)elapsed;
1966  }
1967 
1975  virtual void onFirstRemoteVideoFrame(uid_t uid, int width, int height, int elapsed) {
1976  (void)uid;
1977  (void)width;
1978  (void)height;
1979  (void)elapsed;
1980  }
1981 
2001  virtual void onUserJoined(uid_t uid, int elapsed) {
2002  (void)uid;
2003  (void)elapsed;
2004  }
2005 
2020  virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason) {
2021  (void)uid;
2022  (void)reason;
2023  }
2024 
2037  virtual void onUserMuteAudio(uid_t uid, bool muted) {
2038  (void)uid;
2039  (void)muted;
2040  }
2041 
2056  virtual void onUserMuteVideo(uid_t uid, bool muted) {
2057  (void)uid;
2058  (void)muted;
2059  }
2060 
2073  virtual void onUserEnableVideo(uid_t uid, bool enabled) {
2074  (void)uid;
2075  (void)enabled;
2076  }
2077 
2083  virtual void onUserStateChanged(uid_t uid, REMOTE_USER_STATE state) {
2084  (void)uid;
2085  (void)state;
2086  }
2087 
2098  virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) __deprecated {
2099  (void)uid;
2100  (void)enabled;
2101  }
2102 
2110  virtual void onRemoteAudioStats(const RemoteAudioStats& stats) {
2111  (void)stats;
2112  }
2113 
2121  virtual void onLocalAudioStats(const LocalAudioStats& stats) {
2122  (void)stats;
2123  }
2124 
2138  virtual void onLocalVideoStats(VIDEO_SOURCE_TYPE source, const LocalVideoStats& stats) {
2139  (void)source;
2140  (void)stats;
2141  }
2142 
2151  virtual void onRemoteVideoStats(const RemoteVideoStats& stats) {
2152  (void)stats;
2153  }
2154 
2160  virtual void onCameraReady() __deprecated {}
2161 
2172  virtual void onCameraFocusAreaChanged(int x, int y, int width, int height) {
2173  (void)x;
2174  (void)y;
2175  (void)width;
2176  (void)height;
2177  }
2186  virtual void onCameraExposureAreaChanged(int x, int y, int width, int height) {
2187  (void)x;
2188  (void)y;
2189  (void)width;
2190  (void)height;
2191  }
2192 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
2193 
2223  virtual void onFacePositionChanged(int imageWidth, int imageHeight,
2224  const Rectangle* vecRectangle, const int* vecDistance,
2225  int numFaces) {
2226  (void) imageWidth;
2227  (void) imageHeight;
2228  (void) vecRectangle;
2229  (void) vecDistance;
2230  (void) numFaces;
2231  }
2232 #endif
2233 
2240  virtual void onVideoStopped() __deprecated {}
2241 
2249  virtual void onAudioMixingStateChanged(AUDIO_MIXING_STATE_TYPE state, AUDIO_MIXING_REASON_TYPE reason) {
2250  (void)state;
2251  (void)reason;
2252  }
2253 
2262  virtual void onRhythmPlayerStateChanged(RHYTHM_PLAYER_STATE_TYPE state, RHYTHM_PLAYER_REASON reason) {
2263  (void)state;
2264  (void)reason;
2265  }
2266 
2275  virtual void onConnectionLost() {}
2276 
2289 
2294 
2306  virtual void onStreamMessage(uid_t uid, int streamId, const char* data, size_t length, uint64_t sentTs) {
2307  (void)uid;
2308  (void)streamId;
2309  (void)data;
2310  (void)length;
2311  (void)sentTs;
2312  }
2313 
2326  virtual void onStreamMessageError(uid_t uid, int streamId, int code, int missed, int cached) {
2327  (void)uid;
2328  (void)streamId;
2329  (void)code;
2330  (void)missed;
2331  (void)cached;
2332  }
2333 
2347  virtual void onRdtMessage(uid_t userId, RdtStreamType type, const char *data, size_t length) {
2348  (void)userId;
2349  (void)type;
2350  (void)data;
2351  (void)length;
2352  };
2353 
2362  virtual void onRdtStateChanged(uid_t userId, RdtState state) {
2363  (void)userId;
2364  (void)state;
2365  }
2366 
2378  virtual void onMediaControlMessage(uid_t userId, const char* data, size_t length) {
2379  (void)userId;
2380  (void)data;
2381  (void)length;
2382  }
2383 
2393  virtual void onRequestToken() {}
2394 
2406  virtual void onTokenPrivilegeWillExpire(const char* token) {
2407  (void)token;
2408  }
2409 
2416  (void)error;
2417  }
2418 
2429  virtual void onFirstLocalAudioFramePublished(int elapsed) {
2430  (void)elapsed;
2431  }
2432 
2449  virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed) __deprecated {
2450  (void)uid;
2451  (void)elapsed;
2452  }
2453 
2461  virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed) __deprecated {
2462  (void)uid;
2463  (void)elapsed;
2464  }
2465 
2481  (void)state;
2482  (void)reason;
2483  }
2484 
2501  virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed) {
2502  (void)uid;
2503  (void)state;
2504  (void)reason;
2505  (void)elapsed;
2506  }
2507 
2521  virtual void onActiveSpeaker(uid_t uid) {
2522  (void)uid;
2523  }
2524 
2529  virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result) { (void)result; }
2530 
2548  virtual void onSnapshotTaken(uid_t uid, const char* filePath, int width, int height, int errCode) {
2549  (void)uid;
2550  (void)filePath;
2551  (void)width;
2552  (void)height;
2553  (void)errCode;
2554  }
2555 
2563  virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions& newRoleOptions) {
2564  (void)oldRole;
2565  (void)newRole;
2566  (void)newRoleOptions;
2567  }
2568 
2577  (void)reason;
2578  (void)currentRole;
2579  }
2580 
2588  virtual void onAudioDeviceVolumeChanged(MEDIA_DEVICE_TYPE deviceType, int volume, bool muted) {
2589  (void)deviceType;
2590  (void)volume;
2591  (void)muted;
2592  }
2593 
2605  virtual void onRtmpStreamingStateChanged(const char* url, RTMP_STREAM_PUBLISH_STATE state,
2606  RTMP_STREAM_PUBLISH_REASON reason) {
2607  (void)url;
2608  (void)state;
2609  (void)reason;
2610  }
2611 
2617  virtual void onRtmpStreamingEvent(const char* url, RTMP_STREAMING_EVENT eventCode) {
2618  (void)url;
2619  (void)eventCode;
2620  }
2621 
2632  virtual void onTranscodingUpdated() {}
2633 
2647  virtual void onAudioRoutingChanged(int routing) { (void)routing; }
2648 
2680  virtual void onChannelMediaRelayStateChanged(int state, int code) {
2681  (void)state;
2682  (void)code;
2683  }
2684 
2702  virtual void onRemoteSubscribeFallbackToAudioOnly(uid_t uid, bool isFallbackOrRecover) {
2703  (void)uid;
2704  (void)isFallbackOrRecover;
2705  }
2706 
2721  virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated {
2722  (void)uid;
2723  (void)delay;
2724  (void)lost;
2725  (void)rxKBitRate;
2726  }
2727 
2745  virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated {
2746  (void)uid;
2747  (void)delay;
2748  (void)lost;
2749  (void)rxKBitRate;
2750  }
2751 
2761  CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason) {
2762  (void)state;
2763  (void)reason;
2764  }
2765 
2775  virtual void onNetworkTypeChanged(NETWORK_TYPE type) {
2776  (void)type;
2777  }
2778 
2786  virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType) {
2787  (void)errorType;
2788  }
2789 
2799  virtual void onPermissionError(PERMISSION_TYPE permissionType) {
2800  (void)permissionType;
2801  }
2802 
2812  virtual void onLocalUserRegistered(uid_t uid, const char* userAccount) {
2813  (void)uid;
2814  (void)userAccount;
2815  }
2816 
2825  virtual void onUserInfoUpdated(uid_t uid, const UserInfo& info) {
2826  (void)uid;
2827  (void)info;
2828  }
2829 
2836  virtual void onUserAccountUpdated(uid_t uid, const char* userAccount){
2837  (void)uid;
2838  (void)userAccount;
2839  }
2840 
2849  (void)uid;
2850  (void)currentEvent;
2851  (void)tracingInfo;
2852  }
2853 
2861  (void)stream;
2862  (void)error;
2863  }
2864 
2871  virtual void onUploadLogResult(const char* requestId, bool success, UPLOAD_ERROR_REASON reason) {
2872  (void)requestId;
2873  (void)success;
2874  (void)reason;
2875  }
2876 
2886  virtual void onAudioSubscribeStateChanged(const char* channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState) {
2887  (void)channel;
2888  (void)uid;
2889  (void)oldState;
2890  (void)newState;
2891  (void)elapseSinceLastState;
2892  }
2893 
2903  virtual void onVideoSubscribeStateChanged(const char* channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState) {
2904  (void)channel;
2905  (void)uid;
2906  (void)oldState;
2907  (void)newState;
2908  (void)elapseSinceLastState;
2909  }
2910 
2919  virtual void onAudioPublishStateChanged(const char* channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState) {
2920  (void)channel;
2921  (void)oldState;
2922  (void)newState;
2923  (void)elapseSinceLastState;
2924  }
2925 
2935  virtual void onVideoPublishStateChanged(VIDEO_SOURCE_TYPE source, const char* channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState) {
2936  (void)source;
2937  (void)channel;
2938  (void)oldState;
2939  (void)newState;
2940  (void)elapseSinceLastState;
2941  }
2942 
2952  virtual void onTranscodedStreamLayoutInfo(uid_t uid, int width, int height, int layoutCount,const VideoLayout* layoutlist) {
2953  (void)uid;
2954  (void)width;
2955  (void)height;
2956  (void)layoutCount;
2957  (void)layoutlist;
2958  }
2959 
2968  virtual void onAudioMetadataReceived(uid_t uid, const char* metadata, size_t length) {
2969  (void)uid;
2970  (void)metadata;
2971  (void)length;
2972  }
2973 
2983  virtual void onExtensionEventWithContext(const ExtensionContext &context, const char* key, const char* value) {
2984  (void)context;
2985  (void)key;
2986  (void)value;
2987  }
2988 
2996  virtual void onExtensionStartedWithContext(const ExtensionContext &context) {
2997  (void)context;
2998  }
2999 
3007  virtual void onExtensionStoppedWithContext(const ExtensionContext &context) {
3008  (void)context;
3009  }
3010 
3021  virtual void onExtensionErrorWithContext(const ExtensionContext &context, int error, const char* message) {
3022  (void)context;
3023  (void)error;
3024  (void)message;
3025  }
3026 
3033  virtual void onSetRtmFlagResult(int code) {
3034  (void)code;
3035  }
3036  virtual void onMultipathStats(const MultipathStats& stats) {
3046  (void)stats;
3047  }
3048 
3061  virtual void onRenewTokenResult(const char* token, RENEW_TOKEN_ERROR_CODE code) {
3062  (void)token;
3063  (void)code;
3064  }
3065 };
3066 
3071  public:
3073 
3079  virtual int getCount() = 0;
3080 
3090  virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
3091 
3102  virtual int getDevice(int index, char deviceNameUTF8[MAX_DEVICE_ID_LENGTH],
3103  char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
3104 
3108  virtual void release() = 0;
3109 };
3110 
3115  public:
3129 
3140  virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
3141 
3150  virtual int getDevice(char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
3151 
3152 #if defined(_WIN32) || (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__)) || \
3153  (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
3154 
3171  virtual int numberOfCapabilities(const char* deviceIdUTF8) = 0;
3172 
3190  virtual int getCapability(const char* deviceIdUTF8, const uint32_t deviceCapabilityNumber, VideoFormat& capability) = 0;
3191 #endif
3192 
3205  virtual int startDeviceTest(view_t hwnd) = 0;
3206 
3213  virtual int stopDeviceTest() = 0;
3214 
3218  virtual void release() = 0;
3219 };
3220 
3226 class IVideoEffectObject : public RefCountInterface {
3227  public:
3228  virtual ~IVideoEffectObject() {}
3229 
3235  enum class VIDEO_EFFECT_NODE_ID : uint32_t {
3237  BEAUTY = 1U << 0,
3239  STYLE_MAKEUP = 1U << 1,
3241  FILTER = 1U << 2,
3242  };
3243 
3249  enum VIDEO_EFFECT_ACTION {
3251  SAVE = 1,
3253  RESET = 2,
3254  };
3255 
3280  virtual int addOrUpdateVideoEffect(uint32_t nodeId, const char* templateName) = 0;
3281 
3293  virtual int removeVideoEffect(uint32_t nodeId) = 0;
3294 
3307  virtual int performVideoEffectAction(uint32_t nodeId, VIDEO_EFFECT_ACTION actionId) = 0;
3308 
3322  virtual int setVideoEffectFloatParam(const char* option, const char* key, float param) = 0;
3323 
3337  virtual int setVideoEffectIntParam(const char* option, const char* key, int param) = 0;
3338 
3354  virtual int setVideoEffectBoolParam(const char* option, const char* key, bool param) = 0;
3355 
3368  virtual float getVideoEffectFloatParam(const char* option, const char* key) = 0;
3369 
3382  virtual int getVideoEffectIntParam(const char* option, const char* key) = 0;
3383 
3396  virtual bool getVideoEffectBoolParam(const char* option, const char* key) = 0;
3397 
3398 };
3399 
3414  const char* appId;
3420  void* context;
3425 
3429  const char* license;
3430 
3447  unsigned int areaCode;
3448 
3465 
3470 
3479 
3486 
3493 
3498 };
3499 
3503 public:
3504  virtual ~IMetadataObserver() {}
3505 
3511  {
3518  };
3523  {
3527  };
3528 
3531  struct Metadata
3532  {
3535  const char* channelId;
3540  unsigned int uid;
3543  unsigned int size;
3546  unsigned char *buffer;
3550  long long timeStampMs;
3551 
3552  Metadata() : channelId(NULL), uid(0), size(0), buffer(NULL), timeStampMs(0) {}
3553  };
3554 
3566 
3577  virtual bool onReadyToSendMetadata(Metadata &metadata, VIDEO_SOURCE_TYPE source_type) = 0;
3578 
3586  virtual void onMetadataReceived(const Metadata& metadata) = 0;
3587 };
3588 
3596  // No error occurs.
3598  // A general error occurs (no specified reason).
3600  // Audio publication error.
3602  // Video publication error.
3604 
3606  // Already exist stream name.
3608 };
3609 
3617 
3619 
3621 
3623 
3625 
3627 };
3628 
3639 
3644 
3648  int fps;
3649 
3654 
3659 };
3660 
3668  public:
3670 
3678  (void)state;
3679  (void)reason;
3680  (void)message;
3681  };
3682 
3684  (void)stats;
3685  };
3686 };
3687 
3734 
3737 
3739 #define SET_FROM(X) SetFrom(&X, change.X)
3747 #undef SET_FROM
3748  }
3749 
3751 #define BEGIN_COMPARE() bool b = true
3752 #define ADD_COMPARE(X) b = (b && (X == o.X))
3753 #define END_COMPARE()
3754 
3755  BEGIN_COMPARE();
3763  END_COMPARE();
3764 
3765 #undef BEGIN_COMPARE
3766 #undef ADD_COMPARE
3767 #undef END_COMPARE
3768  return b;
3769  }
3770 
3772  if (this != &replace) {
3773 #define REPLACE_BY(X) ReplaceBy(&X, replace.X)
3774 
3782 #undef REPLACE_BY
3783  }
3784  return *this;
3785  }
3786 };
3787 
3796 
3803 
3815  const char* channelId;
3816 
3821 
3823 };
3824 
3825 class IMediaPlayer;
3826 class IMediaRecorder;
3827 
3833 using RtcEngineReleaseCallback = void(*)();
3834 
3842  public:
3867  AGORA_CPP_API static void release(RtcEngineReleaseCallback callback = nullptr);
3868 
3885  virtual int initialize(const RtcEngineContext& context) = 0;
3886 
3896  virtual int queryInterface(INTERFACE_ID_TYPE iid, void** inter) = 0;
3897 
3898 
3904  virtual const char* getVersion(int* build) = 0;
3905 
3911  virtual const char* getErrorDescription(int code) = 0;
3912 
3922  virtual int queryCodecCapability(CodecCapInfo* codecInfo, int& size) = 0;
3923 
3933  virtual int queryDeviceScore() = 0;
3934 
3972  virtual int preloadChannel(const char* token, const char* channelId, uid_t uid) = 0;
3973 
4013  virtual int preloadChannelWithUserAccount(const char* token, const char* channelId, const char* userAccount) = 0;
4014 
4032  virtual int updatePreloadChannelToken(const char* token) = 0;
4033 
4093  virtual int joinChannel(const char* token, const char* channelId, const char* info, uid_t uid) = 0;
4094 
4162  virtual int joinChannel(const char* token, const char* channelId, uid_t uid, const ChannelMediaOptions& options) = 0;
4163 
4172  virtual int updateChannelMediaOptions(const ChannelMediaOptions& options) = 0;
4173 
4191  virtual int leaveChannel() = 0;
4192 
4212  virtual int leaveChannel(const LeaveChannelOptions& options) = 0;
4213 
4231  virtual int renewToken(const char* token) = 0;
4232 
4252  virtual int setChannelProfile(CHANNEL_PROFILE_TYPE profile) = 0;
4253 
4277  virtual int setClientRole(CLIENT_ROLE_TYPE role) = 0;
4278 
4301  virtual int setClientRole(CLIENT_ROLE_TYPE role, const ClientRoleOptions& options) = 0;
4302 
4311  virtual int startEchoTest(const EchoTestConfiguration& config) = 0;
4312 
4319  virtual int stopEchoTest() = 0;
4320 
4321 #if defined(__APPLE__) && TARGET_OS_IOS
4322 
4331  virtual int enableMultiCamera(bool enabled, const CameraCapturerConfiguration& config) = 0;
4332 #endif
4333 
4348  virtual int enableVideo() = 0;
4349 
4359  virtual int disableVideo() = 0;
4360 
4372  virtual int startPreview() = 0;
4373 
4381  virtual int startPreview(VIDEO_SOURCE_TYPE sourceType) = 0;
4382 
4390  virtual int stopPreview() = 0;
4391 
4399  virtual int stopPreview(VIDEO_SOURCE_TYPE sourceType) = 0;
4400 
4434  virtual int startLastmileProbeTest(const LastmileProbeConfig& config) = 0;
4435 
4437  virtual int stopLastmileProbeTest() = 0;
4438 
4456 
4466  virtual int setBeautyEffectOptions(bool enabled, const BeautyOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
4484 
4492 
4501 
4526  virtual int setFilterEffectOptions(bool enabled, const FilterEffectOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
4527 
4528 
4541  virtual agora_refptr<IVideoEffectObject> createVideoEffectObject(const char* bundlePath, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
4542 
4543 
4555  virtual int destroyVideoEffectObject(agora_refptr<IVideoEffectObject> videoEffectObject) = 0;
4556 
4638 
4672 
4695  virtual int setupRemoteVideo(const VideoCanvas& canvas) = 0;
4696 
4713  virtual int setupLocalVideo(const VideoCanvas& canvas) = 0;
4714 
4733  virtual int setVideoScenario(VIDEO_APPLICATION_SCENARIO_TYPE scenarioType) = 0;
4734 
4753  virtual int setVideoQoEPreference(VIDEO_QOE_PREFERENCE_TYPE qoePreference) = 0;
4754 
4768  virtual int enableAudio() = 0;
4769 
4781  virtual int disableAudio() = 0;
4782 
4805 
4821  virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile) = 0;
4830  virtual int setAudioScenario(AUDIO_SCENARIO_TYPE scenario) = 0;
4853  virtual int enableLocalAudio(bool enabled) = 0;
4854 
4880  virtual int muteLocalAudioStream(bool mute) = 0;
4881 
4923  virtual int muteAllRemoteAudioStreams(bool mute) = 0;
4924 
4941  virtual int muteRemoteAudioStream(uid_t uid, bool mute) = 0;
4942 
4954  virtual int muteLocalVideoStream(bool mute) = 0;
4955 
4980  virtual int enableLocalVideo(bool enabled) = 0;
4981 
5021  virtual int muteAllRemoteVideoStreams(bool mute) = 0;
5022 
5033 
5050  virtual int muteRemoteVideoStream(uid_t uid, bool mute) = 0;
5051 
5069  virtual int setRemoteVideoStreamType(uid_t uid, VIDEO_STREAM_TYPE streamType) = 0;
5070 
5082 
5097  virtual int setSubscribeAudioBlocklist(uid_t* uidList, int uidNumber) = 0;
5098 
5115  virtual int setSubscribeAudioAllowlist(uid_t* uidList, int uidNumber) = 0;
5116 
5131  virtual int setSubscribeVideoBlocklist(uid_t* uidList, int uidNumber) = 0;
5132 
5149  virtual int setSubscribeVideoAllowlist(uid_t* uidList, int uidNumber) = 0;
5150 
5177  virtual int enableAudioVolumeIndication(int interval, int smooth, bool reportVad) = 0;
5178 
5199  virtual int startAudioRecording(const char* filePath,
5200  AUDIO_RECORDING_QUALITY_TYPE quality) = 0;
5222  virtual int startAudioRecording(const char* filePath,
5223  int sampleRate,
5224  AUDIO_RECORDING_QUALITY_TYPE quality) = 0;
5225 
5244  virtual int startAudioRecording(const AudioRecordingConfiguration& config) = 0;
5245 
5252 
5261  virtual int stopAudioRecording() = 0;
5262 
5274 
5286  virtual int destroyMediaPlayer(agora_refptr<IMediaPlayer> media_player) = 0;
5287 
5299 
5309  virtual int destroyMediaRecorder(agora_refptr<IMediaRecorder> mediaRecorder) = 0;
5310 
5352  virtual int startAudioMixing(const char* filePath, bool loopback, int cycle) = 0;
5353 
5397  virtual int startAudioMixing(const char* filePath, bool loopback, int cycle, int startPos) = 0;
5398 
5407  virtual int stopAudioMixing() = 0;
5408 
5417  virtual int pauseAudioMixing() = 0;
5418 
5427  virtual int resumeAudioMixing() = 0;
5428 
5437  virtual int selectAudioTrack(int index) = 0;
5446  virtual int getAudioTrackCount() = 0;
5447 
5462  virtual int adjustAudioMixingVolume(int volume) = 0;
5463 
5471  virtual int adjustAudioMixingPublishVolume(int volume) = 0;
5472 
5480  virtual int getAudioMixingPublishVolume() = 0;
5481 
5489  virtual int adjustAudioMixingPlayoutVolume(int volume) = 0;
5490 
5498  virtual int getAudioMixingPlayoutVolume() = 0;
5499 
5508  virtual int getAudioMixingDuration() = 0;
5509 
5519  virtual int getAudioMixingCurrentPosition() = 0;
5520 
5530  virtual int setAudioMixingPosition(int pos /*in ms*/) = 0;
5531 
5542  virtual int setAudioMixingDualMonoMode(media::AUDIO_MIXING_DUAL_MONO_MODE mode) = 0;
5543 
5560  virtual int setAudioMixingPitch(int pitch) = 0;
5561 
5577  virtual int setAudioMixingPlaybackSpeed(int speed) = 0;
5578 
5586  virtual int getEffectsVolume() = 0;
5596  virtual int setEffectsVolume(int volume) = 0;
5620  virtual int preloadEffect(int soundId, const char* filePath, int startPos = 0) = 0;
5662  virtual int playEffect(int soundId, const char* filePath, int loopCount, double pitch, double pan, int gain, bool publish = false, int startPos = 0) = 0;
5693  virtual int playAllEffects(int loopCount, double pitch, double pan, int gain, bool publish = false) = 0;
5694 
5704  virtual int getVolumeOfEffect(int soundId) = 0;
5705 
5716  virtual int setVolumeOfEffect(int soundId, int volume) = 0;
5725  virtual int pauseEffect(int soundId) = 0;
5732  virtual int pauseAllEffects() = 0;
5741  virtual int resumeEffect(int soundId) = 0;
5748  virtual int resumeAllEffects() = 0;
5757  virtual int stopEffect(int soundId) = 0;
5764  virtual int stopAllEffects() = 0;
5773  virtual int unloadEffect(int soundId) = 0;
5780  virtual int unloadAllEffects() = 0;
5799  virtual int getEffectDuration(const char* filePath) = 0;
5816  virtual int setEffectPosition(int soundId, int pos) = 0;
5831  virtual int getEffectCurrentPosition(int soundId) = 0;
5844  virtual int enableSoundPositionIndication(bool enabled) = 0;
5845 
5866  virtual int setRemoteVoicePosition(uid_t uid, double pan, double gain) = 0;
5867 
5877  virtual int enableSpatialAudio(bool enabled) = 0;
5878 
5888  virtual int setRemoteUserSpatialAudioParams(uid_t uid, const agora::SpatialAudioParams& params) = 0;
5889 
5928 
5966  virtual int setAudioEffectPreset(AUDIO_EFFECT_PRESET preset) = 0;
5967 
6005 
6081  virtual int setAudioEffectParameters(AUDIO_EFFECT_PRESET preset, int param1, int param2) = 0;
6082 
6126  int param1, int param2) = 0;
6127 
6141  int param1, int param2) = 0;
6142 
6153  virtual int setLocalVoicePitch(double pitch) = 0;
6154 
6165  virtual int setLocalVoiceFormant(double formantRatio) = 0;
6166 
6178  virtual int setLocalVoiceEqualization(AUDIO_EQUALIZATION_BAND_FREQUENCY bandFrequency, int bandGain) = 0;
6179 
6188  virtual int setLocalVoiceReverb(AUDIO_REVERB_TYPE reverbKey, int value) = 0;
6201 
6211  virtual int setHeadphoneEQParameters(int lowGain, int highGain) = 0;
6212 
6224  virtual int enableVoiceAITuner(bool enabled, VOICE_AI_TUNER_TYPE type) = 0;
6225 
6241  virtual int setLogFile(const char* filePath) = 0;
6242 
6265  virtual int setLogFilter(unsigned int filter) = 0;
6266 
6283  virtual int setLogLevel(commons::LOG_LEVEL level) = 0;
6284 
6299  virtual int setLogFileSize(unsigned int fileSizeInKBytes) = 0;
6300 
6309  virtual int uploadLogFile(agora::util::AString& requestId) = 0;
6310 
6326  virtual int writeLog(commons::LOG_LEVEL level, const char* fmt, ...) = 0;
6327 
6347 
6369  VIDEO_MIRROR_MODE_TYPE mirrorMode) = 0;
6380  virtual int setLocalRenderTargetFps(VIDEO_SOURCE_TYPE sourceType, int targetFps) = 0;
6389  virtual int setRemoteRenderTargetFps(int targetFps) = 0;
6390  // The following APIs are either deprecated and going to deleted.
6391 
6410 
6423 
6438  virtual int enableDualStreamMode(bool enabled) __deprecated = 0;
6439 
6456  virtual int enableDualStreamMode(bool enabled, const SimulcastStreamConfig& streamConfig) __deprecated = 0;
6457 
6458 
6473 
6496  virtual int setSimulcastConfig(const SimulcastConfig& simulcastConfig) = 0;
6497 
6511  virtual int setDualStreamMode(SIMULCAST_STREAM_MODE mode, const SimulcastStreamConfig& streamConfig) = 0;
6512 
6527  virtual int enableCustomAudioLocalPlayback(track_id_t trackId, bool enabled) = 0;
6528 
6547  virtual int setRecordingAudioFrameParameters(int sampleRate, int channel,
6549  int samplesPerCall) = 0;
6550 
6570  virtual int setPlaybackAudioFrameParameters(int sampleRate, int channel,
6572  int samplesPerCall) = 0;
6573 
6589  virtual int setMixedAudioFrameParameters(int sampleRate, int channel, int samplesPerCall) = 0;
6590 
6610  virtual int setEarMonitoringAudioFrameParameters(int sampleRate, int channel,
6612  int samplesPerCall) = 0;
6613 
6629  virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel) = 0;
6630 
6648  virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel, int samplesPerCall) = 0;
6649 
6660  virtual int enableAudioSpectrumMonitor(int intervalInMS = 100) = 0;
6668  virtual int disableAudioSpectrumMonitor() = 0;
6669 
6695 
6709  virtual int adjustRecordingSignalVolume(int volume) = 0;
6710 
6722  virtual int muteRecordingSignal(bool mute) = 0;
6723 
6737  virtual int adjustPlaybackSignalVolume(int volume) = 0;
6738 
6739  /*
6740  * Adjust the playback volume of the user specified by uid.
6741  *
6742  * You can call this method to adjust the playback volume of the user specified by uid
6743  * in call. If you want to adjust playback volume of the multi user, you can call this
6744  * this method multi times.
6745  *
6746  * @note
6747  * Please call this method after join channel.
6748  * This method adjust the playback volume of specified user.
6749  *
6750  * @param uid Remote user ID.
6751  * @param volume The playback volume of the specified remote user. The value ranges between 0 and 400, including the following:
6752  * 0: Mute.
6753  * 100: (Default) Original volume.
6754  * 400: Four times the original volume with signal-clipping protection.
6755  * @return
6756  * - 0: Success.
6757  * - < 0: Failure.
6758  */
6759  virtual int adjustUserPlaybackSignalVolume(uid_t uid, int volume) = 0;
6760 
6777 
6791  virtual int setHighPriorityUserList(uid_t* uidList, int uidNum, STREAM_FALLBACK_OPTIONS option) = 0;
6792 
6813  virtual int enableExtension(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, bool enable = true) = 0;
6814 
6828  virtual int setExtensionProperty(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, const char* key, const char* value) = 0;
6829 
6844  virtual int getExtensionProperty(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, const char* key, char* value, int buf_len) = 0;
6845 
6864  virtual int enableLoopbackRecording(bool enabled, const char* deviceName = NULL) = 0;
6865 
6866 
6879  virtual int adjustLoopbackSignalVolume(int volume) = 0;
6880 
6887  virtual int getLoopbackRecordingVolume() = 0;
6888 
6900  virtual int enableInEarMonitoring(bool enabled, int includeAudioFilters) = 0;
6901 
6912  virtual int setInEarMonitoringVolume(int volume) = 0;
6913 
6914 #if defined(_WIN32) || defined(__linux__) || defined(__ANDROID__)
6915  virtual int loadExtensionProvider(const char* path, bool unload_after_use = false) = 0;
6916 #endif
6917 
6929  virtual int setExtensionProviderProperty(const char* provider, const char* key, const char* value) = 0;
6930 
6943  virtual int registerExtension(const char* provider, const char* extension, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
6944 
6965  virtual int enableExtension(const char* provider, const char* extension, bool enable=true, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
6966 
6980  const char* provider, const char* extension,
6981  const char* key, const char* value, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
6982 
6997  const char* provider, const char* extension,
6998  const char* key, char* value, int buf_len, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
6999 
7011  virtual int setCameraCapturerConfiguration(const CameraCapturerConfiguration& config) = 0;
7012 
7021 
7030 
7039  virtual int destroyCustomVideoTrack(video_track_id_t video_track_id) = 0;
7040 
7049  virtual int destroyCustomEncodedVideoTrack(video_track_id_t video_track_id) = 0;
7050 
7051 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
7052 
7060  virtual int switchCamera() = 0;
7061 
7069  virtual bool isCameraZoomSupported() = 0;
7070 
7078  virtual bool isCameraFaceDetectSupported() = 0;
7079 
7087  virtual bool isCameraTorchSupported() = 0;
7088 
7096  virtual bool isCameraFocusSupported() = 0;
7097 
7105  virtual bool isCameraAutoFocusFaceModeSupported() = 0;
7106 
7116  virtual int setCameraZoomFactor(float factor) = 0;
7117 
7126  virtual int enableFaceDetection(bool enabled) = 0;
7127 
7132  virtual float getCameraMaxZoomFactor() = 0;
7133 
7143  virtual int setCameraFocusPositionInPreview(float positionX, float positionY) = 0;
7144 
7152  virtual int setCameraTorchOn(bool isOn) = 0;
7153 
7161  virtual int setCameraAutoFocusFaceModeEnabled(bool enabled) = 0;
7162 
7174  virtual bool isCameraExposurePositionSupported() = 0;
7175 
7191  virtual int setCameraExposurePosition(float positionXinView, float positionYinView) = 0;
7192 
7205  virtual bool isCameraExposureSupported() = 0;
7206 
7217  virtual int setCameraExposureFactor(float factor) = 0;
7218 
7219 #if defined(__APPLE__)
7220 
7227  virtual bool isCameraAutoExposureFaceModeSupported() = 0;
7228 
7229 
7237  virtual int setCameraAutoExposureFaceModeEnabled(bool enabled) = 0;
7238 
7244  virtual int setCameraStabilizationMode(CAMERA_STABILIZATION_MODE mode) = 0;
7245 #endif
7246 
7280  virtual int setDefaultAudioRouteToSpeakerphone(bool defaultToSpeaker) = 0;
7281 
7308  virtual int setEnableSpeakerphone(bool speakerOn) = 0;
7309 
7317  virtual bool isSpeakerphoneEnabled() = 0;
7318 
7325  virtual int setRouteInCommunicationMode(int route) = 0;
7326 #endif // __ANDROID__ || (__APPLE__ && TARGET_OS_IOS) || __OHOS__
7327 
7328 #if defined(__APPLE__)
7329 
7336  virtual bool isCameraCenterStageSupported() = 0;
7337 
7346  virtual int enableCameraCenterStage(bool enabled) = 0;
7347 #endif
7348 
7349 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)|| (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
7350 
7360  virtual IScreenCaptureSourceList* getScreenCaptureSources(const SIZE& thumbSize, const SIZE& iconSize, const bool includeScreen) = 0;
7361 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
7362 #if (defined(__APPLE__) && TARGET_OS_IOS)
7363 
7387  virtual int setAudioSessionOperationRestriction(AUDIO_SESSION_OPERATION_RESTRICTION restriction) = 0;
7388 #endif // __APPLE__ && TARGET_OS_IOS
7389 
7390 #if defined(_WIN32) || (defined(__APPLE__) && !TARGET_OS_IPHONE && TARGET_OS_MAC) || (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
7391 
7412  virtual int startScreenCaptureByDisplayId(int64_t displayId, const Rectangle& regionRect,
7413  const ScreenCaptureParameters& captureParams) = 0;
7414 
7415 #endif // __APPLE__ && TARGET_OS_MAC && !TARGET_OS_IPHONE
7416 
7417 #if defined(_WIN32)
7418 
7441  virtual int startScreenCaptureByScreenRect(const Rectangle& screenRect,
7442  const Rectangle& regionRect,
7443  const ScreenCaptureParameters& captureParams) __deprecated = 0;
7444 #endif
7445 
7446 #if defined(__ANDROID__)
7447 
7453  virtual int getAudioDeviceInfo(DeviceInfo& deviceInfo) = 0;
7454 #endif // __ANDROID__
7455 
7456 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE) || (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
7457 
7475  virtual int startScreenCaptureByWindowId(int64_t windowId, const Rectangle& regionRect,
7476  const ScreenCaptureParameters& captureParams) = 0;
7477 
7493  virtual int setScreenCaptureContentHint(VIDEO_CONTENT_HINT contentHint) = 0;
7494 
7511  virtual int updateScreenCaptureRegion(const Rectangle& regionRect) = 0;
7512 
7526  virtual int updateScreenCaptureParameters(const ScreenCaptureParameters& captureParams) = 0;
7527 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
7528 
7529 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
7530 
7539  virtual int startScreenCapture(const ScreenCaptureParameters2& captureParams) = 0;
7540 
7550  virtual int updateScreenCapture(const ScreenCaptureParameters2& captureParams) = 0;
7551 
7563  virtual int queryScreenCaptureCapability() = 0;
7564 
7576  virtual int queryCameraFocalLengthCapability(agora::rtc::FocalLengthInfo* focalLengthInfos, int& size) = 0;
7577 
7578 #if defined(__ANDROID__)
7579 
7595  virtual int setExternalMediaProjection(void* mediaProjection) = 0;
7596 #endif
7597 #endif
7598 
7599 #if defined(_WIN32) || defined(__APPLE__) || defined(__ANDROID__) || (defined(__linux__) && !defined(__ANDROID__) && !defined (__OHOS__))
7600 
7616  virtual int setScreenCaptureScenario(SCREEN_SCENARIO_TYPE screenScenario) = 0;
7617 
7625  virtual int stopScreenCapture() = 0;
7626 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC) || __ANDROID__
7627 
7644  virtual int getCallId(agora::util::AString& callId) = 0;
7645 
7660  virtual int rate(const char* callId, int rating, const char* description) = 0; // 0~10
7661 
7675  virtual int complain(const char* callId, const char* description) = 0;
7676 
7697  virtual int startRtmpStreamWithoutTranscoding(const char* url) = 0;
7698 
7720  virtual int startRtmpStreamWithTranscoding(const char* url, const LiveTranscoding& transcoding) = 0;
7721 
7731  virtual int updateRtmpTranscoding(const LiveTranscoding& transcoding) = 0;
7732 
7735 
7754  virtual int stopRtmpStream(const char* url) = 0;
7755 
7756  virtual int stopLocalVideoTranscoder() = 0;
7757 
7767  virtual int startLocalAudioMixer(const LocalAudioMixerConfiguration& config) = 0;
7768 
7779 
7789  virtual int stopLocalAudioMixer() = 0;
7790 
7800  virtual int startCameraCapture(VIDEO_SOURCE_TYPE sourceType, const CameraCapturerConfiguration& config) = 0;
7801 
7812  virtual int stopCameraCapture(VIDEO_SOURCE_TYPE sourceType) = 0;
7824  virtual int setCameraDeviceOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation) = 0;
7837 
7847  virtual int startScreenCapture(VIDEO_SOURCE_TYPE sourceType, const ScreenCaptureConfiguration& config) = 0;
7848 
7859  virtual int stopScreenCapture(VIDEO_SOURCE_TYPE sourceType) = 0;
7860 
7865  virtual CONNECTION_STATE_TYPE getConnectionState() = 0;
7866 
7867  // The following APIs are not implemented yet.
7868  virtual bool registerEventHandler(IRtcEngineEventHandler* eventHandler) = 0;
7869  virtual bool unregisterEventHandler(IRtcEngineEventHandler* eventHandler) = 0;
7870  virtual int setRemoteUserPriority(uid_t uid, PRIORITY_TYPE userPriority) = 0;
7871 
7883  virtual int registerPacketObserver(IPacketObserver* observer) = 0;
7884 
7885 
7907  virtual int enableEncryption(bool enabled, const EncryptionConfig& config) = 0;
7908 
7940  virtual int createDataStream(int* streamId, bool reliable, bool ordered) = 0;
7941 
7951  virtual int createDataStream(int* streamId, const DataStreamConfig& config) = 0;
7952 
7983  virtual int sendStreamMessage(int streamId, const char* data, size_t length) = 0;
7984 
7998  virtual int sendRdtMessage(uid_t uid, RdtStreamType type, const char *data, size_t length) = 0;
7999 
8012  virtual int sendMediaControlMessage(uid_t uid, const char* data, size_t length) = 0;
8013 
8035  virtual int addVideoWatermark(const RtcImage& watermark) __deprecated = 0;
8036 
8064  virtual int addVideoWatermark(const char* watermarkUrl, const WatermarkOptions& options) = 0;
8065 
8079  virtual int addVideoWatermark(const WatermarkConfig& configs) = 0;
8080 
8094  virtual int removeVideoWatermark(const char* id) = 0;
8095 
8103  virtual int clearVideoWatermarks() = 0;
8104 
8105  // The following APIs are either deprecated and going to deleted.
8106 
8115  virtual int pauseAudio() __deprecated = 0;
8124  virtual int resumeAudio() __deprecated = 0;
8125 
8143  virtual int enableWebSdkInteroperability(bool enabled) __deprecated = 0;
8144 
8154  virtual int sendCustomReportMessage(const char* id, const char* category, const char* event, const char* label, int value) = 0;
8155 
8177  virtual int registerMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type) = 0;
8178 
8187  virtual int unregisterMediaMetadataObserver(IMetadataObserver* observer, IMetadataObserver::METADATA_TYPE type) = 0;
8188 
8197  virtual int startAudioFrameDump(const char* channel_id, uid_t uid, const char* location, const char* uuid, const char* passwd, long duration_ms, bool auto_upload) = 0;
8198 
8202  virtual int stopAudioFrameDump(const char* channel_id, uid_t uid, const char* location) = 0;
8203 
8219  virtual int setAINSMode(bool enabled, AUDIO_AINS_MODE mode) = 0;
8220 
8252  virtual int registerLocalUserAccount(const char* appId, const char* userAccount) = 0;
8253 
8284  virtual int joinChannelWithUserAccount(const char* token, const char* channelId, const char* userAccount) = 0;
8285 
8317  virtual int joinChannelWithUserAccount(const char* token, const char* channelId, const char* userAccount, const ChannelMediaOptions& options) = 0;
8318 
8351  virtual int joinChannelWithUserAccountEx(const char* token, const char* channelId,
8352  const char* userAccount, const ChannelMediaOptions& options,
8353  IRtcEngineEventHandler* eventHandler) = 0;
8354 
8372  virtual int getUserInfoByUserAccount(const char* userAccount, rtc::UserInfo* userInfo) = 0;
8373 
8391  virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo* userInfo) = 0;
8392 
8428 
8457  virtual int stopChannelMediaRelay() = 0;
8458 
8468  virtual int pauseAllChannelMediaRelay() = 0;
8469 
8479  virtual int resumeAllChannelMediaRelay() = 0;
8480 
8496 
8514 
8531  const char* publishUrl, const DirectCdnStreamingMediaOptions& options) = 0;
8532 
8544  virtual int stopDirectCdnStreaming() = 0;
8545 
8560 
8571  virtual int startRhythmPlayer(const char* sound1, const char* sound2, const AgoraRhythmPlayerConfig& config) = 0;
8572 
8579  virtual int stopRhythmPlayer() = 0;
8580 
8589  virtual int configRhythmPlayer(const AgoraRhythmPlayerConfig& config) = 0;
8590 
8620  virtual int takeSnapshot(uid_t uid, const char* filePath) = 0;
8621 
8646  virtual int takeSnapshot(uid_t uid, const media::SnapshotConfig& config) = 0;
8647 
8657  virtual int enableContentInspect(bool enabled, const media::ContentInspectConfig &config) = 0;
8658  /*
8659  * Adjust the custom audio publish volume by track id.
8660  * @param trackId custom audio track id.
8661  * @param volume The volume, range is [0,100]:
8662  * 0: mute, 100: The original volume
8663  * @return
8664  * - 0: Success.
8665  * - < 0: Failure.
8666  */
8667  virtual int adjustCustomAudioPublishVolume(track_id_t trackId, int volume) = 0;
8668 
8669  /*
8670  * Adjust the custom audio playout volume by track id.
8671  * @param trackId custom audio track id.
8672  * @param volume The volume, range is [0,100]:
8673  * 0: mute, 100: The original volume
8674  * @return
8675  * - 0: Success.
8676  * - < 0: Failure.
8677  */
8678  virtual int adjustCustomAudioPlayoutVolume(track_id_t trackId, int volume) = 0;
8679 
8709  virtual int setCloudProxy(CLOUD_PROXY_TYPE proxyType) = 0;
8718  virtual int setLocalAccessPoint(const LocalAccessPointConfiguration& config) = 0;
8719 
8727  virtual int setAdvancedAudioOptions(AdvancedAudioOptions& options, int sourceType = 0) = 0;
8728 
8739  virtual int setAVSyncSource(const char* channelId, uid_t uid) = 0;
8740 
8747  virtual int enableVideoImageSource(bool enable, const ImageTrackOptions& options) = 0;
8748 
8749  /*
8750  * Get monotonic time in ms which can be used by capture time,
8751  * typical scenario is as follows:
8752  *
8753  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8754  * | // custom audio/video base capture time, e.g. the first audio/video capture time. |
8755  * | int64_t custom_capture_time_base; |
8756  * | |
8757  * | int64_t agora_monotonic_time = getCurrentMonotonicTimeInMs(); |
8758  * | |
8759  * | // offset is fixed once calculated in the begining. |
8760  * | const int64_t offset = agora_monotonic_time - custom_capture_time_base; |
8761  * | |
8762  * | // realtime_custom_audio/video_capture_time is the origin capture time that customer provided.|
8763  * | // actual_audio/video_capture_time is the actual capture time transfered to sdk. |
8764  * | int64_t actual_audio_capture_time = realtime_custom_audio_capture_time + offset; |
8765  * | int64_t actual_video_capture_time = realtime_custom_video_capture_time + offset; |
8766  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8767  *
8768  * @return
8769  * - >= 0: Success.
8770  * - < 0: Failure.
8771  */
8772  virtual int64_t getCurrentMonotonicTimeInMs() = 0;
8773 
8788  virtual int getNetworkType() = 0;
8789 
8798  virtual int setParameters(const char* parameters) = 0;
8799 
8814  virtual int startMediaRenderingTracing() = 0;
8815 
8829  virtual int enableInstantMediaRendering() = 0;
8830 
8834  virtual uint64_t getNtpWallTimeInMs() = 0;
8835 
8844  virtual bool isFeatureAvailableOnDevice(FeatureType type) = 0;
8845 
8856  virtual int sendAudioMetadata(const char* metadata, size_t length) = 0;
8857 
8868  virtual int queryHDRCapability(VIDEO_MODULE_TYPE videoModule, HDR_CAPABILITY& capability) = 0;
8869 };
8870 
8871 // The following types are either deprecated or not implmented yet.
8879 };
8880 
8892 
8896 
8903 };
8904 
8905 enum VIDEO_PROFILE_TYPE { // res fps
8907  VIDEO_PROFILE_LANDSCAPE_120P = 0, // 160x120 15
8911  VIDEO_PROFILE_LANDSCAPE_180P = 10, // 320x180 15
8917  VIDEO_PROFILE_LANDSCAPE_240P = 20, // 320x240 15
8923  VIDEO_PROFILE_LANDSCAPE_360P = 30, // 640x360 15
8939  VIDEO_PROFILE_LANDSCAPE_360P_11 = 100, // 640x360 24
8941  VIDEO_PROFILE_LANDSCAPE_480P = 40, // 640x480 15
8955  VIDEO_PROFILE_LANDSCAPE_720P = 50, // 1280x720 15
8957  VIDEO_PROFILE_LANDSCAPE_720P_3 = 52, // 1280x720 30
8963  VIDEO_PROFILE_LANDSCAPE_1080P = 60, // 1920x1080 15
8965  VIDEO_PROFILE_LANDSCAPE_1080P_3 = 62, // 1920x1080 30
8967  VIDEO_PROFILE_LANDSCAPE_1080P_5 = 64, // 1920x1080 60
8969  VIDEO_PROFILE_LANDSCAPE_1440P = 66, // 2560x1440 30
8971  VIDEO_PROFILE_LANDSCAPE_1440P_2 = 67, // 2560x1440 60
8973  VIDEO_PROFILE_LANDSCAPE_4K = 70, // 3840x2160 30
8975  VIDEO_PROFILE_LANDSCAPE_4K_3 = 72, // 3840x2160 60
8977  VIDEO_PROFILE_PORTRAIT_120P = 1000, // 120x160 15
8979  VIDEO_PROFILE_PORTRAIT_120P_3 = 1002, // 120x120 15
8981  VIDEO_PROFILE_PORTRAIT_180P = 1010, // 180x320 15
8983  VIDEO_PROFILE_PORTRAIT_180P_3 = 1012, // 180x180 15
8985  VIDEO_PROFILE_PORTRAIT_180P_4 = 1013, // 180x240 15
8987  VIDEO_PROFILE_PORTRAIT_240P = 1020, // 240x320 15
8989  VIDEO_PROFILE_PORTRAIT_240P_3 = 1022, // 240x240 15
8991  VIDEO_PROFILE_PORTRAIT_240P_4 = 1023, // 240x424 15
8993  VIDEO_PROFILE_PORTRAIT_360P = 1030, // 360x640 15
8995  VIDEO_PROFILE_PORTRAIT_360P_3 = 1032, // 360x360 15
8997  VIDEO_PROFILE_PORTRAIT_360P_4 = 1033, // 360x640 30
8999  VIDEO_PROFILE_PORTRAIT_360P_6 = 1035, // 360x360 30
9001  VIDEO_PROFILE_PORTRAIT_360P_7 = 1036, // 360x480 15
9003  VIDEO_PROFILE_PORTRAIT_360P_8 = 1037, // 360x480 30
9005  VIDEO_PROFILE_PORTRAIT_360P_9 = 1038, // 360x640 15
9007  VIDEO_PROFILE_PORTRAIT_360P_10 = 1039, // 360x640 24
9009  VIDEO_PROFILE_PORTRAIT_360P_11 = 1100, // 360x640 24
9011  VIDEO_PROFILE_PORTRAIT_480P = 1040, // 480x640 15
9013  VIDEO_PROFILE_PORTRAIT_480P_3 = 1042, // 480x480 15
9015  VIDEO_PROFILE_PORTRAIT_480P_4 = 1043, // 480x640 30
9017  VIDEO_PROFILE_PORTRAIT_480P_6 = 1045, // 480x480 30
9019  VIDEO_PROFILE_PORTRAIT_480P_8 = 1047, // 480x848 15
9021  VIDEO_PROFILE_PORTRAIT_480P_9 = 1048, // 480x848 30
9023  VIDEO_PROFILE_PORTRAIT_480P_10 = 1049, // 480x640 10
9025  VIDEO_PROFILE_PORTRAIT_720P = 1050, // 720x1280 15
9027  VIDEO_PROFILE_PORTRAIT_720P_3 = 1052, // 720x1280 30
9029  VIDEO_PROFILE_PORTRAIT_720P_5 = 1054, // 720x960 15
9031  VIDEO_PROFILE_PORTRAIT_720P_6 = 1055, // 720x960 30
9033  VIDEO_PROFILE_PORTRAIT_1080P = 1060, // 1080x1920 15
9035  VIDEO_PROFILE_PORTRAIT_1080P_3 = 1062, // 1080x1920 30
9037  VIDEO_PROFILE_PORTRAIT_1080P_5 = 1064, // 1080x1920 60
9039  VIDEO_PROFILE_PORTRAIT_1440P = 1066, // 1440x2560 30
9041  VIDEO_PROFILE_PORTRAIT_1440P_2 = 1067, // 1440x2560 60
9043  VIDEO_PROFILE_PORTRAIT_4K = 1070, // 2160x3840 30
9045  VIDEO_PROFILE_PORTRAIT_4K_3 = 1072, // 2160x3840 60
9048 };
9049 
9050 class AAudioDeviceManager : public agora::util::AutoPtr<IAudioDeviceManager> {
9051  public:
9054  }
9055 };
9056 
9057 class AVideoDeviceManager : public agora::util::AutoPtr<IVideoDeviceManager> {
9058  public:
9061  }
9062 };
9063 
9064 } // namespace rtc
9065 } // namespace agora
9066 
9072 #define getAgoraRtcEngineVersion getAgoraSdkVersion
9073 
9075 
9078 
9085 
9087 
9088 
9095 #define getAgoraRtcEngineErrorDescription getAgoraSdkErrorDescription
9096 #define setAgoraRtcEngineExternalSymbolLoader setAgoraSdkExternalSymbolLoader
agora::rtc::IRtcEngine::setVideoEncoderConfiguration
virtual int setVideoEncoderConfiguration(const VideoEncoderConfiguration &config)=0
agora::rtc::IRtcEngine::removeVideoWatermark
virtual int removeVideoWatermark(const char *id)=0
Remove a watermark image from the local video.
agora::rtc::IRtcEngine::stopLocalVideoTranscoder
virtual int stopLocalVideoTranscoder()=0
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFrame
virtual void onFirstLocalVideoFrame(VIDEO_SOURCE_TYPE source, int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1858
agora::rtc::RemoteVideoStats::delay
int delay
Definition: IAgoraRtcEngine.h:524
agora::rtc::VIDEO_TRANSCODER_ERROR
VIDEO_TRANSCODER_ERROR
Definition: AgoraBase.h:4587
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition: AgoraBase.h:6896
agora::rtc::ChannelMediaOptions::publishMediaPlayerId
Optional< int > publishMediaPlayerId
Definition: IAgoraRtcEngine.h:1225
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:2393
agora::rtc::ChannelMediaOptions::defaultVideoStreamType
Optional< VIDEO_STREAM_TYPE > defaultVideoStreamType
Definition: IAgoraRtcEngine.h:1239
agora::rtc::DirectCdnStreamingStats::videoWidth
int videoWidth
Definition: IAgoraRtcEngine.h:3638
agora::rtc::AUDIO_EQUALIZATION_BAND_16K
@ AUDIO_EQUALIZATION_BAND_16K
Definition: IAgoraRtcEngine.h:205
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:8937
agora::rtc::ExtensionInfo::mediaSourceType
agora::media::MEDIA_SOURCE_TYPE mediaSourceType
Definition: IAgoraRtcEngine.h:3795
agora::rtc::DIRECT_CDN_STREAMING_STATE_FAILED
@ DIRECT_CDN_STREAMING_STATE_FAILED
Definition: IAgoraRtcEngine.h:3624
agora::VideoLayout
Definition: AgoraBase.h:7544
agora::rtc::ChannelMediaOptions::SetAll
void SetAll(const ChannelMediaOptions &change)
Definition: IAgoraRtcEngine.h:1353
agora::CHANNEL_PROFILE_LIVE_BROADCASTING
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition: AgoraBase.h:279
agora::rtc::MEDIA_DEVICE_STATE_PLUGGED_IN
@ MEDIA_DEVICE_STATE_PLUGGED_IN
Definition: IAgoraRtcEngine.h:8895
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P_3
@ VIDEO_PROFILE_LANDSCAPE_720P_3
Definition: IAgoraRtcEngine.h:8957
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_8
@ VIDEO_PROFILE_LANDSCAPE_360P_8
Definition: IAgoraRtcEngine.h:8933
agora::rtc::DIRECT_CDN_STREAMING_REASON_FAILED
@ DIRECT_CDN_STREAMING_REASON_FAILED
Definition: IAgoraRtcEngine.h:3599
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_3
@ VIDEO_PROFILE_LANDSCAPE_360P_3
Definition: IAgoraRtcEngine.h:8925
agora::rtc::ChannelMediaOptions::publishCameraTrack
Optional< bool > publishCameraTrack
Definition: IAgoraRtcEngine.h:1086
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:1244
agora::rtc::ReplaceBy
static void ReplaceBy(Optional< T > *s, const Optional< T > &o)
Definition: IAgoraRtcEngine.h:31
agora::rtc::MEDIA_DEVICE_STATE_DISABLED
@ MEDIA_DEVICE_STATE_DISABLED
Definition: IAgoraRtcEngine.h:8891
agora::rtc::IRtcEngine::setRemoteRenderMode
virtual int setRemoteRenderMode(uid_t uid, media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
agora::rtc::IRtcEngineEventHandler::onMediaControlMessage
virtual void onMediaControlMessage(uid_t userId, const char *data, size_t length)
Occurs when the local user receives media control message sent by a remote user.
Definition: IAgoraRtcEngine.h:2378
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:165
agora::rtc::UserInfo
Definition: AgoraBase.h:7053
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:2121
agora::rtc::ChannelMediaOptions::publishMixedAudioTrack
Optional< bool > publishMixedAudioTrack
Definition: IAgoraRtcEngine.h:1197
agora::rtc::LastmileProbeResult
Definition: AgoraBase.h:4758
agora::rtc::IRtcEngineEventHandler::onUserStateChanged
virtual void onUserStateChanged(uid_t uid, REMOTE_USER_STATE state)
Definition: IAgoraRtcEngine.h:2083
agora::rtc::AudioEncodedFrameObserverConfig
Definition: AgoraBase.h:6375
agora::rtc::ScreenCaptureParameters
Definition: AgoraBase.h:6093
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:3526
agora::rtc::IRtcEngine::initialize
virtual int initialize(const RtcEngineContext &context)=0
agora::rtc::SCREEN_SCENARIO_TYPE
SCREEN_SCENARIO_TYPE
Definition: AgoraBase.h:3152
agora::rtc::MEDIA_DEVICE_TYPE
MEDIA_DEVICE_TYPE
Definition: IAgoraRtcEngine.h:40
agora::rtc::CameraCapturerConfiguration::CameraCapturerConfiguration
CameraCapturerConfiguration()
Definition: IAgoraRtcEngine.h:864
agora::rtc::AudioVolumeInfo
Definition: AgoraBase.h:3772
agora::rtc::VideoCompositingLayout::regionCount
int regionCount
Definition: IAgoraRtcEngine.h:657
agora::rtc::VIDEO_SOURCE_TYPE
VIDEO_SOURCE_TYPE
Definition: AgoraMediaBase.h:68
agora::rtc::AUDIO_MIXING_STATE_PAUSED
@ AUDIO_MIXING_STATE_PAUSED
Definition: IAgoraRtcEngine.h:82
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P_5
@ VIDEO_PROFILE_LANDSCAPE_1080P_5
Definition: IAgoraRtcEngine.h:8967
agora::rtc::REMOTE_AUDIO_STATE
REMOTE_AUDIO_STATE
Definition: AgoraBase.h:3496
agora::rtc::RemoteAudioStats::rxAudioBytes
unsigned int rxAudioBytes
Definition: IAgoraRtcEngine.h:479
agora::rtc::BeautyOptions
Definition: AgoraBase.h:5111
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:135
agora::rtc::IMetadataObserver::METADATA_TYPE
METADATA_TYPE
Definition: IAgoraRtcEngine.h:3511
agora::rtc::SenderOptions
Definition: AgoraBase.h:1293
agora::rtc::IRtcEngineEventHandler::onConnectionStateChanged
virtual void onConnectionStateChanged(CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:2760
agora::rtc::AUDIO_EQUALIZATION_BAND_2K
@ AUDIO_EQUALIZATION_BAND_2K
Definition: IAgoraRtcEngine.h:193
agora::rtc::RemoteVideoStats::avSyncTimeMs
int avSyncTimeMs
Definition: IAgoraRtcEngine.h:574
agora::rtc::ScreenCaptureConfiguration::screenRect
Rectangle screenRect
Definition: IAgoraRtcEngine.h:884
agora::rtc::ScreenCaptureConfiguration::ScreenCaptureConfiguration
ScreenCaptureConfiguration()
Definition: IAgoraRtcEngine.h:903
agora::rtc::IRtcEngineEventHandler::onConnectionBanned
virtual void onConnectionBanned() 1
Definition: IAgoraRtcEngine.h:2293
agora::rtc::video_track_id_t
unsigned int video_track_id_t
Definition: AgoraMediaBase.h:31
agora::rtc::AUDIO_MIXING_STATE_STOPPED
@ AUDIO_MIXING_STATE_STOPPED
Definition: IAgoraRtcEngine.h:84
agora::rtc::UNKNOWN_AUDIO_DEVICE
@ UNKNOWN_AUDIO_DEVICE
Definition: IAgoraRtcEngine.h:44
agora::rtc::IRtcEngineEventHandler::eventHandlerType
virtual const char * eventHandlerType() const
Definition: IAgoraRtcEngine.h:1584
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_3
@ VIDEO_PROFILE_PORTRAIT_480P_3
Definition: IAgoraRtcEngine.h:9013
agora::rtc::RemoteVideoStats::width
int width
Definition: IAgoraRtcEngine.h:532
agora::rtc::VideoCompositingLayout
Definition: IAgoraRtcEngine.h:598
agora::rtc::LastmileProbeConfig
Definition: AgoraBase.h:4688
agora::rtc::LocalVideoStats::captureFrameRate
int captureFrameRate
Definition: IAgoraRtcEngine.h:289
agora::rtc::VIDEO_PROFILE_PORTRAIT_1440P_2
@ VIDEO_PROFILE_PORTRAIT_1440P_2
Definition: IAgoraRtcEngine.h:9041
agora::rtc::IVideoDeviceManager::release
virtual void release()=0
agora::rtc::InjectStreamConfig::audioBitrate
int audioBitrate
Definition: IAgoraRtcEngine.h:705
agora::rtc::ChannelMediaOptions::~ChannelMediaOptions
~ChannelMediaOptions()
Definition: IAgoraRtcEngine.h:1351
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P
@ VIDEO_PROFILE_LANDSCAPE_720P
Definition: IAgoraRtcEngine.h:8955
agora::rtc::IVideoDeviceManager::startDeviceTest
virtual int startDeviceTest(view_t hwnd)=0
agora::rtc::AUDIO_APPLICATION_PLAYOUT_DEVICE
@ AUDIO_APPLICATION_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:64
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:9052
agora::rtc::AdvancedAudioOptions::AdvancedAudioOptions
AdvancedAudioOptions()
Definition: IAgoraRtcEngine.h:1061
agora::rtc::IRtcEngine::setChannelProfile
virtual int setChannelProfile(CHANNEL_PROFILE_TYPE profile)=0
agora::rtc::DirectCdnStreamingStats::videoHeight
int videoHeight
Definition: IAgoraRtcEngine.h:3643
agora::rtc::RtcEngineContext::domainLimit
bool domainLimit
Definition: IAgoraRtcEngine.h:3485
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P_3
@ VIDEO_PROFILE_LANDSCAPE_240P_3
Definition: IAgoraRtcEngine.h:8919
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:2935
agora::rtc::IRtcEngine::sendRdtMessage
virtual int sendRdtMessage(uid_t uid, RdtStreamType type, const char *data, size_t length)=0
Send Reliable message to remote uid in channel.
agora::rtc::RtcEngineContext::useExternalEglContext
bool useExternalEglContext
Definition: IAgoraRtcEngine.h:3478
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:143
agora::rtc::ChannelMediaOptions::publishMicrophoneTrack
Optional< bool > publishMicrophoneTrack
Definition: IAgoraRtcEngine.h:1110
agora::rtc::IMetadataObserver::Metadata::size
unsigned int size
Definition: IAgoraRtcEngine.h:3543
agora::rtc::IRtcEngineEventHandler::onCameraFocusAreaChanged
virtual void onCameraFocusAreaChanged(int x, int y, int width, int height)
Definition: IAgoraRtcEngine.h:2172
agora::rtc::AGORA_IID_AUDIO_DEVICE_MANAGER
@ AGORA_IID_AUDIO_DEVICE_MANAGER
Definition: AgoraBase.h:906
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Definition: AgoraBase.h:888
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P
@ VIDEO_PROFILE_PORTRAIT_360P
Definition: IAgoraRtcEngine.h:8993
agora::rtc::uid_t
unsigned int uid_t
Definition: AgoraMediaBase.h:28
agora::agora_refptr
Definition: AgoraRefPtr.h:44
agora::rtc::VIDEO_PROFILE_DEFAULT
@ VIDEO_PROFILE_DEFAULT
Definition: IAgoraRtcEngine.h:9047
agora::rtc::MEDIA_DEVICE_STATE_IDLE
@ MEDIA_DEVICE_STATE_IDLE
Definition: IAgoraRtcEngine.h:8885
agora::rtc::VideoCompositingLayout::canvasHeight
int canvasHeight
Definition: IAgoraRtcEngine.h:647
agora::rtc::VIDEO_PROFILE_PORTRAIT_180P_4
@ VIDEO_PROFILE_PORTRAIT_180P_4
Definition: IAgoraRtcEngine.h:8985
agora::rtc::ChannelMediaOptions::token
Optional< const char * > token
Definition: IAgoraRtcEngine.h:1263
agora::rtc::RemoteAudioStats::numChannels
int numChannels
Definition: IAgoraRtcEngine.h:398
agora::rtc::RemoteVideoStats::packetLossRate
int packetLossRate
Definition: IAgoraRtcEngine.h:555
AgoraRhythmPlayerConfig
Definition: AgoraObjects.h:3518
agora::media::IAudioSpectrumObserver
Definition: AgoraMediaBase.h:1598
agora::rtc::QUALITY_ADAPT_INDICATION
QUALITY_ADAPT_INDICATION
Definition: AgoraBase.h:2894
agora::rtc::IRtcEngine::stopLastmileProbeTest
virtual int stopLastmileProbeTest()=0
agora::rtc::PublisherConfiguration::injectStreamUrl
const char * injectStreamUrl
Definition: IAgoraRtcEngine.h:775
agora::rtc::VIDEO_APPLICATION_SCENARIO_TYPE
VIDEO_APPLICATION_SCENARIO_TYPE
Definition: AgoraBase.h:3180
agora::rtc::PublisherConfiguration::injectStreamWidth
int injectStreamWidth
Definition: IAgoraRtcEngine.h:769
agora::rtc::IRtcEngine::queryHDRCapability
virtual int queryHDRCapability(VIDEO_MODULE_TYPE videoModule, HDR_CAPABILITY &capability)=0
Queries the HDR capability of the video module.
agora::rtc::IRtcEngineEventHandler::onClientRoleChanged
virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions &newRoleOptions)
Definition: IAgoraRtcEngine.h:2563
agora::rtc::IRtcEngine::startPreview
virtual int startPreview(VIDEO_SOURCE_TYPE sourceType)=0
agora::rtc::VideoCompositingLayout::Region::y
double y
Definition: IAgoraRtcEngine.h:608
agora::rtc::IRtcEngine::getCurrentMonotonicTimeInMs
virtual int64_t getCurrentMonotonicTimeInMs()=0
agora::rtc::IRtcEngineEventHandler::~IRtcEngineEventHandler
virtual ~IRtcEngineEventHandler()
Definition: IAgoraRtcEngine.h:1582
agora::rtc::IRtcEngineEventHandler::onLocalVideoStats
virtual void onLocalVideoStats(VIDEO_SOURCE_TYPE source, const LocalVideoStats &stats)
Definition: IAgoraRtcEngine.h:2138
agora::rtc::ExtensionInfo
Definition: IAgoraRtcEngine.h:3791
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:8973
agora::rtc::RemoteVideoStats::totalActiveTime
int totalActiveTime
Definition: IAgoraRtcEngine.h:579
agora::rtc::IRtcEngineEventHandler::onUserInfoUpdated
virtual void onUserInfoUpdated(uid_t uid, const UserInfo &info)
Definition: IAgoraRtcEngine.h:2825
agora::rtc::ImageTrackOptions::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition: IAgoraRtcEngine.h:1068
agora::rtc::RemoteAudioStats::totalFrozenTime
int totalFrozenTime
Definition: IAgoraRtcEngine.h:414
agora::rtc::LocalAccessPointConfiguration
Definition: AgoraBase.h:7345
agora::rtc::IRtcEngineEventHandler::onExtensionStoppedWithContext
virtual void onExtensionStoppedWithContext(const ExtensionContext &context)
Definition: IAgoraRtcEngine.h:3007
agora::rtc::CAMERA_REAR
@ CAMERA_REAR
Definition: IAgoraRtcEngine.h:809
agora::media::base::RENDER_MODE_HIDDEN
@ RENDER_MODE_HIDDEN
Definition: AgoraMediaBase.h:537
agora::rtc::IRtcEngine::adjustUserPlaybackSignalVolume
virtual int adjustUserPlaybackSignalVolume(uid_t uid, int volume)=0
agora::rtc::MEDIA_DEVICE_STATE_UNPLUGGED
@ MEDIA_DEVICE_STATE_UNPLUGGED
Definition: IAgoraRtcEngine.h:8902
agora::rtc::AUDIO_MIXING_REASON_TOO_FREQUENT_CALL
@ AUDIO_MIXING_REASON_TOO_FREQUENT_CALL
Definition: IAgoraRtcEngine.h:97
agora::rtc::RemoteAudioStats::receivedBitrate
int receivedBitrate
Definition: IAgoraRtcEngine.h:407
agora::rtc::IMetadataObserver::getMaxMetadataSize
virtual int getMaxMetadataSize()
Definition: IAgoraRtcEngine.h:3565
agora::rtc::RtcEngineContext::threadPriority
Optional< THREAD_PRIORITY_TYPE > threadPriority
Definition: IAgoraRtcEngine.h:3469
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P_5
@ VIDEO_PROFILE_PORTRAIT_720P_5
Definition: IAgoraRtcEngine.h:9029
agora::rtc::IRtcEngine::setFaceShapeBeautyOptions
virtual int setFaceShapeBeautyOptions(bool enabled, const FaceShapeBeautyOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
agora::rtc::INJECT_STREAM_STATUS_START_SUCCESS
@ INJECT_STREAM_STATUS_START_SUCCESS
Definition: IAgoraRtcEngine.h:119
agora::rtc::LiveTranscoding
Definition: AgoraBase.h:4332
agora::rtc::IRtcEngineEventHandler::onLocalUserRegistered
virtual void onLocalUserRegistered(uid_t uid, const char *userAccount)
Definition: IAgoraRtcEngine.h:2812
agora::rtc::IRtcEngineEventHandler::onRdtMessage
virtual void onRdtMessage(uid_t userId, RdtStreamType type, const char *data, size_t length)
Occurs when the local user receives data via Reliable Data Transmission (RDT) from a remote user.
Definition: IAgoraRtcEngine.h:2347
agora::rtc::IRtcEngineEventHandler::onVideoStopped
virtual void onVideoStopped() 1
Definition: IAgoraRtcEngine.h:2240
agora::rtc::ChannelMediaOptions::autoSubscribeVideo
Optional< bool > autoSubscribeVideo
Definition: IAgoraRtcEngine.h:1215
agora::AUDIO_SESSION_OPERATION_RESTRICTION
AUDIO_SESSION_OPERATION_RESTRICTION
Definition: AgoraBase.h:828
agora::rtc::RemoteVideoStats::decoderOutputFrameRate
int decoderOutputFrameRate
Definition: IAgoraRtcEngine.h:546
agora::rtc::VIDEO_RENDER_DEVICE
@ VIDEO_RENDER_DEVICE
Definition: IAgoraRtcEngine.h:56
agora::rtc::VIDEO_PROFILE_LANDSCAPE_120P
@ VIDEO_PROFILE_LANDSCAPE_120P
Definition: IAgoraRtcEngine.h:8907
agora::rtc::Rectangle
Definition: AgoraBase.h:2281
agora::rtc::IRtcEngineEventHandler::onUserOffline
virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:2020
agora::rtc::CameraCapturerConfiguration::format
VideoFormat format
Definition: IAgoraRtcEngine.h:863
agora::rtc::AUDIO_SAMPLE_RATE_48000
@ AUDIO_SAMPLE_RATE_48000
Definition: AgoraBase.h:3893
agora::rtc::ChannelMediaOptions::operator=
ChannelMediaOptions & operator=(const ChannelMediaOptions &replace)
Definition: IAgoraRtcEngine.h:1461
agora::rtc::ScreenCaptureConfiguration::regionRect
Rectangle regionRect
Definition: IAgoraRtcEngine.h:901
agora::rtc::DirectCdnStreamingStats::audioBitrate
int audioBitrate
Definition: IAgoraRtcEngine.h:3658
agora::rtc::IRtcEngine::stopAudioFrameDump
virtual int stopAudioFrameDump(const char *channel_id, uid_t uid, const char *location)=0
agora::rtc::IRtcEngine::unregisterAudioSpectrumObserver
virtual int unregisterAudioSpectrumObserver(agora::media::IAudioSpectrumObserver *observer)=0
agora::rtc::ChannelMediaOptions::publishCustomVideoTrack
Optional< bool > publishCustomVideoTrack
Definition: IAgoraRtcEngine.h:1167
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:2919
agora::rtc::INJECT_STREAM_STATUS_STOP_TIMEDOUT
@ INJECT_STREAM_STATUS_STOP_TIMEDOUT
Definition: IAgoraRtcEngine.h:151
agora::rtc::InjectStreamConfig::audioChannels
int audioChannels
Definition: IAgoraRtcEngine.h:708
AGORA_CPP_API
#define AGORA_CPP_API
Definition: AgoraBase.h:71
agora::rtc::QUALITY_REPORT_FORMAT_TYPE
QUALITY_REPORT_FORMAT_TYPE
Definition: IAgoraRtcEngine.h:8872
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:2903
agora::rtc::IRtcEngineEventHandler::onAudioQuality
virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost) 1
Definition: IAgoraRtcEngine.h:1657
agora::rtc::ChannelMediaOptions::customVideoTrackId
Optional< video_track_id_t > customVideoTrackId
Definition: IAgoraRtcEngine.h:1290
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:8947
agora::rtc::InjectStreamConfig::InjectStreamConfig
InjectStreamConfig()
Definition: IAgoraRtcEngine.h:712
agora::rtc::IRtcEngine::unregisterEventHandler
virtual bool unregisterEventHandler(IRtcEngineEventHandler *eventHandler)=0
agora::rtc::IMetadataObserver::Metadata::uid
unsigned int uid
Definition: IAgoraRtcEngine.h:3540
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:9003
agora::rtc::IRtcEngineEventHandler::onRtmpStreamingEvent
virtual void onRtmpStreamingEvent(const char *url, RTMP_STREAMING_EVENT eventCode)
Definition: IAgoraRtcEngine.h:2617
agora::rtc::AUDIO_EQUALIZATION_BAND_250
@ AUDIO_EQUALIZATION_BAND_250
Definition: IAgoraRtcEngine.h:181
agora::util::AutoPtr
Definition: AgoraBase.h:100
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::VOICE_AI_TUNER_TYPE
VOICE_AI_TUNER_TYPE
Definition: AgoraBase.h:6057
agora::rtc::HTTPS_PROXY_TYPE
@ HTTPS_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1536
agora::rtc::RemoteVideoStats::rendererOutputFrameRate
int rendererOutputFrameRate
Definition: IAgoraRtcEngine.h:549
agora::rtc::AdvancedAudioOptions::audioProcessingChannels
Optional< int > audioProcessingChannels
Definition: IAgoraRtcEngine.h:1059
agora::rtc::IRtcEngineEventHandler::onCameraExposureAreaChanged
virtual void onCameraExposureAreaChanged(int x, int y, int width, int height)
Definition: IAgoraRtcEngine.h:2186
agora::rtc::IRtcEngine::setHeadphoneEQParameters
virtual int setHeadphoneEQParameters(int lowGain, int highGain)=0
agora::rtc::VideoCompositingLayout::Region::x
double x
Definition: IAgoraRtcEngine.h:605
agora::rtc::LOCAL_VIDEO_STREAM_REASON
LOCAL_VIDEO_STREAM_REASON
Definition: AgoraBase.h:3360
agora::rtc::RemoteAudioStats::qualityChangedReason
int qualityChangedReason
Definition: IAgoraRtcEngine.h:475
agora::rtc::IRtcEngine::enableSoundPositionIndication
virtual int enableSoundPositionIndication(bool enabled)=0
agora::view_t
void * view_t
Definition: AgoraBase.h:854
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1440P_2
@ VIDEO_PROFILE_LANDSCAPE_1440P_2
Definition: IAgoraRtcEngine.h:8971
agora::rtc::AUDIO_MIXING_REASON_STOPPED_BY_USER
@ AUDIO_MIXING_REASON_STOPPED_BY_USER
Definition: IAgoraRtcEngine.h:105
agora::rtc::IRtcEngine::startLocalAudioMixer
virtual int startLocalAudioMixer(const LocalAudioMixerConfiguration &config)=0
agora::rtc::IRtcEngine::setCloudProxy
virtual int setCloudProxy(CLOUD_PROXY_TYPE proxyType)=0
agora::rtc::VideoEncoderConfiguration
Definition: AgoraBase.h:1960
agora::rtc::RemoteAudioStats::quality
int quality
Definition: IAgoraRtcEngine.h:380
agora::rtc::IRtcEngineEventHandler
Definition: IAgoraRtcEngine.h:1580
agora::rtc::LocalVideoStats::encodedFrameHeight
int encodedFrameHeight
Definition: IAgoraRtcEngine.h:316
agora::rtc::IRtcEngine::muteRemoteAudioStream
virtual int muteRemoteAudioStream(uid_t uid, bool mute)=0
agora::rtc::IRtcEngineEventHandler::onAudioMetadataReceived
virtual void onAudioMetadataReceived(uid_t uid, const char *metadata, size_t length)
Definition: IAgoraRtcEngine.h:2968
agora::rtc::AUDIO_REVERB_WET_DELAY
@ AUDIO_REVERB_WET_DELAY
Definition: IAgoraRtcEngine.h:227
agora::rtc::PRIORITY_TYPE
PRIORITY_TYPE
Definition: IAgoraRtcEngine.h:260
agora::rtc::INJECT_STREAM_STATUS_BROKEN
@ INJECT_STREAM_STATUS_BROKEN
Definition: IAgoraRtcEngine.h:159
agora::rtc::VOICE_CONVERSION_PRESET
VOICE_CONVERSION_PRESET
Definition: AgoraBase.h:5985
agora::rtc::IRtcEngineEventHandler::onUserEnableVideo
virtual void onUserEnableVideo(uid_t uid, bool enabled)
Definition: IAgoraRtcEngine.h:2073
agora::rtc::LocalVideoStats::dualStreamEnabled
bool dualStreamEnabled
Definition: IAgoraRtcEngine.h:350
agora::rtc::IRtcEngine::setLogFilter
virtual int setLogFilter(unsigned int filter)=0
agora::rtc::VIDEO_BEAUTY_EFFECT
@ VIDEO_BEAUTY_EFFECT
Definition: IAgoraRtcEngine.h:1541
agora::rtc::ChannelMediaOptions::publishTranscodedVideoTrack
Optional< bool > publishTranscodedVideoTrack
Definition: IAgoraRtcEngine.h:1191
agora::rtc::VIDEO_MODULE_TYPE
VIDEO_MODULE_TYPE
Definition: AgoraBase.h:1885
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:1649
agora::rtc::VideoCompositingLayout::Region::width
double width
Definition: IAgoraRtcEngine.h:612
agora::rtc::DIRECT_CDN_STREAMING_STATE
DIRECT_CDN_STREAMING_STATE
Definition: IAgoraRtcEngine.h:3616
agora::rtc::LocalVideoStats::regulatedCaptureFrameHeight
int regulatedCaptureFrameHeight
Definition: IAgoraRtcEngine.h:307
agora::rtc::LocalVideoStats::regulatedCaptureFrameRate
int regulatedCaptureFrameRate
Definition: IAgoraRtcEngine.h:299
agora::rtc::VOICE_BEAUTIFIER_PRESET
VOICE_BEAUTIFIER_PRESET
Definition: AgoraBase.h:5768
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1440P
@ VIDEO_PROFILE_LANDSCAPE_1440P
Definition: IAgoraRtcEngine.h:8969
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:818
agora::rtc::RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL
@ RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL
Definition: IAgoraRtcEngine.h:728
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:786
agora::rtc::EchoTestConfiguration
Definition: AgoraBase.h:7030
agora::rtc::IDirectCdnStreamingEventHandler::onDirectCdnStreamingStateChanged
virtual void onDirectCdnStreamingStateChanged(DIRECT_CDN_STREAMING_STATE state, DIRECT_CDN_STREAMING_REASON reason, const char *message)
Definition: IAgoraRtcEngine.h:3677
agora::rtc::RtcImage
Definition: AgoraBase.h:4142
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_11
@ VIDEO_PROFILE_PORTRAIT_360P_11
Definition: IAgoraRtcEngine.h:9009
agora::rtc::AUDIO_SCENARIO_DEFAULT
@ AUDIO_SCENARIO_DEFAULT
Definition: AgoraBase.h:3047
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_5
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_5
Definition: IAgoraRtcEngine.h:256
agora::rtc::IRtcEngineEventHandler::onError
virtual void onError(int err, const char *msg)
Definition: IAgoraRtcEngine.h:1637
agora::rtc::IRtcEngineEventHandler::onVideoRenderingTracingResult
virtual void onVideoRenderingTracingResult(uid_t uid, MEDIA_TRACE_EVENT currentEvent, VideoRenderingTracingInfo tracingInfo)
Definition: IAgoraRtcEngine.h:2848
agora::media::PRIMARY_CAMERA_SOURCE
@ PRIMARY_CAMERA_SOURCE
Definition: AgoraMediaBase.h:259
agora::rtc::ChannelMediaOptions::publishSecondaryCameraTrack
Optional< bool > publishSecondaryCameraTrack
Definition: IAgoraRtcEngine.h:1092
agora::rtc::ChannelMediaOptions::publishEncodedVideoTrack
Optional< bool > publishEncodedVideoTrack
Definition: IAgoraRtcEngine.h:1173
agora::rtc::IRtcEngineEventHandler::onContentInspectResult
virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result)
Definition: IAgoraRtcEngine.h:2529
agora::rtc::IRtcEngineEventHandler::onAudioVolumeIndication
virtual void onAudioVolumeIndication(const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Definition: IAgoraRtcEngine.h:1699
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_9
@ VIDEO_PROFILE_LANDSCAPE_360P_9
Definition: IAgoraRtcEngine.h:8935
agora::rtc::IRtcEngine::preloadChannel
virtual int preloadChannel(const char *token, const char *channelId, uid_t uid)=0
agora::rtc::HTTP_PROXY_TYPE
@ HTTP_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1533
agora::rtc::IRtcEngineEventHandler::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) 1
Definition: IAgoraRtcEngine.h:2098
agora::rtc::IRtcEngine::getNetworkType
virtual int getNetworkType()=0
agora::rtc::AUDIO_REVERB_STRENGTH
@ AUDIO_REVERB_STRENGTH
Definition: IAgoraRtcEngine.h:231
agora::rtc::ChannelMediaOptions::publishCustomAudioTrackId
Optional< int > publishCustomAudioTrackId
Definition: IAgoraRtcEngine.h:1161
agora::rtc::SimulcastStreamConfig
Definition: AgoraBase.h:2175
agora::rtc::RemoteVideoStats::totalFrozenTime
int totalFrozenTime
Definition: IAgoraRtcEngine.h:565
agora::rtc::IRtcEngineEventHandler::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngine.h:2871
agora::rtc::FaceShapeBeautyOptions
Face shape beauty options. This structure defines options for facial adjustments of different facial ...
Definition: AgoraBase.h:5389
agora::rtc::PRIORITY_NORMAL
@ PRIORITY_NORMAL
Definition: IAgoraRtcEngine.h:266
agora::rtc::IRtcEngine::setEarMonitoringAudioFrameParameters
virtual int setEarMonitoringAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
agora::rtc::CameraCapturerConfiguration::followEncodeDimensionRatio
Optional< bool > followEncodeDimensionRatio
Definition: IAgoraRtcEngine.h:861
agora::rtc::IRtcEngineEventHandler::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1611
agora::rtc::VIDEO_CONTENT_HINT
VIDEO_CONTENT_HINT
Definition: AgoraBase.h:3130
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:8981
agora::rtc::ChannelMediaOptions::preferMultipathType
Optional< MultipathType > preferMultipathType
Definition: IAgoraRtcEngine.h:1348
agora::rtc::ChannelMediaOptions::publishCustomAudioTrack
Optional< bool > publishCustomAudioTrack
Definition: IAgoraRtcEngine.h:1157
agora::rtc::PublisherConfiguration::publishUrl
const char * publishUrl
Definition: IAgoraRtcEngine.h:779
agora::rtc::RemoteAudioStats::frozenTimeByCustom
uint32_t frozenTimeByCustom
Definition: IAgoraRtcEngine.h:457
agora::rtc::IRtcEngine::getErrorDescription
virtual const char * getErrorDescription(int code)=0
agora::rtc::IMetadataObserver::Metadata::channelId
const char * channelId
Definition: IAgoraRtcEngine.h:3535
agora::rtc::VIDEO_MIRROR_MODE_TYPE
VIDEO_MIRROR_MODE_TYPE
Definition: AgoraBase.h:1858
agora::rtc::PublisherConfiguration::owner
bool owner
Definition: IAgoraRtcEngine.h:766
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:9005
agora::rtc::ExtensionInfo::remoteUid
uid_t remoteUid
Definition: IAgoraRtcEngine.h:3802
agora::rtc::ExtensionContext
Definition: AgoraMediaBase.h:41
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:2151
agora::rtc::VIDEO_PROFILE_PORTRAIT_1080P
@ VIDEO_PROFILE_PORTRAIT_1080P
Definition: IAgoraRtcEngine.h:9033
agora::rtc::ChannelMediaOptions::publishScreenCaptureVideo
Optional< bool > publishScreenCaptureVideo
Definition: IAgoraRtcEngine.h:1118
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:625
agora::rtc::RemoteAudioStats::frozenRateByCustomPlcCount
uint32_t frozenRateByCustomPlcCount
Definition: IAgoraRtcEngine.h:441
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:9037
agora::rtc::LocalVideoStats::rendererOutputFrameRate
int rendererOutputFrameRate
Definition: IAgoraRtcEngine.h:319
agora::rtc::AUDIO_MIXING_STATE_FAILED
@ AUDIO_MIXING_STATE_FAILED
Definition: IAgoraRtcEngine.h:87
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
Definition: AgoraBase.h:2879
agora::rtc::IMetadataObserver
Definition: IAgoraRtcEngine.h:3502
agora::rtc::IRtcEngineEventHandler::onStreamMessageError
virtual void onStreamMessageError(uid_t uid, int streamId, int code, int missed, int cached)
Definition: IAgoraRtcEngine.h:2326
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::HDR_CAPABILITY
HDR_CAPABILITY
Definition: AgoraBase.h:1900
agora::rtc::ChannelMediaOptions::enableMultipath
Optional< bool > enableMultipath
Definition: IAgoraRtcEngine.h:1317
agora::rtc::NONE_PROXY
@ NONE_PROXY
Definition: IAgoraRtcEngine.h:821
agora::rtc::IRtcEngine::setSubscribeVideoAllowlist
virtual int setSubscribeVideoAllowlist(uid_t *uidList, int uidNumber)=0
agora::rtc::IRtcEngine::enableVoiceAITuner
virtual int enableVoiceAITuner(bool enabled, VOICE_AI_TUNER_TYPE type)=0
agora::rtc::RemoteAudioStats::mosValue
int mosValue
Definition: IAgoraRtcEngine.h:436
agora::rtc::RemoteVideoStats::receivedBitrate
int receivedBitrate
Definition: IAgoraRtcEngine.h:540
agora::rtc::ColorEnhanceOptions
Definition: AgoraBase.h:5551
agora::rtc::INJECT_STREAM_STATUS_START_ALREADY_EXISTS
@ INJECT_STREAM_STATUS_START_ALREADY_EXISTS
Definition: IAgoraRtcEngine.h:123
agora::rtc::VIDEO_PROFILE_PORTRAIT_240P
@ VIDEO_PROFILE_PORTRAIT_240P
Definition: IAgoraRtcEngine.h:8987
agora::rtc::IRtcEngine::release
static AGORA_CPP_API void release(RtcEngineReleaseCallback callback=nullptr)
agora::rtc::CAMERA_FRONT
@ CAMERA_FRONT
Definition: IAgoraRtcEngine.h:811
agora::rtc::PublisherConfiguration::framerate
int framerate
Definition: IAgoraRtcEngine.h:748
agora::rtc::VIDEO_PROFILE_PORTRAIT_240P_3
@ VIDEO_PROFILE_PORTRAIT_240P_3
Definition: IAgoraRtcEngine.h:8989
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Definition: AgoraBase.h:6871
agora::rtc::AUDIO_VIRTUAL_PLAYOUT_DEVICE
@ AUDIO_VIRTUAL_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:68
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_TYPE
CAPTURE_BRIGHTNESS_LEVEL_TYPE
Definition: AgoraBase.h:3225
agora::rtc::IRtcEngineEventHandler::onSnapshotTaken
virtual void onSnapshotTaken(uid_t uid, const char *filePath, int width, int height, int errCode)
Definition: IAgoraRtcEngine.h:2548
agora::rtc::IRtcEngine::registerMediaMetadataObserver
virtual int registerMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type)=0
agora::rtc::ScreenCaptureConfiguration::displayId
int64_t displayId
Definition: IAgoraRtcEngine.h:879
agora::rtc::IRtcEngine::stopChannelMediaRelay
virtual int stopChannelMediaRelay()=0
agora::rtc::PublisherConfiguration::bitrate
int bitrate
Definition: IAgoraRtcEngine.h:752
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:109
agora::rtc::RemoteVideoStats::frozenRate
int frozenRate
Definition: IAgoraRtcEngine.h:569
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:8913
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::DIRECT_CDN_STREAMING_REASON_NET_CONNECT
@ DIRECT_CDN_STREAMING_REASON_NET_CONNECT
Definition: IAgoraRtcEngine.h:3605
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_8
@ VIDEO_PROFILE_LANDSCAPE_480P_8
Definition: IAgoraRtcEngine.h:8949
agora::rtc::AVideoDeviceManager
Definition: IAgoraRtcEngine.h:9057
agora::rtc::ChannelMediaOptions::publishFourthCameraTrack
Optional< bool > publishFourthCameraTrack
Definition: IAgoraRtcEngine.h:1104
agora::rtc::IRtcEngine::setSubscribeAudioAllowlist
virtual int setSubscribeAudioAllowlist(uid_t *uidList, int uidNumber)=0
agora::rtc::SIMULCAST_STREAM_MODE
SIMULCAST_STREAM_MODE
Definition: AgoraBase.h:2157
agora::rtc::CameraCapturerConfiguration::deviceId
Optional< const char * > deviceId
Definition: IAgoraRtcEngine.h:852
agora::rtc::RemoteAudioStats::publishDuration
int publishDuration
Definition: IAgoraRtcEngine.h:467
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:8911
agora::rtc::LocalTranscoderConfiguration
Definition: AgoraBase.h:4556
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_9
@ VIDEO_PROFILE_PORTRAIT_480P_9
Definition: IAgoraRtcEngine.h:9021
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:3580
agora::rtc::DirectCdnStreamingMediaOptions::SetAll
void SetAll(const DirectCdnStreamingMediaOptions &change)
Definition: IAgoraRtcEngine.h:3738
agora::rtc::RemoteAudioStats::audioLossRate
int audioLossRate
Definition: IAgoraRtcEngine.h:394
agora::rtc::VIDEO_PROFILE_PORTRAIT_1440P
@ VIDEO_PROFILE_PORTRAIT_1440P
Definition: IAgoraRtcEngine.h:9039
agora::rtc::IRtcEngine::pauseAllChannelMediaRelay
virtual int pauseAllChannelMediaRelay()=0
agora::rtc::IMetadataObserver::INVALID_METADATA_SIZE_IN_BYTE
@ INVALID_METADATA_SIZE_IN_BYTE
Definition: IAgoraRtcEngine.h:3524
agora::rtc::RemoteVideoStats::frameLossRate
int frameLossRate
Definition: IAgoraRtcEngine.h:552
agora::rtc::IRtcEngine::selectAudioTrack
virtual int selectAudioTrack(int index)=0
agora::rtc::InjectStreamConfig::videoFramerate
int videoFramerate
Definition: IAgoraRtcEngine.h:693
agora::rtc::RemoteAudioStats::receivedSampleRate
int receivedSampleRate
Definition: IAgoraRtcEngine.h:402
agora::rtc::IRtcEngine::updateRtmpTranscoding
virtual int updateRtmpTranscoding(const LiveTranscoding &transcoding)=0
agora::rtc::IPacketObserver
Definition: AgoraBase.h:3824
agora::rtc::LOCAL_VIDEO_STREAM_STATE
LOCAL_VIDEO_STREAM_STATE
Definition: AgoraBase.h:3337
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Definition: AgoraBase.h:4782
agora::rtc::AUDIO_EQUALIZATION_BAND_125
@ AUDIO_EQUALIZATION_BAND_125
Definition: IAgoraRtcEngine.h:177
agora::rtc::IRtcEngine::enableInEarMonitoring
virtual int enableInEarMonitoring(bool enabled, int includeAudioFilters)=0
agora::rtc::ChannelMediaOptions::isInteractiveAudience
Optional< bool > isInteractiveAudience
Definition: IAgoraRtcEngine.h:1285
agora::rtc::ChannelMediaOptions::enableAudioRecordingOrPlayout
Optional< bool > enableAudioRecordingOrPlayout
Definition: IAgoraRtcEngine.h:1221
agora::rtc::VIDEO_PROFILE_PORTRAIT_120P_3
@ VIDEO_PROFILE_PORTRAIT_120P_3
Definition: IAgoraRtcEngine.h:8979
agora::rtc::RemoteVideoStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:516
agora::rtc::RemoteAudioStats::totalActiveTime
int totalActiveTime
Definition: IAgoraRtcEngine.h:463
agora::rtc::IRtcEngineEventHandler::onProxyConnected
virtual void onProxyConnected(const char *channel, uid_t uid, PROXY_TYPE proxyType, const char *localProxyIp, int elapsed)
Definition: IAgoraRtcEngine.h:1624
agora::rtc::DirectCdnStreamingStats
Definition: IAgoraRtcEngine.h:3634
agora::media::AUDIO_MIXING_DUAL_MONO_MODE
AUDIO_MIXING_DUAL_MONO_MODE
Definition: IAgoraMediaEngine.h:17
agora::rtc::VideoFormat
Definition: AgoraBase.h:3087
agora::rtc::LocalVideoStats::captureFrameHeight
int captureFrameHeight
Definition: IAgoraRtcEngine.h:295
agora::rtc::AGORA_IID_VIDEO_DEVICE_MANAGER
@ AGORA_IID_VIDEO_DEVICE_MANAGER
Definition: AgoraBase.h:907
agora::rtc::RTMP_STREAM_LIFE_CYCLE_TYPE
RTMP_STREAM_LIFE_CYCLE_TYPE
Definition: IAgoraRtcEngine.h:725
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:8999
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::IRtcEngine::setLocalVideoMirrorMode
virtual int setLocalVideoMirrorMode(VIDEO_MIRROR_MODE_TYPE mirrorMode) 1=0
agora::rtc::DataStreamConfig
Definition: AgoraBase.h:2130
agora::rtc::IRtcEngineEventHandler::onVideoDeviceStateChanged
virtual void onVideoDeviceStateChanged(const char *deviceId, int deviceType, int deviceState)
Definition: IAgoraRtcEngine.h:1778
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:736
agora::rtc::IRtcEngine::enableAudioVolumeIndication
virtual int enableAudioVolumeIndication(int interval, int smooth, bool reportVad)=0
agora::rtc::LocalAudioMixerConfiguration
Definition: AgoraBase.h:4665
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA
FACE_SHAPE_AREA
The specific facial area to be adjusted.
Definition: AgoraBase.h:5174
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:8991
agora::rtc::IRtcEngineEventHandler::onUserJoined
virtual void onUserJoined(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:2001
agora::rtc::RemoteVideoStats::e2eDelay
int e2eDelay
Definition: IAgoraRtcEngine.h:528
agora::rtc::DirectCdnStreamingMediaOptions::customVideoTrackId
Optional< video_track_id_t > customVideoTrackId
Definition: IAgoraRtcEngine.h:3733
agora::rtc::AUDIO_EQUALIZATION_BAND_8K
@ AUDIO_EQUALIZATION_BAND_8K
Definition: IAgoraRtcEngine.h:201
REPLACE_BY
#define REPLACE_BY(X)
agora::rtc::IRtcEngine::setHeadphoneEQPreset
virtual int setHeadphoneEQPreset(HEADPHONE_EQUALIZER_PRESET preset)=0
agora::rtc::DirectCdnStreamingMediaOptions
Definition: IAgoraRtcEngine.h:3693
agora::rtc::IRtcEngineEventHandler::onRhythmPlayerStateChanged
virtual void onRhythmPlayerStateChanged(RHYTHM_PLAYER_STATE_TYPE state, RHYTHM_PLAYER_REASON reason)
Definition: IAgoraRtcEngine.h:2262
agora::rtc::AdvancedAudioOptions
Definition: IAgoraRtcEngine.h:1055
agora::rtc::PERMISSION_TYPE
PERMISSION_TYPE
Definition: AgoraBase.h:6953
agora::rtc::AUDIO_MIXING_REASON_INTERRUPTED_EOF
@ AUDIO_MIXING_REASON_INTERRUPTED_EOF
Definition: IAgoraRtcEngine.h:99
agora::rtc::RemoteAudioStats::qoeQuality
int qoeQuality
Definition: IAgoraRtcEngine.h:471
agora::rtc::IRtcEngine::setLogFileSize
virtual int setLogFileSize(unsigned int fileSizeInKBytes)=0
agora::rtc::LocalVideoStats::regulatedCaptureFrameWidth
int regulatedCaptureFrameWidth
Definition: IAgoraRtcEngine.h:303
agora::rtc::IRtcEngineEventHandler::onAudioRoutingChanged
virtual void onAudioRoutingChanged(int routing)
Definition: IAgoraRtcEngine.h:2647
agora::rtc::InjectStreamConfig::audioSampleRate
AUDIO_SAMPLE_RATE_TYPE audioSampleRate
Definition: IAgoraRtcEngine.h:701
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:654
agora::rtc::IVideoDeviceCollection::~IVideoDeviceCollection
virtual ~IVideoDeviceCollection()
Definition: IAgoraRtcEngine.h:3072
agora::commons::LOG_LEVEL
OPTIONAL_ENUM_CLASS LOG_LEVEL
Definition: IAgoraLog.h:33
agora::rtc::IRtcEngine::sendMediaControlMessage
virtual int sendMediaControlMessage(uid_t uid, const char *data, size_t length)=0
Send media control message.
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_2
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_2
Definition: IAgoraRtcEngine.h:253
agora::rtc::AUDIO_MIXING_STATE_PLAYING
@ AUDIO_MIXING_STATE_PLAYING
Definition: IAgoraRtcEngine.h:80
agora::rtc::DIRECT_CDN_STREAMING_STATE_IDLE
@ DIRECT_CDN_STREAMING_STATE_IDLE
Definition: IAgoraRtcEngine.h:3618
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:9019
agora::rtc::IRtcEngineEventHandler::onRemoteSubscribeFallbackToAudioOnly
virtual void onRemoteSubscribeFallbackToAudioOnly(uid_t uid, bool isFallbackOrRecover)
Definition: IAgoraRtcEngine.h:2702
agora::rtc::DirectCdnStreamingMediaOptions::publishCameraTrack
Optional< bool > publishCameraTrack
Definition: IAgoraRtcEngine.h:3699
agora::media::UNKNOWN_MEDIA_SOURCE
@ UNKNOWN_MEDIA_SOURCE
Definition: AgoraMediaBase.h:307
agora::rtc::IRtcEngineEventHandler::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Definition: IAgoraRtcEngine.h:2775
agora::rtc::RtcEngineContext::eventHandler
IRtcEngineEventHandler * eventHandler
Definition: IAgoraRtcEngine.h:3407
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_3
@ VIDEO_PROFILE_LANDSCAPE_480P_3
Definition: IAgoraRtcEngine.h:8943
agora::rtc::INJECT_STREAM_STATUS_STOP_FAILED
@ INJECT_STREAM_STATUS_STOP_FAILED
Definition: IAgoraRtcEngine.h:155
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:9023
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:9059
agora::rtc::LocalVideoStats::hwEncoderAccelerating
int hwEncoderAccelerating
Definition: IAgoraRtcEngine.h:355
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStateChanged
virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:1961
agora::rtc::IAudioEncodedFrameObserver
Definition: AgoraBase.h:6392
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_6
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_6
Definition: IAgoraRtcEngine.h:257
agora::rtc::DirectCdnStreamingMediaOptions::operator=
DirectCdnStreamingMediaOptions & operator=(const DirectCdnStreamingMediaOptions &replace)
Definition: IAgoraRtcEngine.h:3771
agora::rtc::IRtcEngine::createDataStream
virtual int createDataStream(int *streamId, const DataStreamConfig &config)=0
agora::rtc::IRtcEngine::setAudioScenario
virtual int setAudioScenario(AUDIO_SCENARIO_TYPE scenario)=0
agora::rtc::IDirectCdnStreamingEventHandler::~IDirectCdnStreamingEventHandler
virtual ~IDirectCdnStreamingEventHandler()
Definition: IAgoraRtcEngine.h:3669
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:2860
agora::rtc::IRtcEngine::setExtensionProviderProperty
virtual int setExtensionProviderProperty(const char *provider, const char *key, const char *value)=0
agora::rtc::ChannelMediaOptions::uplinkMultipathMode
Optional< MultipathMode > uplinkMultipathMode
Definition: IAgoraRtcEngine.h:1327
agora::rtc::LeaveChannelOptions
Definition: IAgoraRtcEngine.h:1547
agora::rtc::VIDEO_PROFILE_PORTRAIT_120P
@ VIDEO_PROFILE_PORTRAIT_120P
Definition: IAgoraRtcEngine.h:8977
agora::CHANNEL_PROFILE_TYPE
CHANNEL_PROFILE_TYPE
Definition: AgoraBase.h:267
agora::rtc::LocalVideoStats::sentBitrate
int sentBitrate
Definition: IAgoraRtcEngine.h:282
agora::rtc::ChannelMediaOptions::ChannelMediaOptions
ChannelMediaOptions()
Definition: IAgoraRtcEngine.h:1350
agora::rtc::IRtcEngine::stopPreview
virtual int stopPreview(VIDEO_SOURCE_TYPE sourceType)=0
agora::rtc::STREAM_SUBSCRIBE_STATE
STREAM_SUBSCRIBE_STATE
Definition: AgoraBase.h:6969
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:9011
agora::rtc::IRtcEngineEventHandler::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(int elapsed)
Definition: IAgoraRtcEngine.h:2429
agora::rtc::IRtcEngine::queryDeviceScore
virtual int queryDeviceScore()=0
agora::rtc::ChannelMediaRelayConfiguration
Definition: AgoraBase.h:6601
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:905
agora::rtc::AUDIO_REVERB_ROOM_SIZE
@ AUDIO_REVERB_ROOM_SIZE
Definition: IAgoraRtcEngine.h:223
agora::rtc::VIDEO_VIRTUAL_BACKGROUND
@ VIDEO_VIRTUAL_BACKGROUND
Definition: IAgoraRtcEngine.h:1540
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:3070
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:614
agora::rtc::IRtcEngine::setAINSMode
virtual int setAINSMode(bool enabled, AUDIO_AINS_MODE mode)=0
agora::rtc::LocalVideoStats::sentFrameRate
int sentFrameRate
Definition: IAgoraRtcEngine.h:286
IAgoraH265Transcoder.h
AGORA_API
#define AGORA_API
Definition: AgoraBase.h:70
agora::rtc::VIDEO_CODEC_TYPE
VIDEO_CODEC_TYPE
Definition: AgoraBase.h:1209
agora::rtc::LocalVideoStats::encodedFrameWidth
int encodedFrameWidth
Definition: IAgoraRtcEngine.h:313
agora::rtc::RemoteAudioStats::e2eDelay
int e2eDelay
Definition: IAgoraRtcEngine.h:483
agora::rtc::DIRECT_CDN_STREAMING_REASON_BAD_NAME
@ DIRECT_CDN_STREAMING_REASON_BAD_NAME
Definition: IAgoraRtcEngine.h:3607
agora::rtc::VideoDenoiserOptions
Definition: AgoraBase.h:5503
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:3653
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:3648
END_COMPARE
#define END_COMPARE()
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P_4
@ VIDEO_PROFILE_LANDSCAPE_240P_4
Definition: IAgoraRtcEngine.h:8921
agora::rtc::IRtcEngineEventHandler::onExtensionStartedWithContext
virtual void onExtensionStartedWithContext(const ExtensionContext &context)
Definition: IAgoraRtcEngine.h:2996
agora::rtc::IMetadataObserver::Metadata::Metadata
Metadata()
Definition: IAgoraRtcEngine.h:3552
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:189
agora::rtc::IMetadataObserver::VIDEO_METADATA
@ VIDEO_METADATA
Definition: IAgoraRtcEngine.h:3517
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_9
@ VIDEO_PROFILE_LANDSCAPE_480P_9
Definition: IAgoraRtcEngine.h:8951
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:95
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_4
@ VIDEO_PROFILE_PORTRAIT_360P_4
Definition: IAgoraRtcEngine.h:8997
agora::rtc::RemoteAudioStats::frozenRate
int frozenRate
Definition: IAgoraRtcEngine.h:419
agora::rtc::IRtcEngineEventHandler::onExtensionErrorWithContext
virtual void onExtensionErrorWithContext(const ExtensionContext &context, int error, const char *message)
Definition: IAgoraRtcEngine.h:3021
agora::rtc::IRtcEngine::addVideoWatermark
virtual int addVideoWatermark(const WatermarkConfig &configs)=0
Add a watermark image to the local video.
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_6
@ VIDEO_PROFILE_LANDSCAPE_360P_6
Definition: IAgoraRtcEngine.h:8929
agora::rtc::ChannelMediaOptions::autoSubscribeAudio
Optional< bool > autoSubscribeAudio
Definition: IAgoraRtcEngine.h:1209
agora::rtc::VirtualBackgroundSource
Definition: AgoraBase.h:5577
agora::rtc::IRtcEngine::sendAudioMetadata
virtual int sendAudioMetadata(const char *metadata, size_t length)=0
send audio metadata
agora::rtc::ChannelMediaOptions::parameters
Optional< const char * > parameters
Definition: IAgoraRtcEngine.h:1302
agora::rtc::IRtcEngine::stopLocalAudioMixer
virtual int stopLocalAudioMixer()=0
agora::rtc::IVideoDeviceManager
Definition: IAgoraRtcEngine.h:3114
agora::rtc::IRtcEngine::adjustCustomAudioPublishVolume
virtual int adjustCustomAudioPublishVolume(track_id_t trackId, int volume)=0
agora::rtc::IRtcEngine::writeLog
virtual int writeLog(commons::LOG_LEVEL level, const char *fmt,...)=0
agora::rtc::IMetadataObserver::DEFAULT_METADATA_SIZE_IN_BYTE
@ DEFAULT_METADATA_SIZE_IN_BYTE
Definition: IAgoraRtcEngine.h:3525
agora::rtc::AUDIO_REVERB_WET_LEVEL
@ AUDIO_REVERB_WET_LEVEL
Definition: IAgoraRtcEngine.h:219
agora::rtc::VIDEO_CAPTURE_DEVICE
@ VIDEO_CAPTURE_DEVICE
Definition: IAgoraRtcEngine.h:60
agora::rtc::RdtState
RdtState
Reliable Data Transmission tunnel state.
Definition: AgoraBase.h:7442
agora::rtc::AUDIO_REVERB_TYPE
AUDIO_REVERB_TYPE
Definition: IAgoraRtcEngine.h:211
agora::media::base::RENDER_MODE_TYPE
RENDER_MODE_TYPE
Definition: AgoraMediaBase.h:532
agora::rtc::IRtcEngine::muteLocalVideoStream
virtual int muteLocalVideoStream(bool mute)=0
agora::rtc::LocalVideoStats::targetBitrate
int targetBitrate
Definition: IAgoraRtcEngine.h:322
agora::rtc::DirectCdnStreamingMediaOptions::publishCustomAudioTrack
Optional< bool > publishCustomAudioTrack
Definition: IAgoraRtcEngine.h:3711
agora::rtc::IMetadataObserver::UNKNOWN_METADATA
@ UNKNOWN_METADATA
Definition: IAgoraRtcEngine.h:3514
agora::rtc::INJECT_STREAM_STATUS
INJECT_STREAM_STATUS
Definition: IAgoraRtcEngine.h:115
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:1124
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:2680
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:390
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P_6
@ VIDEO_PROFILE_PORTRAIT_720P_6
Definition: IAgoraRtcEngine.h:9031
agora::rtc::PublisherConfiguration::width
int width
Definition: IAgoraRtcEngine.h:740
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P_3
@ VIDEO_PROFILE_LANDSCAPE_1080P_3
Definition: IAgoraRtcEngine.h:8965
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:9015
agora::rtc::IRtcEngineEventHandler::onTranscodedStreamLayoutInfo
virtual void onTranscodedStreamLayoutInfo(uid_t uid, int width, int height, int layoutCount, const VideoLayout *layoutlist)
Definition: IAgoraRtcEngine.h:2952
agora::rtc::RtcEngineContext::logConfig
commons::LogConfig logConfig
Definition: IAgoraRtcEngine.h:3464
agora::rtc::PublisherConfiguration::defaultLayout
int defaultLayout
Definition: IAgoraRtcEngine.h:758
agora::rtc::STREAM_FALLBACK_OPTION_DISABLED
@ STREAM_FALLBACK_OPTION_DISABLED
Definition: IAgoraRtcEngine.h:239
agora::rtc::AUDIO_EQUALIZATION_BAND_31
@ AUDIO_EQUALIZATION_BAND_31
Definition: IAgoraRtcEngine.h:169
agora::rtc::UDP_PROXY_TYPE
@ UDP_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1521
agora::rtc::VideoCompositingLayout::canvasWidth
int canvasWidth
Definition: IAgoraRtcEngine.h:642
agora::rtc::IRtcEngine::stopScreenCapture
virtual int stopScreenCapture(VIDEO_SOURCE_TYPE sourceType)=0
agora::rtc::RtcEngineReleaseCallback
void(*)() RtcEngineReleaseCallback
Occurs when the IRtcEngine is released.
Definition: IAgoraRtcEngine.h:3833
agora::rtc::VideoCompositingLayout::appDataLength
int appDataLength
Definition: IAgoraRtcEngine.h:663
agora::rtc::PROXY_TYPE
PROXY_TYPE
Definition: IAgoraRtcEngine.h:1515
agora::rtc::VIDEO_QOE_PREFERENCE_TYPE
VIDEO_QOE_PREFERENCE_TYPE
Definition: AgoraBase.h:3202
agora::rtc::IRtcEngineEventHandler::onLocalVideoStateChanged
virtual void onLocalVideoStateChanged(VIDEO_SOURCE_TYPE source, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_REASON reason)
Definition: IAgoraRtcEngine.h:1944
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW
Definition: IAgoraRtcEngine.h:243
agora::rtc::ExtensionInfo::ExtensionInfo
ExtensionInfo()
Definition: IAgoraRtcEngine.h:3822
agora::rtc::MEDIA_TRACE_EVENT
MEDIA_TRACE_EVENT
Definition: AgoraBase.h:7230
agora::rtc::DirectCdnStreamingMediaOptions::DirectCdnStreamingMediaOptions
DirectCdnStreamingMediaOptions()
Definition: IAgoraRtcEngine.h:3735
agora::rtc::AUDIO_MIXING_REASON_ONE_LOOP_COMPLETED
@ AUDIO_MIXING_REASON_ONE_LOOP_COMPLETED
Definition: IAgoraRtcEngine.h:101
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:1896
agora::rtc::RTMP_STREAMING_EVENT
RTMP_STREAMING_EVENT
Definition: AgoraBase.h:4118
agora::rtc::VideoCompositingLayout::Region::zOrder
int zOrder
Definition: IAgoraRtcEngine.h:618
agora::rtc::IRtcEngine::registerAudioEncodedFrameObserver
virtual int registerAudioEncodedFrameObserver(const AudioEncodedFrameObserverConfig &config, IAudioEncodedFrameObserver *observer)=0
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_4
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_4
Definition: IAgoraRtcEngine.h:255
agora::rtc::RtcEngineContext::audioScenario
AUDIO_SCENARIO_TYPE audioScenario
Definition: IAgoraRtcEngine.h:3438
agora::rtc::STREAM_FALLBACK_OPTION_AUDIO_ONLY
@ STREAM_FALLBACK_OPTION_AUDIO_ONLY
Definition: IAgoraRtcEngine.h:247
agora::rtc::IRtcEngine::setSimulcastConfig
virtual int setSimulcastConfig(const SimulcastConfig &simulcastConfig)=0
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:9027
agora::rtc::AUDIO_EQUALIZATION_BAND_500
@ AUDIO_EQUALIZATION_BAND_500
Definition: IAgoraRtcEngine.h:185
agora::rtc::RemoteVideoStats::publishDuration
int publishDuration
Definition: IAgoraRtcEngine.h:583
agora::rtc::RemoteAudioStats::RemoteAudioStats
RemoteAudioStats()
Definition: IAgoraRtcEngine.h:485
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:1154
agora::rtc::LocalVideoStats::targetFrameRate
int targetFrameRate
Definition: IAgoraRtcEngine.h:325
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_1
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_1
Definition: IAgoraRtcEngine.h:252
agora::rtc::ChannelMediaOptions::enableBuiltInMediaEncryption
Optional< bool > enableBuiltInMediaEncryption
Definition: IAgoraRtcEngine.h:1271
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:2037
agora::rtc::NONE_PROXY_TYPE
@ NONE_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1518
agora::rtc::CodecCapInfo
Definition: AgoraBase.h:1937
agora::commons::LogConfig
Definition: IAgoraLog.h:83
agora::rtc::IRtcEngine::enableDualStreamMode
virtual int enableDualStreamMode(bool enabled) 1=0
agora::rtc::IRtcEngineEventHandler::onPermissionError
virtual void onPermissionError(PERMISSION_TYPE permissionType)
Definition: IAgoraRtcEngine.h:2799
agora::rtc::IRtcEngineEventHandler::onVideoSizeChanged
virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation)
Definition: IAgoraRtcEngine.h:1911
agora::rtc::MEDIA_DEVICE_STATE_TYPE
MEDIA_DEVICE_STATE_TYPE
Definition: IAgoraRtcEngine.h:8882
agora::rtc::ChannelMediaOptions::operator==
bool operator==(const ChannelMediaOptions &o) const
Definition: IAgoraRtcEngine.h:1403
createAgoraRtcEngine
AGORA_API agora::rtc::IRtcEngine *AGORA_CALL createAgoraRtcEngine()
IAgoraLog.h
agora::rtc::IRtcEngine::preloadChannelWithUserAccount
virtual int preloadChannelWithUserAccount(const char *token, const char *channelId, const char *userAccount)=0
agora::rtc::LocalVideoStats
Definition: IAgoraRtcEngine.h:274
agora::rtc::RemoteVideoStats::mosValue
int mosValue
Definition: IAgoraRtcEngine.h:591
agora::rtc::VIDEO_ORIENTATION
VIDEO_ORIENTATION
Definition: AgoraBase.h:987
agora::rtc::InjectStreamConfig::height
int height
Definition: IAgoraRtcEngine.h:685
agora::rtc::INJECT_STREAM_STATUS_STOP_UNAUTHORIZED
@ INJECT_STREAM_STATUS_STOP_UNAUTHORIZED
Definition: IAgoraRtcEngine.h:147
agora::rtc::MultipathStats
Aggregates statistics for all network paths used in multipath transmission.
Definition: AgoraBase.h:2625
agora::rtc::SimulcastConfig::STREAM_LAYER_COUNT_MAX
@ STREAM_LAYER_COUNT_MAX
Definition: AgoraBase.h:2236
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:1530
agora::rtc::IRtcEngine::enableAudio
virtual int enableAudio()=0
agora::rtc::IDirectCdnStreamingEventHandler
Definition: IAgoraRtcEngine.h:3667
agora::rtc::STREAM_FALLBACK_OPTIONS
STREAM_FALLBACK_OPTIONS
Definition: IAgoraRtcEngine.h:234
agora::rtc::MEDIA_DEVICE_STATE_ACTIVE
@ MEDIA_DEVICE_STATE_ACTIVE
Definition: IAgoraRtcEngine.h:8888
agora::rtc::IMetadataObserver::~IMetadataObserver
virtual ~IMetadataObserver()
Definition: IAgoraRtcEngine.h:3504
agora::rtc::DirectCdnStreamingMediaOptions::operator==
bool operator==(const DirectCdnStreamingMediaOptions &o) const
Definition: IAgoraRtcEngine.h:3750
agora::rtc::ChannelMediaOptions::publishLipSyncTrack
Optional< bool > publishLipSyncTrack
Definition: IAgoraRtcEngine.h:1203
agora::rtc::IRtcEngine::getFaceShapeAreaOptions
virtual int getFaceShapeAreaOptions(agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA shapeArea, FaceShapeAreaOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
agora::rtc::AUDIO_SCENARIO_TYPE
AUDIO_SCENARIO_TYPE
Definition: AgoraBase.h:3042
agora::rtc::IRtcEngine::createCustomEncodedVideoTrack
virtual video_track_id_t createCustomEncodedVideoTrack(const SenderOptions &sender_option)=0
agora::rtc::EncryptionConfig
Definition: AgoraBase.h:6811
agora::rtc::LocalVideoStats::qualityAdaptIndication
QUALITY_ADAPT_INDICATION qualityAdaptIndication
Definition: IAgoraRtcEngine.h:329
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:131
agora::rtc::RtcEngineContext::channelProfile
CHANNEL_PROFILE_TYPE channelProfile
Definition: IAgoraRtcEngine.h:3424
agora::rtc::AUDIO_PLAYOUT_DEVICE
@ AUDIO_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:48
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed) 1
Definition: IAgoraRtcEngine.h:2449
agora::rtc::REMOTE_AUDIO_STATE_REASON
REMOTE_AUDIO_STATE_REASON
Definition: AgoraBase.h:3530
agora::rtc::RtcEngineContext::autoRegisterAgoraExtensions
bool autoRegisterAgoraExtensions
Definition: IAgoraRtcEngine.h:3492
agora::rtc::RAW_AUDIO_FRAME_OP_MODE_TYPE
RAW_AUDIO_FRAME_OP_MODE_TYPE
Definition: AgoraMediaBase.h:228
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_4
@ VIDEO_PROFILE_LANDSCAPE_480P_4
Definition: IAgoraRtcEngine.h:8945
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:2406
agora::rtc::AdvancedAudioOptions::~AdvancedAudioOptions
~AdvancedAudioOptions()
Definition: IAgoraRtcEngine.h:1062
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed) 1
Definition: IAgoraRtcEngine.h:2461
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_10
@ VIDEO_PROFILE_LANDSCAPE_480P_10
Definition: IAgoraRtcEngine.h:8953
agora::rtc::PRIORITY_HIGH
@ PRIORITY_HIGH
Definition: IAgoraRtcEngine.h:263
AgoraOptional.h
agora::rtc::IRtcEngine::startLastmileProbeTest
virtual int startLastmileProbeTest(const LastmileProbeConfig &config)=0
agora::rtc::IRtcEngineEventHandler::onUserMuteVideo
virtual void onUserMuteVideo(uid_t uid, bool muted)
Definition: IAgoraRtcEngine.h:2056
agora::rtc::RtcEngineContext::appId
const char * appId
Definition: IAgoraRtcEngine.h:3414
agora::rtc::RemoteVideoStats::rxVideoBytes
unsigned int rxVideoBytes
Definition: IAgoraRtcEngine.h:595
agora::rtc::RemoteAudioStats
Definition: IAgoraRtcEngine.h:372
agora::rtc::VideoCompositingLayout::VideoCompositingLayout
VideoCompositingLayout()
Definition: IAgoraRtcEngine.h:665
agora::rtc::TranscodingVideoStream
Definition: AgoraBase.h:4480
agora::rtc::IVideoDeviceCollection::setDevice
virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::IRtcEngineEventHandler::onAudioDeviceStateChanged
virtual void onAudioDeviceStateChanged(const char *deviceId, int deviceType, int deviceState)
Definition: IAgoraRtcEngine.h:1738
agora::rtc::RemoteAudioStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:376
agora::rtc::IRtcEngineEventHandler::onCameraReady
virtual void onCameraReady() 1
Definition: IAgoraRtcEngine.h:2160
agora::rtc::ChannelMediaOptions::publishThirdCameraTrack
Optional< bool > publishThirdCameraTrack
Definition: IAgoraRtcEngine.h:1098
agora::rtc::AUDIO_EFFECT_PRESET
AUDIO_EFFECT_PRESET
Definition: AgoraBase.h:5859
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:2501
agora::rtc::LocalVideoStats::captureBrightnessLevel
CAPTURE_BRIGHTNESS_LEVEL_TYPE captureBrightnessLevel
Definition: IAgoraRtcEngine.h:346
agora::rtc::IRtcEngineEventHandler::onUserAccountUpdated
virtual void onUserAccountUpdated(uid_t uid, const char *userAccount)
Definition: IAgoraRtcEngine.h:2836
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P
@ VIDEO_PROFILE_LANDSCAPE_360P
Definition: IAgoraRtcEngine.h:8923
agora::rtc::LocalVideoStats::simulcastDimensions
VideoDimensions simulcastDimensions[SimulcastConfig::STREAM_LAYER_COUNT_MAX]
Definition: IAgoraRtcEngine.h:358
agora::rtc::IRtcEngine::setAudioProfile
virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile, AUDIO_SCENARIO_TYPE scenario) 1=0
agora::rtc::DIRECT_CDN_STREAMING_REASON_OK
@ DIRECT_CDN_STREAMING_REASON_OK
Definition: IAgoraRtcEngine.h:3597
agora::rtc::WatermarkConfig
Defines the configuration for a watermark.
Definition: AgoraBase.h:2515
agora::rtc::LocalVideoStats::encoderOutputFrameRate
int encoderOutputFrameRate
Definition: IAgoraRtcEngine.h:310
agora::rtc::LocalVideoStats::codecType
VIDEO_CODEC_TYPE codecType
Definition: IAgoraRtcEngine.h:339
agora::rtc::ChannelMediaOptions::isAudioFilterable
Optional< bool > isAudioFilterable
Definition: IAgoraRtcEngine.h:1296
agora::rtc::AUDIO_AINS_MODE
AUDIO_AINS_MODE
Definition: AgoraBase.h:2977
agora::rtc::RemoteVideoStats::decoderInputFrameRate
int decoderInputFrameRate
Definition: IAgoraRtcEngine.h:543
agora::rtc::VIDEO_STREAM_TYPE
VIDEO_STREAM_TYPE
Definition: AgoraBase.h:1613
agora::rtc::VIDEO_PROFILE_PORTRAIT_4K_3
@ VIDEO_PROFILE_PORTRAIT_4K_3
Definition: IAgoraRtcEngine.h:9045
agora::rtc::IVideoDeviceManager::setDevice
virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::RtcStats
Definition: AgoraBase.h:2672
agora::rtc::PublisherConfiguration::lifecycle
int lifecycle
Definition: IAgoraRtcEngine.h:761
agora::rtc::ChannelMediaOptions::audienceLatencyLevel
Optional< AUDIENCE_LATENCY_LEVEL_TYPE > audienceLatencyLevel
Definition: IAgoraRtcEngine.h:1234
agora::rtc::RtcEngineContext::license
const char * license
Definition: IAgoraRtcEngine.h:3429
AgoraMediaBase.h
agora::rtc::PublisherConfiguration::PublisherConfiguration
PublisherConfiguration()
Definition: IAgoraRtcEngine.h:788
agora::rtc::ChannelMediaOptions::publishMediaPlayerVideoTrack
Optional< bool > publishMediaPlayerVideoTrack
Definition: IAgoraRtcEngine.h:1185
agora::rtc::VIDEO_PROFILE_PORTRAIT_1080P_3
@ VIDEO_PROFILE_PORTRAIT_1080P_3
Definition: IAgoraRtcEngine.h:9035
agora::rtc::IRtcEngine::startRtmpStreamWithoutTranscoding
virtual int startRtmpStreamWithoutTranscoding(const char *url)=0
agora::rtc::QUALITY_REPORT_HTML
@ QUALITY_REPORT_HTML
Definition: IAgoraRtcEngine.h:8878
agora::rtc::LowlightEnhanceOptions
Definition: AgoraBase.h:5455
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:559
agora::rtc::DIRECT_CDN_STREAMING_STATE_STOPPED
@ DIRECT_CDN_STREAMING_STATE_STOPPED
Definition: IAgoraRtcEngine.h:3622
agora::rtc::IRtcEngineEventHandler::onSetRtmFlagResult
virtual void onSetRtmFlagResult(int code)
Definition: IAgoraRtcEngine.h:3033
agora::rtc::IRtcEngine::stopRtmpStream
virtual int stopRtmpStream(const char *url)=0
agora::rtc::IRtcEngine::startEchoTest
virtual int startEchoTest(const EchoTestConfiguration &config)=0
agora::rtc::ChannelMediaOptions::mediaPlayerAudioDelayMs
Optional< int > mediaPlayerAudioDelayMs
Definition: IAgoraRtcEngine.h:1254
agora::rtc::ChannelMediaOptions::clientRoleType
Optional< CLIENT_ROLE_TYPE > clientRoleType
Definition: IAgoraRtcEngine.h:1230
agora::rtc::LocalVideoStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:278
agora::rtc::IRtcEngine::setLocalRenderTargetFps
virtual int setLocalRenderTargetFps(VIDEO_SOURCE_TYPE sourceType, int targetFps)=0
agora::rtc::IRtcEngine::setFaceShapeAreaOptions
virtual int setFaceShapeAreaOptions(const FaceShapeAreaOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
agora::rtc::STREAM_PUBLISH_STATE
STREAM_PUBLISH_STATE
Definition: AgoraBase.h:7001
agora::rtc::IRtcEngineEventHandler::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1595
agora::rtc::WatermarkOptions
Definition: AgoraBase.h:2341
agora::rtc::IRtcEngine::adjustPlaybackSignalVolume
virtual int adjustPlaybackSignalVolume(int volume)=0
agora::rtc::LocalAudioStats
Definition: AgoraBase.h:3949
agora::rtc::RecorderStreamInfo
Definition: AgoraBase.h:7393
agora::rtc::SimulcastConfig
Definition: AgoraBase.h:2200
agora::rtc::LOCAL_AUDIO_STREAM_STATE
LOCAL_AUDIO_STREAM_STATE
Definition: AgoraBase.h:3266
agora::rtc::VIDEO_MIRROR_MODE_DISABLED
@ VIDEO_MIRROR_MODE_DISABLED
Definition: AgoraBase.h:1870
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:6234
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:74
agora::rtc::VideoCompositingLayout::backgroundColor
const char * backgroundColor
Definition: IAgoraRtcEngine.h:650
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_4
@ VIDEO_PROFILE_LANDSCAPE_360P_4
Definition: IAgoraRtcEngine.h:8927
agora::rtc::ScreenCaptureConfiguration::params
ScreenCaptureParameters params
Definition: IAgoraRtcEngine.h:893
agora::rtc::IMetadataObserver::Metadata::buffer
unsigned char * buffer
Definition: IAgoraRtcEngine.h:3546
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:8959
agora::RefCountInterface
Definition: AgoraRefPtr.h:31
agora::rtc::IRtcEngine::setupLocalVideo
virtual int setupLocalVideo(const VideoCanvas &canvas)=0
agora::rtc::InjectStreamConfig
Definition: IAgoraRtcEngine.h:677
agora::rtc::HEADPHONE_EQUALIZER_PRESET
HEADPHONE_EQUALIZER_PRESET
Definition: AgoraBase.h:6043
agora::media::MEDIA_SOURCE_TYPE
MEDIA_SOURCE_TYPE
Definition: AgoraMediaBase.h:247
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P
@ VIDEO_PROFILE_LANDSCAPE_240P
Definition: IAgoraRtcEngine.h:8917
agora::rtc::ChannelMediaOptions::publishRhythmPlayerTrack
Optional< bool > publishRhythmPlayerTrack
Definition: IAgoraRtcEngine.h:1277
agora::rtc::IRtcEngine::startOrUpdateChannelMediaRelay
virtual int startOrUpdateChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration)=0
agora::rtc::ScreenCaptureConfiguration::isCaptureWindow
bool isCaptureWindow
Definition: IAgoraRtcEngine.h:875
agora::rtc::IRtcEngineEventHandler::onRtmpStreamingStateChanged
virtual void onRtmpStreamingStateChanged(const char *url, RTMP_STREAM_PUBLISH_STATE state, RTMP_STREAM_PUBLISH_REASON reason)
Definition: IAgoraRtcEngine.h:2605
agora::rtc::QUALITY_REPORT_JSON
@ QUALITY_REPORT_JSON
Definition: IAgoraRtcEngine.h:8875
agora::rtc::AUDIO_MIXING_REASON_ALL_LOOPS_COMPLETED
@ AUDIO_MIXING_REASON_ALL_LOOPS_COMPLETED
Definition: IAgoraRtcEngine.h:103
agora::rtc::IRtcEngine::startAudioRecording
virtual int startAudioRecording(const AudioRecordingConfiguration &config)=0
agora::rtc::IRtcEngineEventHandler::onConnectionInterrupted
virtual void onConnectionInterrupted() 1
Definition: IAgoraRtcEngine.h:2288
agora::rtc::LocalVideoStats::captureFrameWidth
int captureFrameWidth
Definition: IAgoraRtcEngine.h:292
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:3403
agora::rtc::IRtcEngine::resumeAllChannelMediaRelay
virtual int resumeAllChannelMediaRelay()=0
agora::rtc::ChannelMediaOptions
Definition: IAgoraRtcEngine.h:1080
agora::rtc::IRtcEngine::enableVideo
virtual int enableVideo()=0
agora::rtc::IRtcEngineEventHandler::onExtensionEventWithContext
virtual void onExtensionEventWithContext(const ExtensionContext &context, const char *key, const char *value)
Definition: IAgoraRtcEngine.h:2983
agora::rtc::IRtcEngine
Definition: IAgoraRtcEngine.h:3841
agora::rtc::LocalVideoStats::encodedBitrate
int encodedBitrate
Definition: IAgoraRtcEngine.h:333
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:2886
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStats
virtual void onRemoteAudioStats(const RemoteAudioStats &stats)
Definition: IAgoraRtcEngine.h:2110
agora::rtc::IRtcEngineEventHandler::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) 1
Definition: IAgoraRtcEngine.h:2721
agora::rtc::IRtcEngine::setClientRole
virtual int setClientRole(CLIENT_ROLE_TYPE role)=0
agora::rtc::AUDIO_MIXING_REASON_TYPE
AUDIO_MIXING_REASON_TYPE
Definition: IAgoraRtcEngine.h:93
agora::rtc::RemoteAudioStats::plcCount
uint32_t plcCount
Definition: IAgoraRtcEngine.h:445
agora::rtc::ScreenCaptureConfiguration
Definition: IAgoraRtcEngine.h:869
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:627
agora::rtc::ImageTrackOptions::fps
int fps
Definition: IAgoraRtcEngine.h:1067
agora::rtc::IRtcEngine::updateLocalAudioMixerConfiguration
virtual int updateLocalAudioMixerConfiguration(const LocalAudioMixerConfiguration &config)=0
agora::rtc::DIRECT_CDN_STREAMING_STATE_RECOVERING
@ DIRECT_CDN_STREAMING_STATE_RECOVERING
Definition: IAgoraRtcEngine.h:3626
agora::rtc::IVideoDeviceManager::~IVideoDeviceManager
virtual ~IVideoDeviceManager()
Definition: IAgoraRtcEngine.h:3116
agora::rtc::AudioRecordingConfiguration
Definition: AgoraBase.h:6295
agora::rtc::AUDIO_RECORDING_DEVICE
@ AUDIO_RECORDING_DEVICE
Definition: IAgoraRtcEngine.h:52
agora::rtc::ExtensionInfo::channelId
const char * channelId
Definition: IAgoraRtcEngine.h:3815
agora::rtc::IMetadataObserver::Metadata::timeStampMs
long long timeStampMs
Definition: IAgoraRtcEngine.h:3550
agora::rtc::IVideoDeviceCollection::release
virtual void release()=0
agora::rtc::REMOTE_VIDEO_STATE_REASON
REMOTE_VIDEO_STATE_REASON
Definition: AgoraBase.h:3611
agora::rtc::REMOTE_USER_STATE
REMOTE_USER_STATE
Definition: AgoraBase.h:3671
agora::rtc::LocalVideoStats::encodedFrameDepth
int encodedFrameDepth
Definition: IAgoraRtcEngine.h:365
agora::rtc::DirectCdnStreamingMediaOptions::publishMediaPlayerAudioTrack
Optional< bool > publishMediaPlayerAudioTrack
Definition: IAgoraRtcEngine.h:3723
agora::rtc::IRtcEngineEventHandler::onRenewTokenResult
virtual void onRenewTokenResult(const char *token, RENEW_TOKEN_ERROR_CODE code)
Reports the result of calling renewToken.
Definition: IAgoraRtcEngine.h:3061
agora::rtc::IRtcEngine::renewToken
virtual int renewToken(const char *token)=0
agora::rtc::DIRECT_CDN_STREAMING_REASON_AUDIO_PUBLICATION
@ DIRECT_CDN_STREAMING_REASON_AUDIO_PUBLICATION
Definition: IAgoraRtcEngine.h:3601
agora::rtc::VideoDimensions
Definition: AgoraBase.h:1139
agora::rtc::IRtcEngine::disableAudioSpectrumMonitor
virtual int disableAudioSpectrumMonitor()=0
agora::rtc::AUDIO_EQUALIZATION_BAND_62
@ AUDIO_EQUALIZATION_BAND_62
Definition: IAgoraRtcEngine.h:173
agora::rtc::IRtcEngine::setAdvancedAudioOptions
virtual int setAdvancedAudioOptions(AdvancedAudioOptions &options, int sourceType=0)=0
agora::rtc::RENEW_TOKEN_ERROR_CODE
RENEW_TOKEN_ERROR_CODE
Definition: AgoraBase.h:6908
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:8931
agora::rtc::IRtcEngineEventHandler::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: IAgoraRtcEngine.h:2576
agora::rtc::IRtcEngineEventHandler::onRdtStateChanged
virtual void onRdtStateChanged(uid_t userId, RdtState state)
Occurs when the RDT tunnel state changed.
Definition: IAgoraRtcEngine.h:2362
agora::rtc::AUDIO_MIXING_REASON_RESUMED_BY_USER
@ AUDIO_MIXING_REASON_RESUMED_BY_USER
Definition: IAgoraRtcEngine.h:107
agora::rtc::ChannelMediaOptions::downlinkMultipathMode
Optional< MultipathMode > downlinkMultipathMode
Definition: IAgoraRtcEngine.h:1337
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:689
agora::rtc::IRtcEngine::rate
virtual int rate(const char *callId, int rating, const char *description)=0
agora::rtc::ImageTrackOptions::ImageTrackOptions
ImageTrackOptions()
Definition: IAgoraRtcEngine.h:1069
agora::rtc::FeatureType
FeatureType
Definition: IAgoraRtcEngine.h:1539
agora::rtc::IRtcEngineEventHandler::onLocalAudioStateChanged
virtual void onLocalAudioStateChanged(LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_REASON reason)
Definition: IAgoraRtcEngine.h:2480
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:156
agora::rtc::INJECT_STREAM_STATUS_STOP_SUCCESS
@ INJECT_STREAM_STATUS_STOP_SUCCESS
Definition: IAgoraRtcEngine.h:139
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Definition: AgoraBase.h:4927
agora::rtc::IRtcEngineEventHandler::onAudioDeviceVolumeChanged
virtual void onAudioDeviceVolumeChanged(MEDIA_DEVICE_TYPE deviceType, int volume, bool muted)
Definition: IAgoraRtcEngine.h:2588
OPTIONAL_NULLPTR
#define OPTIONAL_NULLPTR
Definition: AgoraBase.h:90
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_3
@ VIDEO_PROFILE_PORTRAIT_360P_3
Definition: IAgoraRtcEngine.h:8995
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P
@ VIDEO_PROFILE_PORTRAIT_720P
Definition: IAgoraRtcEngine.h:9025
agora::rtc::VideoCompositingLayout::appData
const char * appData
Definition: IAgoraRtcEngine.h:660
agora::rtc::CAMERA_STABILIZATION_MODE
CAMERA_STABILIZATION_MODE
Definition: AgoraBase.h:3242
agora::rtc::IRtcEngineEventHandler::onStreamMessage
virtual void onStreamMessage(uid_t uid, int streamId, const char *data, size_t length, uint64_t sentTs)
Definition: IAgoraRtcEngine.h:2306
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_6
@ VIDEO_PROFILE_PORTRAIT_480P_6
Definition: IAgoraRtcEngine.h:9017
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::DirectCdnStreamingMediaOptions::~DirectCdnStreamingMediaOptions
~DirectCdnStreamingMediaOptions()
Definition: IAgoraRtcEngine.h:3736
agora::rtc::IRtcEngineEventHandler::onNetworkQuality
virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngine.h:1806
agora::rtc::CAMERA_DIRECTION
CAMERA_DIRECTION
Definition: IAgoraRtcEngine.h:807
agora::rtc::ChannelMediaOptions::audioDelayMs
Optional< int > audioDelayMs
Definition: IAgoraRtcEngine.h:1249
agora::rtc::IRtcEngine::setRemoteDefaultVideoStreamType
virtual int setRemoteDefaultVideoStreamType(VIDEO_STREAM_TYPE streamType)=0
agora::rtc::AUDIO_PROFILE_TYPE
AUDIO_PROFILE_TYPE
Definition: AgoraBase.h:2995
agora::rtc::DirectCdnStreamingMediaOptions::publishMicrophoneTrack
Optional< bool > publishMicrophoneTrack
Definition: IAgoraRtcEngine.h:3705
agora::rtc::IRtcEngine::startAudioFrameDump
virtual int startAudioFrameDump(const char *channel_id, uid_t uid, const char *location, const char *uuid, const char *passwd, long duration_ms, bool auto_upload)=0
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:2415
agora::rtc::IRtcEngine::setClientRole
virtual int setClientRole(CLIENT_ROLE_TYPE role, const ClientRoleOptions &options)=0
agora::rtc::LeaveChannelOptions::LeaveChannelOptions
LeaveChannelOptions()
Definition: IAgoraRtcEngine.h:1567
agora::rtc::IDirectCdnStreamingEventHandler::onDirectCdnStreamingStats
virtual void onDirectCdnStreamingStats(const DirectCdnStreamingStats &stats)
Definition: IAgoraRtcEngine.h:3683
agora::rtc::IMetadataObserver::MAX_METADATA_SIZE_TYPE
MAX_METADATA_SIZE_TYPE
Definition: IAgoraRtcEngine.h:3523
agora::rtc::DIRECT_CDN_STREAMING_STATE_RUNNING
@ DIRECT_CDN_STREAMING_STATE_RUNNING
Definition: IAgoraRtcEngine.h:3620
agora::rtc::MEDIA_DEVICE_STATE_NOT_PRESENT
@ MEDIA_DEVICE_STATE_NOT_PRESENT
Definition: IAgoraRtcEngine.h:8899
agora::rtc::INJECT_STREAM_STATUS_START_UNAUTHORIZED
@ INJECT_STREAM_STATUS_START_UNAUTHORIZED
Definition: IAgoraRtcEngine.h:127
agora::rtc::VideoCompositingLayout::Region::uid
uid_t uid
Definition: IAgoraRtcEngine.h:602
agora::rtc::IRtcEngine::setRemoteRenderTargetFps
virtual int setRemoteRenderTargetFps(int targetFps)=0
agora::rtc::IRtcEngine::destroyMediaRecorder
virtual int destroyMediaRecorder(agora_refptr< IMediaRecorder > mediaRecorder)=0
agora::rtc::IRtcEngine::setPlaybackAudioFrameBeforeMixingParameters
virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel, int samplesPerCall)=0
agora::rtc::IRtcEngine::setLogFile
virtual int setLogFile(const char *filePath)=0
agora::rtc::RtcEngineContext::context
void * context
Definition: IAgoraRtcEngine.h:3420
ADD_COMPARE
#define ADD_COMPARE(X)
agora::rtc::ImageTrackOptions
Definition: IAgoraRtcEngine.h:1065
agora::rtc::ImageTrackOptions::imageUrl
const char * imageUrl
Definition: IAgoraRtcEngine.h:1066
agora::rtc::VIDEO_PROFILE_PORTRAIT_4K
@ VIDEO_PROFILE_PORTRAIT_4K
Definition: IAgoraRtcEngine.h:9043
agora::rtc::IRtcEngine::setLocalRenderMode
virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode) 1=0
agora::rtc::VideoCompositingLayout::Region
Definition: IAgoraRtcEngine.h:599
agora::rtc::IRtcEngine::registerLocalUserAccount
virtual int registerLocalUserAccount(const char *appId, const char *userAccount)=0
agora::rtc::LocalVideoStats::encodedFrameCount
int encodedFrameCount
Definition: IAgoraRtcEngine.h:336
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:536
agora::rtc::IRtcEngine::registerEventHandler
virtual bool registerEventHandler(IRtcEngineEventHandler *eventHandler)=0
agora::rtc::IVideoDeviceCollection::getCount
virtual int getCount()=0
agora::rtc::PublisherConfiguration::height
int height
Definition: IAgoraRtcEngine.h:744
agora::rtc::ChannelMediaOptions::publishMediaPlayerAudioTrack
Optional< bool > publishMediaPlayerAudioTrack
Definition: IAgoraRtcEngine.h:1179
agora::rtc::RdtStreamType
RdtStreamType
Reliable Data Transmission Tunnel message stream type.
Definition: AgoraBase.h:7418
agora::rtc::DirectCdnStreamingMediaOptions::publishMediaPlayerId
Optional< int > publishMediaPlayerId
Definition: IAgoraRtcEngine.h:3728
agora::rtc::IRtcEngineEventHandler::onUplinkNetworkInfoUpdated
virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo &info)
Definition: IAgoraRtcEngine.h:1830
agora::rtc::VIDEO_PROFILE_TYPE
VIDEO_PROFILE_TYPE
Definition: IAgoraRtcEngine.h:8905
agora::rtc::IRtcEngine::stopDirectCdnStreaming
virtual int stopDirectCdnStreaming()=0
agora::rtc::DIRECT_CDN_STREAMING_REASON
DIRECT_CDN_STREAMING_REASON
Definition: IAgoraRtcEngine.h:3595
agora::rtc::AUDIO_EQUALIZATION_BAND_4K
@ AUDIO_EQUALIZATION_BAND_4K
Definition: IAgoraRtcEngine.h:197
agora::rtc::RtcEngineContext::RtcEngineContext
RtcEngineContext()
Definition: IAgoraRtcEngine.h:3494
agora::rtc::InjectStreamConfig::width
int width
Definition: IAgoraRtcEngine.h:681
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:8961
agora::rtc::IRtcEngine::adjustRecordingSignalVolume
virtual int adjustRecordingSignalVolume(int volume)=0
agora::rtc::IRtcEngineEventHandler::onTranscodingUpdated
virtual void onTranscodingUpdated()
Definition: IAgoraRtcEngine.h:2632
agora::rtc::VIDEO_PROFILE_LANDSCAPE_180P_4
@ VIDEO_PROFILE_LANDSCAPE_180P_4
Definition: IAgoraRtcEngine.h:8915
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition: AgoraBase.h:798
agora::rtc::IRtcEngine::joinChannelWithUserAccount
virtual int joinChannelWithUserAccount(const char *token, const char *channelId, const char *userAccount)=0
agora::rtc::FaceShapeAreaOptions
Face shape area options. This structure defines options for facial adjustments on different facial ar...
Definition: AgoraBase.h:5168
agora::rtc::AREA_CODE_GLOB
@ AREA_CODE_GLOB
Definition: AgoraBase.h:6472
AGORA_CALL
#define AGORA_CALL
Definition: AgoraBase.h:72
agora::rtc::ScreenCaptureConfiguration::windowId
int64_t windowId
Definition: IAgoraRtcEngine.h:889
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P
@ VIDEO_PROFILE_LANDSCAPE_480P
Definition: IAgoraRtcEngine.h:8941
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:1524
agora::rtc::IRtcEngine::addVideoWatermark
virtual int addVideoWatermark(const RtcImage &watermark) 1=0
agora::rtc::IRtcEngine::getConnectionState
virtual CONNECTION_STATE_TYPE getConnectionState()=0
agora::rtc::IRtcEngineEventHandler::onMultipathStats
virtual void onMultipathStats(const MultipathStats &stats)
Report the multipath transmission statistics.
Definition: IAgoraRtcEngine.h:3045
agora::rtc::LocalVideoStats::txPacketLossRate
unsigned short txPacketLossRate
Definition: IAgoraRtcEngine.h:343
agora::rtc::DirectCdnStreamingMediaOptions::publishCustomVideoTrack
Optional< bool > publishCustomVideoTrack
Definition: IAgoraRtcEngine.h:3717
agora::rtc::RemoteAudioStats::networkTransportDelay
int networkTransportDelay
Definition: IAgoraRtcEngine.h:384
agora::rtc::PublisherConfiguration::rawStreamUrl
const char * rawStreamUrl
Definition: IAgoraRtcEngine.h:783
agora::rtc::SetFrom
static void SetFrom(Optional< T > *s, const Optional< T > &o)
Definition: IAgoraRtcEngine.h:24
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
Definition: AgoraBase.h:4903
agora::rtc::IRtcEngineEventHandler::onLeaveChannel
virtual void onLeaveChannel(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1714
agora::rtc::AAudioDeviceManager
Definition: IAgoraRtcEngine.h:9050
agora::rtc::IMetadataObserver::Metadata
Definition: IAgoraRtcEngine.h:3532
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_10
@ VIDEO_PROFILE_PORTRAIT_360P_10
Definition: IAgoraRtcEngine.h:9007
agora::rtc::IRtcEngine::registerAudioSpectrumObserver
virtual int registerAudioSpectrumObserver(agora::media::IAudioSpectrumObserver *observer)=0
agora::rtc::IRtcEngineEventHandler::onLastmileQuality
virtual void onLastmileQuality(int quality)
Definition: IAgoraRtcEngine.h:1846
agora::rtc::LOCAL_PROXY_TYPE
@ LOCAL_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1527
agora::rtc::FocalLengthInfo
Definition: AgoraBase.h:1950
agora::rtc::IRtcEngineEventHandler::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngine.h:2786
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_7
@ VIDEO_PROFILE_PORTRAIT_360P_7
Definition: IAgoraRtcEngine.h:9001
agora::rtc::IRtcEngine::getFaceShapeBeautyOptions
virtual int getFaceShapeBeautyOptions(FaceShapeBeautyOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
agora::rtc::DeviceInfo
Definition: AgoraBase.h:3810
agora::base::IEngineBase
Definition: AgoraBase.h:7473
agora::rtc::DIRECT_CDN_STREAMING_REASON_VIDEO_PUBLICATION
@ DIRECT_CDN_STREAMING_REASON_VIDEO_PUBLICATION
Definition: IAgoraRtcEngine.h:3603
agora::rtc::VIDEO_PROFILE_LANDSCAPE_120P_3
@ VIDEO_PROFILE_LANDSCAPE_120P_3
Definition: IAgoraRtcEngine.h:8909
agora::rtc::IRtcEngine::queryCodecCapability
virtual int queryCodecCapability(CodecCapInfo *codecInfo, int &size)=0
agora::rtc::VideoRenderingTracingInfo
Definition: AgoraBase.h:7244
agora::rtc::IRtcEngine::enableAudioSpectrumMonitor
virtual int enableAudioSpectrumMonitor(int intervalInMS=100)=0
agora::rtc::IRtcEngineEventHandler::onRtcStats
virtual void onRtcStats(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1723
agora::rtc::UDP_PROXY
@ UDP_PROXY
Definition: IAgoraRtcEngine.h:824
agora::rtc::IRtcEngineEventHandler::onActiveSpeaker
virtual void onActiveSpeaker(uid_t uid)
Definition: IAgoraRtcEngine.h:2521
agora::rtc::IRtcEngineEventHandler::onConnectionLost
virtual void onConnectionLost()
Definition: IAgoraRtcEngine.h:2275
SET_FROM
#define SET_FROM(X)
agora::rtc::LeaveChannelOptions::stopMicrophoneRecording
bool stopMicrophoneRecording
Definition: IAgoraRtcEngine.h:1565
agora::rtc::PublisherConfiguration::injectStreamHeight
int injectStreamHeight
Definition: IAgoraRtcEngine.h:772
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:1875
agora::rtc::CameraCapturerConfiguration
Definition: IAgoraRtcEngine.h:833
agora::rtc::ExtensionInfo::localUid
uid_t localUid
Definition: IAgoraRtcEngine.h:3820
agora::rtc::VIDEO_PROFILE_LANDSCAPE_4K_3
@ VIDEO_PROFILE_LANDSCAPE_4K_3
Definition: IAgoraRtcEngine.h:8975
agora::rtc::VIDEO_PROFILE_PORTRAIT_180P_3
@ VIDEO_PROFILE_PORTRAIT_180P_3
Definition: IAgoraRtcEngine.h:8983
agora::rtc::RemoteVideoStats
Definition: IAgoraRtcEngine.h:512
agora::rtc::AUDIO_MIXING_STATE_TYPE
AUDIO_MIXING_STATE_TYPE
Definition: IAgoraRtcEngine.h:78
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoFrame
virtual void onFirstRemoteVideoFrame(uid_t uid, int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1975
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:2927
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:3992
agora::rtc::AUDIO_VIRTUAL_RECORDING_DEVICE
@ AUDIO_VIRTUAL_RECORDING_DEVICE
Definition: IAgoraRtcEngine.h:72
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_3
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_3
Definition: IAgoraRtcEngine.h:254
agora::rtc::InjectStreamConfig::videoBitrate
int videoBitrate
Definition: IAgoraRtcEngine.h:697
agora::rtc::IRtcEngine::setVideoQoEPreference
virtual int setVideoQoEPreference(VIDEO_QOE_PREFERENCE_TYPE qoePreference)=0
agora::rtc::IRtcEngineEventHandler::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) 1
Definition: IAgoraRtcEngine.h:2745
agora::rtc::RTMP_STREAM_LIFE_CYCLE_BIND2OWNER
@ RTMP_STREAM_LIFE_CYCLE_BIND2OWNER
Definition: IAgoraRtcEngine.h:731
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:4983
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_11
@ VIDEO_PROFILE_LANDSCAPE_360P_11
Definition: IAgoraRtcEngine.h:8939
agora::rtc::RTMP_STREAM_PUBLISH_REASON
RTMP_STREAM_PUBLISH_REASON
Definition: AgoraBase.h:4035
agora::rtc::AUDIO_REVERB_DRY_LEVEL
@ AUDIO_REVERB_DRY_LEVEL
Definition: IAgoraRtcEngine.h:215
agora::rtc::VideoCompositingLayout::Region::alpha
double alpha
Definition: IAgoraRtcEngine.h:623
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P
@ VIDEO_PROFILE_LANDSCAPE_1080P
Definition: IAgoraRtcEngine.h:8963
agora::rtc::RemoteAudioStats::frozenCntByCustom
uint32_t frozenCntByCustom
Definition: IAgoraRtcEngine.h:451
agora::rtc::RtcEngineContext::areaCode
unsigned int areaCode
Definition: IAgoraRtcEngine.h:3447
agora::rtc::SegmentationProperty
Definition: AgoraBase.h:5658
agora::rtc::AUDIO_SAMPLE_RATE_TYPE
AUDIO_SAMPLE_RATE_TYPE
Definition: AgoraBase.h:3881
agora::rtc::IRtcEngineEventHandler::onIntraRequestReceived
virtual void onIntraRequestReceived()
Definition: IAgoraRtcEngine.h:1818
agora::rtc::track_id_t
unsigned int track_id_t
Definition: AgoraMediaBase.h:29
agora::rtc::LOCAL_AUDIO_STREAM_REASON
LOCAL_AUDIO_STREAM_REASON
Definition: AgoraBase.h:3288
agora::rtc::IRtcEngineEventHandler::onLastmileProbeResult
virtual void onLastmileProbeResult(const LastmileProbeResult &result)
Definition: IAgoraRtcEngine.h:1669