Agora C++ API Reference for All Platforms
IAgoraRtcEngine.h
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 
102 };
103 
141 };
142 
191 };
192 
237 };
238 
263 };
264 
294 };
295 
303 };
304 
305 struct RtcConnection;
306 
311 {
403  unsigned short txPacketLossRate;
429 };
430 
435 {
443  int quality;
496  int mosValue;
505  uint32_t plcCount;
506 
512 
518 
542  unsigned int rxAudioBytes;
547  int e2eDelay;
548 
550  : uid(0),
551  quality(0),
554  audioLossRate(0),
555  numChannels(0),
557  receivedBitrate(0),
558  totalFrozenTime(0),
559  frozenRate(0),
560  mosValue(0),
562  plcCount(0),
565  totalActiveTime(0),
566  publishDuration(0),
567  qoeQuality(0),
569  rxAudioBytes(0),
570  e2eDelay(0) {}
571 };
572 
588  int delay __deprecated;
593  int e2eDelay;
597  int width;
601  int height;
663  int mosValue;
667  unsigned int rxVideoBytes;
668 };
669 
671  struct Region {
677  double x; // [0,1]
680  double y; // [0,1]
684  double width; // [0,1]
686  double height; // [0,1]
690  int zOrder; // optional, [0, 100] //0 (default): bottom most, 100: top most
691 
695  double alpha;
696 
697  media::base::RENDER_MODE_TYPE renderMode; // RENDER_MODE_HIDDEN: Crop, RENDER_MODE_FIT: Zoom to fit
698 
700  : uid(0),
701  x(0),
702  y(0),
703  width(0),
704  height(0),
705  zOrder(0),
706  alpha(1.0),
707  renderMode(media::base::RENDER_MODE_HIDDEN) {}
708  };
709 
722  const char* backgroundColor; // e.g. "#C0C0C0" in RGB
726  const Region* regions;
732  const char* appData;
736 
738  : canvasWidth(0),
739  canvasHeight(0),
740  backgroundColor(OPTIONAL_NULLPTR),
741  regions(NULL),
742  regionCount(0),
743  appData(OPTIONAL_NULLPTR),
744  appDataLength(0) {}
745 };
746 
753  int width;
757  int height;
761  int videoGop;
781 
782  // width / height default set to 0 means pull the stream with its original
783  // resolution
785  : width(0),
786  height(0),
787  videoGop(30),
788  videoFramerate(15),
789  videoBitrate(400),
791  audioBitrate(48),
792  audioChannels(1) {}
793 };
794 
809 };
810 
817  int width;
821  int height;
829  int bitrate;
843  bool owner;
852  const char* injectStreamUrl;
856  const char* publishUrl;
860  const char* rawStreamUrl;
863  const char* extraInfo;
864 
866  : width(640),
867  height(360),
868  framerate(15),
869  bitrate(500),
870  defaultLayout(1),
872  owner(true),
875  injectStreamUrl(NULL),
876  publishUrl(NULL),
877  rawStreamUrl(NULL),
878  extraInfo(NULL) {}
879 };
880 
893 };
894 
912 
916  TCP_PROXY = 2,
918 };
919 
923 struct CameraCapturerConfiguration {
925 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
926 
931 
949 #else
950 
955 #endif
956 
957 #if defined(__ANDROID__)
958 
974 #endif
975 
989 };
993 struct ScreenCaptureConfiguration {
999  bool isCaptureWindow; // true - capture window, false - capture display
1004  int64_t displayId;
1009  Rectangle screenRect; //Windows only
1014  int64_t windowId;
1018  ScreenCaptureParameters params;
1025  Rectangle regionRect;
1028 };
1029 
1030 #if (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)|| (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
1031 
1033 struct SIZE {
1036  int width;
1039  int height;
1041  SIZE() : width(0), height(0) {}
1042  SIZE(int ww, int hh) : width(ww), height(hh) {}
1043 };
1044 #endif
1045 
1046 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE) || (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
1047 
1054 struct ThumbImageBuffer {
1058  const char* buffer;
1062  unsigned int length;
1066  unsigned int width;
1070  unsigned int height;
1071  ThumbImageBuffer() : buffer(nullptr), length(0), width(0), height(0) {}
1072 };
1093 };
1098 struct ScreenCaptureSourceInfo {
1106  int64_t sourceId;
1110  const char* sourceName;
1114  ThumbImageBuffer thumbImage;
1118  ThumbImageBuffer iconImage;
1122  const char* processPath;
1126  const char* sourceTitle;
1133  bool isOccluded;
1139 #if defined(_WIN32)
1140 
1145  bool minimizeWindow;
1154  processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false), minimizeWindow(false), sourceDisplayId(-2) {}
1155 #else
1157 #endif
1158 };
1162 class IScreenCaptureSourceList {
1163  protected:
1164  virtual ~IScreenCaptureSourceList(){};
1165 
1166  public:
1175  virtual unsigned int getCount() = 0;
1192  virtual ScreenCaptureSourceInfo getSourceInfo(unsigned int index) = 0;
1203  virtual void release() = 0;
1204 };
1205 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
1206 
1209 struct AdvancedAudioOptions {
1219 };
1220 
1224 struct ImageTrackOptions {
1230  const char* imageUrl;
1235  int fps;
1238 };
1239 
1254 struct ChannelMediaOptions {
1287  #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(TARGET_OS_MAC) || defined(__OHOS__)
1288 
1294  #endif
1295  #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
1296 
1303 
1304  #else
1305 
1332  #endif
1333 
1496 
1502 
1513 
1520 
1527 
1534 
1545  void SetAll(const ChannelMediaOptions& change) {
1546 #define SET_FROM(X) SetFrom(&X, change.X)
1547 
1548  SET_FROM(publishCameraTrack);
1549  SET_FROM(publishSecondaryCameraTrack);
1550  SET_FROM(publishThirdCameraTrack);
1551  SET_FROM(publishFourthCameraTrack);
1552  SET_FROM(publishMicrophoneTrack);
1553 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(TARGET_OS_MAC) || defined(__OHOS__)
1554  SET_FROM(publishScreenCaptureAudio);
1555 #endif
1556 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
1557  SET_FROM(publishScreenCaptureVideo);
1558 #else
1559  SET_FROM(publishScreenTrack);
1560  SET_FROM(publishSecondaryScreenTrack);
1561  SET_FROM(publishThirdScreenTrack);
1562  SET_FROM(publishFourthScreenTrack);
1563 #endif
1564  SET_FROM(publishTranscodedVideoTrack);
1565  SET_FROM(publishMixedAudioTrack);
1566  SET_FROM(publishLipSyncTrack);
1567  SET_FROM(publishCustomAudioTrack);
1568  SET_FROM(publishCustomAudioTrackId);
1569  SET_FROM(publishCustomVideoTrack);
1570  SET_FROM(publishEncodedVideoTrack);
1571  SET_FROM(publishMediaPlayerAudioTrack);
1572  SET_FROM(publishMediaPlayerVideoTrack);
1573  SET_FROM(autoSubscribeAudio);
1574  SET_FROM(autoSubscribeVideo);
1575  SET_FROM(publishMediaPlayerId);
1577  SET_FROM(clientRoleType);
1578  SET_FROM(audienceLatencyLevel);
1579  SET_FROM(defaultVideoStreamType);
1580  SET_FROM(channelProfile);
1581  SET_FROM(audioDelayMs);
1582  SET_FROM(mediaPlayerAudioDelayMs);
1583  SET_FROM(token);
1584  SET_FROM(enableBuiltInMediaEncryption);
1585  SET_FROM(publishRhythmPlayerTrack);
1586  SET_FROM(customVideoTrackId);
1587  SET_FROM(isAudioFilterable);
1588  SET_FROM(isInteractiveAudience);
1589  SET_FROM(parameters);
1590  SET_FROM(enableMultipath);
1591  SET_FROM(uplinkMultipathMode);
1592  SET_FROM(downlinkMultipathMode);
1593  SET_FROM(preferMultipathType);
1594  SET_FROM(channelType);
1595 #undef SET_FROM
1596  }
1598  bool operator==(const ChannelMediaOptions& o) const {
1599 #define BEGIN_COMPARE() bool b = true
1600 #define ADD_COMPARE(X) b = (b && (X == o.X))
1601 #define END_COMPARE()
1602 
1603  BEGIN_COMPARE();
1604  ADD_COMPARE(publishCameraTrack);
1605  ADD_COMPARE(publishSecondaryCameraTrack);
1606  ADD_COMPARE(publishThirdCameraTrack);
1607  ADD_COMPARE(publishFourthCameraTrack);
1608  ADD_COMPARE(publishMicrophoneTrack);
1609 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(TARGET_OS_MAC) || defined(__OHOS__)
1610  ADD_COMPARE(publishScreenCaptureAudio);
1611 #endif
1612 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
1613  ADD_COMPARE(publishScreenCaptureVideo);
1614 #else
1615  ADD_COMPARE(publishScreenTrack);
1616  ADD_COMPARE(publishSecondaryScreenTrack);
1617  ADD_COMPARE(publishThirdScreenTrack);
1618  ADD_COMPARE(publishFourthScreenTrack);
1619 #endif
1620  ADD_COMPARE(publishTranscodedVideoTrack);
1621  ADD_COMPARE(publishMixedAudioTrack);
1622  ADD_COMPARE(publishLipSyncTrack);
1623  ADD_COMPARE(publishCustomAudioTrack);
1624  ADD_COMPARE(publishCustomAudioTrackId);
1625  ADD_COMPARE(publishCustomVideoTrack);
1626  ADD_COMPARE(publishEncodedVideoTrack);
1627  ADD_COMPARE(publishMediaPlayerAudioTrack);
1628  ADD_COMPARE(publishMediaPlayerVideoTrack);
1629  ADD_COMPARE(autoSubscribeAudio);
1630  ADD_COMPARE(autoSubscribeVideo);
1631  ADD_COMPARE(publishMediaPlayerId);
1632  ADD_COMPARE(enableAudioRecordingOrPlayout);
1633  ADD_COMPARE(clientRoleType);
1634  ADD_COMPARE(audienceLatencyLevel);
1635  ADD_COMPARE(defaultVideoStreamType);
1636  ADD_COMPARE(channelProfile);
1637  ADD_COMPARE(audioDelayMs);
1638  ADD_COMPARE(mediaPlayerAudioDelayMs);
1639  ADD_COMPARE(token);
1640  ADD_COMPARE(enableBuiltInMediaEncryption);
1641  ADD_COMPARE(publishRhythmPlayerTrack);
1642  ADD_COMPARE(customVideoTrackId);
1643  ADD_COMPARE(isAudioFilterable);
1644  ADD_COMPARE(isInteractiveAudience);
1645  ADD_COMPARE(parameters);
1646  ADD_COMPARE(enableMultipath);
1647  ADD_COMPARE(uplinkMultipathMode);
1648  ADD_COMPARE(downlinkMultipathMode);
1649  ADD_COMPARE(preferMultipathType);
1650  ADD_COMPARE(channelType);
1651  END_COMPARE();
1652 
1653 #undef BEGIN_COMPARE
1654 #undef ADD_COMPARE
1655 #undef END_COMPARE
1656  return b;
1657  }
1660  if (this != &replace) {
1661 #define REPLACE_BY(X) ReplaceBy(&X, replace.X)
1662 
1663  REPLACE_BY(publishCameraTrack);
1664  REPLACE_BY(publishSecondaryCameraTrack);
1665  REPLACE_BY(publishThirdCameraTrack);
1666  REPLACE_BY(publishFourthCameraTrack);
1667  REPLACE_BY(publishMicrophoneTrack);
1668 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(TARGET_OS_MAC) || defined(__OHOS__)
1669  REPLACE_BY(publishScreenCaptureAudio);
1670 #endif
1671 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE) || defined(__OHOS__)
1672  REPLACE_BY(publishScreenCaptureVideo);
1673 #else
1674  REPLACE_BY(publishScreenTrack);
1675  REPLACE_BY(publishSecondaryScreenTrack);
1676  REPLACE_BY(publishThirdScreenTrack);
1677  REPLACE_BY(publishFourthScreenTrack);
1678 #endif
1679  REPLACE_BY(publishTranscodedVideoTrack);
1680  REPLACE_BY(publishMixedAudioTrack);
1681  REPLACE_BY(publishLipSyncTrack);
1682  REPLACE_BY(publishCustomAudioTrack);
1683  REPLACE_BY(publishCustomAudioTrackId);
1684  REPLACE_BY(publishCustomVideoTrack);
1685  REPLACE_BY(publishEncodedVideoTrack);
1686  REPLACE_BY(publishMediaPlayerAudioTrack);
1687  REPLACE_BY(publishMediaPlayerVideoTrack);
1688  REPLACE_BY(autoSubscribeAudio);
1689  REPLACE_BY(autoSubscribeVideo);
1690  REPLACE_BY(publishMediaPlayerId);
1691  REPLACE_BY(enableAudioRecordingOrPlayout);
1692  REPLACE_BY(clientRoleType);
1693  REPLACE_BY(audienceLatencyLevel);
1694  REPLACE_BY(defaultVideoStreamType);
1695  REPLACE_BY(channelProfile);
1696  REPLACE_BY(audioDelayMs);
1697  REPLACE_BY(mediaPlayerAudioDelayMs);
1698  REPLACE_BY(token);
1699  REPLACE_BY(enableBuiltInMediaEncryption);
1700  REPLACE_BY(publishRhythmPlayerTrack);
1701  REPLACE_BY(customVideoTrackId);
1702  REPLACE_BY(isAudioFilterable);
1703  REPLACE_BY(isInteractiveAudience);
1704  REPLACE_BY(parameters);
1705  REPLACE_BY(enableMultipath);
1706  REPLACE_BY(uplinkMultipathMode);
1707  REPLACE_BY(downlinkMultipathMode);
1708  REPLACE_BY(preferMultipathType);
1709  REPLACE_BY(channelType);
1710 #undef REPLACE_BY
1711  }
1712  return *this;
1713  }
1714 };
1715 
1719 enum PROXY_TYPE {
1723  NONE_PROXY_TYPE = 0,
1728  UDP_PROXY_TYPE = 1,
1733  TCP_PROXY_TYPE = 2,
1737  LOCAL_PROXY_TYPE = 3,
1745  HTTP_PROXY_TYPE = 5,
1748  HTTPS_PROXY_TYPE = 6,
1749 };
1750 
1754 enum FeatureType {
1762  VIDEO_BEAUTY_EFFECT = 2,
1763 };
1764 
1768 struct LeaveChannelOptions {
1774  bool stopAudioMixing;
1780  bool stopAllEffect;
1789 };
1790 
1801 class IRtcEngineEventHandler {
1802  public:
1803  virtual ~IRtcEngineEventHandler() {}
1805  virtual const char* eventHandlerType() const { return "event_handler"; }
1806 
1827  virtual void onJoinChannelSuccess(const char* channel, uid_t uid, int elapsed) {
1828  (void)channel;
1829  (void)uid;
1830  (void)elapsed;
1831  }
1832 
1847  virtual void onRejoinChannelSuccess(const char* channel, uid_t uid, int elapsed) {
1848  (void)channel;
1849  (void)uid;
1850  (void)elapsed;
1851  }
1852 
1872  virtual void onProxyConnected(const char* channel, uid_t uid, PROXY_TYPE proxyType, const char* localProxyIp, int elapsed) {
1873  (void)channel;
1874  (void)uid;
1875  (void)proxyType;
1876  (void)localProxyIp;
1877  (void)elapsed;
1878  }
1879 
1892  virtual void onError(int err, const char* msg) {
1893  (void)err;
1894  (void)msg;
1895  }
1896 
1915  virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost) __deprecated {
1916  (void)uid;
1917  (void)quality;
1918  (void)delay;
1919  (void)lost;
1920  }
1921 
1932  virtual void onLastmileProbeResult(const LastmileProbeResult& result) {
1933  (void)result;
1934  }
1935 
1972  virtual void onAudioVolumeIndication(const AudioVolumeInfo* speakers, unsigned int speakerNumber,
1973  int totalVolume) {
1974  (void)speakers;
1975  (void)speakerNumber;
1976  (void)totalVolume;
1977  }
1978 
1993  virtual void onLeaveChannel(const RtcStats& stats) { (void)stats; }
1994 
2005  virtual void onRtcStats(const RtcStats& stats) { (void)stats; }
2006 
2021  virtual void onAudioDeviceStateChanged(const char* deviceId, int deviceType, int deviceState) {
2022  (void)deviceId;
2023  (void)deviceType;
2024  (void)deviceState;
2025  }
2026 
2041  virtual void onAudioMixingPositionChanged(int64_t position) {}
2042 
2056  virtual void onAudioMixingFinished() __deprecated {}
2057 
2067  virtual void onAudioEffectFinished(int soundId) {}
2068 
2084  virtual void onVideoDeviceStateChanged(const char* deviceId, int deviceType, int deviceState) {
2085  (void)deviceId;
2086  (void)deviceType;
2087  (void)deviceState;
2088  }
2089 
2120  virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality) {
2121  (void)uid;
2122  (void)txQuality;
2123  (void)rxQuality;
2124  }
2125 
2132  virtual void onIntraRequestReceived() {}
2133 
2146  virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo& info) {
2147  (void)info;
2148  }
2149 
2163  virtual void onLastmileQuality(int quality) { (void)quality; }
2164 
2186  virtual void onFirstLocalVideoFrame(VIDEO_SOURCE_TYPE source, int width, int height, int elapsed) {
2187  (void)source;
2188  (void)width;
2189  (void)height;
2190  (void)elapsed;
2191  }
2192 
2214  virtual void onFirstLocalVideoFramePublished(VIDEO_SOURCE_TYPE source, int elapsed) {
2215  (void)source;
2216  (void)elapsed;
2217  }
2218 
2240  virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) __deprecated {
2241  (void)uid;
2242  (void)width;
2243  (void)height;
2244  (void)elapsed;
2245  }
2246 
2259  virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation) {
2260  (void)uid;
2261  (void)width;
2262  (void)height;
2263  (void)rotation;
2264  }
2265 
2278  virtual void onLocalVideoEvent(VIDEO_SOURCE_TYPE source, LOCAL_VIDEO_EVENT_TYPE event) {
2279  (void)source;
2280  (void)event;
2281  }
2282 
2335  (void)source;
2336  (void)state;
2337  (void)reason;
2338  }
2339 
2354  virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed) {
2355  (void)uid;
2356  (void)state;
2357  (void)reason;
2358  (void)elapsed;
2359  }
2360 
2377  virtual void onFirstRemoteVideoFrame(uid_t uid, int width, int height, int elapsed) {
2378  (void)uid;
2379  (void)width;
2380  (void)height;
2381  (void)elapsed;
2382  }
2383 
2408  virtual void onUserJoined(uid_t uid, int elapsed) {
2409  (void)uid;
2410  (void)elapsed;
2411  }
2412 
2432  virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason) {
2433  (void)uid;
2434  (void)reason;
2435  }
2436 
2454  virtual void onUserMuteAudio(uid_t uid, bool muted) {
2455  (void)uid;
2456  (void)muted;
2457  }
2458 
2476  virtual void onUserMuteVideo(uid_t uid, bool muted) {
2477  (void)uid;
2478  (void)muted;
2479  }
2480 
2496  virtual void onUserEnableVideo(uid_t uid, bool enabled) {
2497  (void)uid;
2498  (void)enabled;
2499  }
2500 
2506  virtual void onUserStateChanged(uid_t uid, REMOTE_USER_STATE state) {
2507  (void)uid;
2508  (void)state;
2509  }
2510 
2527  virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) __deprecated {
2528  (void)uid;
2529  (void)enabled;
2530  }
2531 
2543  virtual void onRemoteAudioStats(const RemoteAudioStats& stats) {
2544  (void)stats;
2545  }
2546 
2556  virtual void onLocalAudioStats(const LocalAudioStats& stats) {
2557  (void)stats;
2558  }
2559 
2571  virtual void onLocalVideoStats(VIDEO_SOURCE_TYPE source, const LocalVideoStats& stats) {
2572  (void)source;
2573  (void)stats;
2574  }
2575 
2587  virtual void onRemoteVideoStats(const RemoteVideoStats& stats) {
2588  (void)stats;
2589  }
2590 
2601  virtual void onCameraReady() __deprecated {}
2602 
2614  virtual void onCameraFocusAreaChanged(int x, int y, int width, int height) {
2615  (void)x;
2616  (void)y;
2617  (void)width;
2618  (void)height;
2619  }
2635  virtual void onCameraExposureAreaChanged(int x, int y, int width, int height) {
2636  (void)x;
2637  (void)y;
2638  (void)width;
2639  (void)height;
2640  }
2641 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
2642 
2680  virtual void onFacePositionChanged(int imageWidth, int imageHeight,
2681  const Rectangle* vecRectangle, const int* vecDistance,
2682  int numFaces) {
2683  (void) imageWidth;
2684  (void) imageHeight;
2685  (void) vecRectangle;
2686  (void) vecDistance;
2687  (void) numFaces;
2688  }
2689 #endif
2690 
2701  virtual void onVideoStopped() __deprecated {}
2702 
2715  (void)state;
2716  (void)reason;
2717  }
2718 
2734  virtual void onRhythmPlayerStateChanged(RHYTHM_PLAYER_STATE_TYPE state, RHYTHM_PLAYER_REASON reason) {
2735  (void)state;
2736  (void)reason;
2737  }
2738 
2751  virtual void onConnectionLost() {}
2752 
2771  virtual void onConnectionInterrupted() __deprecated {}
2772 
2778  virtual void onConnectionBanned() __deprecated {}
2779 
2797  virtual void onStreamMessage(uid_t uid, int streamId, const char* data, size_t length, uint64_t sentTs) {
2798  (void)uid;
2799  (void)streamId;
2800  (void)data;
2801  (void)length;
2802  (void)sentTs;
2803  }
2804 
2822  virtual void onStreamMessageError(uid_t uid, int streamId, int code, int missed, int cached) {
2823  (void)uid;
2824  (void)streamId;
2825  (void)code;
2826  (void)missed;
2827  (void)cached;
2828  }
2829 
2843  virtual void onRdtMessage(uid_t userId, RdtStreamType type, const char *data, size_t length) {
2844  (void)userId;
2845  (void)type;
2846  (void)data;
2847  (void)length;
2848  };
2849 
2858  virtual void onRdtStateChanged(uid_t userId, RdtState state) {
2859  (void)userId;
2860  (void)state;
2861  }
2862 
2874  virtual void onMediaControlMessage(uid_t userId, const char* data, size_t length) {
2875  (void)userId;
2876  (void)data;
2877  (void)length;
2878  }
2879 
2897  virtual void onRequestToken() {}
2898 
2919  virtual void onTokenPrivilegeWillExpire(const char* token) {
2920  (void)token;
2921  }
2922 
2928  virtual void onLicenseValidationFailure(LICENSE_ERROR_TYPE error) {
2929  (void)error;
2930  }
2931 
2949  virtual void onFirstLocalAudioFramePublished(int elapsed) {
2950  (void)elapsed;
2951  }
2952 
2974  virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed) __deprecated {
2975  (void)uid;
2976  (void)elapsed;
2977  }
2978 
2990  virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed) __deprecated {
2991  (void)uid;
2992  (void)elapsed;
2993  }
2994 
3012  (void)state;
3013  (void)reason;
3014  }
3015 
3035  virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed) {
3036  (void)uid;
3037  (void)state;
3038  (void)reason;
3039  (void)elapsed;
3040  }
3041 
3059  virtual void onActiveSpeaker(uid_t uid) {
3060  (void)uid;
3061  }
3062 
3067  virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result) { (void)result; }
3068 
3093  virtual void onSnapshotTaken(uid_t uid, const char* filePath, int width, int height, int errCode) {
3094  (void)uid;
3095  (void)filePath;
3096  (void)width;
3097  (void)height;
3098  (void)errCode;
3099  }
3100 
3124  virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions& newRoleOptions) {
3125  (void)oldRole;
3126  (void)newRole;
3127  (void)newRoleOptions;
3128  }
3129 
3145  (void)reason;
3146  (void)currentRole;
3147  }
3148 
3165  virtual void onAudioDeviceVolumeChanged(MEDIA_DEVICE_TYPE deviceType, int volume, bool muted) {
3166  (void)deviceType;
3167  (void)volume;
3168  (void)muted;
3169  }
3170 
3185  virtual void onRtmpStreamingStateChanged(const char* url, RTMP_STREAM_PUBLISH_STATE state,
3186  RTMP_STREAM_PUBLISH_REASON reason) {
3187  (void)url;
3188  (void)state;
3189  (void)reason;
3190  }
3191 
3199  virtual void onRtmpStreamingEvent(const char* url, RTMP_STREAMING_EVENT eventCode) {
3200  (void)url;
3201  (void)eventCode;
3202  }
3203 
3215  virtual void onTranscodingUpdated() {}
3216 
3225  virtual void onAudioRoutingChanged(int routing) { (void)routing; }
3226 
3237  virtual void onChannelMediaRelayStateChanged(int state, int code) {
3238  (void)state;
3239  (void)code;
3240  }
3241 
3265  virtual void onRemoteSubscribeFallbackToAudioOnly(uid_t uid, bool isFallbackOrRecover) {
3266  (void)uid;
3267  (void)isFallbackOrRecover;
3268  }
3269 
3288  virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated {
3289  (void)uid;
3290  (void)delay;
3291  (void)lost;
3292  (void)rxKBitRate;
3293  }
3294 
3312  virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated {
3313  (void)uid;
3314  (void)delay;
3315  (void)lost;
3316  (void)rxKBitRate;
3317  }
3318 
3330  virtual void onConnectionStateChanged(
3332  (void)state;
3333  (void)reason;
3334  }
3335 
3348  virtual void onNetworkTypeChanged(NETWORK_TYPE type) {
3349  (void)type;
3350  }
3351 
3362  virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType) {
3363  (void)errorType;
3364  }
3365 
3376  virtual void onPermissionError(PERMISSION_TYPE permissionType) {
3377  (void)permissionType;
3378  }
3379 
3380 #if defined(__ANDROID__)
3381 
3385  virtual void onPermissionGranted(agora::rtc::PERMISSION_TYPE permissionType) {}
3386 #endif
3387 
3402  virtual void onLocalUserRegistered(uid_t uid, const char* userAccount) {
3403  (void)uid;
3404  (void)userAccount;
3405  }
3406 
3419  virtual void onUserInfoUpdated(uid_t uid, const UserInfo& info) {
3420  (void)uid;
3421  (void)info;
3422  }
3423 
3430  virtual void onUserAccountUpdated(uid_t uid, const char* userAccount){
3431  (void)uid;
3432  (void)userAccount;
3433  }
3434 
3451  virtual void onVideoRenderingTracingResult(uid_t uid, MEDIA_TRACE_EVENT currentEvent, VideoRenderingTracingInfo tracingInfo) {
3452  (void)uid;
3453  (void)currentEvent;
3454  (void)tracingInfo;
3455  }
3456 
3469  virtual void onLocalVideoTranscoderError(const TranscodingVideoStream& stream, VIDEO_TRANSCODER_ERROR error){
3470  (void)stream;
3471  (void)error;
3472  }
3473 
3480  virtual void onUploadLogResult(const char* requestId, bool success, UPLOAD_ERROR_REASON reason) {
3481  (void)requestId;
3482  (void)success;
3483  (void)reason;
3484  }
3485 
3496  virtual void onAudioSubscribeStateChanged(const char* channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState) {
3497  (void)channel;
3498  (void)uid;
3499  (void)oldState;
3500  (void)newState;
3501  (void)elapseSinceLastState;
3502  }
3503 
3514  virtual void onVideoSubscribeStateChanged(const char* channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState) {
3515  (void)channel;
3516  (void)uid;
3517  (void)oldState;
3518  (void)newState;
3519  (void)elapseSinceLastState;
3520  }
3521 
3531  virtual void onAudioPublishStateChanged(const char* channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState) {
3532  (void)channel;
3533  (void)oldState;
3534  (void)newState;
3535  (void)elapseSinceLastState;
3536  }
3537 
3548  virtual void onVideoPublishStateChanged(VIDEO_SOURCE_TYPE source, const char* channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState) {
3549  (void)source;
3550  (void)channel;
3551  (void)oldState;
3552  (void)newState;
3553  (void)elapseSinceLastState;
3554  }
3555 
3575  virtual void onTranscodedStreamLayoutInfo(uid_t uid, int width, int height, int layoutCount,const VideoLayout* layoutlist) {
3576  (void)uid;
3577  (void)width;
3578  (void)height;
3579  (void)layoutCount;
3580  (void)layoutlist;
3581  }
3582 
3591  virtual void onAudioMetadataReceived(uid_t uid, const char* metadata, size_t length) {
3592  (void)uid;
3593  (void)metadata;
3594  (void)length;
3595  }
3596 
3608  virtual void onExtensionEventWithContext(const ExtensionContext &context, const char* key, const char* value) {
3609  (void)context;
3610  (void)key;
3611  (void)value;
3612  }
3613 
3623  virtual void onExtensionStartedWithContext(const ExtensionContext &context) {
3624  (void)context;
3625  }
3626 
3636  virtual void onExtensionStoppedWithContext(const ExtensionContext &context) {
3637  (void)context;
3638  }
3639 
3654  virtual void onExtensionErrorWithContext(const ExtensionContext &context, int error, const char* message) {
3655  (void)context;
3656  (void)error;
3657  (void)message;
3658  }
3659 
3666  virtual void onSetRtmFlagResult(int code) {
3667  (void)code;
3668  }
3669  virtual void onMultipathStats(const MultipathStats& stats) {
3679  (void)stats;
3680  }
3681 
3695  virtual void onRenewTokenResult(const char* token, RENEW_TOKEN_ERROR_CODE code) {
3696  (void)token;
3697  (void)code;
3698  }
3699 };
3700 
3704 class IVideoDeviceCollection {
3705  public:
3706  virtual ~IVideoDeviceCollection() {}
3707 
3714  virtual int getCount() = 0;
3715 
3725  virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
3726 
3737  virtual int getDevice(int index, char deviceNameUTF8[MAX_DEVICE_ID_LENGTH],
3738  char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
3739 
3743  virtual void release() = 0;
3744 };
3745 
3749 class IVideoDeviceManager {
3750  public:
3751  virtual ~IVideoDeviceManager() {}
3766 
3777  virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
3778 
3791  virtual int getDevice(char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
3792 
3793 #if defined(_WIN32) || (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__)) || \
3794  (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
3795 
3814  virtual int numberOfCapabilities(const char* deviceIdUTF8) = 0;
3815 
3837  virtual int getCapability(const char* deviceIdUTF8, const uint32_t deviceCapabilityNumber, VideoFormat& capability) = 0;
3838 #endif
3839 
3852  virtual int startDeviceTest(view_t hwnd) = 0;
3853 
3860  virtual int stopDeviceTest() = 0;
3861 
3868  virtual void release() = 0;
3869 };
3870 
3876 class IVideoEffectObject : public RefCountInterface {
3877  public:
3878  virtual ~IVideoEffectObject() {}
3879 
3885  enum class VIDEO_EFFECT_NODE_ID : uint32_t {
3889  BEAUTY = 1U << 0,
3893  STYLE_MAKEUP = 1U << 1,
3897  FILTER = 1U << 2,
3898  };
3899 
3905  enum VIDEO_EFFECT_ACTION {
3909  SAVE = 1,
3913  RESET = 2,
3914  };
3915 
3944  virtual int addOrUpdateVideoEffect(uint32_t nodeId, const char* templateName) = 0;
3945 
3958  virtual int removeVideoEffect(uint32_t nodeId) = 0;
3959 
3972  virtual int performVideoEffectAction(uint32_t nodeId, VIDEO_EFFECT_ACTION actionId) = 0;
3973 
3987  virtual int setVideoEffectFloatParam(const char* option, const char* key, float param) = 0;
3988 
4002  virtual int setVideoEffectIntParam(const char* option, const char* key, int param) = 0;
4003 
4019  virtual int setVideoEffectBoolParam(const char* option, const char* key, bool param) = 0;
4020 
4037  virtual float getVideoEffectFloatParam(const char* option, const char* key) = 0;
4038 
4054  virtual int getVideoEffectIntParam(const char* option, const char* key) = 0;
4055 
4068  virtual bool getVideoEffectBoolParam(const char* option, const char* key) = 0;
4069 
4070 };
4071 
4075 struct RtcEngineContext {
4079  IRtcEngineEventHandler* eventHandler;
4086  const char* appId;
4092  void* context;
4097 
4101  const char* license;
4102 
4113  unsigned int areaCode;
4114 
4134  commons::LogConfig logConfig;
4135 
4139  Optional<THREAD_PRIORITY_TYPE> threadPriority;
4140 
4148  bool useExternalEglContext;
4149 
4158  bool domainLimit;
4159 
4167 
4173  Optional<const char*> parameters;
4179 };
4180 
4183 class IMetadataObserver {
4184 public:
4185  virtual ~IMetadataObserver() {}
4186 
4190  enum METADATA_TYPE
4191  {
4195  UNKNOWN_METADATA = -1,
4199  VIDEO_METADATA = 0,
4200  };
4205  {
4209  };
4210 
4214  struct Metadata
4215  {
4219  const char* channelId;
4225  unsigned int uid;
4229  unsigned int size;
4233  unsigned char *buffer;
4237  long long timeStampMs;
4239  Metadata() : channelId(NULL), uid(0), size(0), buffer(NULL), timeStampMs(0) {}
4240  };
4241 
4254  virtual int getMaxMetadataSize() { return DEFAULT_METADATA_SIZE_IN_BYTE; }
4255 
4272  virtual bool onReadyToSendMetadata(Metadata &metadata, VIDEO_SOURCE_TYPE source_type) = 0;
4273 
4280  virtual void onMetadataReceived(const Metadata& metadata) = 0;
4281 };
4282 
4289  // No error occurs.
4294  // A general error occurs (no specified reason).
4299  // Audio publication error.
4305  // Video publication error.
4311 
4316  // Already exist stream name.
4321 };
4322 
4329 
4334 
4340 
4346 
4352 
4359 };
4360 
4366 struct DirectCdnStreamingStats {
4370  int videoWidth;
4371 
4375  int videoHeight;
4376 
4380  int fps;
4381 
4385  int videoBitrate;
4386 
4390  int audioBitrate;
4391 };
4392 
4399 class IDirectCdnStreamingEventHandler {
4400  public:
4402 
4417  virtual void onDirectCdnStreamingStateChanged(DIRECT_CDN_STREAMING_STATE state, DIRECT_CDN_STREAMING_REASON reason, const char* message) {
4418  (void)state;
4419  (void)reason;
4420  (void)message;
4421  };
4422 
4433  virtual void onDirectCdnStreamingStats(const DirectCdnStreamingStats& stats) {
4434  (void)stats;
4435  };
4436 };
4437 
4443 struct DirectCdnStreamingMediaOptions {
4449  Optional<bool> publishCameraTrack;
4455  Optional<bool> publishMicrophoneTrack;
4461  Optional<bool> publishCustomAudioTrack;
4467  Optional<bool> publishCustomVideoTrack;
4473  Optional<bool> publishMediaPlayerAudioTrack;
4478  Optional<int> publishMediaPlayerId;
4483  Optional<video_track_id_t> customVideoTrackId;
4488  void SetAll(const DirectCdnStreamingMediaOptions& change) {
4489 #define SET_FROM(X) SetFrom(&X, change.X)
4490  SET_FROM(publishCameraTrack);
4491  SET_FROM(publishMicrophoneTrack);
4492  SET_FROM(publishCustomAudioTrack);
4493  SET_FROM(publishCustomVideoTrack);
4494  SET_FROM(publishMediaPlayerAudioTrack);
4495  SET_FROM(publishMediaPlayerId);
4496  SET_FROM(customVideoTrackId);
4497 #undef SET_FROM
4498  }
4500  bool operator==(const DirectCdnStreamingMediaOptions& o) const {
4501 #define BEGIN_COMPARE() bool b = true
4502 #define ADD_COMPARE(X) b = (b && (X == o.X))
4503 #define END_COMPARE()
4504 
4505  BEGIN_COMPARE();
4506  ADD_COMPARE(publishCameraTrack);
4507  ADD_COMPARE(publishMicrophoneTrack);
4508  ADD_COMPARE(publishCustomAudioTrack);
4509  ADD_COMPARE(publishCustomVideoTrack);
4510  ADD_COMPARE(publishMediaPlayerAudioTrack);
4511  ADD_COMPARE(customVideoTrackId);
4512  ADD_COMPARE(publishMediaPlayerId);
4513  END_COMPARE();
4514 
4515 #undef BEGIN_COMPARE
4516 #undef ADD_COMPARE
4517 #undef END_COMPARE
4518  return b;
4519  }
4522  if (this != &replace) {
4523 #define REPLACE_BY(X) ReplaceBy(&X, replace.X)
4524 
4525  REPLACE_BY(publishCameraTrack);
4526  REPLACE_BY(publishMicrophoneTrack);
4527  REPLACE_BY(publishCustomAudioTrack);
4528  REPLACE_BY(publishCustomVideoTrack);
4529  REPLACE_BY(publishMediaPlayerAudioTrack);
4530  REPLACE_BY(customVideoTrackId);
4531  REPLACE_BY(publishMediaPlayerId);
4532 #undef REPLACE_BY
4533  }
4534  return *this;
4535  }
4536 };
4537 
4541 struct ExtensionInfo {
4546 
4552  uid_t remoteUid;
4553 
4565  const char* channelId;
4566 
4570  uid_t localUid;
4572  ExtensionInfo() : mediaSourceType(agora::media::UNKNOWN_MEDIA_SOURCE), remoteUid(0), channelId(NULL), localUid(0) {}
4573 };
4574 
4575 class IMediaPlayer;
4576 class IMediaRecorder;
4577 
4590 using RtcEngineReleaseCallback = void(*)();
4591 
4598 class IRtcEngine : public agora::base::IEngineBase {
4599  public:
4624  AGORA_CPP_API static void release(RtcEngineReleaseCallback callback = nullptr);
4625 
4650  virtual int initialize(const RtcEngineContext& context) = 0;
4651 
4662  virtual int queryInterface(INTERFACE_ID_TYPE iid, void** inter) = 0;
4663 
4664 
4673  virtual const char* getVersion(int* build) = 0;
4674 
4683  virtual const char* getErrorDescription(int code) = 0;
4684 
4702  virtual int queryCodecCapability(CodecCapInfo* codecInfo, int& size) = 0;
4703 
4720  virtual int queryDeviceScore() = 0;
4721 
4780  virtual int preloadChannel(const char* token, const char* channelId, uid_t uid) = 0;
4781 
4847  virtual int preloadChannelWithUserAccount(const char* token, const char* channelId, const char* userAccount) = 0;
4848 
4870  virtual int updatePreloadChannelToken(const char* token) = 0;
4871 
4943  virtual int joinChannel(const char* token, const char* channelId, const char* info, uid_t uid) = 0;
4944 
5020  virtual int joinChannel(const char* token, const char* channelId, uid_t uid, const ChannelMediaOptions& options) = 0;
5021 
5041  virtual int updateChannelMediaOptions(const ChannelMediaOptions& options) = 0;
5042 
5072  virtual int leaveChannel() = 0;
5073 
5101  virtual int leaveChannel(const LeaveChannelOptions& options) = 0;
5102 
5130  virtual int renewToken(const char* token) = 0;
5131 
5156  virtual int setChannelProfile(CHANNEL_PROFILE_TYPE profile) = 0;
5157 
5199  virtual int setClientRole(CLIENT_ROLE_TYPE role) = 0;
5200 
5251  virtual int setClientRole(CLIENT_ROLE_TYPE role, const ClientRoleOptions& options) = 0;
5252 
5279  virtual int startEchoTest(const EchoTestConfiguration& config) = 0;
5280 
5293  virtual int stopEchoTest() = 0;
5294 
5295 #if defined(__APPLE__) && TARGET_OS_IOS
5296 
5338  virtual int enableMultiCamera(bool enabled, const CameraCapturerConfiguration& config) = 0;
5339 #endif
5340 
5368  virtual int enableVideo() = 0;
5369 
5396  virtual int disableVideo() = 0;
5397 
5414  virtual int startPreview() = 0;
5415 
5435  virtual int startPreview(VIDEO_SOURCE_TYPE sourceType) = 0;
5436 
5449  virtual int stopPreview() = 0;
5450 
5466  virtual int stopPreview(VIDEO_SOURCE_TYPE sourceType) = 0;
5467 
5492  virtual int startLastmileProbeTest(const LastmileProbeConfig& config) = 0;
5493 
5501  virtual int stopLastmileProbeTest() = 0;
5502 
5528  virtual int setVideoEncoderConfiguration(const VideoEncoderConfiguration& config) = 0;
5529 
5562  virtual int setBeautyEffectOptions(bool enabled, const BeautyOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5599  virtual int setFaceShapeBeautyOptions(bool enabled, const FaceShapeBeautyOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5633  virtual int setFaceShapeAreaOptions(const FaceShapeAreaOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5634 
5656  virtual int getFaceShapeBeautyOptions(FaceShapeBeautyOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5657 
5681 
5711  virtual int setFilterEffectOptions(bool enabled, const FilterEffectOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5712 
5713 
5730 
5731 
5743  virtual int destroyVideoEffectObject(agora_refptr<IVideoEffectObject> videoEffectObject) = 0;
5744 
5791  virtual int setLowlightEnhanceOptions(bool enabled, const LowlightEnhanceOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5837  virtual int setVideoDenoiserOptions(bool enabled, const VideoDenoiserOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5874  virtual int setColorEnhanceOptions(bool enabled, const ColorEnhanceOptions& options, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5875 
5936  virtual int enableVirtualBackground(bool enabled, VirtualBackgroundSource backgroundSource, SegmentationProperty segproperty, agora::media::MEDIA_SOURCE_TYPE type = agora::media::PRIMARY_CAMERA_SOURCE) = 0;
5937 
5965  virtual int setupRemoteVideo(const VideoCanvas& canvas) = 0;
5966 
5999  virtual int setupLocalVideo(const VideoCanvas& canvas) = 0;
6000 
6068  virtual int setVideoScenario(VIDEO_APPLICATION_SCENARIO_TYPE scenarioType) = 0;
6069 
6088  virtual int setVideoQoEPreference(VIDEO_QOE_PREFERENCE_TYPE qoePreference) = 0;
6089 
6114  virtual int enableAudio() = 0;
6115 
6137  virtual int disableAudio() = 0;
6138 
6167  virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile, AUDIO_SCENARIO_TYPE scenario) __deprecated = 0;
6168 
6187  virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile) = 0;
6209  virtual int setAudioScenario(AUDIO_SCENARIO_TYPE scenario) = 0;
6241  virtual int enableLocalAudio(bool enabled) = 0;
6242 
6263  virtual int muteLocalAudioStream(bool mute) = 0;
6264 
6332  virtual int muteAllRemoteAudioStreams(bool mute) = 0;
6333 
6351  virtual int muteRemoteAudioStream(uid_t uid, bool mute) = 0;
6352 
6375  virtual int muteLocalVideoStream(bool mute) = 0;
6376 
6406  virtual int enableLocalVideo(bool enabled) = 0;
6407 
6473  virtual int muteAllRemoteVideoStreams(bool mute) = 0;
6474 
6512  virtual int setRemoteDefaultVideoStreamType(VIDEO_STREAM_TYPE streamType) = 0;
6513 
6531  virtual int muteRemoteVideoStream(uid_t uid, bool mute) = 0;
6532 
6571  virtual int setRemoteVideoStreamType(uid_t uid, VIDEO_STREAM_TYPE streamType) = 0;
6572 
6597  virtual int setRemoteVideoSubscriptionOptions(uid_t uid, const VideoSubscriptionOptions &options) = 0;
6598 
6626  virtual int setSubscribeAudioBlocklist(uid_t* uidList, int uidNumber) = 0;
6627 
6654  virtual int setSubscribeAudioAllowlist(uid_t* uidList, int uidNumber) = 0;
6655 
6683  virtual int setSubscribeVideoBlocklist(uid_t* uidList, int uidNumber) = 0;
6684 
6711  virtual int setSubscribeVideoAllowlist(uid_t* uidList, int uidNumber) = 0;
6712 
6745  virtual int enableAudioVolumeIndication(int interval, int smooth, bool reportVad) = 0;
6746 
6767  virtual int startAudioRecording(const char* filePath,
6768  AUDIO_RECORDING_QUALITY_TYPE quality) = 0;
6803  virtual int startAudioRecording(const char* filePath,
6804  int sampleRate,
6805  AUDIO_RECORDING_QUALITY_TYPE quality) = 0;
6806 
6825  virtual int startAudioRecording(const AudioRecordingConfiguration& config) = 0;
6826 
6843  virtual int registerAudioEncodedFrameObserver(const AudioEncodedFrameObserverConfig& config, IAudioEncodedFrameObserver *observer) = 0;
6844 
6852  virtual int stopAudioRecording() = 0;
6853 
6868 
6878  virtual int destroyMediaPlayer(agora_refptr<IMediaPlayer> media_player) = 0;
6879 
6900  virtual agora_refptr<IMediaRecorder> createMediaRecorder(const RecorderStreamInfo& info) = 0;
6901 
6916  virtual int destroyMediaRecorder(agora_refptr<IMediaRecorder> mediaRecorder) = 0;
6917 
7010  virtual int startAudioMixing(const char* filePath, bool loopback, int cycle) = 0;
7011 
7110  virtual int startAudioMixing(const char* filePath, bool loopback, int cycle, int startPos) = 0;
7111 
7125  virtual int stopAudioMixing() = 0;
7126 
7140  virtual int pauseAudioMixing() = 0;
7141 
7154  virtual int resumeAudioMixing() = 0;
7155 
7178  virtual int selectAudioTrack(int index) = 0;
7190  virtual int getAudioTrackCount() = 0;
7191 
7209  virtual int adjustAudioMixingVolume(int volume) = 0;
7210 
7227  virtual int adjustAudioMixingPublishVolume(int volume) = 0;
7228 
7243  virtual int getAudioMixingPublishVolume() = 0;
7244 
7260  virtual int adjustAudioMixingPlayoutVolume(int volume) = 0;
7261 
7276  virtual int getAudioMixingPlayoutVolume() = 0;
7277 
7291  virtual int getAudioMixingDuration() = 0;
7292 
7311  virtual int getAudioMixingCurrentPosition() = 0;
7312 
7329  virtual int setAudioMixingPosition(int pos /*in ms*/) = 0;
7330 
7358 
7378  virtual int setAudioMixingPitch(int pitch) = 0;
7379 
7398  virtual int setAudioMixingPlaybackSpeed(int speed) = 0;
7399 
7413  virtual int getEffectsVolume() = 0;
7427  virtual int setEffectsVolume(int volume) = 0;
7459  virtual int preloadEffect(int soundId, const char* filePath, int startPos = 0) = 0;
7512  virtual int playEffect(int soundId, const char* filePath, int loopCount, double pitch, double pan, int gain, bool publish = false, int startPos = 0) = 0;
7543  virtual int playAllEffects(int loopCount, double pitch, double pan, int gain, bool publish = false) = 0;
7544 
7555  virtual int getVolumeOfEffect(int soundId) = 0;
7556 
7571  virtual int setVolumeOfEffect(int soundId, int volume) = 0;
7581  virtual int pauseEffect(int soundId) = 0;
7589  virtual int pauseAllEffects() = 0;
7599  virtual int resumeEffect(int soundId) = 0;
7612  virtual int resumeAllEffects() = 0;
7627  virtual int stopEffect(int soundId) = 0;
7640  virtual int stopAllEffects() = 0;
7655  virtual int unloadEffect(int soundId) = 0;
7663  virtual int unloadAllEffects() = 0;
7683  virtual int getEffectDuration(const char* filePath) = 0;
7699  virtual int setEffectPosition(int soundId, int pos) = 0;
7711  virtual int getEffectCurrentPosition(int soundId) = 0;
7728  virtual int enableSoundPositionIndication(bool enabled) = 0;
7729 
7759  virtual int setRemoteVoicePosition(uid_t uid, double pan, double gain) = 0;
7760 
7781  virtual int enableSpatialAudio(bool enabled) = 0;
7782 
7798  virtual int setRemoteUserSpatialAudioParams(uid_t uid, const agora::SpatialAudioParams& params) = 0;
7799 
7840  virtual int setVoiceBeautifierPreset(VOICE_BEAUTIFIER_PRESET preset) = 0;
7841 
7882  virtual int setAudioEffectPreset(AUDIO_EFFECT_PRESET preset) = 0;
7883 
7926  virtual int setVoiceConversionPreset(VOICE_CONVERSION_PRESET preset) = 0;
7927 
8002  virtual int setAudioEffectParameters(AUDIO_EFFECT_PRESET preset, int param1, int param2) = 0;
8003 
8053  int param1, int param2) = 0;
8054 
8068  int param1, int param2) = 0;
8069 
8083  virtual int setLocalVoicePitch(double pitch) = 0;
8084 
8105  virtual int setLocalVoiceFormant(double formantRatio) = 0;
8106 
8123  virtual int setLocalVoiceEqualization(AUDIO_EQUALIZATION_BAND_FREQUENCY bandFrequency, int bandGain) = 0;
8124 
8142  virtual int setLocalVoiceReverb(AUDIO_REVERB_TYPE reverbKey, int value) = 0;
8160  virtual int setHeadphoneEQPreset(HEADPHONE_EQUALIZER_PRESET preset) = 0;
8161 
8180  virtual int setHeadphoneEQParameters(int lowGain, int highGain) = 0;
8181 
8200  virtual int enableVoiceAITuner(bool enabled, VOICE_AI_TUNER_TYPE type) = 0;
8201 
8218  virtual int setLogFile(const char* filePath) = 0;
8219 
8237  virtual int setLogFilter(unsigned int filter) = 0;
8238 
8251  virtual int setLogLevel(commons::LOG_LEVEL level) = 0;
8252 
8286  virtual int setLogFileSize(unsigned int fileSizeInKBytes) = 0;
8287 
8296  virtual int uploadLogFile(agora::util::AString& requestId) = 0;
8297 
8313  virtual int writeLog(commons::LOG_LEVEL level, const char* fmt, ...) = 0;
8314 
8340  virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode) = 0;
8341 
8363  virtual int setRemoteRenderMode(uid_t uid, media::base::RENDER_MODE_TYPE renderMode,
8364  VIDEO_MIRROR_MODE_TYPE mirrorMode) = 0;
8385  virtual int setLocalRenderTargetFps(VIDEO_SOURCE_TYPE sourceType, int targetFps) = 0;
8405  virtual int setRemoteRenderTargetFps(int targetFps) = 0;
8406  // The following APIs are either deprecated and going to deleted.
8407 
8426 
8436  virtual int setLocalVideoMirrorMode(VIDEO_MIRROR_MODE_TYPE mirrorMode) __deprecated = 0;
8437 
8463  virtual int enableDualStreamMode(bool enabled) __deprecated = 0;
8464 
8494  virtual int enableDualStreamMode(bool enabled, const SimulcastStreamConfig& streamConfig) __deprecated = 0;
8495 
8496 
8528  virtual int setDualStreamMode(SIMULCAST_STREAM_MODE mode) = 0;
8529 
8548  virtual int setSimulcastConfig(const SimulcastConfig& simulcastConfig) = 0;
8549 
8590  virtual int setDualStreamMode(SIMULCAST_STREAM_MODE mode, const SimulcastStreamConfig& streamConfig) = 0;
8591 
8614  virtual int enableCustomAudioLocalPlayback(track_id_t trackId, bool enabled) = 0;
8615 
8638  virtual int setRecordingAudioFrameParameters(int sampleRate, int channel,
8640  int samplesPerCall) = 0;
8641 
8664  virtual int setPlaybackAudioFrameParameters(int sampleRate, int channel,
8666  int samplesPerCall) = 0;
8667 
8689  virtual int setMixedAudioFrameParameters(int sampleRate, int channel, int samplesPerCall) = 0;
8690 
8720  virtual int setEarMonitoringAudioFrameParameters(int sampleRate, int channel,
8722  int samplesPerCall) = 0;
8723 
8742  virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel) = 0;
8743 
8765  virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel, int samplesPerCall) = 0;
8766 
8785  virtual int enableAudioSpectrumMonitor(int intervalInMS = 100) = 0;
8799  virtual int disableAudioSpectrumMonitor() = 0;
8800 
8835 
8853  virtual int adjustRecordingSignalVolume(int volume) = 0;
8854 
8874  virtual int muteRecordingSignal(bool mute) = 0;
8875 
8894  virtual int adjustPlaybackSignalVolume(int volume) = 0;
8895 
8915  virtual int adjustUserPlaybackSignalVolume(uid_t uid, int volume) = 0;
8916 
8939 
8953  virtual int setHighPriorityUserList(uid_t* uidList, int uidNum, STREAM_FALLBACK_OPTIONS option) = 0;
8954 
8975  virtual int enableExtension(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, bool enable = true) = 0;
8976 
8990  virtual int setExtensionProperty(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, const char* key, const char* value) = 0;
8991 
9006  virtual int getExtensionProperty(const char* provider, const char* extension, const ExtensionInfo& extensionInfo, const char* key, char* value, int buf_len) = 0;
9007 
9036  virtual int enableLoopbackRecording(bool enabled, const char* deviceName = NULL) = 0;
9037 
9038 
9053  virtual int adjustLoopbackSignalVolume(int volume) = 0;
9054 
9061  virtual int getLoopbackRecordingVolume() = 0;
9062 
9083  virtual int enableInEarMonitoring(bool enabled, int includeAudioFilters) = 0;
9084 
9102  virtual int setInEarMonitoringVolume(int volume) = 0;
9103 
9104 #if defined(_WIN32) || defined(__linux__) || defined(__ANDROID__)
9105 
9128  virtual int loadExtensionProvider(const char* path, bool unload_after_use = false) = 0;
9129 #endif
9130 
9150  virtual int setExtensionProviderProperty(const char* provider, const char* key, const char* value) = 0;
9151 
9183  virtual int registerExtension(const char* provider, const char* extension, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
9184 
9210  virtual int enableExtension(const char* provider, const char* extension, bool enable=true, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
9211 
9234  virtual int setExtensionProperty(
9235  const char* provider, const char* extension,
9236  const char* key, const char* value, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
9237 
9256  virtual int getExtensionProperty(
9257  const char* provider, const char* extension,
9258  const char* key, char* value, int buf_len, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
9259 
9282  virtual int setCameraCapturerConfiguration(const CameraCapturerConfiguration& config) = 0;
9283 
9303 
9311  virtual video_track_id_t createCustomEncodedVideoTrack(const SenderOptions& sender_option) = 0;
9312 
9322  virtual int destroyCustomVideoTrack(video_track_id_t video_track_id) = 0;
9323 
9332  virtual int destroyCustomEncodedVideoTrack(video_track_id_t video_track_id) = 0;
9333 
9334 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
9335 
9355  virtual int switchCamera() = 0;
9356 
9370  virtual bool isCameraZoomSupported() = 0;
9371 
9384  virtual bool isCameraFaceDetectSupported() = 0;
9385 
9403  virtual bool isCameraTorchSupported() = 0;
9404 
9417  virtual bool isCameraFocusSupported() = 0;
9418 
9431  virtual bool isCameraAutoFocusFaceModeSupported() = 0;
9432 
9459  virtual int setCameraZoomFactor(float factor) = 0;
9460 
9483  virtual int enableFaceDetection(bool enabled) = 0;
9484 
9496  virtual float getCameraMaxZoomFactor() = 0;
9497 
9515  virtual int setCameraFocusPositionInPreview(float positionX, float positionY) = 0;
9516 
9534  virtual int setCameraTorchOn(bool isOn) = 0;
9535 
9555  virtual int setCameraAutoFocusFaceModeEnabled(bool enabled) = 0;
9556 
9571  virtual bool isCameraExposurePositionSupported() = 0;
9572 
9592  virtual int setCameraExposurePosition(float positionXinView, float positionYinView) = 0;
9593 
9612  virtual bool isCameraExposureSupported() = 0;
9613 
9646  virtual int setCameraExposureFactor(float factor) = 0;
9647 
9648 #if defined(__APPLE__)
9649 
9661  virtual bool isCameraAutoExposureFaceModeSupported() = 0;
9662 
9663 
9681  virtual int setCameraAutoExposureFaceModeEnabled(bool enabled) = 0;
9682 
9710 #endif
9711 
9742  virtual int setDefaultAudioRouteToSpeakerphone(bool defaultToSpeaker) = 0;
9743 
9772  virtual int setEnableSpeakerphone(bool speakerOn) = 0;
9773 
9787  virtual bool isSpeakerphoneEnabled() = 0;
9788 
9817  virtual int setRouteInCommunicationMode(int route) = 0;
9818 #endif // __ANDROID__ || (__APPLE__ && TARGET_OS_IOS) || __OHOS__
9819 
9820 #if defined(__APPLE__)
9821 
9837  virtual bool isCameraCenterStageSupported() = 0;
9838 
9876  virtual int enableCameraCenterStage(bool enabled) = 0;
9877 #endif
9878 
9879 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)|| (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
9880 
9912  virtual IScreenCaptureSourceList* getScreenCaptureSources(const SIZE& thumbSize, const SIZE& iconSize, const bool includeScreen) = 0;
9913 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
9914 #if (defined(__APPLE__) && TARGET_OS_IOS)
9915 
9939 #endif // __APPLE__ && TARGET_OS_IOS
9940 
9941 #if defined(_WIN32) || (defined(__APPLE__) && !TARGET_OS_IPHONE && TARGET_OS_MAC) || (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
9942 
9979  virtual int startScreenCaptureByDisplayId(int64_t displayId, const Rectangle& regionRect,
9980  const ScreenCaptureParameters& captureParams) = 0;
9981 
9982 #endif // __APPLE__ && TARGET_OS_MAC && !TARGET_OS_IPHONE
9983 
9984 #if defined(_WIN32)
9985 
10024  virtual int startScreenCaptureByScreenRect(const Rectangle& screenRect,
10025  const Rectangle& regionRect,
10026  const ScreenCaptureParameters& captureParams) __deprecated = 0;
10027 #endif
10028 
10029 #if defined(__ANDROID__)
10030 
10050  virtual int getAudioDeviceInfo(DeviceInfo& deviceInfo) = 0;
10051 #endif // __ANDROID__
10052 
10053 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE) || (defined(__linux__) && !defined(__ANDROID__) && !defined(__OHOS__))
10054 
10125  virtual int startScreenCaptureByWindowId(int64_t windowId, const Rectangle& regionRect,
10126  const ScreenCaptureParameters& captureParams) = 0;
10127 
10148  virtual int setScreenCaptureContentHint(VIDEO_CONTENT_HINT contentHint) = 0;
10149 
10168  virtual int updateScreenCaptureRegion(const Rectangle& regionRect) = 0;
10169 
10189  virtual int updateScreenCaptureParameters(const ScreenCaptureParameters& captureParams) = 0;
10190 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
10191 
10192 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS) || defined(__OHOS__)
10193 
10248  virtual int startScreenCapture(const ScreenCaptureParameters2& captureParams) = 0;
10249 
10274  virtual int updateScreenCapture(const ScreenCaptureParameters2& captureParams) = 0;
10275 
10296  virtual int queryScreenCaptureCapability() = 0;
10297 
10325  virtual int queryCameraFocalLengthCapability(agora::rtc::FocalLengthInfo* focalLengthInfos, int& size) = 0;
10326 
10327 #if defined(__ANDROID__)
10328 
10359  virtual int setExternalMediaProjection(void* mediaProjection) = 0;
10360 #endif
10361 #endif
10362 
10363 #if defined(_WIN32) || defined(__APPLE__) || defined(__ANDROID__) || (defined(__linux__) && !defined(__ANDROID__) && !defined (__OHOS__))
10364 
10380  virtual int setScreenCaptureScenario(SCREEN_SCENARIO_TYPE screenScenario) = 0;
10381 
10396  virtual int stopScreenCapture() = 0;
10397 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC) || __ANDROID__
10398 
10414  virtual int getCallId(agora::util::AString& callId) = 0;
10415 
10432  virtual int rate(const char* callId, int rating, const char* description) = 0; // 0~10
10433 
10452  virtual int complain(const char* callId, const char* description) = 0;
10453 
10484  virtual int startRtmpStreamWithoutTranscoding(const char* url) = 0;
10485 
10519  virtual int startRtmpStreamWithTranscoding(const char* url, const LiveTranscoding& transcoding) = 0;
10520 
10537  virtual int updateRtmpTranscoding(const LiveTranscoding& transcoding) = 0;
10538 
10595  virtual int startLocalVideoTranscoder(const LocalTranscoderConfiguration& config) = 0;
10613  virtual int updateLocalTranscoderConfiguration(const LocalTranscoderConfiguration& config) = 0;
10614 
10634  virtual int stopRtmpStream(const char* url) = 0;
10635 
10647  virtual int stopLocalVideoTranscoder() = 0;
10648 
10681  virtual int startLocalAudioMixer(const LocalAudioMixerConfiguration& config) = 0;
10682 
10702  virtual int updateLocalAudioMixerConfiguration(const LocalAudioMixerConfiguration& config) = 0;
10703 
10718  virtual int stopLocalAudioMixer() = 0;
10719 
10745  virtual int startCameraCapture(VIDEO_SOURCE_TYPE sourceType, const CameraCapturerConfiguration& config) = 0;
10746 
10767  virtual int stopCameraCapture(VIDEO_SOURCE_TYPE sourceType) = 0;
10786  virtual int setCameraDeviceOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation) = 0;
10798  virtual int setScreenCaptureOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation) = 0;
10799 
10839  virtual int startScreenCapture(VIDEO_SOURCE_TYPE sourceType, const ScreenCaptureConfiguration& config) = 0;
10840 
10859  virtual int stopScreenCapture(VIDEO_SOURCE_TYPE sourceType) = 0;
10860 
10871 
10872  // The following APIs are not implemented yet.
10873  virtual bool registerEventHandler(IRtcEngineEventHandler* eventHandler) = 0;
10874  virtual bool unregisterEventHandler(IRtcEngineEventHandler* eventHandler) = 0;
10875  virtual int setRemoteUserPriority(uid_t uid, PRIORITY_TYPE userPriority) = 0;
10876 
10900  virtual int registerPacketObserver(IPacketObserver* observer) = 0;
10901 
10902 
10931  virtual int enableEncryption(bool enabled, const EncryptionConfig& config) = 0;
10932 
10969  virtual int createDataStream(int* streamId, bool reliable, bool ordered) = 0;
10970 
10995  virtual int createDataStream(int* streamId, const DataStreamConfig& config) = 0;
10996 
11030  virtual int sendStreamMessage(int streamId, const char* data, size_t length) = 0;
11031 
11045  virtual int sendRdtMessage(uid_t uid, RdtStreamType type, const char *data, size_t length) = 0;
11046 
11059  virtual int sendMediaControlMessage(uid_t uid, const char* data, size_t length) = 0;
11060 
11087  virtual int addVideoWatermark(const RtcImage& watermark) __deprecated = 0;
11088 
11136  virtual int addVideoWatermark(const char* watermarkUrl, const WatermarkOptions& options) = 0;
11137 
11153  virtual int addVideoWatermark(const WatermarkConfig& configs) = 0;
11154 
11171  virtual int removeVideoWatermark(const char* id) = 0;
11172 
11180  virtual int clearVideoWatermarks() = 0;
11181 
11182  // The following APIs are either deprecated and going to deleted.
11183 
11192  virtual int pauseAudio() __deprecated = 0;
11201  virtual int resumeAudio() __deprecated = 0;
11202 
11224  virtual int enableWebSdkInteroperability(bool enabled) __deprecated = 0;
11225 
11237  virtual int sendCustomReportMessage(const char* id, const char* category, const char* event, const char* label, int value) = 0;
11238 
11259  virtual int registerMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type) = 0;
11260 
11272  virtual int unregisterMediaMetadataObserver(IMetadataObserver* observer, IMetadataObserver::METADATA_TYPE type) = 0;
11273 
11282  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;
11283 
11287  virtual int stopAudioFrameDump(const char* channel_id, uid_t uid, const char* location) = 0;
11288 
11326  virtual int setAINSMode(bool enabled, AUDIO_AINS_MODE mode) = 0;
11327 
11381  virtual int registerLocalUserAccount(const char* appId, const char* userAccount) = 0;
11382 
11466  virtual int joinChannelWithUserAccount(const char* token, const char* channelId, const char* userAccount) = 0;
11467 
11555  virtual int joinChannelWithUserAccount(const char* token, const char* channelId, const char* userAccount, const ChannelMediaOptions& options) = 0;
11556 
11645  virtual int joinChannelWithUserAccountEx(const char* token, const char* channelId,
11646  const char* userAccount, const ChannelMediaOptions& options,
11647  IRtcEngineEventHandler* eventHandler) = 0;
11648 
11670  virtual int getUserInfoByUserAccount(const char* userAccount, rtc::UserInfo* userInfo) = 0;
11671 
11693  virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo* userInfo) = 0;
11694 
11730  virtual int startOrUpdateChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration) = 0;
11731 
11752  virtual int stopChannelMediaRelay() = 0;
11753 
11769  virtual int pauseAllChannelMediaRelay() = 0;
11770 
11785  virtual int resumeAllChannelMediaRelay() = 0;
11786 
11805 
11830 
11863  virtual int startDirectCdnStreaming(IDirectCdnStreamingEventHandler* eventHandler,
11864  const char* publishUrl, const DirectCdnStreamingMediaOptions& options) = 0;
11865 
11875  virtual int stopDirectCdnStreaming() = 0;
11876 
11891 
11925  virtual int startRhythmPlayer(const char* sound1, const char* sound2, const AgoraRhythmPlayerConfig& config) = 0;
11926 
11939  virtual int stopRhythmPlayer() = 0;
11940 
11965  virtual int configRhythmPlayer(const AgoraRhythmPlayerConfig& config) = 0;
11966 
11998  virtual int takeSnapshot(uid_t uid, const char* filePath) = 0;
11999 
12024  virtual int takeSnapshot(uid_t uid, const media::SnapshotConfig& config) = 0;
12025 
12054  virtual int enableContentInspect(bool enabled, const media::ContentInspectConfig &config) = 0;
12074  virtual int adjustCustomAudioPublishVolume(track_id_t trackId, int volume) = 0;
12075 
12095  virtual int adjustCustomAudioPlayoutVolume(track_id_t trackId, int volume) = 0;
12096 
12130  virtual int setCloudProxy(CLOUD_PROXY_TYPE proxyType) = 0;
12149  virtual int setLocalAccessPoint(const LocalAccessPointConfiguration& config) = 0;
12150 
12167  virtual int setAdvancedAudioOptions(AdvancedAudioOptions& options, int sourceType = 0) = 0;
12168 
12189  virtual int setAVSyncSource(const char* channelId, uid_t uid) = 0;
12190 
12211  virtual int enableVideoImageSource(bool enable, const ImageTrackOptions& options) = 0;
12212 
12230  virtual int64_t getCurrentMonotonicTimeInMs() = 0;
12231 
12252  virtual int getNetworkType() = 0;
12253 
12267  virtual int setParameters(const char* parameters) = 0;
12268 
12298  virtual int startMediaRenderingTracing() = 0;
12299 
12323  virtual int enableInstantMediaRendering() = 0;
12324 
12337  virtual uint64_t getNtpWallTimeInMs() = 0;
12338 
12359  virtual bool isFeatureAvailableOnDevice(FeatureType type) = 0;
12360 
12371  virtual int sendAudioMetadata(const char* metadata, size_t length) = 0;
12372 
12383  virtual int queryHDRCapability(VIDEO_MODULE_TYPE videoModule, HDR_CAPABILITY& capability) = 0;
12384 };
12385 
12386 // The following types are either deprecated or not implmented yet.
12390  QUALITY_REPORT_JSON = 0,
12393  QUALITY_REPORT_HTML = 1,
12394 };
12395 
12412 
12417 
12426 };
12428 enum VIDEO_PROFILE_TYPE { // res fps
12430  VIDEO_PROFILE_LANDSCAPE_120P = 0, // 160x120 15
12432  VIDEO_PROFILE_LANDSCAPE_120P_3 = 2, // 120x120 15
12434  VIDEO_PROFILE_LANDSCAPE_180P = 10, // 320x180 15
12436  VIDEO_PROFILE_LANDSCAPE_180P_3 = 12, // 180x180 15
12438  VIDEO_PROFILE_LANDSCAPE_180P_4 = 13, // 240x180 15
12440  VIDEO_PROFILE_LANDSCAPE_240P = 20, // 320x240 15
12442  VIDEO_PROFILE_LANDSCAPE_240P_3 = 22, // 240x240 15
12444  VIDEO_PROFILE_LANDSCAPE_240P_4 = 23, // 424x240 15
12446  VIDEO_PROFILE_LANDSCAPE_360P = 30, // 640x360 15
12448  VIDEO_PROFILE_LANDSCAPE_360P_3 = 32, // 360x360 15
12450  VIDEO_PROFILE_LANDSCAPE_360P_4 = 33, // 640x360 30
12452  VIDEO_PROFILE_LANDSCAPE_360P_6 = 35, // 360x360 30
12454  VIDEO_PROFILE_LANDSCAPE_360P_7 = 36, // 480x360 15
12456  VIDEO_PROFILE_LANDSCAPE_360P_8 = 37, // 480x360 30
12458  VIDEO_PROFILE_LANDSCAPE_360P_9 = 38, // 640x360 15
12460  VIDEO_PROFILE_LANDSCAPE_360P_10 = 39, // 640x360 24
12462  VIDEO_PROFILE_LANDSCAPE_360P_11 = 100, // 640x360 24
12464  VIDEO_PROFILE_LANDSCAPE_480P = 40, // 640x480 15
12466  VIDEO_PROFILE_LANDSCAPE_480P_3 = 42, // 480x480 15
12468  VIDEO_PROFILE_LANDSCAPE_480P_4 = 43, // 640x480 30
12470  VIDEO_PROFILE_LANDSCAPE_480P_6 = 45, // 480x480 30
12472  VIDEO_PROFILE_LANDSCAPE_480P_8 = 47, // 848x480 15
12474  VIDEO_PROFILE_LANDSCAPE_480P_9 = 48, // 848x480 30
12476  VIDEO_PROFILE_LANDSCAPE_480P_10 = 49, // 640x480 10
12478  VIDEO_PROFILE_LANDSCAPE_720P = 50, // 1280x720 15
12480  VIDEO_PROFILE_LANDSCAPE_720P_3 = 52, // 1280x720 30
12482  VIDEO_PROFILE_LANDSCAPE_720P_5 = 54, // 960x720 15
12484  VIDEO_PROFILE_LANDSCAPE_720P_6 = 55, // 960x720 30
12486  VIDEO_PROFILE_LANDSCAPE_1080P = 60, // 1920x1080 15
12488  VIDEO_PROFILE_LANDSCAPE_1080P_3 = 62, // 1920x1080 30
12490  VIDEO_PROFILE_LANDSCAPE_1080P_5 = 64, // 1920x1080 60
12492  VIDEO_PROFILE_LANDSCAPE_1440P = 66, // 2560x1440 30
12494  VIDEO_PROFILE_LANDSCAPE_1440P_2 = 67, // 2560x1440 60
12496  VIDEO_PROFILE_LANDSCAPE_4K = 70, // 3840x2160 30
12498  VIDEO_PROFILE_LANDSCAPE_4K_3 = 72, // 3840x2160 60
12500  VIDEO_PROFILE_PORTRAIT_120P = 1000, // 120x160 15
12502  VIDEO_PROFILE_PORTRAIT_120P_3 = 1002, // 120x120 15
12504  VIDEO_PROFILE_PORTRAIT_180P = 1010, // 180x320 15
12506  VIDEO_PROFILE_PORTRAIT_180P_3 = 1012, // 180x180 15
12508  VIDEO_PROFILE_PORTRAIT_180P_4 = 1013, // 180x240 15
12510  VIDEO_PROFILE_PORTRAIT_240P = 1020, // 240x320 15
12512  VIDEO_PROFILE_PORTRAIT_240P_3 = 1022, // 240x240 15
12514  VIDEO_PROFILE_PORTRAIT_240P_4 = 1023, // 240x424 15
12516  VIDEO_PROFILE_PORTRAIT_360P = 1030, // 360x640 15
12518  VIDEO_PROFILE_PORTRAIT_360P_3 = 1032, // 360x360 15
12520  VIDEO_PROFILE_PORTRAIT_360P_4 = 1033, // 360x640 30
12522  VIDEO_PROFILE_PORTRAIT_360P_6 = 1035, // 360x360 30
12524  VIDEO_PROFILE_PORTRAIT_360P_7 = 1036, // 360x480 15
12526  VIDEO_PROFILE_PORTRAIT_360P_8 = 1037, // 360x480 30
12528  VIDEO_PROFILE_PORTRAIT_360P_9 = 1038, // 360x640 15
12530  VIDEO_PROFILE_PORTRAIT_360P_10 = 1039, // 360x640 24
12532  VIDEO_PROFILE_PORTRAIT_360P_11 = 1100, // 360x640 24
12534  VIDEO_PROFILE_PORTRAIT_480P = 1040, // 480x640 15
12536  VIDEO_PROFILE_PORTRAIT_480P_3 = 1042, // 480x480 15
12538  VIDEO_PROFILE_PORTRAIT_480P_4 = 1043, // 480x640 30
12540  VIDEO_PROFILE_PORTRAIT_480P_6 = 1045, // 480x480 30
12542  VIDEO_PROFILE_PORTRAIT_480P_8 = 1047, // 480x848 15
12544  VIDEO_PROFILE_PORTRAIT_480P_9 = 1048, // 480x848 30
12546  VIDEO_PROFILE_PORTRAIT_480P_10 = 1049, // 480x640 10
12548  VIDEO_PROFILE_PORTRAIT_720P = 1050, // 720x1280 15
12550  VIDEO_PROFILE_PORTRAIT_720P_3 = 1052, // 720x1280 30
12552  VIDEO_PROFILE_PORTRAIT_720P_5 = 1054, // 720x960 15
12554  VIDEO_PROFILE_PORTRAIT_720P_6 = 1055, // 720x960 30
12556  VIDEO_PROFILE_PORTRAIT_1080P = 1060, // 1080x1920 15
12558  VIDEO_PROFILE_PORTRAIT_1080P_3 = 1062, // 1080x1920 30
12560  VIDEO_PROFILE_PORTRAIT_1080P_5 = 1064, // 1080x1920 60
12562  VIDEO_PROFILE_PORTRAIT_1440P = 1066, // 1440x2560 30
12564  VIDEO_PROFILE_PORTRAIT_1440P_2 = 1067, // 1440x2560 60
12566  VIDEO_PROFILE_PORTRAIT_4K = 1070, // 2160x3840 30
12568  VIDEO_PROFILE_PORTRAIT_4K_3 = 1072, // 2160x3840 60
12571 };
12573 class AAudioDeviceManager : public agora::util::AutoPtr<IAudioDeviceManager> {
12574  public:
12575  AAudioDeviceManager(IRtcEngine* engine) {
12577  }
12578 };
12580 class AVideoDeviceManager : public agora::util::AutoPtr<IVideoDeviceManager> {
12581  public:
12582  AVideoDeviceManager(IRtcEngine* engine) {
12584  }
12585 };
12586 
12587 } // namespace rtc
12588 } // namespace agora
12589 
12595 #define getAgoraRtcEngineVersion getAgoraSdkVersion
12596 
12598 
12601 
12612 AGORA_API agora::rtc::IRtcEngine* AGORA_CALL createAgoraRtcEngine();
12613 
12615 
12616 
12623 #define getAgoraRtcEngineErrorDescription getAgoraSdkErrorDescription
12624 #define setAgoraRtcEngineExternalSymbolLoader setAgoraSdkExternalSymbolLoader
agora::rtc::IRtcEngine::startScreenCapture
virtual int startScreenCapture(const ScreenCaptureParameters2 &captureParams)=0
Starts screen capture.
agora::rtc::RemoteAudioStats::RemoteAudioStats
RemoteAudioStats()
Definition: IAgoraRtcEngine.h:549
agora::rtc::IRtcEngine::setDirectCdnStreamingAudioConfiguration
virtual int setDirectCdnStreamingAudioConfiguration(AUDIO_PROFILE_TYPE profile)=0
Sets the audio profile of the audio streams directly pushed to the CDN by the host.
agora::rtc::IRtcEngine::getErrorDescription
virtual const char * getErrorDescription(int code)=0
Gets the warning or error description.
agora::rtc::IRtcEngine::enableAudioSpectrumMonitor
virtual int enableAudioSpectrumMonitor(int intervalInMS=100)=0
Turns on audio spectrum monitoring.
agora::rtc::IRtcEngine::setSubscribeVideoAllowlist
virtual int setSubscribeVideoAllowlist(uid_t *uidList, int uidNumber)=0
Sets the allowlist of subscriptions for video streams.
agora::rtc::IRtcEngine::adjustRecordingSignalVolume
virtual int adjustRecordingSignalVolume(int volume)=0
Adjusts the capturing signal volume.
agora::rtc::IRtcEngine::enableWebSdkInteroperability
virtual int enableWebSdkInteroperability(bool enabled) __deprecated=0
Enables interoperability with the Agora Web SDK (applicable only in the live streaming.
agora::rtc::IRtcEngine::enableSpatialAudio
virtual int enableSpatialAudio(bool enabled)=0
Enables or disables the spatial audio effect.
agora::rtc::ChannelMediaOptions::publishMediaPlayerAudioTrack
Optional< bool > publishMediaPlayerAudioTrack
Definition: IAgoraRtcEngine.h:1361
agora::rtc::PublisherConfiguration::extraInfo
const char * extraInfo
Definition: IAgoraRtcEngine.h:863
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_11
@ VIDEO_PROFILE_LANDSCAPE_360P_11
Definition: IAgoraRtcEngine.h:12461
agora::rtc::IRtcEngine::setRemoteUserPriority
virtual int setRemoteUserPriority(uid_t uid, PRIORITY_TYPE userPriority)=0
agora::rtc::IRtcEngine::setCameraAutoFocusFaceModeEnabled
virtual int setCameraAutoFocusFaceModeEnabled(bool enabled)=0
Enables the camera auto-face focus function.
agora::rtc::IRtcEngine::setAVSyncSource
virtual int setAVSyncSource(const char *channelId, uid_t uid)=0
Sets audio-video synchronization for the sender.
agora::rtc::RtcEngineContext::appId
const char * appId
Definition: IAgoraRtcEngine.h:4085
agora::rtc::LOCAL_VIDEO_EVENT_TYPE
LOCAL_VIDEO_EVENT_TYPE
The local video event type.
Definition: AgoraBase.h:3525
agora::rtc::RtcEngineReleaseCallback
void(*)() RtcEngineReleaseCallback
Callback triggered when IRtcEngine is released.
Definition: IAgoraRtcEngine.h:4589
agora::rtc::VIDEO_PROFILE_PORTRAIT_180P_4
@ VIDEO_PROFILE_PORTRAIT_180P_4
Definition: IAgoraRtcEngine.h:12507
agora::rtc::IRtcEngine::setSubscribeAudioBlocklist
virtual int setSubscribeAudioBlocklist(uid_t *uidList, int uidNumber)=0
Sets the blocklist of subscriptions for audio streams.
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::ChannelMediaOptions::SetAll
void SetAll(const ChannelMediaOptions &change)
Definition: IAgoraRtcEngine.h:1544
agora::rtc::IRtcEngineEventHandler::onUserAccountUpdated
virtual void onUserAccountUpdated(uid_t uid, const char *userAccount)
Definition: IAgoraRtcEngine.h:3429
agora::rtc::LOCAL_VIDEO_STREAM_STATE
LOCAL_VIDEO_STREAM_STATE
Local video state types.
Definition: AgoraBase.h:3501
agora::rtc::IRtcEngine::enableInEarMonitoring
virtual int enableInEarMonitoring(bool enabled, int includeAudioFilters)=0
Enables in-ear monitoring.
agora::rtc::IRtcEngine::isSpeakerphoneEnabled
virtual bool isSpeakerphoneEnabled()=0
Checks whether the speakerphone is enabled.
agora::rtc::ReplaceBy
static void ReplaceBy(Optional< T > *s, const Optional< T > &o)
Definition: IAgoraRtcEngine.h:31
agora::rtc::IRtcEngineEventHandler::onRtmpStreamingEvent
virtual void onRtmpStreamingEvent(const char *url, RTMP_STREAMING_EVENT eventCode)
Reports events during the Media Push.
Definition: IAgoraRtcEngine.h:3198
agora::rtc::IRtcEngineEventHandler::onExtensionErrorWithContext
virtual void onExtensionErrorWithContext(const ExtensionContext &context, int error, const char *message)
Occurs when the extension runs incorrectly.
Definition: IAgoraRtcEngine.h:3653
agora::rtc::LocalVideoStats::regulatedCaptureFrameHeight
int regulatedCaptureFrameHeight
Definition: IAgoraRtcEngine.h:355
agora::rtc::AUDIO_SAMPLE_RATE_48000
@ AUDIO_SAMPLE_RATE_48000
Definition: AgoraBase.h:4121
agora::rtc::IRtcEngine::setEnableSpeakerphone
virtual int setEnableSpeakerphone(bool speakerOn)=0
Enables/Disables the audio route to the speakerphone.
agora::rtc::IRtcEngine::getScreenCaptureSources
virtual IScreenCaptureSourceList * getScreenCaptureSources(const SIZE &thumbSize, const SIZE &iconSize, const bool includeScreen)=0
Gets a list of shareable screens and windows.
agora::rtc::IRtcEngine::setEffectPosition
virtual int setEffectPosition(int soundId, int pos)=0
Sets the playback position of an audio effect file.
agora::rtc::UserInfo
The information of the user.
Definition: AgoraBase.h:7611
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_6
@ VIDEO_PROFILE_PORTRAIT_360P_6
Definition: IAgoraRtcEngine.h:12521
agora::rtc::RemoteVideoStats::publishDuration
int publishDuration
Definition: IAgoraRtcEngine.h:655
agora::rtc::AUDIO_REVERB_TYPE
AUDIO_REVERB_TYPE
Audio reverberation types.
Definition: IAgoraRtcEngine.h:242
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_11
@ VIDEO_PROFILE_PORTRAIT_360P_11
Definition: IAgoraRtcEngine.h:12531
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_7
@ VIDEO_PROFILE_LANDSCAPE_360P_7
Definition: IAgoraRtcEngine.h:12453
agora::rtc::IRtcEngine::stopDirectCdnStreaming
virtual int stopDirectCdnStreaming()=0
Stops pushing media streams to the CDN directly.
agora::rtc::ImageTrackOptions::mirrorMode
VIDEO_MIRROR_MODE_TYPE mirrorMode
Definition: IAgoraRtcEngine.h:1235
agora::rtc::IRtcEngine::muteAllRemoteVideoStreams
virtual int muteAllRemoteVideoStreams(bool mute)=0
Stops or resumes subscribing to the video streams of all remote users.
agora::rtc::IRtcEngine::setRemoteVideoSubscriptionOptions
virtual int setRemoteVideoSubscriptionOptions(uid_t uid, const VideoSubscriptionOptions &options)=0
Options for subscribing to remote video streams.
agora::rtc::INJECT_STREAM_STATUS_START_UNAUTHORIZED
@ INJECT_STREAM_STATUS_START_UNAUTHORIZED
Definition: IAgoraRtcEngine.h:158
agora::rtc::ScreenCaptureSourceInfo::processPath
const char * processPath
Definition: IAgoraRtcEngine.h:1121
agora::rtc::RemoteVideoStats::e2eDelay
int e2eDelay
Definition: IAgoraRtcEngine.h:593
agora::rtc::InjectStreamConfig::audioChannels
int audioChannels
Definition: IAgoraRtcEngine.h:780
agora::rtc::IRtcEngine::updateScreenCapture
virtual int updateScreenCapture(const ScreenCaptureParameters2 &captureParams)=0
Updates the screen capturing parameters.
agora::rtc::IVideoEffectObject::SAVE
@ SAVE
Definition: IAgoraRtcEngine.h:3908
agora::rtc::LocalVideoStats::regulatedCaptureFrameWidth
int regulatedCaptureFrameWidth
Definition: IAgoraRtcEngine.h:349
agora::rtc::IRtcEngine::pauseEffect
virtual int pauseEffect(int soundId)=0
Pauses a specified audio effect file.
agora::rtc::ChannelMediaOptions::publishSecondaryCameraTrack
Optional< bool > publishSecondaryCameraTrack
Definition: IAgoraRtcEngine.h:1265
agora::rtc::AUDIO_MIXING_STATE_FAILED
@ AUDIO_MIXING_STATE_FAILED
Definition: IAgoraRtcEngine.h:101
agora::rtc::INJECT_STREAM_STATUS_STOP_TIMEDOUT
@ INJECT_STREAM_STATUS_STOP_TIMEDOUT
Definition: IAgoraRtcEngine.h:182
agora::rtc::IRtcEngine::muteLocalVideoStream
virtual int muteLocalVideoStream(bool mute)=0
Stops or resumes publishing the local video stream.
agora::rtc::RtcEngineContext::eventHandler
IRtcEngineEventHandler * eventHandler
Definition: IAgoraRtcEngine.h:4078
agora::rtc::ChannelMediaOptions::enableMultipath
Optional< bool > enableMultipath
Definition: IAgoraRtcEngine.h:1511
agora::rtc::DIRECT_CDN_STREAMING_REASON_AUDIO_PUBLICATION
@ DIRECT_CDN_STREAMING_REASON_AUDIO_PUBLICATION
Definition: IAgoraRtcEngine.h:4303
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P_5
@ VIDEO_PROFILE_LANDSCAPE_720P_5
Definition: IAgoraRtcEngine.h:12481
agora::rtc::AUDIO_REVERB_STRENGTH
@ AUDIO_REVERB_STRENGTH
Definition: IAgoraRtcEngine.h:262
agora::rtc::IRtcEngineEventHandler::onIntraRequestReceived
virtual void onIntraRequestReceived()
Definition: IAgoraRtcEngine.h:2131
agora::rtc::VideoCompositingLayout
Definition: IAgoraRtcEngine.h:670
agora::rtc::VideoCompositingLayout::canvasHeight
int canvasHeight
Definition: IAgoraRtcEngine.h:719
agora::rtc::IRtcEngine::setVoiceConversionPreset
virtual int setVoiceConversionPreset(VOICE_CONVERSION_PRESET preset)=0
Sets a preset voice beautifier effect.
agora::rtc::TCP_PROXY_TYPE
@ TCP_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1732
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_6
@ VIDEO_PROFILE_LANDSCAPE_360P_6
Definition: IAgoraRtcEngine.h:12451
agora::rtc::DirectCdnStreamingStats::videoHeight
int videoHeight
Definition: IAgoraRtcEngine.h:4374
agora::rtc::IRtcEngine::enableLocalVideo
virtual int enableLocalVideo(bool enabled)=0
Enables/Disables the local video capture.
agora::rtc::IRtcEngineEventHandler::onLeaveChannel
virtual void onLeaveChannel(const RtcStats &stats)
Occurs when a user leaves a channel.
Definition: IAgoraRtcEngine.h:1992
agora::media::UNKNOWN_MEDIA_SOURCE
@ UNKNOWN_MEDIA_SOURCE
Definition: AgoraMediaBase.h:343
agora::rtc::IRtcEngine::isCameraTorchSupported
virtual bool isCameraTorchSupported()=0
Checks whether the device supports camera flash.
agora::rtc::IRtcEngineEventHandler::onRhythmPlayerStateChanged
virtual void onRhythmPlayerStateChanged(RHYTHM_PLAYER_STATE_TYPE state, RHYTHM_PLAYER_REASON reason)
Occurs when the state of virtual metronome changes.
Definition: IAgoraRtcEngine.h:2733
agora::rtc::IDirectCdnStreamingEventHandler::onDirectCdnStreamingStateChanged
virtual void onDirectCdnStreamingStateChanged(DIRECT_CDN_STREAMING_STATE state, DIRECT_CDN_STREAMING_REASON reason, const char *message)
Occurs when the CDN streaming state changes.
Definition: IAgoraRtcEngine.h:4416
agora::rtc::IRtcEngine::getAudioTrackCount
virtual int getAudioTrackCount()=0
Gets the index of audio tracks of the current music file.
agora::rtc::IRtcEngineEventHandler::onStreamMessage
virtual void onStreamMessage(uid_t uid, int streamId, const char *data, size_t length, uint64_t sentTs)
Occurs when the local user receives the data stream from the remote user.
Definition: IAgoraRtcEngine.h:2796
agora::rtc::AUDIO_MIXING_REASON_OK
@ AUDIO_MIXING_REASON_OK
Definition: IAgoraRtcEngine.h:140
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoDecoded
virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) __deprecated
Occurs when the first remote video frame is received and decoded.
Definition: IAgoraRtcEngine.h:2239
agora::rtc::RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL
@ RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL
Definition: IAgoraRtcEngine.h:803
agora::rtc::IVideoDeviceManager::~IVideoDeviceManager
virtual ~IVideoDeviceManager()
Definition: IAgoraRtcEngine.h:3750
agora::rtc::LocalVideoStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:315
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_6
@ VIDEO_PROFILE_PORTRAIT_480P_6
Definition: IAgoraRtcEngine.h:12539
agora::rtc::IRtcEngine::stopChannelMediaRelay
virtual int stopChannelMediaRelay()=0
Stops the media stream relay. Once the relay stops, the host quits all the target channels.
agora::rtc::IRtcEngineEventHandler::onAudioEffectFinished
virtual void onAudioEffectFinished(int soundId)
Occurs when the playback of the local music file finishes.
Definition: IAgoraRtcEngine.h:2066
agora::rtc::ScreenCaptureSourceType_Custom
@ ScreenCaptureSourceType_Custom
Definition: IAgoraRtcEngine.h:1091
agora::rtc::IVideoEffectObject::getVideoEffectFloatParam
virtual float getVideoEffectFloatParam(const char *option, const char *key)=0
Retrieves float type parameters in video effects.
agora::rtc::RtcEngineContext::threadPriority
Optional< THREAD_PRIORITY_TYPE > threadPriority
Definition: IAgoraRtcEngine.h:4138
agora::media::PRIMARY_CAMERA_SOURCE
@ PRIMARY_CAMERA_SOURCE
Definition: AgoraMediaBase.h:295
agora::rtc::IRtcEngine::registerAudioEncodedFrameObserver
virtual int registerAudioEncodedFrameObserver(const AudioEncodedFrameObserverConfig &config, IAudioEncodedFrameObserver *observer)=0
Registers an encoded audio observer.
agora::rtc::RemoteAudioStats::frozenTimeByCustom
uint32_t frozenTimeByCustom
Definition: IAgoraRtcEngine.h:517
agora::rtc::VIDEO_PROFILE_PORTRAIT_1440P
@ VIDEO_PROFILE_PORTRAIT_1440P
Definition: IAgoraRtcEngine.h:12561
agora::rtc::CameraCapturerConfiguration::cameraDirection
Optional< CAMERA_DIRECTION > cameraDirection
Definition: IAgoraRtcEngine.h:929
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_3
@ VIDEO_PROFILE_PORTRAIT_480P_3
Definition: IAgoraRtcEngine.h:12535
agora::rtc::AUDIO_MIXING_STATE_PLAYING
@ AUDIO_MIXING_STATE_PLAYING
Definition: IAgoraRtcEngine.h:82
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::IRtcEngine::setFaceShapeBeautyOptions
virtual int setFaceShapeBeautyOptions(bool enabled, const FaceShapeBeautyOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Sets the face shape options and specifies the media source.
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P_6
@ VIDEO_PROFILE_PORTRAIT_720P_6
Definition: IAgoraRtcEngine.h:12553
agora::rtc::ChannelMediaOptions::enableBuiltInMediaEncryption
Optional< bool > enableBuiltInMediaEncryption
Definition: IAgoraRtcEngine.h:1461
agora::rtc::IRtcEngine::resumeAllEffects
virtual int resumeAllEffects()=0
Resumes playing all audio effect files.
agora::rtc::IRtcEngine::joinChannelWithUserAccountEx
virtual int joinChannelWithUserAccountEx(const char *token, const char *channelId, const char *userAccount, const ChannelMediaOptions &options, IRtcEngineEventHandler *eventHandler)=0
Join a channel using a user account and token, and set the media options.
agora::rtc::InjectStreamConfig::width
int width
Definition: IAgoraRtcEngine.h:753
agora::rtc::IRtcEngine::pauseAudioMixing
virtual int pauseAudioMixing()=0
Pauses playing and mixing the music file.
agora::rtc::IRtcEngine::setPlaybackAudioFrameBeforeMixingParameters
virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel)=0
Sets the format of the raw audio playback data before mixing.
agora::rtc::IRtcEngineEventHandler::onRemoteAudioTransportStats
virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated
Reports the transport-layer statistics of each remote audio stream.
Definition: IAgoraRtcEngine.h:3287
agora::rtc::SCREEN_SCENARIO_TYPE
SCREEN_SCENARIO_TYPE
The screen sharing scenario.
Definition: AgoraBase.h:3241
agora::rtc::ScreenCaptureSourceInfo::type
ScreenCaptureSourceType type
Definition: IAgoraRtcEngine.h:1101
agora::rtc::RemoteAudioStats::totalActiveTime
int totalActiveTime
Definition: IAgoraRtcEngine.h:524
agora::agora_refptr
Definition: AgoraRefPtr.h:44
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioFrame
virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed) __deprecated
Occurs when the SDK receives the first audio frame from a specific remote user.
Definition: IAgoraRtcEngine.h:2989
agora::rtc::IVideoDeviceManager::getCapability
virtual int getCapability(const char *deviceIdUTF8, const uint32_t deviceCapabilityNumber, VideoFormat &capability)=0
Gets the detailed video frame information of the video capture device in the specified video format.
agora::rtc::ChannelMediaOptions::ChannelMediaOptions
ChannelMediaOptions()
Definition: IAgoraRtcEngine.h:1541
agora::rtc::IVideoDeviceCollection::release
virtual void release()=0
Releases all the resources occupied by the IVideoDeviceCollection object.
agora::rtc::AUDIO_RECORDING_DEVICE
@ AUDIO_RECORDING_DEVICE
Definition: IAgoraRtcEngine.h:52
agora::rtc::IVideoDeviceManager::enumerateVideoDevices
virtual IVideoDeviceCollection * enumerateVideoDevices()=0
Enumerates the video devices.
agora::rtc::LeaveChannelOptions::stopAudioMixing
bool stopAudioMixing
Definition: IAgoraRtcEngine.h:1773
agora::rtc::IRtcEngine::getVersion
virtual const char * getVersion(int *build)=0
Gets the SDK version.
agora::rtc::RemoteVideoStats::totalActiveTime
int totalActiveTime
Definition: IAgoraRtcEngine.h:651
agora::rtc::IRtcEngine::setAudioMixingPitch
virtual int setAudioMixingPitch(int pitch)=0
Sets the pitch of the local music file.
agora::rtc::ChannelMediaOptions::publishRhythmPlayerTrack
Optional< bool > publishRhythmPlayerTrack
Definition: IAgoraRtcEngine.h:1468
agora::rtc::ChannelMediaOptions::publishCustomVideoTrack
Optional< bool > publishCustomVideoTrack
Definition: IAgoraRtcEngine.h:1349
agora::rtc::IRtcEngineEventHandler::onLocalVideoStateChanged
virtual void onLocalVideoStateChanged(VIDEO_SOURCE_TYPE source, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_REASON reason)
Occurs when the local video stream state changes.
Definition: IAgoraRtcEngine.h:2333
agora::media::IAudioSpectrumObserver
Definition: AgoraMediaBase.h:1873
agora::rtc::DirectCdnStreamingStats::videoWidth
int videoWidth
Definition: IAgoraRtcEngine.h:4369
agora::rtc::RTMP_STREAMING_EVENT
RTMP_STREAMING_EVENT
Events during the Media Push.
Definition: AgoraBase.h:4343
agora::rtc::MEDIA_DEVICE_STATE_DISABLED
@ MEDIA_DEVICE_STATE_DISABLED
Definition: IAgoraRtcEngine.h:12410
agora::rtc::HDR_CAPABILITY
HDR_CAPABILITY
Definition: AgoraBase.h:1969
agora::rtc::IMetadataObserver::Metadata::buffer
unsigned char * buffer
Definition: IAgoraRtcEngine.h:4232
agora::rtc::REMOTE_AUDIO_STATE
REMOTE_AUDIO_STATE
Remote audio states.
Definition: AgoraBase.h:3709
agora::rtc::ThumbImageBuffer::length
unsigned int length
Definition: IAgoraRtcEngine.h:1061
agora::rtc::PublisherConfiguration::publishUrl
const char * publishUrl
Definition: IAgoraRtcEngine.h:856
agora::rtc::AUDIO_MIXING_REASON_RESUMED_BY_USER
@ AUDIO_MIXING_REASON_RESUMED_BY_USER
Definition: IAgoraRtcEngine.h:136
agora::rtc::IMetadataObserver::Metadata::Metadata
Metadata()
Definition: IAgoraRtcEngine.h:4238
agora::rtc::IRtcEngine::enableVoiceAITuner
virtual int enableVoiceAITuner(bool enabled, VOICE_AI_TUNER_TYPE type)=0
Enables or disables the voice AI tuner.
agora::rtc::NONE_PROXY
@ NONE_PROXY
Definition: IAgoraRtcEngine.h:905
agora::rtc::IRtcEngineEventHandler::onVideoRenderingTracingResult
virtual void onVideoRenderingTracingResult(uid_t uid, MEDIA_TRACE_EVENT currentEvent, VideoRenderingTracingInfo tracingInfo)
Video frame rendering event callback.
Definition: IAgoraRtcEngine.h:3450
agora::rtc::ExtensionInfo::remoteUid
uid_t remoteUid
Definition: IAgoraRtcEngine.h:4551
agora::rtc::PublisherConfiguration::lifecycle
int lifecycle
Definition: IAgoraRtcEngine.h:838
agora::rtc::IRtcEngine::startPreview
virtual int startPreview()=0
Enables the local video preview.
agora::rtc::IMetadataObserver::Metadata::timeStampMs
long long timeStampMs
Definition: IAgoraRtcEngine.h:4236
agora::rtc::VideoCompositingLayout::Region::Region
Region()
Definition: IAgoraRtcEngine.h:699
agora::rtc::MEDIA_DEVICE_STATE_TYPE
MEDIA_DEVICE_STATE_TYPE
Media device states.
Definition: IAgoraRtcEngine.h:12398
agora::rtc::IRtcEngineEventHandler::onLocalAudioStats
virtual void onLocalAudioStats(const LocalAudioStats &stats)
Reports the statistics of the local audio stream.
Definition: IAgoraRtcEngine.h:2555
agora::rtc::IRtcEngine::setAINSMode
virtual int setAINSMode(bool enabled, AUDIO_AINS_MODE mode)=0
Sets whether to enable the AI ​​noise suppression function and set the noise suppression mode.
agora::rtc::IRtcEngine::updateLocalAudioMixerConfiguration
virtual int updateLocalAudioMixerConfiguration(const LocalAudioMixerConfiguration &config)=0
Updates the configurations for mixing audio streams locally.
agora::rtc::ChannelMediaOptions::autoSubscribeAudio
Optional< bool > autoSubscribeAudio
Definition: IAgoraRtcEngine.h:1393
agora::rtc::VIDEO_PROFILE_PORTRAIT_1440P_2
@ VIDEO_PROFILE_PORTRAIT_1440P_2
Definition: IAgoraRtcEngine.h:12563
agora::rtc::IRtcEngineEventHandler::onCameraExposureAreaChanged
virtual void onCameraExposureAreaChanged(int x, int y, int width, int height)
Occurs when the camera exposure area changes.
Definition: IAgoraRtcEngine.h:2634
agora::rtc::LocalAccessPointConfiguration
Configuration for the Local Access Point.
Definition: AgoraBase.h:7913
agora::rtc::IRtcEngineEventHandler::onClientRoleChangeFailed
virtual void onClientRoleChangeFailed(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Occurs when switching a user role fails.
Definition: IAgoraRtcEngine.h:3143
agora::rtc::VideoCompositingLayout::VideoCompositingLayout
VideoCompositingLayout()
Definition: IAgoraRtcEngine.h:737
agora::rtc::IVideoDeviceCollection::getDevice
virtual int getDevice(int index, char deviceNameUTF8[MAX_DEVICE_ID_LENGTH], char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::ThumbImageBuffer::buffer
const char * buffer
Definition: IAgoraRtcEngine.h:1057
agora::rtc::ChannelMediaOptions::uplinkMultipathMode
Optional< MultipathMode > uplinkMultipathMode
Definition: IAgoraRtcEngine.h:1518
agora::rtc::DirectCdnStreamingStats::videoBitrate
int videoBitrate
Definition: IAgoraRtcEngine.h:4384
agora::rtc::VIDEO_PROFILE_LANDSCAPE_4K_3
@ VIDEO_PROFILE_LANDSCAPE_4K_3
Definition: IAgoraRtcEngine.h:12497
agora::rtc::IRtcEngineEventHandler::onLastmileQuality
virtual void onLastmileQuality(int quality)
Reports the last-mile network quality of the local user.
Definition: IAgoraRtcEngine.h:2162
agora::rtc::IRtcEngine::enableInstantMediaRendering
virtual int enableInstantMediaRendering()=0
Enables audio and video frame instant rendering.
agora::rtc::AUDIO_PROFILE_TYPE
AUDIO_PROFILE_TYPE
The audio profile.
Definition: AgoraBase.h:3088
agora::rtc::IRtcEngine::setCameraFocusPositionInPreview
virtual int setCameraFocusPositionInPreview(float positionX, float positionY)=0
Sets the camera manual focus position.
agora::rtc::IRtcEngine::setRemoteRenderMode
virtual int setRemoteRenderMode(uid_t uid, media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
Updates the display mode of the video view of a remote user.
agora::rtc::VIDEO_PROFILE_PORTRAIT_180P
@ VIDEO_PROFILE_PORTRAIT_180P
Definition: IAgoraRtcEngine.h:12503
agora::rtc::ChannelMediaOptions::isAudioFilterable
Optional< bool > isAudioFilterable
Definition: IAgoraRtcEngine.h:1494
agora::rtc::AREA_CODE_GLOB
@ AREA_CODE_GLOB
Definition: AgoraBase.h:6953
agora::rtc::IVideoDeviceManager::numberOfCapabilities
virtual int numberOfCapabilities(const char *deviceIdUTF8)=0
Gets the number of video formats supported by the specified video capture device.
agora::rtc::DIRECT_CDN_STREAMING_REASON_FAILED
@ DIRECT_CDN_STREAMING_REASON_FAILED
Definition: IAgoraRtcEngine.h:4297
agora::rtc::ChannelMediaOptions::audienceLatencyLevel
Optional< AUDIENCE_LATENCY_LEVEL_TYPE > audienceLatencyLevel
Definition: IAgoraRtcEngine.h:1423
agora::rtc::IRtcEngineEventHandler::onRemoteVideoTransportStats
virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate) __deprecated
Reports the transport-layer statistics of each remote video stream.
Definition: IAgoraRtcEngine.h:3311
agora::rtc::VIDEO_PROFILE_PORTRAIT_1080P
@ VIDEO_PROFILE_PORTRAIT_1080P
Definition: IAgoraRtcEngine.h:12555
agora::rtc::IRtcEngineEventHandler::eventHandlerType
virtual const char * eventHandlerType() const
Definition: IAgoraRtcEngine.h:1804
agora::rtc::IVideoEffectObject::VIDEO_EFFECT_ACTION
VIDEO_EFFECT_ACTION
Actions that can be performed on video effect nodes.
Definition: IAgoraRtcEngine.h:3904
agora::rtc::RTMP_STREAM_LIFE_CYCLE_TYPE
RTMP_STREAM_LIFE_CYCLE_TYPE
Lifecycle of the CDN live video stream.
Definition: IAgoraRtcEngine.h:798
agora::rtc::LocalVideoStats::sentFrameRate
int sentFrameRate
Definition: IAgoraRtcEngine.h:325
agora::rtc::Rectangle
The location of the target area relative to the screen or window. If you do not set this parameter,...
Definition: AgoraBase.h:2354
agora::rtc::IRtcEngine::setDirectCdnStreamingVideoConfiguration
virtual int setDirectCdnStreamingVideoConfiguration(const VideoEncoderConfiguration &config)=0
Sets the video profile of the media streams directly pushed to the CDN by the host.
agora::rtc::STREAM_FALLBACK_OPTION_DISABLED
@ STREAM_FALLBACK_OPTION_DISABLED
Definition: IAgoraRtcEngine.h:273
agora::rtc::IRtcEngine::createDataStream
virtual int createDataStream(int *streamId, bool reliable, bool ordered)=0
Creates a data stream.
agora::rtc::ScreenCaptureSourceInfo::sourceTitle
const char * sourceTitle
Definition: IAgoraRtcEngine.h:1125
agora::rtc::IVideoDeviceManager::release
virtual void release()=0
Releases all the resources occupied by the IVideoDeviceManager object.
agora::rtc::IRtcEngineEventHandler::onFacePositionChanged
virtual void onFacePositionChanged(int imageWidth, int imageHeight, const Rectangle *vecRectangle, const int *vecDistance, int numFaces)
Reports the face detection result of the local user.
Definition: IAgoraRtcEngine.h:2679
agora::rtc::IRtcEngine::setVolumeOfEffect
virtual int setVolumeOfEffect(int soundId, int volume)=0
Gets the volume of a specified audio effect file.
agora::rtc::IRtcEngineEventHandler::onUserInfoUpdated
virtual void onUserInfoUpdated(uid_t uid, const UserInfo &info)
Occurs when the SDK gets the user ID and user account of the remote user.
Definition: IAgoraRtcEngine.h:3418
agora::rtc::IRtcEngineEventHandler::onNetworkTypeChanged
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Occurs when the local network type changes.
Definition: IAgoraRtcEngine.h:3347
agora::rtc::AUDIO_VIRTUAL_RECORDING_DEVICE
@ AUDIO_VIRTUAL_RECORDING_DEVICE
Definition: IAgoraRtcEngine.h:72
agora::rtc::IRtcEngineEventHandler::onFirstRemoteAudioDecoded
virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed) __deprecated
Occurs when the SDK decodes the first remote audio frame for playback.
Definition: IAgoraRtcEngine.h:2973
agora::rtc::InjectStreamConfig::videoFramerate
int videoFramerate
Definition: IAgoraRtcEngine.h:765
agora::rtc::SIMULCAST_STREAM_MODE
SIMULCAST_STREAM_MODE
The mode in which the video stream is sent.
Definition: AgoraBase.h:2222
agora::rtc::IRtcEngine::stopAudioFrameDump
virtual int stopAudioFrameDump(const char *channel_id, uid_t uid, const char *location)=0
agora::rtc::IRtcEngine::enableAudioVolumeIndication
virtual int enableAudioVolumeIndication(int interval, int smooth, bool reportVad)=0
Enables the reporting of users' volume indication.
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P_3
@ VIDEO_PROFILE_LANDSCAPE_240P_3
Definition: IAgoraRtcEngine.h:12441
agora::rtc::ChannelMediaOptions::mediaPlayerAudioDelayMs
Optional< int > mediaPlayerAudioDelayMs
Definition: IAgoraRtcEngine.h:1442
agora::rtc::VIDEO_PROFILE_LANDSCAPE_180P_4
@ VIDEO_PROFILE_LANDSCAPE_180P_4
Definition: IAgoraRtcEngine.h:12437
agora::rtc::IRtcEngine::updateLocalTranscoderConfiguration
virtual int updateLocalTranscoderConfiguration(const LocalTranscoderConfiguration &config)=0
Updates the local video mixing configuration.
agora::rtc::IMetadataObserver::onReadyToSendMetadata
virtual bool onReadyToSendMetadata(Metadata &metadata, VIDEO_SOURCE_TYPE source_type)=0
Occurs when the SDK is ready to send metadata.
agora::rtc::INJECT_STREAM_STATUS_START_SUCCESS
@ INJECT_STREAM_STATUS_START_SUCCESS
Definition: IAgoraRtcEngine.h:150
agora::rtc::IRtcEngine::registerPacketObserver
virtual int registerPacketObserver(IPacketObserver *observer)=0
Registers a packet observer.
agora::rtc::IVideoDeviceCollection::~IVideoDeviceCollection
virtual ~IVideoDeviceCollection()
Definition: IAgoraRtcEngine.h:3705
agora::view_t
void * view_t
Definition: AgoraBase.h:862
agora::rtc::IRtcEngine::enableMultiCamera
virtual int enableMultiCamera(bool enabled, const CameraCapturerConfiguration &config)=0
Enables or disables multi-camera capture.
agora::rtc::RemoteAudioStats::networkTransportDelay
int networkTransportDelay
Definition: IAgoraRtcEngine.h:447
agora::rtc::IRtcEngine::switchCamera
virtual int switchCamera()=0
Switches between front and rear cameras.
agora::rtc::IRtcEngine::unregisterMediaMetadataObserver
virtual int unregisterMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type)=0
Unregisters the specified metadata observer.
agora::rtc::IRtcEngineEventHandler::onLocalVideoTranscoderError
virtual void onLocalVideoTranscoderError(const TranscodingVideoStream &stream, VIDEO_TRANSCODER_ERROR error)
Occurs when there's an error during the local video mixing.
Definition: IAgoraRtcEngine.h:3468
agora::rtc::IRtcEngine::getUserInfoByUid
virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo *userInfo)=0
Gets the user information by passing in the user ID.
agora::rtc::IRtcEngine::pauseAllEffects
virtual int pauseAllEffects()=0
Pauses all audio effects.
agora::rtc::FeatureType
FeatureType
The type of the advanced feature.
Definition: IAgoraRtcEngine.h:1753
agora::rtc::IRtcEngine::disableAudioSpectrumMonitor
virtual int disableAudioSpectrumMonitor()=0
Disables audio spectrum monitoring.
agora::rtc::IVideoEffectObject::VIDEO_EFFECT_NODE_ID::STYLE_MAKEUP
@ STYLE_MAKEUP
agora::rtc::CLOUD_PROXY_TYPE
CLOUD_PROXY_TYPE
The cloud proxy type.
Definition: IAgoraRtcEngine.h:900
agora::rtc::IRtcEngineEventHandler::onFirstLocalAudioFramePublished
virtual void onFirstLocalAudioFramePublished(int elapsed)
Occurs when the first audio frame is published.
Definition: IAgoraRtcEngine.h:2948
agora::util::AutoPtr
Definition: AgoraBase.h:100
agora::rtc::LocalVideoStats::sentBitrate
int sentBitrate
Definition: IAgoraRtcEngine.h:320
agora::rtc::VIDEO_PROFILE_PORTRAIT_240P_3
@ VIDEO_PROFILE_PORTRAIT_240P_3
Definition: IAgoraRtcEngine.h:12511
agora::rtc::IRtcEngine::getAudioMixingPublishVolume
virtual int getAudioMixingPublishVolume()=0
Retrieves the audio mixing volume for publishing.
agora::rtc::ScreenCaptureSourceType_Window
@ ScreenCaptureSourceType_Window
Definition: IAgoraRtcEngine.h:1083
agora::rtc::IRtcEngineEventHandler::onRejoinChannelSuccess
virtual void onRejoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Occurs when a user rejoins the channel.
Definition: IAgoraRtcEngine.h:1846
agora::rtc::AUDIO_SCENARIO_TYPE
AUDIO_SCENARIO_TYPE
The audio scenarios.
Definition: AgoraBase.h:3136
agora::rtc::SIZE::SIZE
SIZE(int ww, int hh)
Definition: IAgoraRtcEngine.h:1041
agora::rtc::ImageTrackOptions::fps
int fps
Definition: IAgoraRtcEngine.h:1234
agora::rtc::STREAM_FALLBACK_OPTION_AUDIO_ONLY
@ STREAM_FALLBACK_OPTION_AUDIO_ONLY
Definition: IAgoraRtcEngine.h:283
agora::rtc::RemoteVideoStats::totalFrozenTime
int totalFrozenTime
Definition: IAgoraRtcEngine.h:634
agora::rtc::IRtcEngineEventHandler::onMultipathStats
virtual void onMultipathStats(const MultipathStats &stats)
Report the multipath transmission statistics.
Definition: IAgoraRtcEngine.h:3677
agora::rtc::DIRECT_CDN_STREAMING_REASON_VIDEO_PUBLICATION
@ DIRECT_CDN_STREAMING_REASON_VIDEO_PUBLICATION
Definition: IAgoraRtcEngine.h:4309
agora::rtc::IMetadataObserver::METADATA_TYPE
METADATA_TYPE
Metadata type of the observer. We only support video metadata for now.
Definition: IAgoraRtcEngine.h:4190
agora::rtc::IRtcEngine::isCameraExposureSupported
virtual bool isCameraExposureSupported()=0
Queries whether the current camera supports adjusting exposure value.
agora::rtc::IRtcEngine::stopLocalVideoTranscoder
virtual int stopLocalVideoTranscoder()=0
Stops the local video mixing.
agora::rtc::IRtcEngine::setCloudProxy
virtual int setCloudProxy(CLOUD_PROXY_TYPE proxyType)=0
Sets up cloud proxy service.
agora::rtc::RemoteAudioStats::receivedBitrate
int receivedBitrate
Definition: IAgoraRtcEngine.h:469
agora::rtc::VideoEncoderConfiguration
Video encoder configurations.
Definition: AgoraBase.h:2069
agora::rtc::IMetadataObserver::Metadata::channelId
const char * channelId
Definition: IAgoraRtcEngine.h:4218
agora::rtc::IRtcEngineEventHandler
Definition: IAgoraRtcEngine.h:1800
agora::rtc::AUDIO_MIXING_STATE_TYPE
AUDIO_MIXING_STATE_TYPE
The playback state of the music file.
Definition: IAgoraRtcEngine.h:78
agora::rtc::VideoCompositingLayout::Region::height
double height
Definition: IAgoraRtcEngine.h:686
agora::rtc::IVideoDeviceManager::getDevice
virtual int getDevice(char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
Retrieves the current video capture device.
agora::rtc::IRtcEngine::isCameraExposurePositionSupported
virtual bool isCameraExposurePositionSupported()=0
Checks whether the device supports manual exposure.
agora::rtc::DirectCdnStreamingMediaOptions::operator==
bool operator==(const DirectCdnStreamingMediaOptions &o) const
Definition: IAgoraRtcEngine.h:4499
agora::rtc::IRtcEngineEventHandler::onUserMuteAudio
virtual void onUserMuteAudio(uid_t uid, bool muted)
Occurs when a remote user (in the communication profile) or a host (in the live streaming profile) st...
Definition: IAgoraRtcEngine.h:2453
agora::rtc::ChannelMediaOptions::publishCustomAudioTrackId
Optional< int > publishCustomAudioTrackId
Definition: IAgoraRtcEngine.h:1343
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P
@ VIDEO_PROFILE_LANDSCAPE_360P
Definition: IAgoraRtcEngine.h:12445
agora::rtc::ScreenCaptureSourceInfo::sourceName
const char * sourceName
Definition: IAgoraRtcEngine.h:1109
agora::rtc::VIDEO_QOE_PREFERENCE_TYPE
VIDEO_QOE_PREFERENCE_TYPE
Definition: AgoraBase.h:3335
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_3
@ VIDEO_PROFILE_PORTRAIT_360P_3
Definition: IAgoraRtcEngine.h:12517
agora::rtc::IRtcEngine::registerLocalUserAccount
virtual int registerLocalUserAccount(const char *appId, const char *userAccount)=0
Registers a user account.
agora::rtc::QUALITY_ADAPT_INDICATION
QUALITY_ADAPT_INDICATION
Quality change of the local video in terms of target frame rate and target bit rate since last count.
Definition: AgoraBase.h:2978
agora::rtc::IRtcEngineEventHandler::onUplinkNetworkInfoUpdated
virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo &info)
Occurs when the uplink network information changes.
Definition: IAgoraRtcEngine.h:2145
agora::rtc::AUDIO_EQUALIZATION_BAND_250
@ AUDIO_EQUALIZATION_BAND_250
Definition: IAgoraRtcEngine.h:212
agora::rtc::DirectCdnStreamingMediaOptions::publishMicrophoneTrack
Optional< bool > publishMicrophoneTrack
Definition: IAgoraRtcEngine.h:4454
agora::rtc::RtcImage
Image properties.
Definition: AgoraBase.h:4370
agora::rtc::InjectStreamConfig::InjectStreamConfig
InjectStreamConfig()
Definition: IAgoraRtcEngine.h:784
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_4
@ VIDEO_PROFILE_PORTRAIT_360P_4
Definition: IAgoraRtcEngine.h:12519
agora::rtc::VideoCompositingLayout::backgroundColor
const char * backgroundColor
Definition: IAgoraRtcEngine.h:722
agora::rtc::VIDEO_PROFILE_PORTRAIT_4K_3
@ VIDEO_PROFILE_PORTRAIT_4K_3
Definition: IAgoraRtcEngine.h:12567
agora::rtc::IRtcEngine::getAudioMixingCurrentPosition
virtual int getAudioMixingCurrentPosition()=0
Retrieves the playback position (ms) of the music file.
agora::rtc::IMetadataObserver::DEFAULT_METADATA_SIZE_IN_BYTE
@ DEFAULT_METADATA_SIZE_IN_BYTE
Definition: IAgoraRtcEngine.h:4206
agora::rtc::IRtcEngine::startDirectCdnStreaming
virtual int startDirectCdnStreaming(IDirectCdnStreamingEventHandler *eventHandler, const char *publishUrl, const DirectCdnStreamingMediaOptions &options)=0
Starts pushing media streams to the CDN directly.
agora::rtc::IRtcEngine::registerAudioSpectrumObserver
virtual int registerAudioSpectrumObserver(agora::media::IAudioSpectrumObserver *observer)=0
Registers an audio spectrum observer.
agora::rtc::AUDIO_MIXING_STATE_STOPPED
@ AUDIO_MIXING_STATE_STOPPED
Definition: IAgoraRtcEngine.h:93
agora::rtc::NONE_PROXY_TYPE
@ NONE_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1722
agora::rtc::DIRECT_CDN_STREAMING_REASON_OK
@ DIRECT_CDN_STREAMING_REASON_OK
Definition: IAgoraRtcEngine.h:4292
agora::rtc::AUDIO_REVERB_WET_DELAY
@ AUDIO_REVERB_WET_DELAY
Definition: IAgoraRtcEngine.h:258
agora::rtc::LocalVideoStats::encodedBitrate
int encodedBitrate
Definition: IAgoraRtcEngine.h:390
agora::rtc::REMOTE_VIDEO_STATE_REASON
REMOTE_VIDEO_STATE_REASON
The reason for the remote video state change.
Definition: AgoraBase.h:3821
agora::rtc::LocalVideoStats::qualityAdaptIndication
QUALITY_ADAPT_INDICATION qualityAdaptIndication
Definition: IAgoraRtcEngine.h:385
agora::rtc::RtcEngineContext::parameters
Optional< const char * > parameters
Definition: IAgoraRtcEngine.h:4172
agora::rtc::ChannelMediaOptions::customVideoTrackId
Optional< video_track_id_t > customVideoTrackId
Definition: IAgoraRtcEngine.h:1486
agora::rtc::RTMP_STREAM_PUBLISH_REASON
RTMP_STREAM_PUBLISH_REASON
Reasons for changes in the status of RTMP or RTMPS streaming.
Definition: AgoraBase.h:4261
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1440P
@ VIDEO_PROFILE_LANDSCAPE_1440P
Definition: IAgoraRtcEngine.h:12491
agora::rtc::IRtcEngineEventHandler::onConnectionInterrupted
virtual void onConnectionInterrupted() __deprecated
Occurs when the connection between the SDK and the server is interrupted.
Definition: IAgoraRtcEngine.h:2770
agora::rtc::IRtcEngine::setMixedAudioFrameParameters
virtual int setMixedAudioFrameParameters(int sampleRate, int channel, int samplesPerCall)=0
Sets the format of the raw audio data after mixing for audio capture and playback.
agora::rtc::AUDIO_EQUALIZATION_BAND_31
@ AUDIO_EQUALIZATION_BAND_31
Definition: IAgoraRtcEngine.h:200
agora::rtc::VIDEO_PROFILE_TYPE
VIDEO_PROFILE_TYPE
Definition: IAgoraRtcEngine.h:12427
agora::rtc::IRtcEngine::getVolumeOfEffect
virtual int getVolumeOfEffect(int soundId)=0
Gets the volume of a specified audio effect file.
agora::rtc::IMetadataObserver::getMaxMetadataSize
virtual int getMaxMetadataSize()
Occurs when the SDK requests the maximum size of the metadata.
Definition: IAgoraRtcEngine.h:4253
agora::rtc::IRtcEngine::setSubscribeAudioAllowlist
virtual int setSubscribeAudioAllowlist(uid_t *uidList, int uidNumber)=0
Sets the allowlist of subscriptions for audio streams.
agora::rtc::VIDEO_MIRROR_MODE_TYPE
VIDEO_MIRROR_MODE_TYPE
Video mirror mode.
Definition: AgoraBase.h:1924
agora::rtc::IRtcEngine::getConnectionState
virtual CONNECTION_STATE_TYPE getConnectionState()=0
Gets the current connection state of the SDK.
agora::rtc::ExtensionInfo::channelId
const char * channelId
Definition: IAgoraRtcEngine.h:4564
agora::rtc::AUDIO_PLAYOUT_DEVICE
@ AUDIO_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:48
agora::rtc::IRtcEngine::setCameraTorchOn
virtual int setCameraTorchOn(bool isOn)=0
Enables the camera flash.
agora::rtc::IRtcEngine::adjustUserPlaybackSignalVolume
virtual int adjustUserPlaybackSignalVolume(uid_t uid, int volume)=0
Adjusts the playback signal volume of a specified remote user.
agora::rtc::IRtcEngine::isFeatureAvailableOnDevice
virtual bool isFeatureAvailableOnDevice(FeatureType type)=0
Checks whether the device supports the specified advanced feature.
agora::rtc::IRtcEngine::enableEncryption
virtual int enableEncryption(bool enabled, const EncryptionConfig &config)=0
Enables or disables the built-in encryption.
agora::rtc::IRtcEngine::getFaceShapeBeautyOptions
virtual int getFaceShapeBeautyOptions(FaceShapeBeautyOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Gets the beauty effect options.
agora::rtc::UDP_PROXY_TYPE
@ UDP_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1727
agora::rtc::IRtcEngine::enableContentInspect
virtual int enableContentInspect(bool enabled, const media::ContentInspectConfig &config)=0
Enables or disables video screenshot and upload.
agora::rtc::IRtcEngine::isCameraZoomSupported
virtual bool isCameraZoomSupported()=0
Checks whether the device supports camera zoom.
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStateChanged
virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed)
Occurs when the remote audio state changes.
Definition: IAgoraRtcEngine.h:3034
agora::rtc::IRtcEngine::setAudioSessionOperationRestriction
virtual int setAudioSessionOperationRestriction(AUDIO_SESSION_OPERATION_RESTRICTION restriction)=0
Sets the operational permission of the SDK on the audio session.
agora::rtc::IRtcEngine::startRhythmPlayer
virtual int startRhythmPlayer(const char *sound1, const char *sound2, const AgoraRhythmPlayerConfig &config)=0
Enables the virtual metronome.
agora::rtc::IRtcEngine::configRhythmPlayer
virtual int configRhythmPlayer(const AgoraRhythmPlayerConfig &config)=0
Configures the virtual metronome.
agora::rtc::IVideoEffectObject::VIDEO_EFFECT_NODE_ID
VIDEO_EFFECT_NODE_ID
Types of applicable video effect nodes.
Definition: IAgoraRtcEngine.h:3884
agora::rtc::IRtcEngine::adjustAudioMixingPublishVolume
virtual int adjustAudioMixingPublishVolume(int volume)=0
Adjusts the volume of audio mixing for publishing.
agora::rtc::DirectCdnStreamingMediaOptions::publishCameraTrack
Optional< bool > publishCameraTrack
Definition: IAgoraRtcEngine.h:4448
agora::rtc::IVideoDeviceCollection::getCount
virtual int getCount()=0
Gets the total number of the indexed video devices in the system.
agora::rtc::IVideoEffectObject::VIDEO_EFFECT_NODE_ID::FILTER
@ FILTER
agora::rtc::IRtcEngine::getAudioMixingDuration
virtual int getAudioMixingDuration()=0
Retrieves the duration (ms) of the music file.
agora::rtc::HEADPHONE_EQUALIZER_PRESET
HEADPHONE_EQUALIZER_PRESET
Preset headphone equalizer types.
Definition: AgoraBase.h:6421
agora::rtc::IRtcEngine::adjustCustomAudioPlayoutVolume
virtual int adjustCustomAudioPlayoutVolume(track_id_t trackId, int volume)=0
Adjusts the volume of the custom audio track played locally.
agora::rtc::IRtcEngine::destroyMediaRecorder
virtual int destroyMediaRecorder(agora_refptr< IMediaRecorder > mediaRecorder)=0
Destroys an audio and video recording object.
agora::rtc::RemoteAudioStats::frozenRateByCustomPlcCount
uint32_t frozenRateByCustomPlcCount
Definition: IAgoraRtcEngine.h:501
agora::rtc::ScreenCaptureConfiguration::params
ScreenCaptureParameters params
Definition: IAgoraRtcEngine.h:1017
agora::rtc::IRtcEngineEventHandler::onVideoDeviceStateChanged
virtual void onVideoDeviceStateChanged(const char *deviceId, int deviceType, int deviceState)
Occurs when the video device state changes.
Definition: IAgoraRtcEngine.h:2083
agora::rtc::IMetadataObserver
Definition: IAgoraRtcEngine.h:4182
agora::rtc::VideoCompositingLayout::appData
const char * appData
Definition: IAgoraRtcEngine.h:732
agora::rtc::IRtcEngineEventHandler::onLocalVideoEvent
virtual void onLocalVideoEvent(VIDEO_SOURCE_TYPE source, LOCAL_VIDEO_EVENT_TYPE event)
Occurs when the local video event occurs.
Definition: IAgoraRtcEngine.h:2277
agora::rtc::IVideoEffectObject::setVideoEffectBoolParam
virtual int setVideoEffectBoolParam(const char *option, const char *key, bool param)=0
Sets the boolean parameter for video effects.
agora::rtc::SIZE::width
int width
Definition: IAgoraRtcEngine.h:1035
agora::rtc::RemoteAudioStats::totalFrozenTime
int totalFrozenTime
Definition: IAgoraRtcEngine.h:474
agora::rtc::IVideoEffectObject::setVideoEffectFloatParam
virtual int setVideoEffectFloatParam(const char *option, const char *key, float param)=0
Sets the float parameter for video effects.
agora::media::AUDIO_MIXING_DUAL_MONO_MODE
AUDIO_MIXING_DUAL_MONO_MODE
The channel mode.
Definition: IAgoraMediaEngine.h:18
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::IRtcEngineEventHandler::onAudioMixingPositionChanged
virtual void onAudioMixingPositionChanged(int64_t position)
Reports the playback progress of a music file.
Definition: IAgoraRtcEngine.h:2040
agora::rtc::IRtcEngine::setRemoteVoicePosition
virtual int setRemoteVoicePosition(uid_t uid, double pan, double gain)=0
Sets the 2D position (the position on the horizontal plane) of the remote user's voice.
agora::rtc::DIRECT_CDN_STREAMING_STATE_RECOVERING
@ DIRECT_CDN_STREAMING_STATE_RECOVERING
Definition: IAgoraRtcEngine.h:4357
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_1
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_1
Definition: IAgoraRtcEngine.h:288
agora::rtc::AUDIO_EFFECT_PRESET
AUDIO_EFFECT_PRESET
Preset audio effects.
Definition: AgoraBase.h:6213
agora::rtc::IRtcEngine::registerMediaMetadataObserver
virtual int registerMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type)=0
Registers the metadata observer.
agora::rtc::ScreenCaptureSourceType_Screen
@ ScreenCaptureSourceType_Screen
Definition: IAgoraRtcEngine.h:1087
agora::rtc::PublisherConfiguration::defaultLayout
int defaultLayout
Definition: IAgoraRtcEngine.h:835
agora::rtc::AUDIO_AINS_MODE
AUDIO_AINS_MODE
AI noise suppression modes.
Definition: AgoraBase.h:3065
agora::rtc::track_id_t
unsigned int track_id_t
Definition: AgoraMediaBase.h:29
agora::rtc::IRtcEngineEventHandler::onTranscodingUpdated
virtual void onTranscodingUpdated()
Occurs when the publisher's transcoding is updated.
Definition: IAgoraRtcEngine.h:3214
agora::rtc::IRtcEngine::updateRtmpTranscoding
virtual int updateRtmpTranscoding(const LiveTranscoding &transcoding)=0
Updates the transcoding configuration.
agora::rtc::ScreenCaptureConfiguration::displayId
int64_t displayId
Definition: IAgoraRtcEngine.h:1003
agora::rtc::DIRECT_CDN_STREAMING_REASON
DIRECT_CDN_STREAMING_REASON
Reasons for the changes in CDN streaming status.
Definition: IAgoraRtcEngine.h:4287
agora::rtc::RemoteAudioStats::publishDuration
int publishDuration
Definition: IAgoraRtcEngine.h:528
agora::rtc::IRtcEngineEventHandler::onRequestToken
virtual void onRequestToken()
Occurs when the token expires.
Definition: IAgoraRtcEngine.h:2896
agora::rtc::IRtcEngineEventHandler::onError
virtual void onError(int err, const char *msg)
Reports an error during SDK runtime.
Definition: IAgoraRtcEngine.h:1891
agora::rtc::REMOTE_VIDEO_STATE
REMOTE_VIDEO_STATE
The state of the remote video stream.
Definition: AgoraBase.h:3789
agora::rtc::IRtcEngine::getNtpWallTimeInMs
virtual uint64_t getNtpWallTimeInMs()=0
Gets the current NTP (Network Time Protocol) time.
agora::rtc::IRtcEngine::startRtmpStreamWithoutTranscoding
virtual int startRtmpStreamWithoutTranscoding(const char *url)=0
Starts pushing media streams to a CDN without transcoding.
agora::rtc::IRtcEngine::enableCameraCenterStage
virtual int enableCameraCenterStage(bool enabled)=0
Enables or disables portrait center stage.
agora::rtc::VideoCompositingLayout::regionCount
int regionCount
Definition: IAgoraRtcEngine.h:729
agora::rtc::ExtensionInfo::mediaSourceType
agora::media::MEDIA_SOURCE_TYPE mediaSourceType
Definition: IAgoraRtcEngine.h:4544
agora::rtc::IRtcEngineEventHandler::onProxyConnected
virtual void onProxyConnected(const char *channel, uid_t uid, PROXY_TYPE proxyType, const char *localProxyIp, int elapsed)
Reports the proxy connection state.
Definition: IAgoraRtcEngine.h:1871
agora::rtc::MEDIA_DEVICE_TYPE
MEDIA_DEVICE_TYPE
Media device types.
Definition: IAgoraRtcEngine.h:40
agora::rtc::IRtcEngineEventHandler::onExtensionEventWithContext
virtual void onExtensionEventWithContext(const ExtensionContext &context, const char *key, const char *value)
The event callback of the extension.
Definition: IAgoraRtcEngine.h:3607
agora::rtc::AUDIO_EQUALIZATION_BAND_62
@ AUDIO_EQUALIZATION_BAND_62
Definition: IAgoraRtcEngine.h:204
agora::rtc::ScreenCaptureSourceInfo::iconImage
ThumbImageBuffer iconImage
Definition: IAgoraRtcEngine.h:1117
agora::rtc::INTERFACE_ID_TYPE
INTERFACE_ID_TYPE
The interface class.
Definition: AgoraBase.h:917
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_10
@ VIDEO_PROFILE_LANDSCAPE_480P_10
Definition: IAgoraRtcEngine.h:12475
agora::rtc::IRtcEngineEventHandler::onUserStateChanged
virtual void onUserStateChanged(uid_t uid, REMOTE_USER_STATE state)
Definition: IAgoraRtcEngine.h:2505
agora::rtc::PublisherConfiguration::height
int height
Definition: IAgoraRtcEngine.h:821
agora::rtc::IRtcEngineEventHandler::onAudioMixingFinished
virtual void onAudioMixingFinished() __deprecated
Occurs when the playback of the local music file finishes.
Definition: IAgoraRtcEngine.h:2055
agora::rtc::IRtcEngine::setScreenCaptureScenario
virtual int setScreenCaptureScenario(SCREEN_SCENARIO_TYPE screenScenario)=0
Sets the screen sharing scenario.
agora::rtc::AVideoDeviceManager
Definition: IAgoraRtcEngine.h:12579
agora::rtc::AUDIO_EQUALIZATION_BAND_4K
@ AUDIO_EQUALIZATION_BAND_4K
Definition: IAgoraRtcEngine.h:228
agora::rtc::RAW_AUDIO_FRAME_OP_MODE_TYPE
RAW_AUDIO_FRAME_OP_MODE_TYPE
The use mode of the audio data.
Definition: AgoraMediaBase.h:261
agora::rtc::IRtcEngine::startScreenCaptureByWindowId
virtual int startScreenCaptureByWindowId(int64_t windowId, const Rectangle &regionRect, const ScreenCaptureParameters &captureParams)=0
Captures the whole or part of a window by specifying the window ID.
agora::rtc::LocalVideoStats::codecType
VIDEO_CODEC_TYPE codecType
Definition: IAgoraRtcEngine.h:398
agora::rtc::QUALITY_REPORT_JSON
@ QUALITY_REPORT_JSON
Definition: IAgoraRtcEngine.h:12389
agora::rtc::ExtensionInfo::localUid
uid_t localUid
Definition: IAgoraRtcEngine.h:4569
agora::rtc::INJECT_STREAM_STATUS_START_FAILED
@ INJECT_STREAM_STATUS_START_FAILED
Definition: IAgoraRtcEngine.h:166
agora::rtc::IRtcEngine::setSubscribeVideoBlocklist
virtual int setSubscribeVideoBlocklist(uid_t *uidList, int uidNumber)=0
Sets the blocklist of subscriptions for video streams.
agora::rtc::TCP_PROXY_AUTO_FALLBACK_TYPE
@ TCP_PROXY_AUTO_FALLBACK_TYPE
Definition: IAgoraRtcEngine.h:1741
agora::rtc::IRtcEngine::adjustAudioMixingPlayoutVolume
virtual int adjustAudioMixingPlayoutVolume(int volume)=0
Adjusts the volume of audio mixing for local playback.
agora::rtc::IRtcEngine::removeVideoWatermark
virtual int removeVideoWatermark(const char *id)=0
Removes the watermark image from the local video.
agora::rtc::STREAM_FALLBACK_OPTIONS
STREAM_FALLBACK_OPTIONS
Options for handling audio and video stream fallback when network conditions are weak.
Definition: IAgoraRtcEngine.h:268
agora::rtc::InjectStreamConfig::audioBitrate
int audioBitrate
Definition: IAgoraRtcEngine.h:777
agora::rtc::DirectCdnStreamingMediaOptions::SetAll
void SetAll(const DirectCdnStreamingMediaOptions &change)
Definition: IAgoraRtcEngine.h:4487
agora::rtc::ScreenCaptureSourceInfo::minimizeWindow
bool minimizeWindow
Definition: IAgoraRtcEngine.h:1144
agora::rtc::IRtcEngine::setCameraDeviceOrientation
virtual int setCameraDeviceOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation)=0
Sets the rotation angle of the captured video.
agora::rtc::IRtcEngineEventHandler::onAudioVolumeIndication
virtual void onAudioVolumeIndication(const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Reports the volume information of users.
Definition: IAgoraRtcEngine.h:1971
agora::rtc::IRtcEngineEventHandler::onStreamMessageError
virtual void onStreamMessageError(uid_t uid, int streamId, int code, int missed, int cached)
Occurs when the local user does not receive the data stream from the remote user.
Definition: IAgoraRtcEngine.h:2821
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_4
@ VIDEO_PROFILE_LANDSCAPE_480P_4
Definition: IAgoraRtcEngine.h:12467
agora::rtc::IPacketObserver
Definition: AgoraBase.h:4044
agora::rtc::LocalVideoStats::dualStreamEnabled
bool dualStreamEnabled
Definition: IAgoraRtcEngine.h:412
agora::rtc::VIDEO_PROFILE_PORTRAIT_120P_3
@ VIDEO_PROFILE_PORTRAIT_120P_3
Definition: IAgoraRtcEngine.h:12501
agora::rtc::IRtcEngine::writeLog
virtual int writeLog(commons::LOG_LEVEL level, const char *fmt,...)=0
agora::rtc::RemoteAudioStats::rxAudioBytes
unsigned int rxAudioBytes
Definition: IAgoraRtcEngine.h:542
agora::rtc::ChannelMediaOptions::publishEncodedVideoTrack
Optional< bool > publishEncodedVideoTrack
Definition: IAgoraRtcEngine.h:1355
agora::rtc::IRtcEngine::setDualStreamMode
virtual int setDualStreamMode(SIMULCAST_STREAM_MODE mode)=0
Sets the dual-stream mode on the sender side.
agora::rtc::IRtcEngine::registerEventHandler
virtual bool registerEventHandler(IRtcEngineEventHandler *eventHandler)=0
agora::rtc::VideoFormat
The format of the video frame.
Definition: AgoraBase.h:3179
agora::rtc::RemoteVideoStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:580
agora::rtc::IRtcEngineEventHandler::onUserOffline
virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason)
Occurs when a remote user (in the communication profile)/ host (in the live streaming profile) leaves...
Definition: IAgoraRtcEngine.h:2431
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
Registers an extension.
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P
@ VIDEO_PROFILE_PORTRAIT_480P
Definition: IAgoraRtcEngine.h:12533
agora::rtc::IRtcEngine::setCameraAutoExposureFaceModeEnabled
virtual int setCameraAutoExposureFaceModeEnabled(bool enabled)=0
Sets whether to enable auto exposure.
agora::rtc::VIDEO_CODEC_TYPE
VIDEO_CODEC_TYPE
Video codec types.
Definition: AgoraBase.h:1268
agora::rtc::IRtcEngine::stopRtmpStream
virtual int stopRtmpStream(const char *url)=0
Stops pushing media streams to a CDN.
agora::rtc::ChannelMediaOptions::operator==
bool operator==(const ChannelMediaOptions &o) const
Definition: IAgoraRtcEngine.h:1597
agora::rtc::DataStreamConfig
The configurations for the data stream.
Definition: AgoraBase.h:2197
agora::rtc::IRtcEngineEventHandler::onCameraFocusAreaChanged
virtual void onCameraFocusAreaChanged(int x, int y, int width, int height)
Occurs when the camera focus area changes.
Definition: IAgoraRtcEngine.h:2613
agora::rtc::VideoCompositingLayout::Region::y
double y
Definition: IAgoraRtcEngine.h:680
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW
Definition: IAgoraRtcEngine.h:277
agora::rtc::IRtcEngine::stopAudioMixing
virtual int stopAudioMixing()=0
Stops playing the music file.
agora::rtc::IVideoEffectObject::RESET
@ RESET
Definition: IAgoraRtcEngine.h:3912
agora::rtc::PublisherConfiguration
Definition: IAgoraRtcEngine.h:813
agora::rtc::IRtcEngineEventHandler::onExtensionStartedWithContext
virtual void onExtensionStartedWithContext(const ExtensionContext &context)
Occurrs when the extension is enabled.
Definition: IAgoraRtcEngine.h:3622
agora::rtc::IRtcEngine::setLogLevel
virtual int setLogLevel(commons::LOG_LEVEL level)=0
Sets the output log level of the SDK.
agora::rtc::RtcEngineContext::logConfig
commons::LogConfig logConfig
Definition: IAgoraRtcEngine.h:4133
agora::rtc::IRtcEngine::setRemoteDefaultVideoStreamType
virtual int setRemoteDefaultVideoStreamType(VIDEO_STREAM_TYPE streamType)=0
Sets the default video stream type to subscribe to.
agora::rtc::NETWORK_TYPE
NETWORK_TYPE
Network type.
Definition: AgoraBase.h:5219
agora::rtc::IRtcEngine::setRemoteVideoStreamType
virtual int setRemoteVideoStreamType(uid_t uid, VIDEO_STREAM_TYPE streamType)=0
Sets the video stream type to subscribe to.
agora::rtc::AUDIO_EQUALIZATION_BAND_8K
@ AUDIO_EQUALIZATION_BAND_8K
Definition: IAgoraRtcEngine.h:232
agora::rtc::IRtcEngineEventHandler::onUserEnableVideo
virtual void onUserEnableVideo(uid_t uid, bool enabled)
Occurs when a remote user enables or disables the video module.
Definition: IAgoraRtcEngine.h:2495
agora::CHANNEL_PROFILE_TYPE
CHANNEL_PROFILE_TYPE
The channel profile.
Definition: AgoraBase.h:267
agora::rtc::IRtcEngineEventHandler::onRtmpStreamingStateChanged
virtual void onRtmpStreamingStateChanged(const char *url, RTMP_STREAM_PUBLISH_STATE state, RTMP_STREAM_PUBLISH_REASON reason)
Occurs when the state of Media Push changes.
Definition: IAgoraRtcEngine.h:3184
agora::rtc::InjectStreamConfig::height
int height
Definition: IAgoraRtcEngine.h:757
agora::rtc::IRtcEngine::destroyVideoEffectObject
virtual int destroyVideoEffectObject(agora_refptr< IVideoEffectObject > videoEffectObject)=0
Destroys a video effect object.
agora::rtc::CAMERA_FRONT
@ CAMERA_FRONT
Definition: IAgoraRtcEngine.h:892
agora::rtc::ChannelMediaOptions::publishFourthCameraTrack
Optional< bool > publishFourthCameraTrack
Definition: IAgoraRtcEngine.h:1279
agora::rtc::CAPTURE_BRIGHTNESS_LEVEL_TYPE
CAPTURE_BRIGHTNESS_LEVEL_TYPE
The brightness level of the video image captured by the local camera.
Definition: AgoraBase.h:3358
agora::rtc::DIRECT_CDN_STREAMING_STATE_STOPPED
@ DIRECT_CDN_STREAMING_STATE_STOPPED
Definition: IAgoraRtcEngine.h:4344
agora::rtc::IRtcEngine::startRtmpStreamWithTranscoding
virtual int startRtmpStreamWithTranscoding(const char *url, const LiveTranscoding &transcoding)=0
Starts Media Push and sets the transcoding configuration.
agora::rtc::ScreenCaptureConfiguration::ScreenCaptureConfiguration
ScreenCaptureConfiguration()
Definition: IAgoraRtcEngine.h:1026
agora::rtc::DirectCdnStreamingMediaOptions
The media setting options for the host.
Definition: IAgoraRtcEngine.h:4442
agora::rtc::AdvancedAudioOptions
The advanced options for audio.
Definition: IAgoraRtcEngine.h:1208
agora::rtc::IRtcEngine::setVideoEncoderConfiguration
virtual int setVideoEncoderConfiguration(const VideoEncoderConfiguration &config)=0
Sets the video encoder configuration.
agora::rtc::IRtcEngine::queryCodecCapability
virtual int queryCodecCapability(CodecCapInfo *codecInfo, int &size)=0
Queries the video codec capabilities of the SDK.
agora::rtc::IRtcEngine::stopAllEffects
virtual int stopAllEffects()=0
Stops playing all audio effects.
agora::rtc::ExtensionInfo::ExtensionInfo
ExtensionInfo()
Definition: IAgoraRtcEngine.h:4571
agora::rtc::IRtcEngine::pauseAllChannelMediaRelay
virtual int pauseAllChannelMediaRelay()=0
Pauses the media stream relay to all target channels.
agora::rtc::ScreenCaptureSourceType_Unknown
@ ScreenCaptureSourceType_Unknown
Definition: IAgoraRtcEngine.h:1079
agora::rtc::LocalVideoStats::captureFrameHeight
int captureFrameHeight
Definition: IAgoraRtcEngine.h:337
agora::rtc::IRtcEngineEventHandler::onAudioQuality
virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost) __deprecated
Reports the statistics of the audio stream sent by each remote user.
Definition: IAgoraRtcEngine.h:1914
agora::rtc::IRtcEngine::startAudioMixing
virtual int startAudioMixing(const char *filePath, bool loopback, int cycle)=0
Starts playing the music file.
agora::rtc::IRtcEngine::adjustLoopbackSignalVolume
virtual int adjustLoopbackSignalVolume(int volume)=0
Adjusts the volume of the signal captured by the sound card.
agora::rtc::VIDEO_ORIENTATION
VIDEO_ORIENTATION
The clockwise rotation of the video.
Definition: AgoraBase.h:1013
agora::rtc::IRtcEngine::takeSnapshot
virtual int takeSnapshot(uid_t uid, const char *filePath)=0
Takes a snapshot of a video stream.
agora::rtc::RtcEngineContext::license
const char * license
Definition: IAgoraRtcEngine.h:4100
agora::rtc::AUDIO_EQUALIZATION_BAND_125
@ AUDIO_EQUALIZATION_BAND_125
Definition: IAgoraRtcEngine.h:208
agora::rtc::ScreenCaptureConfiguration::regionRect
Rectangle regionRect
Definition: IAgoraRtcEngine.h:1024
agora::rtc::VideoCompositingLayout::canvasWidth
int canvasWidth
Definition: IAgoraRtcEngine.h:714
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_3
@ VIDEO_PROFILE_LANDSCAPE_360P_3
Definition: IAgoraRtcEngine.h:12447
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_5
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_5
Definition: IAgoraRtcEngine.h:292
agora::rtc::LeaveChannelOptions::stopMicrophoneRecording
bool stopMicrophoneRecording
Definition: IAgoraRtcEngine.h:1785
agora::rtc::PublisherConfiguration::rawStreamUrl
const char * rawStreamUrl
Definition: IAgoraRtcEngine.h:860
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_8
@ VIDEO_PROFILE_LANDSCAPE_360P_8
Definition: IAgoraRtcEngine.h:12455
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_9
@ VIDEO_PROFILE_LANDSCAPE_480P_9
Definition: IAgoraRtcEngine.h:12473
agora::rtc::ScreenCaptureSourceInfo::thumbImage
ThumbImageBuffer thumbImage
Definition: IAgoraRtcEngine.h:1113
agora::rtc::VIDEO_APPLICATION_SCENARIO_TYPE
VIDEO_APPLICATION_SCENARIO_TYPE
The video application scenarios.
Definition: AgoraBase.h:3269
agora::rtc::RemoteAudioStats::mosValue
int mosValue
Definition: IAgoraRtcEngine.h:496
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStats
virtual void onRemoteVideoStats(const RemoteVideoStats &stats)
Reports the statistics of the video stream sent by each remote users.
Definition: IAgoraRtcEngine.h:2586
agora::rtc::AUDIO_MIXING_STATE_PAUSED
@ AUDIO_MIXING_STATE_PAUSED
Definition: IAgoraRtcEngine.h:86
agora::rtc::IRtcEngine::setAudioEffectParameters
virtual int setAudioEffectParameters(AUDIO_EFFECT_PRESET preset, int param1, int param2)=0
Sets parameters for SDK preset audio effects.
agora::rtc::IRtcEngine::setColorEnhanceOptions
virtual int setColorEnhanceOptions(bool enabled, const ColorEnhanceOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Sets color enhancement.
agora::commons::LOG_LEVEL
OPTIONAL_ENUM_CLASS LOG_LEVEL
The output log level of the SDK.
Definition: IAgoraLog.h:33
agora::rtc::IRtcEngineEventHandler::onTokenPrivilegeWillExpire
virtual void onTokenPrivilegeWillExpire(const char *token)
Occurs when the token expires in 30 seconds.
Definition: IAgoraRtcEngine.h:2918
agora::rtc::LocalVideoStats::targetFrameRate
int targetFrameRate
Definition: IAgoraRtcEngine.h:380
agora::rtc::DirectCdnStreamingStats::audioBitrate
int audioBitrate
Definition: IAgoraRtcEngine.h:4389
agora::rtc::IRtcEngine::setRemoteSubscribeFallbackOption
virtual int setRemoteSubscribeFallbackOption(STREAM_FALLBACK_OPTIONS option)=0
Sets the fallback option for the subscribed video stream based on the network conditions.
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::RtcEngineContext::channelProfile
CHANNEL_PROFILE_TYPE channelProfile
Definition: IAgoraRtcEngine.h:4095
agora::rtc::IRtcEngineEventHandler::onRemoteSubscribeFallbackToAudioOnly
virtual void onRemoteSubscribeFallbackToAudioOnly(uid_t uid, bool isFallbackOrRecover)
Occurs when the remote media stream falls back to the audio-only stream due to poor network condition...
Definition: IAgoraRtcEngine.h:3264
agora::rtc::IRtcEngine::setEarMonitoringAudioFrameParameters
virtual int setEarMonitoringAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
Sets the format of the in-ear monitoring raw audio data.
agora::rtc::IRtcEngineEventHandler::onContentInspectResult
virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result)
Definition: IAgoraRtcEngine.h:3066
agora::rtc::IRtcEngine::getAudioDeviceInfo
virtual int getAudioDeviceInfo(DeviceInfo &deviceInfo)=0
Gets the audio device information.
agora::rtc::IRtcEngineEventHandler::onAudioDeviceStateChanged
virtual void onAudioDeviceStateChanged(const char *deviceId, int deviceType, int deviceState)
Occurs when the audio device state changes.
Definition: IAgoraRtcEngine.h:2020
agora::rtc::ChannelMediaOptions::token
Optional< const char * > token
Definition: IAgoraRtcEngine.h:1453
agora::rtc::AUDIO_EQUALIZATION_BAND_16K
@ AUDIO_EQUALIZATION_BAND_16K
Definition: IAgoraRtcEngine.h:236
agora::rtc::ChannelMediaOptions::parameters
Optional< const char * > parameters
Definition: IAgoraRtcEngine.h:1500
agora::rtc::IRtcEngineEventHandler::onRemoteAudioStats
virtual void onRemoteAudioStats(const RemoteAudioStats &stats)
Reports the transport-layer statistics of each remote audio stream.
Definition: IAgoraRtcEngine.h:2542
agora::rtc::IRtcEngine::setEffectsVolume
virtual int setEffectsVolume(int volume)=0
Sets the volume of the audio effects.
agora::rtc::__deprecated
@ __deprecated
Definition: AgoraBase.h:957
agora::rtc::IRtcEngine::playAllEffects
virtual int playAllEffects(int loopCount, double pitch, double pan, int gain, bool publish=false)=0
Plays all audio effect files.
agora::rtc::DirectCdnStreamingStats::fps
int fps
Definition: IAgoraRtcEngine.h:4379
agora::rtc::IDirectCdnStreamingEventHandler::~IDirectCdnStreamingEventHandler
virtual ~IDirectCdnStreamingEventHandler()
Definition: IAgoraRtcEngine.h:4400
agora::rtc::AUDIO_RECORDING_QUALITY_TYPE
AUDIO_RECORDING_QUALITY_TYPE
Recording quality.
Definition: AgoraBase.h:6701
agora::rtc::ScreenCaptureSourceInfo::isOccluded
bool isOccluded
Definition: IAgoraRtcEngine.h:1132
agora::rtc::IRtcEngine::stopLastmileProbeTest
virtual int stopLastmileProbeTest()=0
Stops the last mile network probe test.
agora::rtc::ChannelMediaRelayConfiguration
Configuration of cross channel media relay.
Definition: AgoraBase.h:7102
agora::rtc::IRtcEngine::setAdvancedAudioOptions
virtual int setAdvancedAudioOptions(AdvancedAudioOptions &options, int sourceType=0)=0
Sets audio advanced options.
agora::rtc::IRtcEngine::createMediaPlayer
virtual agora_refptr< IMediaPlayer > createMediaPlayer()=0
Creates a media player object.
agora::rtc::IRtcEngine::queryInterface
virtual int queryInterface(INTERFACE_ID_TYPE iid, void **inter)=0
Gets the pointer to the specified interface.
agora::rtc::IVideoDeviceCollection
Definition: IAgoraRtcEngine.h:3703
agora::rtc::IRtcEngine::renewToken
virtual int renewToken(const char *token)=0
Renews the token.
agora::rtc::IRtcEngine::pauseAudio
virtual int pauseAudio() __deprecated=0
agora::rtc::IRtcEngine::sendStreamMessage
virtual int sendStreamMessage(int streamId, const char *data, size_t length)=0
Sends data stream messages.
agora::rtc::LocalVideoStats::txPacketLossRate
unsigned short txPacketLossRate
Definition: IAgoraRtcEngine.h:403
agora::rtc::VOICE_CONVERSION_PRESET
VOICE_CONVERSION_PRESET
The options for SDK preset voice conversion effects.
Definition: AgoraBase.h:6357
agora::rtc::AUDIO_VIRTUAL_PLAYOUT_DEVICE
@ AUDIO_VIRTUAL_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:68
agora::rtc::IRtcEngineEventHandler::onLocalVideoStats
virtual void onLocalVideoStats(VIDEO_SOURCE_TYPE source, const LocalVideoStats &stats)
Reports the statistics of the local video stream.
Definition: IAgoraRtcEngine.h:2570
agora::rtc::ChannelMediaOptions::publishCustomAudioTrack
Optional< bool > publishCustomAudioTrack
Definition: IAgoraRtcEngine.h:1338
agora::rtc::RemoteVideoStats::avSyncTimeMs
int avSyncTimeMs
Definition: IAgoraRtcEngine.h:645
agora::rtc::IRtcEngine::setFilterEffectOptions
virtual int setFilterEffectOptions(bool enabled, const FilterEffectOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Sets the filter effect options and specifies the media source.
agora::rtc::RtcEngineContext::domainLimit
bool domainLimit
Definition: IAgoraRtcEngine.h:4157
agora::rtc::IRtcEngine::isCameraAutoExposureFaceModeSupported
virtual bool isCameraAutoExposureFaceModeSupported()=0
Checks whether the device supports auto exposure.
agora::rtc::IRtcEngine::enableFaceDetection
virtual int enableFaceDetection(bool enabled)=0
Enables or disables face detection for the local user.
agora::rtc::IRtcEngine::isCameraCenterStageSupported
virtual bool isCameraCenterStageSupported()=0
Checks if the camera supports portrait center stage.
agora::rtc::IRtcEngine::unregisterEventHandler
virtual bool unregisterEventHandler(IRtcEngineEventHandler *eventHandler)=0
agora::rtc::VIDEO_RENDER_DEVICE
@ VIDEO_RENDER_DEVICE
Definition: IAgoraRtcEngine.h:56
agora::rtc::IRtcEngine::setLocalVideoMirrorMode
virtual int setLocalVideoMirrorMode(VIDEO_MIRROR_MODE_TYPE mirrorMode) __deprecated=0
Sets the local video mirror mode.
agora::rtc::RemoteVideoStats::decoderOutputFrameRate
int decoderOutputFrameRate
Definition: IAgoraRtcEngine.h:612
agora::rtc::RtcEngineContext::context
void * context
Definition: IAgoraRtcEngine.h:4091
agora::rtc::IRtcEngine::setExternalMediaProjection
virtual int setExternalMediaProjection(void *mediaProjection)=0
Configures MediaProjection outside of the SDK to capture screen video streams.
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P
@ VIDEO_PROFILE_PORTRAIT_360P
Definition: IAgoraRtcEngine.h:12515
agora::rtc::UNKNOWN_AUDIO_DEVICE
@ UNKNOWN_AUDIO_DEVICE
Definition: IAgoraRtcEngine.h:44
agora::rtc::IRtcEngine::setCameraExposureFactor
virtual int setCameraExposureFactor(float factor)=0
Sets the camera exposure value.
agora::rtc::IRtcEngine::stopLocalAudioMixer
virtual int stopLocalAudioMixer()=0
Stops the local audio mixing.
agora::rtc::VIDEO_PROFILE_PORTRAIT_240P_4
@ VIDEO_PROFILE_PORTRAIT_240P_4
Definition: IAgoraRtcEngine.h:12513
agora::rtc::IRtcEngineEventHandler::onActiveSpeaker
virtual void onActiveSpeaker(uid_t uid)
Occurs when the most active remote speaker is detected.
Definition: IAgoraRtcEngine.h:3058
agora::rtc::RemoteAudioStats::frozenCntByCustom
uint32_t frozenCntByCustom
Definition: IAgoraRtcEngine.h:511
agora::rtc::ChannelMediaOptions::publishCameraTrack
Optional< bool > publishCameraTrack
Definition: IAgoraRtcEngine.h:1259
agora::rtc::RemoteAudioStats::e2eDelay
int e2eDelay
Definition: IAgoraRtcEngine.h:547
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFrame
virtual void onFirstLocalVideoFrame(VIDEO_SOURCE_TYPE source, int width, int height, int elapsed)
Occurs when the first local video frame is displayed on the local video view.
Definition: IAgoraRtcEngine.h:2185
agora::rtc::AUDIO_SCENARIO_DEFAULT
@ AUDIO_SCENARIO_DEFAULT
Definition: AgoraBase.h:3141
agora::rtc::ChannelMediaOptions::clientRoleType
Optional< CLIENT_ROLE_TYPE > clientRoleType
Definition: IAgoraRtcEngine.h:1418
agora::rtc::AUDIO_MIXING_REASON_STOPPED_BY_USER
@ AUDIO_MIXING_REASON_STOPPED_BY_USER
Definition: IAgoraRtcEngine.h:134
agora::rtc::AUDIO_REVERB_WET_LEVEL
@ AUDIO_REVERB_WET_LEVEL
Definition: IAgoraRtcEngine.h:250
agora::rtc::ChannelMediaOptions::publishThirdCameraTrack
Optional< bool > publishThirdCameraTrack
Definition: IAgoraRtcEngine.h:1272
agora::rtc::IRtcEngineEventHandler::onJoinChannelSuccess
virtual void onJoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Occurs when a user joins a channel.
Definition: IAgoraRtcEngine.h:1826
agora::rtc::IRtcEngine::startLocalVideoTranscoder
virtual int startLocalVideoTranscoder(const LocalTranscoderConfiguration &config)=0
Starts the local video mixing.
agora::rtc::ThumbImageBuffer::width
unsigned int width
Definition: IAgoraRtcEngine.h:1065
agora::rtc::DirectCdnStreamingMediaOptions::publishMediaPlayerId
Optional< int > publishMediaPlayerId
Definition: IAgoraRtcEngine.h:4477
agora::rtc::ChannelMediaOptions::channelProfile
Optional< CHANNEL_PROFILE_TYPE > channelProfile
Definition: IAgoraRtcEngine.h:1431
agora::rtc::RemoteAudioStats::audioLossRate
int audioLossRate
Definition: IAgoraRtcEngine.h:457
agora::rtc::AUDIO_REVERB_ROOM_SIZE
@ AUDIO_REVERB_ROOM_SIZE
Definition: IAgoraRtcEngine.h:254
agora::rtc::VideoCompositingLayout::Region::zOrder
int zOrder
Definition: IAgoraRtcEngine.h:690
agora::rtc::IRtcEngine::queryDeviceScore
virtual int queryDeviceScore()=0
Queries device score.
agora::rtc::LocalVideoStats::captureFrameRate
int captureFrameRate
Definition: IAgoraRtcEngine.h:329
agora::rtc::ScreenCaptureSourceInfo::sourceDisplayId
int64_t sourceDisplayId
Definition: IAgoraRtcEngine.h:1151
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_4
@ VIDEO_PROFILE_PORTRAIT_480P_4
Definition: IAgoraRtcEngine.h:12537
agora::rtc::ChannelMediaOptions::operator=
ChannelMediaOptions & operator=(const ChannelMediaOptions &replace)
Definition: IAgoraRtcEngine.h:1658
agora::rtc::IRtcEngine::setParameters
virtual int setParameters(const char *parameters)=0
Provides technical preview functionalities or special customizations by configuring the SDK with JSON...
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P_3
@ VIDEO_PROFILE_PORTRAIT_720P_3
Definition: IAgoraRtcEngine.h:12549
agora::rtc::IRtcEngine::muteRemoteVideoStream
virtual int muteRemoteVideoStream(uid_t uid, bool mute)=0
Stops or resumes subscribing to the video stream of a specified user.
agora::rtc::ChannelMediaOptions::publishScreenCaptureAudio
Optional< bool > publishScreenCaptureAudio
Definition: IAgoraRtcEngine.h:1292
agora::rtc::IRtcEngine::isCameraFocusSupported
virtual bool isCameraFocusSupported()=0
Check whether the device supports the manual focus function.
agora::rtc::IRtcEngine::setLowlightEnhanceOptions
virtual int setLowlightEnhanceOptions(bool enabled, const LowlightEnhanceOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Sets low-light enhancement.
agora::rtc::IScreenCaptureSourceList::getCount
virtual unsigned int getCount()=0
Gets the number of shareable windows and screens.
agora::rtc::VIDEO_PROFILE_LANDSCAPE_180P
@ VIDEO_PROFILE_LANDSCAPE_180P
Definition: IAgoraRtcEngine.h:12433
agora::rtc::CONNECTION_CHANGED_REASON_TYPE
CONNECTION_CHANGED_REASON_TYPE
Reasons causing the change of the connection state.
Definition: AgoraBase.h:5053
agora::rtc::RemoteVideoStats::frozenRate
int frozenRate
Definition: IAgoraRtcEngine.h:640
agora::rtc::IRtcEngine::getCurrentMonotonicTimeInMs
virtual int64_t getCurrentMonotonicTimeInMs()=0
Gets the current Monotonic Time of the SDK.
agora::rtc::ScreenCaptureConfiguration::windowId
int64_t windowId
Definition: IAgoraRtcEngine.h:1013
agora::rtc::IRtcEngine::enableLocalAudio
virtual int enableLocalAudio(bool enabled)=0
Enables or disables the local audio capture.
agora::rtc::IRtcEngine::setupLocalVideo
virtual int setupLocalVideo(const VideoCanvas &canvas)=0
Initializes the local video view.
agora::rtc::AUDIO_EQUALIZATION_BAND_500
@ AUDIO_EQUALIZATION_BAND_500
Definition: IAgoraRtcEngine.h:216
agora::rtc::VideoCompositingLayout::appDataLength
int appDataLength
Definition: IAgoraRtcEngine.h:735
agora::rtc::IRtcEngine::setRouteInCommunicationMode
virtual int setRouteInCommunicationMode(int route)=0
Selects the audio playback route in communication audio mode.
agora::rtc::IRtcEngine::setLocalVoiceReverb
virtual int setLocalVoiceReverb(AUDIO_REVERB_TYPE reverbKey, int value)=0
Sets the local voice reverberation.
agora::rtc::IRtcEngine::stopEffect
virtual int stopEffect(int soundId)=0
Stops playing a specified audio effect.
agora::rtc::VideoCompositingLayout::Region::alpha
double alpha
Definition: IAgoraRtcEngine.h:695
agora::rtc::ScreenCaptureSourceInfo::position
Rectangle position
Definition: IAgoraRtcEngine.h:1137
agora::rtc::DirectCdnStreamingMediaOptions::operator=
DirectCdnStreamingMediaOptions & operator=(const DirectCdnStreamingMediaOptions &replace)
Definition: IAgoraRtcEngine.h:4520
agora::rtc::IRtcEngine::enableCustomAudioLocalPlayback
virtual int enableCustomAudioLocalPlayback(track_id_t trackId, bool enabled)=0
Sets whether to enable the local playback of external audio source.
agora::rtc::IVideoEffectObject::addOrUpdateVideoEffect
virtual int addOrUpdateVideoEffect(uint32_t nodeId, const char *templateName)=0
Adds or updates the video effect for the specified node ID and template.
agora::rtc::DirectCdnStreamingMediaOptions::publishCustomVideoTrack
Optional< bool > publishCustomVideoTrack
Definition: IAgoraRtcEngine.h:4466
agora::rtc::ScreenCaptureConfiguration::isCaptureWindow
bool isCaptureWindow
Definition: IAgoraRtcEngine.h:998
agora::rtc::LocalVideoStats::encodedFrameHeight
int encodedFrameHeight
Definition: IAgoraRtcEngine.h:367
agora::rtc::AGORA_IID_VIDEO_DEVICE_MANAGER
@ AGORA_IID_VIDEO_DEVICE_MANAGER
Definition: AgoraBase.h:925
agora::rtc::IRtcEngineEventHandler::onAudioMetadataReceived
virtual void onAudioMetadataReceived(uid_t uid, const char *metadata, size_t length)
Definition: IAgoraRtcEngine.h:3590
agora::rtc::IRtcEngine::setLocalVoiceFormant
virtual int setLocalVoiceFormant(double formantRatio)=0
Sets the formant ratio to change the timbre of human voice.
agora::rtc::AdvancedAudioOptions::audioProcessingChannels
Optional< int > audioProcessingChannels
Definition: IAgoraRtcEngine.h:1214
agora::rtc::IRtcEngine::stopScreenCapture
virtual int stopScreenCapture()=0
Stops screen capture.
agora::rtc::ImageTrackOptions::imageUrl
const char * imageUrl
Definition: IAgoraRtcEngine.h:1229
agora::rtc::VIDEO_PROFILE_PORTRAIT_1080P_3
@ VIDEO_PROFILE_PORTRAIT_1080P_3
Definition: IAgoraRtcEngine.h:12557
agora::rtc::DirectCdnStreamingMediaOptions::DirectCdnStreamingMediaOptions
DirectCdnStreamingMediaOptions()
Definition: IAgoraRtcEngine.h:4484
agora::rtc::IRtcEngine::getUserInfoByUserAccount
virtual int getUserInfoByUserAccount(const char *userAccount, rtc::UserInfo *userInfo)=0
Gets the user information by passing in the user account.
agora::rtc::IRtcEngine::setLogFile
virtual int setLogFile(const char *filePath)=0
Sets the log file.
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
Enables/Disables the virtual background.
agora::rtc::IVideoDeviceCollection::setDevice
virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::IRtcEngine::setCameraCapturerConfiguration
virtual int setCameraCapturerConfiguration(const CameraCapturerConfiguration &config)=0
Sets the camera capture configuration.
agora::rtc::FaceShapeAreaOptions::FACE_SHAPE_AREA
FACE_SHAPE_AREA
Chooses the specific facial areas that need to be adjusted.
Definition: AgoraBase.h:5484
agora::rtc::ChannelMediaOptions::channelType
Optional< CHANNEL_TYPE > channelType
Definition: IAgoraRtcEngine.h:1539
agora::rtc::VideoCompositingLayout::Region::renderMode
media::base::RENDER_MODE_TYPE renderMode
Definition: IAgoraRtcEngine.h:697
agora::rtc::IRtcEngine::setCameraZoomFactor
virtual int setCameraZoomFactor(float factor)=0
Sets the camera zoom factor.
agora::rtc::IMetadataObserver::INVALID_METADATA_SIZE_IN_BYTE
@ INVALID_METADATA_SIZE_IN_BYTE
Definition: IAgoraRtcEngine.h:4205
agora::rtc::RemoteVideoStats::__deprecated
int delay __deprecated
Definition: IAgoraRtcEngine.h:588
agora::rtc::CameraCapturerConfiguration::cameraFocalLengthType
Optional< CAMERA_FOCAL_LENGTH_TYPE > cameraFocalLengthType
Definition: IAgoraRtcEngine.h:947
agora::rtc::CameraCapturerConfiguration::deviceId
Optional< const char * > deviceId
Definition: IAgoraRtcEngine.h:953
agora::rtc::RemoteAudioStats::quality
int quality
Definition: IAgoraRtcEngine.h:443
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P_3
@ VIDEO_PROFILE_LANDSCAPE_1080P_3
Definition: IAgoraRtcEngine.h:12487
agora::rtc::RdtState
RdtState
Reliable Data Transmission tunnel state.
Definition: AgoraBase.h:8032
agora::rtc::AdvancedAudioOptions::AdvancedAudioOptions
AdvancedAudioOptions()
Definition: IAgoraRtcEngine.h:1216
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P_3
@ VIDEO_PROFILE_LANDSCAPE_720P_3
Definition: IAgoraRtcEngine.h:12479
agora::rtc::PublisherConfiguration::width
int width
Definition: IAgoraRtcEngine.h:817
agora::rtc::VideoCompositingLayout::Region::width
double width
Definition: IAgoraRtcEngine.h:684
agora::rtc::IRtcEngine::startEchoTest
virtual int startEchoTest(const EchoTestConfiguration &config)=0
Starts an audio device loopback test.
agora::rtc::IRtcEngine::startOrUpdateChannelMediaRelay
virtual int startOrUpdateChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration)=0
Starts relaying media streams across channels or updates channels for media relay.
agora::rtc::IRtcEngine::setDefaultAudioRouteToSpeakerphone
virtual int setDefaultAudioRouteToSpeakerphone(bool defaultToSpeaker)=0
Sets the default audio playback route.
agora::rtc::IRtcEngineEventHandler::onConnectionBanned
virtual void onConnectionBanned() __deprecated
Occurs when the connection is banned by the Agora server.
Definition: IAgoraRtcEngine.h:2777
agora::rtc::ScreenCaptureSourceInfo
The information about the specified shareable window or screen. The information is returned in IScree...
Definition: IAgoraRtcEngine.h:1097
agora::rtc::IRtcEngine::getEffectsVolume
virtual int getEffectsVolume()=0
Retrieves the volume of the audio effects.
agora::rtc::IRtcEngineEventHandler::onEncryptionError
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Reports the built-in encryption errors.
Definition: IAgoraRtcEngine.h:3361
agora::rtc::IRtcEngineEventHandler::onCameraReady
virtual void onCameraReady() __deprecated
Occurs when the camera turns on and is ready to capture the video.
Definition: IAgoraRtcEngine.h:2600
agora::rtc::REMOTE_AUDIO_STATE_REASON
REMOTE_AUDIO_STATE_REASON
The reason for the remote audio state change.
Definition: AgoraBase.h:3743
agora::rtc::LOCAL_VIDEO_STREAM_REASON
LOCAL_VIDEO_STREAM_REASON
Reasons for local video state changes.
Definition: AgoraBase.h:3547
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P_6
@ VIDEO_PROFILE_LANDSCAPE_720P_6
Definition: IAgoraRtcEngine.h:12483
agora::rtc::IRtcEngine::getEffectDuration
virtual int getEffectDuration(const char *filePath)=0
Retrieves the duration of the audio effect file.
agora::rtc::RTMP_STREAM_PUBLISH_STATE
RTMP_STREAM_PUBLISH_STATE
States of the Media Push.
Definition: AgoraBase.h:4222
agora::rtc::STREAM_SUBSCRIBE_STATE
STREAM_SUBSCRIBE_STATE
The subscribing state.
Definition: AgoraBase.h:7490
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_7
@ VIDEO_PROFILE_PORTRAIT_360P_7
Definition: IAgoraRtcEngine.h:12523
agora::rtc::IRtcEngine::setPlaybackAudioFrameParameters
virtual int setPlaybackAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
Sets the format of the raw audio playback data.
agora::rtc::IRtcEngine::setLogFileSize
virtual int setLogFileSize(unsigned int fileSizeInKBytes)=0
Sets the log file size.
agora::rtc::IRtcEngineEventHandler::onRenewTokenResult
virtual void onRenewTokenResult(const char *token, RENEW_TOKEN_ERROR_CODE code)
Callback for renewToken call result.
Definition: IAgoraRtcEngine.h:3694
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P
@ VIDEO_PROFILE_PORTRAIT_720P
Definition: IAgoraRtcEngine.h:12547
agora::rtc::LeaveChannelOptions::stopAllEffect
bool stopAllEffect
Definition: IAgoraRtcEngine.h:1779
agora::rtc::REMOTE_USER_STATE
REMOTE_USER_STATE
Definition: AgoraBase.h:3885
agora::rtc::ChannelMediaOptions::defaultVideoStreamType
Optional< VIDEO_STREAM_TYPE > defaultVideoStreamType
Definition: IAgoraRtcEngine.h:1427
agora::rtc::IRtcEngine::preloadChannelWithUserAccount
virtual int preloadChannelWithUserAccount(const char *token, const char *channelId, const char *userAccount)=0
Preloads a channel with token, channelId, and userAccount.
agora::rtc::RemoteVideoStats::rxVideoBytes
unsigned int rxVideoBytes
Definition: IAgoraRtcEngine.h:667
agora::rtc::VIDEO_PROFILE_LANDSCAPE_120P_3
@ VIDEO_PROFILE_LANDSCAPE_120P_3
Definition: IAgoraRtcEngine.h:12431
createAgoraRtcEngine
AGORA_API agora::rtc::IRtcEngine *AGORA_CALL createAgoraRtcEngine()
Creates one IRtcEngine object.
agora::rtc::VIDEO_PROFILE_DEFAULT
@ VIDEO_PROFILE_DEFAULT
Definition: IAgoraRtcEngine.h:12569
agora::rtc::IRtcEngine::setBeautyEffectOptions
virtual int setBeautyEffectOptions(bool enabled, const BeautyOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Sets the image enhancement options.
agora::rtc::VIDEO_SOURCE_TYPE
VIDEO_SOURCE_TYPE
The type of the video source.
Definition: AgoraMediaBase.h:67
agora::rtc::RtcEngineContext::autoRegisterAgoraExtensions
bool autoRegisterAgoraExtensions
Definition: IAgoraRtcEngine.h:4165
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_9
@ VIDEO_PROFILE_PORTRAIT_360P_9
Definition: IAgoraRtcEngine.h:12527
agora::rtc::LocalVideoStats
The statistics of the local video stream.
Definition: IAgoraRtcEngine.h:311
agora::rtc::IMetadataObserver::onMetadataReceived
virtual void onMetadataReceived(const Metadata &metadata)=0
Occurs when the local user receives the metadata.
agora::rtc::IRtcEngine::setAudioMixingPlaybackSpeed
virtual int setAudioMixingPlaybackSpeed(int speed)=0
Sets the playback speed of the current audio file.
agora::rtc::IRtcEngine::createVideoEffectObject
virtual agora_refptr< IVideoEffectObject > createVideoEffectObject(const char *bundlePath, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Creates a video effect object.
agora::rtc::IRtcEngine::resumeAllChannelMediaRelay
virtual int resumeAllChannelMediaRelay()=0
Resumes the media stream relay to all target channels.
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::QUALITY_REPORT_FORMAT_TYPE
QUALITY_REPORT_FORMAT_TYPE
Definition: IAgoraRtcEngine.h:12386
agora::rtc::ChannelMediaOptions::publishMediaPlayerId
Optional< int > publishMediaPlayerId
Definition: IAgoraRtcEngine.h:1411
agora::rtc::IDirectCdnStreamingEventHandler
Definition: IAgoraRtcEngine.h:4398
agora::rtc::IRtcEngineEventHandler::onLocalAudioStateChanged
virtual void onLocalAudioStateChanged(LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_REASON reason)
Occurs when the local audio stream state changes.
Definition: IAgoraRtcEngine.h:3010
agora::media::base::RENDER_MODE_TYPE
RENDER_MODE_TYPE
Video display modes.
Definition: AgoraMediaBase.h:587
agora::rtc::IRtcEngine::setRemoteRenderTargetFps
virtual int setRemoteRenderTargetFps(int targetFps)=0
Sets the maximum frame rate for rendering remote video.
agora::rtc::IRtcEngineEventHandler::onAudioSubscribeStateChanged
virtual void onAudioSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Occurs when the audio subscribing state changes.
Definition: IAgoraRtcEngine.h:3495
agora::rtc::DIRECT_CDN_STREAMING_STATE_RUNNING
@ DIRECT_CDN_STREAMING_STATE_RUNNING
Definition: IAgoraRtcEngine.h:4338
agora::rtc::IRtcEngineEventHandler::onVideoStopped
virtual void onVideoStopped() __deprecated
Occurs when the video stops playing.
Definition: IAgoraRtcEngine.h:2700
agora::rtc::ImageTrackOptions::ImageTrackOptions
ImageTrackOptions()
Definition: IAgoraRtcEngine.h:1236
agora::rtc::EncryptionConfig
Built-in encryption configurations.
Definition: AgoraBase.h:7328
agora::rtc::IRtcEngine::destroyMediaPlayer
virtual int destroyMediaPlayer(agora_refptr< IMediaPlayer > media_player)=0
Destroys the media player instance.
agora::rtc::INJECT_STREAM_STATUS_BROKEN
@ INJECT_STREAM_STATUS_BROKEN
Definition: IAgoraRtcEngine.h:190
agora::rtc::UDP_PROXY
@ UDP_PROXY
Definition: IAgoraRtcEngine.h:910
agora::rtc::AUDIO_MIXING_REASON_INTERRUPTED_EOF
@ AUDIO_MIXING_REASON_INTERRUPTED_EOF
Definition: IAgoraRtcEngine.h:122
agora::rtc::LocalVideoStats::simulcastDimensions
VideoDimensions simulcastDimensions[SimulcastConfig::STREAM_LAYER_COUNT_MAX]
Definition: IAgoraRtcEngine.h:421
agora::rtc::DIRECT_CDN_STREAMING_STATE
DIRECT_CDN_STREAMING_STATE
The current CDN streaming state.
Definition: IAgoraRtcEngine.h:4327
agora::rtc::IRtcEngine::setAudioMixingPosition
virtual int setAudioMixingPosition(int pos)=0
Sets the audio mixing position.
agora::rtc::ChannelMediaOptions::publishTranscodedVideoTrack
Optional< bool > publishTranscodedVideoTrack
Definition: IAgoraRtcEngine.h:1375
agora::rtc::PRIORITY_NORMAL
@ PRIORITY_NORMAL
Definition: IAgoraRtcEngine.h:302
agora::rtc::VIDEO_PROFILE_PORTRAIT_720P_5
@ VIDEO_PROFILE_PORTRAIT_720P_5
Definition: IAgoraRtcEngine.h:12551
agora::rtc::ChannelMediaOptions::enableAudioRecordingOrPlayout
Optional< bool > enableAudioRecordingOrPlayout
Definition: IAgoraRtcEngine.h:1407
agora::rtc::IRtcEngineEventHandler::onVideoPublishStateChanged
virtual void onVideoPublishStateChanged(VIDEO_SOURCE_TYPE source, const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Occurs when the video publishing state changes.
Definition: IAgoraRtcEngine.h:3547
agora::rtc::RemoteVideoStats::receivedBitrate
int receivedBitrate
Definition: IAgoraRtcEngine.h:605
agora::rtc::VIDEO_TRANSCODER_ERROR
VIDEO_TRANSCODER_ERROR
The error code of the local video mixing failure.
Definition: AgoraBase.h:4844
agora::rtc::MEDIA_DEVICE_STATE_PLUGGED_IN
@ MEDIA_DEVICE_STATE_PLUGGED_IN
Definition: IAgoraRtcEngine.h:12415
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:2842
agora::rtc::RemoteAudioStats
Audio statistics of the remote user.
Definition: IAgoraRtcEngine.h:435
agora::rtc::IRtcEngine::updateScreenCaptureRegion
virtual int updateScreenCaptureRegion(const Rectangle &regionRect)=0
Updates the screen capturing region.
agora::rtc::IMetadataObserver::MAX_METADATA_SIZE_TYPE
MAX_METADATA_SIZE_TYPE
Definition: IAgoraRtcEngine.h:4204
agora::rtc::IRtcEngine::enableVideoImageSource
virtual int enableVideoImageSource(bool enable, const ImageTrackOptions &options)=0
Sets whether to replace the current video feeds with images when publishing video streams.
agora::rtc::QUALITY_REPORT_HTML
@ QUALITY_REPORT_HTML
Definition: IAgoraRtcEngine.h:12392
agora::rtc::LocalVideoStats::encoderOutputFrameRate
int encoderOutputFrameRate
Definition: IAgoraRtcEngine.h:359
agora::rtc::IRtcEngine::unregisterAudioSpectrumObserver
virtual int unregisterAudioSpectrumObserver(agora::media::IAudioSpectrumObserver *observer)=0
Unregisters the audio spectrum observer.
agora::rtc::IVideoEffectObject::performVideoEffectAction
virtual int performVideoEffectAction(uint32_t nodeId, VIDEO_EFFECT_ACTION actionId)=0
Performs an action on the specified video effect node.
agora::rtc::PublisherConfiguration::PublisherConfiguration
PublisherConfiguration()
Definition: IAgoraRtcEngine.h:865
agora::rtc::IRtcEngine::setupRemoteVideo
virtual int setupRemoteVideo(const VideoCanvas &canvas)=0
Initializes the video view of a remote user.
agora::rtc::IRtcEngineEventHandler::onLastmileProbeResult
virtual void onLastmileProbeResult(const LastmileProbeResult &result)
Reports the last mile network probe result.
Definition: IAgoraRtcEngine.h:1931
agora::rtc::IVideoDeviceManager::startDeviceTest
virtual int startDeviceTest(view_t hwnd)=0
agora::LICENSE_ERROR_TYPE
LICENSE_ERROR_TYPE
Definition: AgoraBase.h:806
agora::rtc::AUDIO_MIXING_REASON_TYPE
AUDIO_MIXING_REASON_TYPE
The reason why the playback state of the music file changes. Reported in the onAudioMixingStateChange...
Definition: IAgoraRtcEngine.h:108
agora::rtc::IRtcEngine::addVideoWatermark
virtual int addVideoWatermark(const RtcImage &watermark) __deprecated=0
Adds a watermark image to the local video.
agora::rtc::CAMERA_STABILIZATION_MODE
CAMERA_STABILIZATION_MODE
Camera stabilization modes.
Definition: AgoraBase.h:3386
agora::rtc::IVideoEffectObject::getVideoEffectBoolParam
virtual bool getVideoEffectBoolParam(const char *option, const char *key)=0
Gets the boolean parameter in video effects.
agora::rtc::RTMP_STREAM_LIFE_CYCLE_BIND2OWNER
@ RTMP_STREAM_LIFE_CYCLE_BIND2OWNER
Definition: IAgoraRtcEngine.h:808
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_10
@ VIDEO_PROFILE_PORTRAIT_480P_10
Definition: IAgoraRtcEngine.h:12545
agora::rtc::IRtcEngineEventHandler::onConnectionLost
virtual void onConnectionLost()
Occurs when the SDK cannot reconnect to Agora's edge server 10 seconds after its connection to the se...
Definition: IAgoraRtcEngine.h:2750
agora::rtc::IRtcEngineEventHandler::onUserMuteVideo
virtual void onUserMuteVideo(uid_t uid, bool muted)
Occurs when a remote user stops or resumes publishing the video stream.
Definition: IAgoraRtcEngine.h:2475
agora::rtc::PublisherConfiguration::owner
bool owner
Definition: IAgoraRtcEngine.h:843
agora::rtc::IRtcEngine::setCameraExposurePosition
virtual int setCameraExposurePosition(float positionXinView, float positionYinView)=0
Sets the camera exposure position.
agora::rtc::IRtcEngine::setInEarMonitoringVolume
virtual int setInEarMonitoringVolume(int volume)=0
Sets the volume of the in-ear monitor.
agora::rtc::ScreenCaptureSourceInfo::primaryMonitor
bool primaryMonitor
Definition: IAgoraRtcEngine.h:1131
agora::rtc::IRtcEngine::enableSoundPositionIndication
virtual int enableSoundPositionIndication(bool enabled)=0
Enables or disables stereo panning for remote users.
agora::rtc::VideoCompositingLayout::regions
const Region * regions
Definition: IAgoraRtcEngine.h:726
agora::rtc::IRtcEngine::stopCameraCapture
virtual int stopCameraCapture(VIDEO_SOURCE_TYPE sourceType)=0
Stops camera capture.
agora::rtc::ChannelMediaOptions::publishMediaPlayerVideoTrack
Optional< bool > publishMediaPlayerVideoTrack
Definition: IAgoraRtcEngine.h:1367
agora::rtc::INJECT_STREAM_STATUS_STOP_SUCCESS
@ INJECT_STREAM_STATUS_STOP_SUCCESS
Definition: IAgoraRtcEngine.h:170
agora::rtc::VIDEO_PROFILE_PORTRAIT_1080P_5
@ VIDEO_PROFILE_PORTRAIT_1080P_5
Definition: IAgoraRtcEngine.h:12559
agora::rtc::IRtcEngine::stopPreview
virtual int stopPreview()=0
Stops the local video preview.
agora::rtc::MEDIA_DEVICE_STATE_NOT_PRESENT
@ MEDIA_DEVICE_STATE_NOT_PRESENT
Definition: IAgoraRtcEngine.h:12420
agora::rtc::RemoteVideoStats::mosValue
int mosValue
Definition: IAgoraRtcEngine.h:663
agora::rtc::IVideoEffectObject::setVideoEffectIntParam
virtual int setVideoEffectIntParam(const char *option, const char *key, int param)=0
Sets an integer parameter for video effects.
agora::rtc::MEDIA_DEVICE_STATE_ACTIVE
@ MEDIA_DEVICE_STATE_ACTIVE
Definition: IAgoraRtcEngine.h:12406
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_8
@ VIDEO_PROFILE_PORTRAIT_480P_8
Definition: IAgoraRtcEngine.h:12541
agora::rtc::WatermarkConfig
Used to configure watermark-related information.
Definition: AgoraBase.h:2598
agora::rtc::IRtcEngine::destroyCustomEncodedVideoTrack
virtual int destroyCustomEncodedVideoTrack(video_track_id_t video_track_id)=0
agora::rtc::DirectCdnStreamingMediaOptions::customVideoTrackId
Optional< video_track_id_t > customVideoTrackId
Definition: IAgoraRtcEngine.h:4482
agora::rtc::IRtcEngineEventHandler::onVideoSizeChanged
virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation)
Occurs when the video size or rotation of a specified user changes.
Definition: IAgoraRtcEngine.h:2258
agora::rtc::IRtcEngine::muteRecordingSignal
virtual int muteRecordingSignal(bool mute)=0
Whether to mute the recording signal.
agora::rtc::IRtcEngineEventHandler::onLocalUserRegistered
virtual void onLocalUserRegistered(uid_t uid, const char *userAccount)
Occurs when the local user registers a user account.
Definition: IAgoraRtcEngine.h:3401
agora::rtc::LocalVideoStats::encodedFrameWidth
int encodedFrameWidth
Definition: IAgoraRtcEngine.h:363
agora::rtc::VIDEO_PROFILE_LANDSCAPE_180P_3
@ VIDEO_PROFILE_LANDSCAPE_180P_3
Definition: IAgoraRtcEngine.h:12435
agora::rtc::AUDIO_APPLICATION_PLAYOUT_DEVICE
@ AUDIO_APPLICATION_PLAYOUT_DEVICE
Definition: IAgoraRtcEngine.h:64
agora::rtc::USER_OFFLINE_REASON_TYPE
USER_OFFLINE_REASON_TYPE
Reasons for a user being offline.
Definition: AgoraBase.h:896
agora::rtc::INJECT_STREAM_STATUS_START_ALREADY_EXISTS
@ INJECT_STREAM_STATUS_START_ALREADY_EXISTS
Definition: IAgoraRtcEngine.h:154
agora::rtc::IRtcEngine::queryCameraFocalLengthCapability
virtual int queryCameraFocalLengthCapability(agora::rtc::FocalLengthInfo *focalLengthInfos, int &size)=0
Queries the focal length capability supported by the camera.
agora::rtc::AdvancedAudioOptions::~AdvancedAudioOptions
~AdvancedAudioOptions()
Definition: IAgoraRtcEngine.h:1217
agora::rtc::IRtcEngine::setVoiceBeautifierParameters
virtual int setVoiceBeautifierParameters(VOICE_BEAUTIFIER_PRESET preset, int param1, int param2)=0
Sets parameters for the preset voice beautifier effects.
agora::rtc::IRtcEngine::muteRemoteAudioStream
virtual int muteRemoteAudioStream(uid_t uid, bool mute)=0
Stops or resumes subscribing to the audio stream of a specified user.
agora::rtc::AUDIO_REVERB_DRY_LEVEL
@ AUDIO_REVERB_DRY_LEVEL
Definition: IAgoraRtcEngine.h:246
agora::rtc::IRtcEngine::setVideoDenoiserOptions
virtual int setVideoDenoiserOptions(bool enabled, const VideoDenoiserOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Sets video noise reduction.
agora::rtc::IRtcEngineEventHandler::onSnapshotTaken
virtual void onSnapshotTaken(uid_t uid, const char *filePath, int width, int height, int errCode)
Reports the result of taking a video snapshot.
Definition: IAgoraRtcEngine.h:3092
agora::rtc::ThumbImageBuffer::ThumbImageBuffer
ThumbImageBuffer()
Definition: IAgoraRtcEngine.h:1070
agora::rtc::INJECT_STREAM_STATUS_STOP_NOT_FOUND
@ INJECT_STREAM_STATUS_STOP_NOT_FOUND
Definition: IAgoraRtcEngine.h:174
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_4
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_4
Definition: IAgoraRtcEngine.h:291
agora::rtc::IRtcEngine::destroyCustomVideoTrack
virtual int destroyCustomVideoTrack(video_track_id_t video_track_id)=0
Destroys the specified video track.
agora::rtc::MEDIA_DEVICE_STATE_UNPLUGGED
@ MEDIA_DEVICE_STATE_UNPLUGGED
Definition: IAgoraRtcEngine.h:12424
agora::rtc::IRtcEngine::setVoiceConversionParameters
virtual int setVoiceConversionParameters(VOICE_CONVERSION_PRESET preset, int param1, int param2)=0
agora::rtc::SimulcastConfig::STREAM_LAYER_COUNT_MAX
@ STREAM_LAYER_COUNT_MAX
Definition: AgoraBase.h:2306
agora::rtc::ChannelMediaOptions::publishLipSyncTrack
Optional< bool > publishLipSyncTrack
Definition: IAgoraRtcEngine.h:1387
agora::rtc::IRtcEngineEventHandler::onFirstRemoteVideoFrame
virtual void onFirstRemoteVideoFrame(uid_t uid, int width, int height, int elapsed)
Occurs when the renderer receives the first frame of the remote video.
Definition: IAgoraRtcEngine.h:2376
agora::rtc::IScreenCaptureSourceList::release
virtual void release()=0
Releases IScreenCaptureSourceList.
agora::rtc::IRtcEngine::adjustAudioMixingVolume
virtual int adjustAudioMixingVolume(int volume)=0
Adjusts the volume during audio mixing.
agora::rtc::VIDEO_PROFILE_PORTRAIT_240P
@ VIDEO_PROFILE_PORTRAIT_240P
Definition: IAgoraRtcEngine.h:12509
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_9
@ VIDEO_PROFILE_LANDSCAPE_360P_9
Definition: IAgoraRtcEngine.h:12457
agora::rtc::WatermarkOptions
Watermark image configurations.
Definition: AgoraBase.h:2420
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1440P_2
@ VIDEO_PROFILE_LANDSCAPE_1440P_2
Definition: IAgoraRtcEngine.h:12493
agora::rtc::PERMISSION_TYPE
PERMISSION_TYPE
The type of the device permission.
Definition: AgoraBase.h:7471
agora::rtc::VIDEO_PROFILE_PORTRAIT_480P_9
@ VIDEO_PROFILE_PORTRAIT_480P_9
Definition: IAgoraRtcEngine.h:12543
agora::rtc::IRtcEngine::setLocalRenderTargetFps
virtual int setLocalRenderTargetFps(VIDEO_SOURCE_TYPE sourceType, int targetFps)=0
Sets the maximum frame rate for rendering local video.
agora::rtc::DIRECT_CDN_STREAMING_STATE_FAILED
@ DIRECT_CDN_STREAMING_STATE_FAILED
Definition: IAgoraRtcEngine.h:4350
agora::rtc::ChannelMediaOptions::publishThirdScreenTrack
Optional< bool > publishThirdScreenTrack
Definition: IAgoraRtcEngine.h:1323
agora::rtc::IRtcEngineEventHandler::onAudioDeviceVolumeChanged
virtual void onAudioDeviceVolumeChanged(MEDIA_DEVICE_TYPE deviceType, int volume, bool muted)
Reports the volume change of the audio device or app.
Definition: IAgoraRtcEngine.h:3164
agora::rtc::IRtcEngine::leaveChannel
virtual int leaveChannel()=0
Leaves a channel.
agora::rtc::IRtcEngine::setAudioScenario
virtual int setAudioScenario(AUDIO_SCENARIO_TYPE scenario)=0
Sets audio scenarios.
agora::rtc::IRtcEngine::setClientRole
virtual int setClientRole(CLIENT_ROLE_TYPE role)=0
Sets the client role.
agora::rtc::IRtcEngine::preloadChannel
virtual int preloadChannel(const char *token, const char *channelId, uid_t uid)=0
Preloads a channel with token, channelId, and uid.
agora::rtc::IRtcEngineEventHandler::onClientRoleChanged
virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole, const ClientRoleOptions &newRoleOptions)
Occurs when the user role or the audience latency level changes.
Definition: IAgoraRtcEngine.h:3123
agora::rtc::IRtcEngine::startScreenCaptureByDisplayId
virtual int startScreenCaptureByDisplayId(int64_t displayId, const Rectangle &regionRect, const ScreenCaptureParameters &captureParams)=0
Captures the screen by specifying the display ID.
agora::rtc::RemoteVideoStats::width
int width
Definition: IAgoraRtcEngine.h:597
agora::rtc::HTTPS_PROXY_TYPE
@ HTTPS_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1747
agora::rtc::RtcEngineContext::audioScenario
AUDIO_SCENARIO_TYPE audioScenario
Definition: IAgoraRtcEngine.h:4106
agora::rtc::RemoteVideoStats::rendererOutputFrameRate
int rendererOutputFrameRate
Definition: IAgoraRtcEngine.h:616
agora::rtc::CameraCapturerConfiguration::CameraCapturerConfiguration
CameraCapturerConfiguration()
Definition: IAgoraRtcEngine.h:987
agora::rtc::IRtcEngine::setVoiceBeautifierPreset
virtual int setVoiceBeautifierPreset(VOICE_BEAUTIFIER_PRESET preset)=0
Sets a preset voice beautifier effect.
agora::rtc::RemoteVideoStats::decoderInputFrameRate
int decoderInputFrameRate
Definition: IAgoraRtcEngine.h:608
agora::rtc::IRtcEngine::rate
virtual int rate(const char *callId, int rating, const char *description)=0
Allows a user to rate a call after the call ends.
agora::rtc::LOCAL_AUDIO_STREAM_REASON
LOCAL_AUDIO_STREAM_REASON
Reasons for local audio state changes.
Definition: AgoraBase.h:3439
agora::rtc::LocalVideoStats::targetBitrate
int targetBitrate
Definition: IAgoraRtcEngine.h:376
agora::rtc::ChannelMediaOptions::publishSecondaryScreenTrack
Optional< bool > publishSecondaryScreenTrack
Definition: IAgoraRtcEngine.h:1316
agora::RefCountInterface
Definition: AgoraRefPtr.h:31
agora::rtc::IRtcEngine::loadExtensionProvider
virtual int loadExtensionProvider(const char *path, bool unload_after_use=false)=0
Loads an extension.
agora::rtc::CAMERA_REAR
@ CAMERA_REAR
Definition: IAgoraRtcEngine.h:888
agora::rtc::RemoteAudioStats::qualityChangedReason
int qualityChangedReason
Definition: IAgoraRtcEngine.h:538
agora::rtc::IRtcEngine::isCameraFaceDetectSupported
virtual bool isCameraFaceDetectSupported()=0
Checks whether the device camera supports face detection.
agora::rtc::IRtcEngine::getCallId
virtual int getCallId(agora::util::AString &callId)=0
Retrieves the call ID.
agora::rtc::VIDEO_CAPTURE_DEVICE
@ VIDEO_CAPTURE_DEVICE
Definition: IAgoraRtcEngine.h:60
agora::rtc::IRtcEngine::isCameraAutoFocusFaceModeSupported
virtual bool isCameraAutoFocusFaceModeSupported()=0
Checks whether the device supports the face auto-focus function.
agora::rtc::PROXY_TYPE
PROXY_TYPE
The cloud proxy type.
Definition: IAgoraRtcEngine.h:1718
agora::rtc::IMetadataObserver::MAX_METADATA_SIZE_IN_BYTE
@ MAX_METADATA_SIZE_IN_BYTE
Definition: IAgoraRtcEngine.h:4207
agora::rtc::InjectStreamConfig
Definition: IAgoraRtcEngine.h:749
agora::rtc::IRtcEngine::uploadLogFile
virtual int uploadLogFile(agora::util::AString &requestId)=0
agora::rtc::IRtcEngine::startMediaRenderingTracing
virtual int startMediaRenderingTracing()=0
Enables tracing the video frame rendering process.
agora::rtc::IRtcEngineEventHandler::~IRtcEngineEventHandler
virtual ~IRtcEngineEventHandler()
Definition: IAgoraRtcEngine.h:1802
agora::rtc::CameraCapturerConfiguration::format
VideoFormat format
Definition: IAgoraRtcEngine.h:986
agora::rtc::LocalVideoStats::encodedFrameCount
int encodedFrameCount
Definition: IAgoraRtcEngine.h:394
agora::rtc::PublisherConfiguration::bitrate
int bitrate
Definition: IAgoraRtcEngine.h:829
agora::rtc::ChannelMediaOptions::downlinkMultipathMode
Optional< MultipathMode > downlinkMultipathMode
Definition: IAgoraRtcEngine.h:1525
agora::rtc::LocalVideoStats::regulatedCaptureFrameRate
int regulatedCaptureFrameRate
Definition: IAgoraRtcEngine.h:343
agora::rtc::VIDEO_PROFILE_LANDSCAPE_120P
@ VIDEO_PROFILE_LANDSCAPE_120P
Definition: IAgoraRtcEngine.h:12429
agora::rtc::IRtcEngine::createCustomEncodedVideoTrack
virtual video_track_id_t createCustomEncodedVideoTrack(const SenderOptions &sender_option)=0
agora::rtc::AUDIO_MIXING_REASON_TOO_FREQUENT_CALL
@ AUDIO_MIXING_REASON_TOO_FREQUENT_CALL
Definition: IAgoraRtcEngine.h:118
agora::rtc::VIDEO_STREAM_TYPE
VIDEO_STREAM_TYPE
The type of video streams.
Definition: AgoraBase.h:1672
agora::rtc::DIRECT_CDN_STREAMING_STATE_IDLE
@ DIRECT_CDN_STREAMING_STATE_IDLE
Definition: IAgoraRtcEngine.h:4332
agora::rtc::CameraCapturerConfiguration::followEncodeDimensionRatio
Optional< bool > followEncodeDimensionRatio
Definition: IAgoraRtcEngine.h:982
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P_5
@ VIDEO_PROFILE_LANDSCAPE_1080P_5
Definition: IAgoraRtcEngine.h:12489
agora::rtc::IRtcEngine::unloadAllEffects
virtual int unloadAllEffects()=0
Releases a specified preloaded audio effect from the memory.
agora::rtc::RtcEngineContext::RtcEngineContext
RtcEngineContext()
Definition: IAgoraRtcEngine.h:4174
agora::rtc::ChannelMediaOptions
The channel media options.
Definition: IAgoraRtcEngine.h:1253
agora::rtc::IRtcEngine
Definition: IAgoraRtcEngine.h:4597
agora::rtc::AUDIO_MIXING_REASON_CAN_NOT_OPEN
@ AUDIO_MIXING_REASON_CAN_NOT_OPEN
Definition: IAgoraRtcEngine.h:113
agora::rtc::INJECT_STREAM_STATUS
INJECT_STREAM_STATUS
Definition: IAgoraRtcEngine.h:146
agora::rtc::IRtcEngine::enableLoopbackRecording
virtual int enableLoopbackRecording(bool enabled, const char *deviceName=NULL)=0
Enables loopback audio capturing.
agora::rtc::IRtcEngine::sendAudioMetadata
virtual int sendAudioMetadata(const char *metadata, size_t length)=0
send audio metadata
agora::rtc::IRtcEngine::createMediaRecorder
virtual agora_refptr< IMediaRecorder > createMediaRecorder(const RecorderStreamInfo &info)=0
Creates an audio and video recording object.
agora::rtc::VIDEO_VIRTUAL_BACKGROUND
@ VIDEO_VIRTUAL_BACKGROUND
Definition: IAgoraRtcEngine.h:1757
agora::rtc::AUDIO_EQUALIZATION_BAND_FREQUENCY
AUDIO_EQUALIZATION_BAND_FREQUENCY
The midrange frequency for audio equalization.
Definition: IAgoraRtcEngine.h:196
agora::rtc::IRtcEngine::setAudioMixingDualMonoMode
virtual int setAudioMixingDualMonoMode(media::AUDIO_MIXING_DUAL_MONO_MODE mode)=0
Sets the channel mode of the current audio file.
agora::rtc::ChannelMediaOptions::autoSubscribeVideo
Optional< bool > autoSubscribeVideo
Definition: IAgoraRtcEngine.h:1399
agora::rtc::VOICE_BEAUTIFIER_PRESET
VOICE_BEAUTIFIER_PRESET
The options for SDK preset voice beautifier effects.
Definition: AgoraBase.h:6124
agora::rtc::DIRECT_CDN_STREAMING_REASON_NET_CONNECT
@ DIRECT_CDN_STREAMING_REASON_NET_CONNECT
Definition: IAgoraRtcEngine.h:4314
agora::rtc::DirectCdnStreamingMediaOptions::~DirectCdnStreamingMediaOptions
~DirectCdnStreamingMediaOptions()
Definition: IAgoraRtcEngine.h:4485
agora::rtc::VIDEO_MIRROR_MODE_DISABLED
@ VIDEO_MIRROR_MODE_DISABLED
Definition: AgoraBase.h:1939
agora::rtc::UPLOAD_ERROR_REASON
UPLOAD_ERROR_REASON
Definition: AgoraBase.h:7416
agora::rtc::IRtcEngine::getEffectCurrentPosition
virtual int getEffectCurrentPosition(int soundId)=0
Retrieves the playback position of the audio effect file.
agora::rtc::ChannelMediaOptions::publishMicrophoneTrack
Optional< bool > publishMicrophoneTrack
Definition: IAgoraRtcEngine.h:1285
agora::rtc::IRtcEngine::updatePreloadChannelToken
virtual int updatePreloadChannelToken(const char *token)=0
Updates the wildcard token for preloading channels.
agora::rtc::IRtcEngine::resumeAudio
virtual int resumeAudio() __deprecated=0
agora::rtc::IRtcEngine::muteLocalAudioStream
virtual int muteLocalAudioStream(bool mute)=0
Stops or resumes publishing the local audio stream.
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_3
@ VIDEO_PROFILE_LANDSCAPE_480P_3
Definition: IAgoraRtcEngine.h:12465
agora::rtc::IRtcEngine::joinChannelWithUserAccount
virtual int joinChannelWithUserAccount(const char *token, const char *channelId, const char *userAccount)=0
Joins a channel with a User Account and Token.
agora::rtc::IRtcEngine::setChannelProfile
virtual int setChannelProfile(CHANNEL_PROFILE_TYPE profile)=0
Sets the channel profile.
agora::rtc::SIZE::SIZE
SIZE()
Definition: IAgoraRtcEngine.h:1040
agora::rtc::RENEW_TOKEN_ERROR_CODE
RENEW_TOKEN_ERROR_CODE
Represents the error codes after calling renewToken.
Definition: AgoraBase.h:7427
agora::rtc::HTTP_PROXY_TYPE
@ HTTP_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1744
agora::rtc::RemoteVideoStats::frameLossRate
int frameLossRate
Definition: IAgoraRtcEngine.h:620
agora::rtc::VideoDimensions
The video dimension.
Definition: AgoraBase.h:1178
agora::rtc::IRtcEngine::updateDirectCdnStreamingMediaOptions
virtual int updateDirectCdnStreamingMediaOptions(const DirectCdnStreamingMediaOptions &options)=0
agora::rtc::IRtcEngine::setLocalVoicePitch
virtual int setLocalVoicePitch(double pitch)=0
Changes the voice pitch of the local speaker.
agora::rtc::IRtcEngineEventHandler::onTranscodedStreamLayoutInfo
virtual void onTranscodedStreamLayoutInfo(uid_t uid, int width, int height, int layoutCount, const VideoLayout *layoutlist)
Occurs when the local user receives a mixed video stream carrying layout information.
Definition: IAgoraRtcEngine.h:3574
agora::rtc::MEDIA_TRACE_EVENT
MEDIA_TRACE_EVENT
The rendering state of the media frame.
Definition: AgoraBase.h:7745
agora::rtc::RemoteVideoStats::height
int height
Definition: IAgoraRtcEngine.h:601
agora::rtc::LocalVideoStats::captureFrameWidth
int captureFrameWidth
Definition: IAgoraRtcEngine.h:333
agora::rtc::IRtcEngine::setScreenCaptureContentHint
virtual int setScreenCaptureContentHint(VIDEO_CONTENT_HINT contentHint)=0
Sets the content hint for screen sharing.
agora::rtc::VIDEO_MODULE_TYPE
VIDEO_MODULE_TYPE
Definition: AgoraBase.h:1954
agora::rtc::IRtcEngine::setAudioEffectPreset
virtual int setAudioEffectPreset(AUDIO_EFFECT_PRESET preset)=0
Sets an SDK preset audio effect.
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P
@ VIDEO_PROFILE_LANDSCAPE_480P
Definition: IAgoraRtcEngine.h:12463
agora::rtc::IRtcEngine::release
static AGORA_CPP_API void release(RtcEngineReleaseCallback callback=nullptr)
Releases the IRtcEngine instance.
agora::rtc::AUDIO_SAMPLE_RATE_TYPE
AUDIO_SAMPLE_RATE_TYPE
The audio sampling rate of the stream to be pushed to the CDN.
Definition: AgoraBase.h:4109
agora::rtc::MEDIA_DEVICE_STATE_IDLE
@ MEDIA_DEVICE_STATE_IDLE
Definition: IAgoraRtcEngine.h:12402
agora::rtc::IRtcEngine::updateScreenCaptureParameters
virtual int updateScreenCaptureParameters(const ScreenCaptureParameters &captureParams)=0
Updates the screen capturing parameters.
agora::rtc::RtcEngineContext::useExternalEglContext
bool useExternalEglContext
Definition: IAgoraRtcEngine.h:4147
agora::rtc::IRtcEngine::preloadEffect
virtual int preloadEffect(int soundId, const char *filePath, int startPos=0)=0
Preloads a specified audio effect file into the memory.
agora::rtc::RemoteAudioStats::frozenRate
int frozenRate
Definition: IAgoraRtcEngine.h:480
agora::rtc::IRtcEngine::setVideoScenario
virtual int setVideoScenario(VIDEO_APPLICATION_SCENARIO_TYPE scenarioType)=0
Sets video application scenarios.
agora::rtc::RemoteAudioStats::plcCount
uint32_t plcCount
Definition: IAgoraRtcEngine.h:505
agora::rtc::IRtcEngine::stopEchoTest
virtual int stopEchoTest()=0
Stops the audio call test.
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_3
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_3
Definition: IAgoraRtcEngine.h:290
agora::rtc::IRtcEngine::startAudioRecording
virtual int startAudioRecording(const char *filePath, AUDIO_RECORDING_QUALITY_TYPE quality)=0
Starts client-side audio recording with recording configuration.
agora::rtc::IRtcEngine::setLocalVoiceEqualization
virtual int setLocalVoiceEqualization(AUDIO_EQUALIZATION_BAND_FREQUENCY bandFrequency, int bandGain)=0
Sets the local voice equalization effect.
agora::rtc::DirectCdnStreamingMediaOptions::publishMediaPlayerAudioTrack
Optional< bool > publishMediaPlayerAudioTrack
Definition: IAgoraRtcEngine.h:4472
agora::util::CopyableAutoPtr
Definition: AgoraBase.h:156
agora::rtc::IRtcEngine::getCameraMaxZoomFactor
virtual float getCameraMaxZoomFactor()=0
Gets the maximum zoom ratio supported by the camera.
agora::rtc::IRtcEngine::getNetworkType
virtual int getNetworkType()=0
Gets the type of the local network connection.
agora::rtc::AUDIO_MIXING_REASON_ALL_LOOPS_COMPLETED
@ AUDIO_MIXING_REASON_ALL_LOOPS_COMPLETED
Definition: IAgoraRtcEngine.h:130
agora::rtc::VIDEO_PROFILE_LANDSCAPE_720P
@ VIDEO_PROFILE_LANDSCAPE_720P
Definition: IAgoraRtcEngine.h:12477
agora::rtc::InjectStreamConfig::audioSampleRate
AUDIO_SAMPLE_RATE_TYPE audioSampleRate
Definition: IAgoraRtcEngine.h:773
agora::rtc::IRtcEngine::enableExtension
virtual int enableExtension(const char *provider, const char *extension, const ExtensionInfo &extensionInfo, bool enable=true)=0
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_8
@ VIDEO_PROFILE_LANDSCAPE_480P_8
Definition: IAgoraRtcEngine.h:12471
agora::rtc::PublisherConfiguration::framerate
int framerate
Definition: IAgoraRtcEngine.h:825
agora::rtc::IRtcEngine::resumeEffect
virtual int resumeEffect(int soundId)=0
Resumes playing a specified audio effect.
agora::rtc::PublisherConfiguration::injectStreamUrl
const char * injectStreamUrl
Definition: IAgoraRtcEngine.h:852
agora::rtc::ChannelMediaOptions::publishScreenTrack
Optional< bool > publishScreenTrack
Definition: IAgoraRtcEngine.h:1310
agora::rtc::AUDIO_EQUALIZATION_BAND_2K
@ AUDIO_EQUALIZATION_BAND_2K
Definition: IAgoraRtcEngine.h:224
agora::rtc::IRtcEngineEventHandler::onAudioRoutingChanged
virtual void onAudioRoutingChanged(int routing)
Occurs when the local audio route changes.
Definition: IAgoraRtcEngine.h:3224
agora::rtc::IRtcEngine::playEffect
virtual int playEffect(int soundId, const char *filePath, int loopCount, double pitch, double pan, int gain, bool publish=false, int startPos=0)=0
Plays the specified local or online audio effect file.
agora::rtc::InjectStreamConfig::videoBitrate
int videoBitrate
Definition: IAgoraRtcEngine.h:769
agora::rtc::IRtcEngine::setCameraStabilizationMode
virtual int setCameraStabilizationMode(CAMERA_STABILIZATION_MODE mode)=0
Sets the camera stabilization mode.
agora::rtc::RdtStreamType
RdtStreamType
Reliable Data Transmission Tunnel message stream type.
Definition: AgoraBase.h:8008
agora::rtc::IScreenCaptureSourceList::getSourceInfo
virtual ScreenCaptureSourceInfo getSourceInfo(unsigned int index)=0
Gets information about the specified shareable window or screen.
agora::rtc::VIDEO_PROFILE_LANDSCAPE_4K
@ VIDEO_PROFILE_LANDSCAPE_4K
Definition: IAgoraRtcEngine.h:12495
agora::rtc::LocalVideoStats::captureBrightnessLevel
CAPTURE_BRIGHTNESS_LEVEL_TYPE captureBrightnessLevel
Definition: IAgoraRtcEngine.h:408
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P
@ VIDEO_PROFILE_LANDSCAPE_240P
Definition: IAgoraRtcEngine.h:12439
agora::rtc::IRtcEngine::enableVideo
virtual int enableVideo()=0
Enables the video module.
agora::rtc::IRtcEngineEventHandler::onExtensionStoppedWithContext
virtual void onExtensionStoppedWithContext(const ExtensionContext &context)
Occurs when the extension is disabled.
Definition: IAgoraRtcEngine.h:3635
agora::rtc::LOCAL_AUDIO_STREAM_STATE
LOCAL_AUDIO_STREAM_STATE
The state of the local audio.
Definition: AgoraBase.h:3417
agora::rtc::VIDEO_PROFILE_PORTRAIT_4K
@ VIDEO_PROFILE_PORTRAIT_4K
Definition: IAgoraRtcEngine.h:12565
agora::rtc::IRtcEngine::setRemoteUserSpatialAudioParams
virtual int setRemoteUserSpatialAudioParams(uid_t uid, const agora::SpatialAudioParams &params)=0
Sets the spatial audio effect parameters of the remote user.
agora::rtc::VOICE_AI_TUNER_TYPE
VOICE_AI_TUNER_TYPE
Voice AI tuner sound types.
Definition: AgoraBase.h:6439
agora::rtc::IVideoEffectObject::VIDEO_EFFECT_NODE_ID::BEAUTY
@ BEAUTY
agora::rtc::AUDIO_EQUALIZATION_BAND_1K
@ AUDIO_EQUALIZATION_BAND_1K
Definition: IAgoraRtcEngine.h:220
agora::rtc::INJECT_STREAM_STATUS_STOP_FAILED
@ INJECT_STREAM_STATUS_STOP_FAILED
Definition: IAgoraRtcEngine.h:186
agora::rtc::video_track_id_t
unsigned int video_track_id_t
Definition: AgoraMediaBase.h:31
agora::rtc::IRtcEngine::setHeadphoneEQParameters
virtual int setHeadphoneEQParameters(int lowGain, int highGain)=0
Sets the low- and high-frequency parameters of the headphone equalizer.
agora::rtc::ScreenCaptureSourceType
ScreenCaptureSourceType
The type of the shared target. Set in ScreenCaptureSourceInfo.
Definition: IAgoraRtcEngine.h:1075
agora::rtc::IVideoEffectObject::removeVideoEffect
virtual int removeVideoEffect(uint32_t nodeId)=0
Removes the video effect with the specified node ID.
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
Gets the facial beauty area options.
agora::rtc::IMetadataObserver::UNKNOWN_METADATA
@ UNKNOWN_METADATA
Definition: IAgoraRtcEngine.h:4194
agora::rtc::IRtcEngineEventHandler::onFirstLocalVideoFramePublished
virtual void onFirstLocalVideoFramePublished(VIDEO_SOURCE_TYPE source, int elapsed)
Occurs when the first video frame is published.
Definition: IAgoraRtcEngine.h:2213
agora::rtc::LOCAL_PROXY_TYPE
@ LOCAL_PROXY_TYPE
Definition: IAgoraRtcEngine.h:1736
agora::rtc::ChannelMediaOptions::preferMultipathType
Optional< MultipathType > preferMultipathType
Definition: IAgoraRtcEngine.h:1532
agora::rtc::VIDEO_CONTENT_HINT
VIDEO_CONTENT_HINT
The content hint for screen sharing.
Definition: AgoraBase.h:3222
agora::rtc::IRtcEngine::updateChannelMediaOptions
virtual int updateChannelMediaOptions(const ChannelMediaOptions &options)=0
Updates the channel media options after joining the channel.
agora::rtc::RemoteAudioStats::numChannels
int numChannels
Definition: IAgoraRtcEngine.h:461
agora::rtc::IRtcEngineEventHandler::onSetRtmFlagResult
virtual void onSetRtmFlagResult(int code)
Definition: IAgoraRtcEngine.h:3665
agora::rtc::IDirectCdnStreamingEventHandler::onDirectCdnStreamingStats
virtual void onDirectCdnStreamingStats(const DirectCdnStreamingStats &stats)
Reports the CDN streaming statistics.
Definition: IAgoraRtcEngine.h:4432
agora::rtc::ChannelMediaOptions::audioDelayMs
Optional< int > audioDelayMs
Definition: IAgoraRtcEngine.h:1437
agora::rtc::IRtcEngine::initialize
virtual int initialize(const RtcEngineContext &context)=0
Initializes IRtcEngine.
agora::rtc::CLIENT_ROLE_CHANGE_FAILED_REASON
CLIENT_ROLE_CHANGE_FAILED_REASON
The reason for a user role switch failure.
Definition: AgoraBase.h:5189
agora::rtc::VIDEO_PROFILE_PORTRAIT_120P
@ VIDEO_PROFILE_PORTRAIT_120P
Definition: IAgoraRtcEngine.h:12499
agora::rtc::IRtcEngineEventHandler::onNetworkQuality
virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality)
Reports the last mile network quality of each user in the channel.
Definition: IAgoraRtcEngine.h:2119
agora::rtc::IRtcEngine::resumeAudioMixing
virtual int resumeAudioMixing()=0
Resumes playing and mixing the music file.
agora::rtc::uid_t
unsigned int uid_t
Definition: AgoraMediaBase.h:28
agora::rtc::ImageTrackOptions
Image configurations.
Definition: IAgoraRtcEngine.h:1223
agora::rtc::INJECT_STREAM_STATUS_START_TIMEDOUT
@ INJECT_STREAM_STATUS_START_TIMEDOUT
Definition: IAgoraRtcEngine.h:162
agora::rtc::IRtcEngine::unloadEffect
virtual int unloadEffect(int soundId)=0
Releases a specified preloaded audio effect from the memory.
agora::rtc::VideoCompositingLayout::Region
Definition: IAgoraRtcEngine.h:671
agora::rtc::IRtcEngine::stopRhythmPlayer
virtual int stopRhythmPlayer()=0
Disables the virtual metronome.
agora::rtc::IRtcEngine::getAudioMixingPlayoutVolume
virtual int getAudioMixingPlayoutVolume()=0
Retrieves the audio mixing volume for local playback.
agora::rtc::IRtcEngine::startLastmileProbeTest
virtual int startLastmileProbeTest(const LastmileProbeConfig &config)=0
Starts the last mile network probe test.
agora::rtc::CameraCapturerConfiguration::cameraId
Optional< const char * > cameraId
Definition: IAgoraRtcEngine.h:972
agora::rtc::IRtcEngine::adjustCustomAudioPublishVolume
virtual int adjustCustomAudioPublishVolume(track_id_t trackId, int volume)=0
Adjusts the volume of the custom audio track played remotely.
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_6
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_6
Definition: IAgoraRtcEngine.h:293
agora::rtc::IRtcEngineEventHandler::onVideoSubscribeStateChanged
virtual void onVideoSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Occurs when the video subscribing state changes.
Definition: IAgoraRtcEngine.h:3513
agora::rtc::ChannelMediaOptions::publishFourthScreenTrack
Optional< bool > publishFourthScreenTrack
Definition: IAgoraRtcEngine.h:1330
agora::rtc::RemoteAudioStats::jitterBufferDelay
int jitterBufferDelay
Definition: IAgoraRtcEngine.h:453
agora::rtc::AUDIO_MIXING_REASON_ONE_LOOP_COMPLETED
@ AUDIO_MIXING_REASON_ONE_LOOP_COMPLETED
Definition: IAgoraRtcEngine.h:126
agora::rtc::IRtcEngine::adjustPlaybackSignalVolume
virtual int adjustPlaybackSignalVolume(int volume)=0
Adjusts the playback signal volume of all remote users.
agora::rtc::IRtcEngineEventHandler::onRemoteVideoStateChanged
virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)
Occurs when the remote video stream state changes.
Definition: IAgoraRtcEngine.h:2353
agora::rtc::CLIENT_ROLE_TYPE
CLIENT_ROLE_TYPE
The user role in the interactive live streaming.
Definition: AgoraBase.h:2963
agora::rtc::IRtcEngine::setExtensionProviderProperty
virtual int setExtensionProviderProperty(const char *provider, const char *key, const char *value)=0
Sets the properties of the extension provider.
agora::rtc::INJECT_STREAM_STATUS_STOP_UNAUTHORIZED
@ INJECT_STREAM_STATUS_STOP_UNAUTHORIZED
Definition: IAgoraRtcEngine.h:178
agora::rtc::PublisherConfiguration::injectStreamWidth
int injectStreamWidth
Definition: IAgoraRtcEngine.h:846
agora::rtc::ChannelMediaOptions::publishScreenCaptureVideo
Optional< bool > publishScreenCaptureVideo
Definition: IAgoraRtcEngine.h:1301
agora::rtc::ChannelMediaOptions::publishMixedAudioTrack
Optional< bool > publishMixedAudioTrack
Definition: IAgoraRtcEngine.h:1381
agora::rtc::IRtcEngine::startLocalAudioMixer
virtual int startLocalAudioMixer(const LocalAudioMixerConfiguration &config)=0
Starts local audio mixing.
agora::rtc::RemoteVideoStats::rxStreamType
VIDEO_STREAM_TYPE rxStreamType
Definition: IAgoraRtcEngine.h:628
agora::rtc::IRtcEngine::enableAudio
virtual int enableAudio()=0
Enables the audio module.
agora::rtc::IVideoDeviceManager::stopDeviceTest
virtual int stopDeviceTest()=0
agora::rtc::IMetadataObserver::Metadata::uid
unsigned int uid
Definition: IAgoraRtcEngine.h:4224
agora::rtc::RemoteAudioStats::uid
uid_t uid
Definition: IAgoraRtcEngine.h:439
agora::rtc::IRtcEngine::disableVideo
virtual int disableVideo()=0
Disables the video module.
agora::rtc::IRtcEngine::enableDualStreamMode
virtual int enableDualStreamMode(bool enabled) __deprecated=0
Enables or disables dual-stream mode on the sender side.
agora::rtc::ChannelMediaOptions::~ChannelMediaOptions
~ChannelMediaOptions()
Definition: IAgoraRtcEngine.h:1542
agora::rtc::ENCRYPTION_ERROR_TYPE
ENCRYPTION_ERROR_TYPE
Encryption error type.
Definition: AgoraBase.h:7391
agora::rtc::InjectStreamConfig::videoGop
int videoGop
Definition: IAgoraRtcEngine.h:761
agora::rtc::IRtcEngine::setVideoQoEPreference
virtual int setVideoQoEPreference(VIDEO_QOE_PREFERENCE_TYPE qoePreference)=0
agora::rtc::ChannelMediaOptions::isInteractiveAudience
Optional< bool > isInteractiveAudience
Definition: IAgoraRtcEngine.h:1481
agora::SpatialAudioParams
The spatial audio parameters.
Definition: AgoraBase.h:8097
agora::media::MEDIA_SOURCE_TYPE
MEDIA_SOURCE_TYPE
Media source type.
Definition: AgoraMediaBase.h:283
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_4
@ VIDEO_PROFILE_LANDSCAPE_360P_4
Definition: IAgoraRtcEngine.h:12449
agora::rtc::LocalVideoStats::encodedFrameDepth
int encodedFrameDepth
Definition: IAgoraRtcEngine.h:428
agora::rtc::IRtcEngine::setLogFilter
virtual int setLogFilter(unsigned int filter)=0
Sets the log output level of the SDK.
agora::rtc::IRtcEngine::getLoopbackRecordingVolume
virtual int getLoopbackRecordingVolume()=0
agora::rtc::IRtcEngineEventHandler::onPermissionError
virtual void onPermissionError(PERMISSION_TYPE permissionType)
Occurs when the SDK cannot get the device permission.
Definition: IAgoraRtcEngine.h:3375
agora::rtc::IRtcEngineEventHandler::onUploadLogResult
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngine.h:3479
agora::rtc::RemoteAudioStats::qoeQuality
int qoeQuality
Definition: IAgoraRtcEngine.h:533
agora::rtc::LeaveChannelOptions::LeaveChannelOptions
LeaveChannelOptions()
Definition: IAgoraRtcEngine.h:1787
agora::rtc::STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_2
@ STREAM_FALLBACK_OPTION_VIDEO_STREAM_LAYER_2
Definition: IAgoraRtcEngine.h:289
agora::rtc::IRtcEngine::setFaceShapeAreaOptions
virtual int setFaceShapeAreaOptions(const FaceShapeAreaOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Sets the image enhancement options for facial areas and specifies the media source.
agora::rtc::VIDEO_PROFILE_LANDSCAPE_360P_10
@ VIDEO_PROFILE_LANDSCAPE_360P_10
Definition: IAgoraRtcEngine.h:12459
agora::rtc::IRtcEngine::setHeadphoneEQPreset
virtual int setHeadphoneEQPreset(HEADPHONE_EQUALIZER_PRESET preset)=0
Sets the preset headphone equalization effect.
agora::rtc::IRtcEngine::startCameraCapture
virtual int startCameraCapture(VIDEO_SOURCE_TYPE sourceType, const CameraCapturerConfiguration &config)=0
Starts camera capture.
agora::rtc::IRtcEngine::setLocalAccessPoint
virtual int setLocalAccessPoint(const LocalAccessPointConfiguration &config)=0
Configures the connection to Agora's Private Media Server access module.
agora::media::CONTENT_INSPECT_RESULT
CONTENT_INSPECT_RESULT
Definition: AgoraMediaBase.h:1274
agora::rtc::IRtcEngineEventHandler::onRdtStateChanged
virtual void onRdtStateChanged(uid_t userId, RdtState state)
Occurs when the RDT tunnel state changed.
Definition: IAgoraRtcEngine.h:2857
agora::rtc::IRtcEngine::createCustomVideoTrack
virtual video_track_id_t createCustomVideoTrack()=0
Creates a custom video track.
agora::rtc::DIRECT_CDN_STREAMING_REASON_BAD_NAME
@ DIRECT_CDN_STREAMING_REASON_BAD_NAME
Definition: IAgoraRtcEngine.h:4319
agora::rtc::SetFrom
static void SetFrom(Optional< T > *s, const Optional< T > &o)
Definition: IAgoraRtcEngine.h:24
agora::rtc::IRtcEngine::disableAudio
virtual int disableAudio()=0
Disables the audio module.
agora::rtc::IRtcEngine::muteAllRemoteAudioStreams
virtual int muteAllRemoteAudioStreams(bool mute)=0
Stops or resumes subscribing to the audio streams of all remote users.
agora::rtc::IRtcEngineEventHandler::onRtcStats
virtual void onRtcStats(const RtcStats &stats)
Reports the statistics about the current call.
Definition: IAgoraRtcEngine.h:2004
agora::rtc::IRtcEngineEventHandler::onUserJoined
virtual void onUserJoined(uid_t uid, int elapsed)
Occurs when a remote user (in the communication profile)/ host (in the live streaming profile) joins ...
Definition: IAgoraRtcEngine.h:2407
agora::rtc::VIDEO_PROFILE_LANDSCAPE_240P_4
@ VIDEO_PROFILE_LANDSCAPE_240P_4
Definition: IAgoraRtcEngine.h:12443
agora::rtc::AAudioDeviceManager
Definition: IAgoraRtcEngine.h:12572
agora::rtc::STREAM_PUBLISH_STATE
STREAM_PUBLISH_STATE
The publishing state.
Definition: AgoraBase.h:7524
agora::rtc::CONNECTION_STATE_TYPE
CONNECTION_STATE_TYPE
Connection states.
Definition: AgoraBase.h:4445
agora::rtc::VIDEO_BEAUTY_EFFECT
@ VIDEO_BEAUTY_EFFECT
Definition: IAgoraRtcEngine.h:1761
agora::rtc::IRtcEngine::sendCustomReportMessage
virtual int sendCustomReportMessage(const char *id, const char *category, const char *event, const char *label, int value)=0
Reports customized messages.
agora::rtc::FocalLengthInfo
Focal length information supported by the camera, including the camera direction and focal length typ...
Definition: AgoraBase.h:2055
agora::rtc::ScreenCaptureSourceInfo::ScreenCaptureSourceInfo
ScreenCaptureSourceInfo()
Definition: IAgoraRtcEngine.h:1152
agora::rtc::IVideoEffectObject::~IVideoEffectObject
virtual ~IVideoEffectObject()
Definition: IAgoraRtcEngine.h:3877
agora::rtc::RemoteVideoStats::packetLossRate
int packetLossRate
Definition: IAgoraRtcEngine.h:624
agora::rtc::LocalVideoStats::hwEncoderAccelerating
int hwEncoderAccelerating
Definition: IAgoraRtcEngine.h:418
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:2873
agora::base::IEngineBase
Definition: AgoraBase.h:8063
agora::rtc::LocalVideoStats::rendererOutputFrameRate
int rendererOutputFrameRate
Definition: IAgoraRtcEngine.h:371
agora::rtc::IRtcEngine::startScreenCaptureByScreenRect
virtual int startScreenCaptureByScreenRect(const Rectangle &screenRect, const Rectangle &regionRect, const ScreenCaptureParameters &captureParams) __deprecated=0
Captures the whole or part of a screen by specifying the screen rect.
agora::rtc::ThumbImageBuffer::height
unsigned int height
Definition: IAgoraRtcEngine.h:1069
agora::rtc::DirectCdnStreamingMediaOptions::publishCustomAudioTrack
Optional< bool > publishCustomAudioTrack
Definition: IAgoraRtcEngine.h:4460
agora::rtc::IRtcEngineEventHandler::onAudioMixingStateChanged
virtual void onAudioMixingStateChanged(AUDIO_MIXING_STATE_TYPE state, AUDIO_MIXING_REASON_TYPE reason)
Occurs when the playback state of the music file changes.
Definition: IAgoraRtcEngine.h:2713
agora::rtc::AGORA_IID_AUDIO_DEVICE_MANAGER
@ AGORA_IID_AUDIO_DEVICE_MANAGER
Definition: AgoraBase.h:921
agora::rtc::ScreenCaptureSourceInfo::sourceId
int64_t sourceId
Definition: IAgoraRtcEngine.h:1105
agora::rtc::IRtcEngineEventHandler::onPermissionGranted
virtual void onPermissionGranted(agora::rtc::PERMISSION_TYPE permissionType)
Definition: IAgoraRtcEngine.h:3384
agora::rtc::IRtcEngine::setLocalRenderMode
virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
Updates the display mode of the local video view.
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::setAudioProfile
virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile, AUDIO_SCENARIO_TYPE scenario) __deprecated=0
Sets the audio profile and audio scenario.
agora::rtc::RtcEngineContext::areaCode
unsigned int areaCode
Definition: IAgoraRtcEngine.h:4112
agora::rtc::IRtcEngine::setSimulcastConfig
virtual int setSimulcastConfig(const SimulcastConfig &simulcastConfig)=0
Sets the simulcast video stream configuration.
agora::rtc::IRtcEngineEventHandler::onLicenseValidationFailure
virtual void onLicenseValidationFailure(LICENSE_ERROR_TYPE error)
Definition: IAgoraRtcEngine.h:2927
agora::rtc::IMetadataObserver::VIDEO_METADATA
@ VIDEO_METADATA
Definition: IAgoraRtcEngine.h:4198
rtc
Definition: video_node_i.h:28
agora::rtc::IRtcEngine::selectAudioTrack
virtual int selectAudioTrack(int index)=0
Selects the audio track used during playback.
agora::rtc::RemoteVideoStats
Statistics of the remote video stream.
Definition: IAgoraRtcEngine.h:576
agora::rtc::PublisherConfiguration::injectStreamHeight
int injectStreamHeight
Definition: IAgoraRtcEngine.h:849
agora::Optional
Definition: AgoraOptional.h:52
agora::rtc::IRtcEngine::joinChannel
virtual int joinChannel(const char *token, const char *channelId, const char *info, uid_t uid)=0
Joins a channel.
agora::rtc::IMetadataObserver::Metadata::size
unsigned int size
Definition: IAgoraRtcEngine.h:4228
agora::rtc::CAMERA_DIRECTION
CAMERA_DIRECTION
The camera direction.
Definition: IAgoraRtcEngine.h:884
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_10
@ VIDEO_PROFILE_PORTRAIT_360P_10
Definition: IAgoraRtcEngine.h:12529
agora::AUDIO_SESSION_OPERATION_RESTRICTION
AUDIO_SESSION_OPERATION_RESTRICTION
The operation permissions of the SDK on the audio session.
Definition: AgoraBase.h:836
agora::rtc::IRtcEngine::setRecordingAudioFrameParameters
virtual int setRecordingAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
Sets the format of the captured raw audio data.
agora::rtc::VIDEO_PROFILE_PORTRAIT_180P_3
@ VIDEO_PROFILE_PORTRAIT_180P_3
Definition: IAgoraRtcEngine.h:12505
agora::rtc::ScreenCaptureConfiguration::screenRect
Rectangle screenRect
Definition: IAgoraRtcEngine.h:1008
agora::rtc::IScreenCaptureSourceList::~IScreenCaptureSourceList
virtual ~IScreenCaptureSourceList()
Definition: IAgoraRtcEngine.h:1163
agora::rtc::VIDEO_PROFILE_LANDSCAPE_1080P
@ VIDEO_PROFILE_LANDSCAPE_1080P
Definition: IAgoraRtcEngine.h:12485
agora::rtc::IRtcEngineEventHandler::onUserEnableLocalVideo
virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) __deprecated
Occurs when a specific remote user enables/disables the local video capturing function.
Definition: IAgoraRtcEngine.h:2526
agora::rtc::IVideoDeviceManager::setDevice
virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
agora::rtc::IRtcEngineEventHandler::onChannelMediaRelayStateChanged
virtual void onChannelMediaRelayStateChanged(int state, int code)
Occurs when the state of the media stream relay changes.
Definition: IAgoraRtcEngine.h:3236
agora::rtc::IRtcEngine::complain
virtual int complain(const char *callId, const char *description)=0
Allows a user to complain about the call quality after a call ends.
agora::rtc::IRtcEngine::clearVideoWatermarks
virtual int clearVideoWatermarks()=0
Removes the watermark image from the video stream.
agora::rtc::IRtcEngine::stopAudioRecording
virtual int stopAudioRecording()=0
Stops client-side audio recording.
agora::rtc::SIZE::height
int height
Definition: IAgoraRtcEngine.h:1038
agora::rtc::IRtcEngine::queryScreenCaptureCapability
virtual int queryScreenCaptureCapability()=0
Queries the highest frame rate supported by the device during screen sharing.
agora::rtc::IRtcEngineEventHandler::onAudioPublishStateChanged
virtual void onAudioPublishStateChanged(const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Occurs when the audio publishing state changes.
Definition: IAgoraRtcEngine.h:3530
agora::rtc::IMetadataObserver::~IMetadataObserver
virtual ~IMetadataObserver()
Definition: IAgoraRtcEngine.h:4184
agora::rtc::IRtcEngine::setHighPriorityUserList
virtual int setHighPriorityUserList(uid_t *uidList, int uidNum, STREAM_FALLBACK_OPTIONS option)=0
agora::rtc::IRtcEngine::setScreenCaptureOrientation
virtual int setScreenCaptureOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation)=0
agora::rtc::RemoteAudioStats::receivedSampleRate
int receivedSampleRate
Definition: IAgoraRtcEngine.h:465
agora::rtc::VideoCompositingLayout::Region::uid
uid_t uid
Definition: IAgoraRtcEngine.h:674
agora::rtc::VIDEO_PROFILE_PORTRAIT_360P_8
@ VIDEO_PROFILE_PORTRAIT_360P_8
Definition: IAgoraRtcEngine.h:12525
agora::rtc::PRIORITY_TYPE
PRIORITY_TYPE
Definition: IAgoraRtcEngine.h:296
agora::rtc::IRtcEngineEventHandler::onConnectionStateChanged
virtual void onConnectionStateChanged(CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Occurs when the network connection state changes.
Definition: IAgoraRtcEngine.h:3329
agora::rtc::VIDEO_PROFILE_LANDSCAPE_480P_6
@ VIDEO_PROFILE_LANDSCAPE_480P_6
Definition: IAgoraRtcEngine.h:12469
agora::rtc::IVideoEffectObject::getVideoEffectIntParam
virtual int getVideoEffectIntParam(const char *option, const char *key)=0
Retrieves integer parameters in video effects.
agora::rtc::PRIORITY_HIGH
@ PRIORITY_HIGH
Definition: IAgoraRtcEngine.h:299
agora::rtc::VideoCompositingLayout::Region::x
double x
Definition: IAgoraRtcEngine.h:677
agora::CHANNEL_PROFILE_LIVE_BROADCASTING
@ CHANNEL_PROFILE_LIVE_BROADCASTING
Definition: AgoraBase.h:275