Agora Java API Reference for Android
|
9 #include "AgoraMediaBase.h"
10 #include "IAgoraLog.h"
11 #include "AgoraOptional.h"
12 #include "IAudioDeviceManager.h"
13 #include "IAgoraRhythmPlayer.h"
14 #include "IAgoraMediaEngine.h"
20 static void SetFrom(Optional<T>* s,
const Optional<T>& o) {
27 static void ReplaceBy(Optional<T>* s,
const Optional<T>& o) {
36 enum MEDIA_DEVICE_TYPE {
40 UNKNOWN_AUDIO_DEVICE = -1,
44 AUDIO_PLAYOUT_DEVICE = 0,
48 AUDIO_RECORDING_DEVICE = 1,
52 VIDEO_RENDER_DEVICE = 2,
56 VIDEO_CAPTURE_DEVICE = 3,
60 AUDIO_APPLICATION_PLAYOUT_DEVICE = 4,
66 enum AUDIO_MIXING_STATE_TYPE {
68 AUDIO_MIXING_STATE_PLAYING = 710,
70 AUDIO_MIXING_STATE_PAUSED = 711,
72 AUDIO_MIXING_STATE_STOPPED = 713,
76 AUDIO_MIXING_STATE_FAILED = 714,
82 enum AUDIO_MIXING_REASON_TYPE {
84 AUDIO_MIXING_REASON_CAN_NOT_OPEN = 701,
86 AUDIO_MIXING_REASON_TOO_FREQUENT_CALL = 702,
88 AUDIO_MIXING_REASON_INTERRUPTED_EOF = 703,
90 AUDIO_MIXING_REASON_ONE_LOOP_COMPLETED = 721,
92 AUDIO_MIXING_REASON_ALL_LOOPS_COMPLETED = 723,
94 AUDIO_MIXING_REASON_STOPPED_BY_USER = 724,
96 AUDIO_MIXING_REASON_OK = 0,
102 enum INJECT_STREAM_STATUS {
106 INJECT_STREAM_STATUS_START_SUCCESS = 0,
110 INJECT_STREAM_STATUS_START_ALREADY_EXISTS = 1,
114 INJECT_STREAM_STATUS_START_UNAUTHORIZED = 2,
118 INJECT_STREAM_STATUS_START_TIMEDOUT = 3,
122 INJECT_STREAM_STATUS_START_FAILED = 4,
126 INJECT_STREAM_STATUS_STOP_SUCCESS = 5,
130 INJECT_STREAM_STATUS_STOP_NOT_FOUND = 6,
134 INJECT_STREAM_STATUS_STOP_UNAUTHORIZED = 7,
138 INJECT_STREAM_STATUS_STOP_TIMEDOUT = 8,
142 INJECT_STREAM_STATUS_STOP_FAILED = 9,
146 INJECT_STREAM_STATUS_BROKEN = 10,
152 enum AUDIO_EQUALIZATION_BAND_FREQUENCY {
156 AUDIO_EQUALIZATION_BAND_31 = 0,
160 AUDIO_EQUALIZATION_BAND_62 = 1,
164 AUDIO_EQUALIZATION_BAND_125 = 2,
168 AUDIO_EQUALIZATION_BAND_250 = 3,
172 AUDIO_EQUALIZATION_BAND_500 = 4,
176 AUDIO_EQUALIZATION_BAND_1K = 5,
180 AUDIO_EQUALIZATION_BAND_2K = 6,
184 AUDIO_EQUALIZATION_BAND_4K = 7,
188 AUDIO_EQUALIZATION_BAND_8K = 8,
192 AUDIO_EQUALIZATION_BAND_16K = 9,
198 enum AUDIO_REVERB_TYPE {
202 AUDIO_REVERB_DRY_LEVEL = 0,
206 AUDIO_REVERB_WET_LEVEL = 1,
210 AUDIO_REVERB_ROOM_SIZE = 2,
214 AUDIO_REVERB_WET_DELAY = 3,
218 AUDIO_REVERB_STRENGTH = 4,
221 enum STREAM_FALLBACK_OPTIONS {
225 STREAM_FALLBACK_OPTION_DISABLED = 0,
230 STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW = 1,
234 STREAM_FALLBACK_OPTION_AUDIO_ONLY = 2,
243 PRIORITY_NORMAL = 100,
436 media::base::RENDER_MODE_TYPE
447 renderMode(media::base::RENDER_MODE_HIDDEN) {}
537 enum RTMP_STREAM_LIFE_CYCLE_TYPE {
540 RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL = 1,
543 RTMP_STREAM_LIFE_CYCLE_BIND2OWNER = 2,
606 lifecycle(RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL),
617 bool enableLocalPlayback;
621 enum CAMERA_DIRECTION {
632 enum CLOUD_PROXY_TYPE {
649 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
650 CAMERA_DIRECTION cameraDirection;
656 bool followEncodeDimensionRatio;
658 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
659 cameraDirection = CAMERA_REAR;
667 bool isCaptureWindow;
677 #if (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
688 SIZE() : width(0), height(0) {}
689 SIZE(
int ww,
int hh) : width(ww), height(hh) {}
693 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
694 struct ThumbImageBuffer {
699 ThumbImageBuffer() : buffer(nullptr), length(0), width(0), height(0) {}
702 enum ScreenCaptureSourceType {
703 ScreenCaptureSourceType_Unknown = -1,
704 ScreenCaptureSourceType_Window = 0,
705 ScreenCaptureSourceType_Screen = 1,
706 ScreenCaptureSourceType_Custom = 2,
709 struct ScreenCaptureSourceInfo {
710 ScreenCaptureSourceType type;
713 const char* sourceName;
714 ThumbImageBuffer thumbImage;
715 ThumbImageBuffer iconImage;
717 const char* processPath;
718 const char* sourceTitle;
726 ScreenCaptureSourceInfo() : type(ScreenCaptureSourceType_Unknown), sourceId(nullptr), sourceName(nullptr),
727 processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false), minimizeWindow(false) {}
729 ScreenCaptureSourceInfo() : type(ScreenCaptureSourceType_Unknown), sourceId(nullptr), sourceName(nullptr),
730 processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false) {}
734 class IScreenCaptureSourceList {
736 virtual ~IScreenCaptureSourceList(){};
739 virtual unsigned int getCount() = 0;
740 virtual ScreenCaptureSourceInfo getSourceInfo(
unsigned int index) = 0;
741 virtual void release() = 0;
743 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
756 const char* imageUrl;
758 VIDEO_MIRROR_MODE_TYPE mirrorMode;
759 ImageTrackOptions() : imageUrl(NULL), fps(1), mirrorMode(VIDEO_MIRROR_MODE_DISABLED) {}
785 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
966 void SetAll(
const ChannelMediaOptions& change) {
967 #define SET_FROM(X) SetFrom(&X, change.X)
972 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
973 SET_FROM(publishScreenCaptureVideo);
974 SET_FROM(publishScreenCaptureAudio);
1008 bool operator==(
const ChannelMediaOptions& o)
const {
1009 #define BEGIN_COMPARE() bool b = true
1010 #define ADD_COMPARE(X) b = (b && (X == o.X))
1011 #define END_COMPARE()
1017 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
1018 ADD_COMPARE(publishScreenCaptureVideo);
1019 ADD_COMPARE(publishScreenCaptureAudio);
1052 #undef BEGIN_COMPARE
1058 ChannelMediaOptions& operator=(
const ChannelMediaOptions& replace) {
1059 if (
this != &replace) {
1060 #define REPLACE_BY(X) ReplaceBy(&X, replace.X)
1065 #if defined(__ANDROID__) || (defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
1066 REPLACE_BY(publishScreenCaptureVideo);
1067 REPLACE_BY(publishScreenCaptureAudio);
1105 enum LOCAL_PROXY_MODE {
1108 ConnectivityFirst = 0,
1117 NONE_PROXY_TYPE = 0,
1128 LOCAL_PROXY_TYPE = 3,
1132 TCP_PROXY_AUTO_FALLBACK_TYPE = 4,
1198 virtual const char* eventHandlerType()
const {
return "event_handler"; }
1240 virtual void onProxyConnected(
const char* channel, uid_t uid, PROXY_TYPE proxyType,
const char* localProxyIp,
int elapsed) {
1273 unsigned short lost) {
1333 (void)speakerNumber;
1391 virtual void onAudioEffectFinished(
int soundId) {}
1536 virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid,
int width,
int height,
int rotation) {
1792 virtual void onCameraReady() {}
1794 virtual void onCameraFocusAreaChanged(
int x,
int y,
int width,
int height) {
1801 virtual void onCameraExposureAreaChanged(
int x,
int y,
int width,
int height) {
1807 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
1808 virtual void onFacePositionChanged(
int imageWidth,
int imageHeight,
1809 const Rectangle* vecRectangle,
const int* vecDistance,
1813 (void) vecRectangle;
1818 virtual void onVideoStopped() {}
1893 virtual void onStreamMessage(uid_t userId,
int streamId,
const char* data,
size_t length, uint64_t sentTs) {
2059 virtual void onSnapshotTaken(uid_t uid,
const char* filePath,
int width,
int height,
int errCode) {
2115 RTMP_STREAM_PUBLISH_ERROR_TYPE errCode) {
2225 virtual void onLocalPublishFallbackToAudioOnly(
bool isFallbackOrRecover) {
2226 (void)isFallbackOrRecover;
2229 virtual void onRemoteSubscribeFallbackToAudioOnly(uid_t uid,
bool isFallbackOrRecover) {
2231 (void)isFallbackOrRecover;
2248 unsigned short rxKBitRate) {
2269 unsigned short rxKBitRate) {
2282 CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason) {
2293 virtual void onWlAccMessage(WLACC_MESSAGE_REASON reason, WLACC_SUGGEST_ACTION action,
const char* wlAccMsg) {
2330 (void)permissionType;
2379 virtual void onAudioSubscribeStateChanged(
const char* channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState,
int elapseSinceLastState) {
2384 (void)elapseSinceLastState;
2396 virtual void onVideoSubscribeStateChanged(
const char* channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState,
int elapseSinceLastState) {
2401 (void)elapseSinceLastState;
2412 virtual void onAudioPublishStateChanged(
const char* channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState,
int elapseSinceLastState) {
2416 (void)elapseSinceLastState;
2428 virtual void onVideoPublishStateChanged(VIDEO_SOURCE_TYPE source,
const char* channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState,
int elapseSinceLastState) {
2433 (void)elapseSinceLastState;
2436 virtual void onExtensionEvent(
const char* provider,
const char* extension,
const char* key,
const char* value) {
2443 virtual void onExtensionStarted(
const char* provider,
const char* extension) {
2448 virtual void onExtensionStopped(
const char* provider,
const char* extension) {
2453 virtual void onExtensionError(
const char* provider,
const char* extension,
int error,
const char* message) {
2460 virtual void onUserAccountUpdated(uid_t uid,
const char* userAccount){
2499 virtual int setDevice(
const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
2512 virtual int getDevice(
int index,
char deviceNameUTF8[MAX_DEVICE_ID_LENGTH],
2513 char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
2552 virtual int setDevice(
const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
2562 virtual int getDevice(
char deviceIdUTF8[MAX_DEVICE_ID_LENGTH]) = 0;
2564 #if defined(_WIN32) || (defined(__linux__) && !defined(__ANDROID__)) || \
2565 (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
2574 virtual int numberOfCapabilities(
const char* deviceIdUTF8) = 0;
2587 virtual int getCapability(
const char* deviceIdUTF8,
const uint32_t deviceCapabilityNumber,
VideoFormat& capability) = 0;
2736 INVALID_METADATA_SIZE_IN_BYTE = -1,
2737 DEFAULT_METADATA_SIZE_IN_BYTE = 512,
2738 MAX_METADATA_SIZE_IN_BYTE = 1024
2799 enum DIRECT_CDN_STREAMING_ERROR {
2801 DIRECT_CDN_STREAMING_ERROR_OK = 0,
2803 DIRECT_CDN_STREAMING_ERROR_FAILED = 1,
2805 DIRECT_CDN_STREAMING_ERROR_AUDIO_PUBLICATION = 2,
2807 DIRECT_CDN_STREAMING_ERROR_VIDEO_PUBLICATION = 3,
2809 DIRECT_CDN_STREAMING_ERROR_NET_CONNECT = 4,
2811 DIRECT_CDN_STREAMING_ERROR_BAD_NAME = 5,
2816 enum DIRECT_CDN_STREAMING_STATE {
2818 DIRECT_CDN_STREAMING_STATE_IDLE = 0,
2820 DIRECT_CDN_STREAMING_STATE_RUNNING = 1,
2822 DIRECT_CDN_STREAMING_STATE_STOPPED = 2,
2824 DIRECT_CDN_STREAMING_STATE_FAILED = 3,
2826 DIRECT_CDN_STREAMING_STATE_RECOVERING = 4,
2932 void SetAll(
const DirectCdnStreamingMediaOptions& change) {
2933 #define SET_FROM(X) SetFrom(&X, change.X)
2944 bool operator==(
const DirectCdnStreamingMediaOptions& o)
const {
2945 #define BEGIN_COMPARE() bool b = true
2946 #define ADD_COMPARE(X) b = (b && (X == o.X))
2947 #define END_COMPARE()
2959 #undef BEGIN_COMPARE
2965 DirectCdnStreamingMediaOptions& operator=(
const DirectCdnStreamingMediaOptions& replace) {
2966 if (
this != &replace) {
2967 #define REPLACE_BY(X) ReplaceBy(&X, replace.X)
3073 virtual int queryInterface(INTERFACE_ID_TYPE iid,
void** inter) = 0;
3141 virtual int joinChannel(
const char* token,
const char* channelId,
const char* info,
3182 virtual int joinChannel(
const char* token,
const char* channelId, uid_t uid,
3777 virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile, AUDIO_SCENARIO_TYPE scenario) __deprecated = 0;
3796 virtual int setAudioScenario(AUDIO_SCENARIO_TYPE scenario) = 0;
4208 AUDIO_RECORDING_QUALITY_TYPE quality) = 0;
4232 AUDIO_RECORDING_QUALITY_TYPE quality) = 0;
4383 virtual int startAudioMixing(
const char* filePath,
bool loopback,
int cycle,
int startPos) = 0;
4588 virtual int preloadEffect(
int soundId,
const char* filePath,
int startPos = 0) = 0;
4630 virtual int playEffect(
int soundId,
const char* filePath,
int loopCount,
double pitch,
double pan,
int gain,
bool publish =
false,
int startPos = 0) = 0;
4661 virtual int playAllEffects(
int loopCount,
double pitch,
double pan,
int gain,
bool publish =
false) = 0;
5092 int param1,
int param2) = 0;
5107 int param1,
int param2) = 0;
5270 virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode) = 0;
5292 VIDEO_MIRROR_MODE_TYPE mirrorMode) = 0;
5397 virtual int enableEchoCancellationExternal(
bool enabled,
int audioSourceDelay) = 0;
5470 RAW_AUDIO_FRAME_OP_MODE_TYPE mode,
5471 int samplesPerCall) = 0;
5493 RAW_AUDIO_FRAME_OP_MODE_TYPE mode,
5494 int samplesPerCall) = 0;
5533 RAW_AUDIO_FRAME_OP_MODE_TYPE mode,
5534 int samplesPerCall) = 0;
5662 virtual int adjustUserPlaybackSignalVolume(
unsigned int uid,
int volume) = 0;
5772 #if defined (_WIN32) || defined(__linux__) || defined(__ANDROID__)
5773 virtual int loadExtensionProvider(
const char* path,
bool unload_after_use =
false) = 0;
5788 const char* provider,
const char* key,
const char* value) = 0;
5804 const char* provider,
const char* extension,
bool enable=
true, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
5819 const char* provider,
const char* extension,
5820 const char* key,
const char* value, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
5836 const char* provider,
const char* extension,
5837 const char* key,
char* value,
int buf_len, agora::media::MEDIA_SOURCE_TYPE type = agora::media::UNKNOWN_MEDIA_SOURCE) = 0;
5939 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
5949 virtual int switchCamera() = 0;
5958 virtual bool isCameraZoomSupported() = 0;
5967 virtual bool isCameraFaceDetectSupported() = 0;
5976 virtual bool isCameraTorchSupported() = 0;
5985 virtual bool isCameraFocusSupported() = 0;
5994 virtual bool isCameraAutoFocusFaceModeSupported() = 0;
6005 virtual int setCameraZoomFactor(
float factor) = 0;
6015 virtual int enableFaceDetection(
bool enabled) = 0;
6021 virtual float getCameraMaxZoomFactor() = 0;
6032 virtual int setCameraFocusPositionInPreview(
float positionX,
float positionY) = 0;
6041 virtual int setCameraTorchOn(
bool isOn) = 0;
6050 virtual int setCameraAutoFocusFaceModeEnabled(
bool enabled) = 0;
6063 virtual bool isCameraExposurePositionSupported() = 0;
6080 virtual int setCameraExposurePosition(
float positionXinView,
float positionYinView) = 0;
6082 #if defined(__APPLE__)
6090 virtual bool isCameraAutoExposureFaceModeSupported() = 0;
6100 virtual int setCameraAutoExposureFaceModeEnabled(
bool enabled) = 0;
6136 virtual int setDefaultAudioRouteToSpeakerphone(
bool defaultToSpeaker) = 0;
6164 virtual int setEnableSpeakerphone(
bool speakerOn) = 0;
6173 virtual bool isSpeakerphoneEnabled() = 0;
6175 #endif // __ANDROID__ || (__APPLE__ && TARGET_OS_IOS)
6177 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
6188 virtual IScreenCaptureSourceList* getScreenCaptureSources(
const SIZE& thumbSize,
const SIZE& iconSize,
const bool includeScreen) = 0;
6189 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
6190 #if (defined(__APPLE__) && TARGET_OS_IOS)
6215 virtual int setAudioSessionOperationRestriction(AUDIO_SESSION_OPERATION_RESTRICTION restriction) = 0;
6216 #endif // __APPLE__ && TARGET_OS_IOS
6218 #if defined(_WIN32) || (defined(__APPLE__) && !TARGET_OS_IPHONE && TARGET_OS_MAC)
6240 virtual int startScreenCaptureByDisplayId(uint32_t displayId,
const Rectangle& regionRect,
6243 #endif // __APPLE__ && TARGET_OS_MAC && !TARGET_OS_IPHONE
6270 virtual int startScreenCaptureByScreenRect(
const Rectangle& screenRect,
6276 #if defined(__ANDROID__)
6283 virtual int getAudioDeviceInfo(
DeviceInfo& deviceInfo) = 0;
6285 #endif // __ANDROID__
6287 #if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
6306 virtual int startScreenCaptureByWindowId(view_t windowId,
const Rectangle& regionRect,
6324 virtual int setScreenCaptureContentHint(VIDEO_CONTENT_HINT contentHint) = 0;
6342 virtual int setScreenCaptureScenario(SCREEN_SCENARIO_TYPE screenScenario) = 0;
6360 virtual int updateScreenCaptureRegion(
const Rectangle& regionRect) = 0;
6376 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC)
6378 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IOS)
6388 virtual int startScreenCapture(
const ScreenCaptureParameters2& captureParams) = 0;
6399 virtual int updateScreenCapture(
const ScreenCaptureParameters2& captureParams) = 0;
6402 #if defined(_WIN32) || defined(__APPLE__) || defined(__ANDROID__)
6410 virtual int stopScreenCapture() = 0;
6412 #endif // _WIN32 || (__APPLE__ && !TARGET_OS_IPHONE && TARGET_OS_MAC) || __ANDROID__
6446 virtual int rate(
const char* callId,
int rating,
6447 const char* description) = 0;
6462 virtual int complain(
const char* callId,
const char* description) = 0;
6542 virtual int stopLocalVideoTranscoder() = 0;
6546 virtual int stopPrimaryCameraCapture() = 0;
6547 virtual int stopSecondaryCameraCapture() = 0;
6549 virtual int setCameraDeviceOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation) = 0;
6550 virtual int setScreenCaptureOrientation(VIDEO_SOURCE_TYPE type, VIDEO_ORIENTATION orientation) = 0;
6554 virtual int stopPrimaryScreenCapture() = 0;
6555 virtual int stopSecondaryScreenCapture() = 0;
6566 virtual int setRemoteUserPriority(uid_t uid, PRIORITY_TYPE userPriority) = 0;
6831 const
char*
id, const
char* category, const
char* event, const
char* label,
int value) = 0;
6876 const
char* uuid, const
char* passwd,
long duration_ms,
bool auto_upload) = 0;
6878 virtual
int stopAudioFrameDump(const
char* channel_id, uid_t user_id, const
char* location) = 0;
6944 const
char* userAccount) = 0;
7241 virtual
int startRhythmPlayer(const
char* sound1, const
char* sound2, const AgoraRhythmPlayerConfig& config) = 0;
7287 virtual
int adjustCustomAudioPublishVolume(int32_t sourceId,
int volume) = 0;
7298 virtual
int adjustCustomAudioPlayoutVolume(int32_t sourceId,
int volume) = 0;
7392 virtual int64_t getCurrentMonotonicTimeInMs() = 0;
7430 queryInterface(engine, AGORA_IID_AUDIO_DEVICE_MANAGER);
7437 queryInterface(engine, AGORA_IID_VIDEO_DEVICE_MANAGER);
7442 enum QUALITY_REPORT_FORMAT_TYPE {
7445 QUALITY_REPORT_JSON = 0,
7448 QUALITY_REPORT_HTML = 1,
7452 enum MEDIA_DEVICE_STATE_TYPE {
7455 MEDIA_DEVICE_STATE_IDLE = 0,
7458 MEDIA_DEVICE_STATE_ACTIVE = 1,
7461 MEDIA_DEVICE_STATE_DISABLED = 2,
7464 MEDIA_DEVICE_STATE_NOT_PRESENT = 4,
7467 MEDIA_DEVICE_STATE_UNPLUGGED = 8
7470 enum VIDEO_PROFILE_TYPE {
7472 VIDEO_PROFILE_LANDSCAPE_120P = 0,
7474 VIDEO_PROFILE_LANDSCAPE_120P_3 = 2,
7476 VIDEO_PROFILE_LANDSCAPE_180P = 10,
7478 VIDEO_PROFILE_LANDSCAPE_180P_3 = 12,
7480 VIDEO_PROFILE_LANDSCAPE_180P_4 = 13,
7482 VIDEO_PROFILE_LANDSCAPE_240P = 20,
7484 VIDEO_PROFILE_LANDSCAPE_240P_3 = 22,
7486 VIDEO_PROFILE_LANDSCAPE_240P_4 = 23,
7488 VIDEO_PROFILE_LANDSCAPE_360P = 30,
7490 VIDEO_PROFILE_LANDSCAPE_360P_3 = 32,
7492 VIDEO_PROFILE_LANDSCAPE_360P_4 = 33,
7494 VIDEO_PROFILE_LANDSCAPE_360P_6 = 35,
7496 VIDEO_PROFILE_LANDSCAPE_360P_7 = 36,
7498 VIDEO_PROFILE_LANDSCAPE_360P_8 = 37,
7500 VIDEO_PROFILE_LANDSCAPE_360P_9 = 38,
7502 VIDEO_PROFILE_LANDSCAPE_360P_10 = 39,
7504 VIDEO_PROFILE_LANDSCAPE_360P_11 = 100,
7506 VIDEO_PROFILE_LANDSCAPE_480P = 40,
7508 VIDEO_PROFILE_LANDSCAPE_480P_3 = 42,
7510 VIDEO_PROFILE_LANDSCAPE_480P_4 = 43,
7512 VIDEO_PROFILE_LANDSCAPE_480P_6 = 45,
7514 VIDEO_PROFILE_LANDSCAPE_480P_8 = 47,
7516 VIDEO_PROFILE_LANDSCAPE_480P_9 = 48,
7518 VIDEO_PROFILE_LANDSCAPE_480P_10 = 49,
7520 VIDEO_PROFILE_LANDSCAPE_720P = 50,
7522 VIDEO_PROFILE_LANDSCAPE_720P_3 = 52,
7524 VIDEO_PROFILE_LANDSCAPE_720P_5 = 54,
7526 VIDEO_PROFILE_LANDSCAPE_720P_6 = 55,
7528 VIDEO_PROFILE_LANDSCAPE_1080P = 60,
7530 VIDEO_PROFILE_LANDSCAPE_1080P_3 = 62,
7532 VIDEO_PROFILE_LANDSCAPE_1080P_5 = 64,
7534 VIDEO_PROFILE_LANDSCAPE_1440P = 66,
7536 VIDEO_PROFILE_LANDSCAPE_1440P_2 = 67,
7538 VIDEO_PROFILE_LANDSCAPE_4K = 70,
7540 VIDEO_PROFILE_LANDSCAPE_4K_3 = 72,
7542 VIDEO_PROFILE_PORTRAIT_120P = 1000,
7544 VIDEO_PROFILE_PORTRAIT_120P_3 = 1002,
7546 VIDEO_PROFILE_PORTRAIT_180P = 1010,
7548 VIDEO_PROFILE_PORTRAIT_180P_3 = 1012,
7550 VIDEO_PROFILE_PORTRAIT_180P_4 = 1013,
7552 VIDEO_PROFILE_PORTRAIT_240P = 1020,
7554 VIDEO_PROFILE_PORTRAIT_240P_3 = 1022,
7556 VIDEO_PROFILE_PORTRAIT_240P_4 = 1023,
7558 VIDEO_PROFILE_PORTRAIT_360P = 1030,
7560 VIDEO_PROFILE_PORTRAIT_360P_3 = 1032,
7562 VIDEO_PROFILE_PORTRAIT_360P_4 = 1033,
7564 VIDEO_PROFILE_PORTRAIT_360P_6 = 1035,
7566 VIDEO_PROFILE_PORTRAIT_360P_7 = 1036,
7568 VIDEO_PROFILE_PORTRAIT_360P_8 = 1037,
7570 VIDEO_PROFILE_PORTRAIT_360P_9 = 1038,
7572 VIDEO_PROFILE_PORTRAIT_360P_10 = 1039,
7574 VIDEO_PROFILE_PORTRAIT_360P_11 = 1100,
7576 VIDEO_PROFILE_PORTRAIT_480P = 1040,
7578 VIDEO_PROFILE_PORTRAIT_480P_3 = 1042,
7580 VIDEO_PROFILE_PORTRAIT_480P_4 = 1043,
7582 VIDEO_PROFILE_PORTRAIT_480P_6 = 1045,
7584 VIDEO_PROFILE_PORTRAIT_480P_8 = 1047,
7586 VIDEO_PROFILE_PORTRAIT_480P_9 = 1048,
7588 VIDEO_PROFILE_PORTRAIT_480P_10 = 1049,
7590 VIDEO_PROFILE_PORTRAIT_720P = 1050,
7592 VIDEO_PROFILE_PORTRAIT_720P_3 = 1052,
7594 VIDEO_PROFILE_PORTRAIT_720P_5 = 1054,
7596 VIDEO_PROFILE_PORTRAIT_720P_6 = 1055,
7598 VIDEO_PROFILE_PORTRAIT_1080P = 1060,
7600 VIDEO_PROFILE_PORTRAIT_1080P_3 = 1062,
7602 VIDEO_PROFILE_PORTRAIT_1080P_5 = 1064,
7604 VIDEO_PROFILE_PORTRAIT_1440P = 1066,
7606 VIDEO_PROFILE_PORTRAIT_1440P_2 = 1067,
7608 VIDEO_PROFILE_PORTRAIT_4K = 1070,
7610 VIDEO_PROFILE_PORTRAIT_4K_3 = 1072,
7612 VIDEO_PROFILE_DEFAULT = VIDEO_PROFILE_LANDSCAPE_360P,
7623 #define getAgoraRtcEngineVersion getAgoraSdkVersion
7646 #define getAgoraRtcEngineErrorDescription getAgoraSdkErrorDescription
7647 #define setAgoraRtcEngineExternalSymbolLoader setAgoraSdkExternalSymbolLoader
virtual void onApiCallExecuted(int err, const char *api, const char *result)
Definition: IAgoraRtcEngine.h:1729
virtual int setDirectCdnStreamingAudioConfiguration(AUDIO_PROFILE_TYPE profile)=0
virtual const char * getErrorDescription(int code)=0
virtual int enableAudioSpectrumMonitor(int intervalInMS=100)=0
virtual int adjustRecordingSignalVolume(int volume)=0
virtual int enableWebSdkInteroperability(bool enabled) __deprecated=0
virtual int enableSpatialAudio(bool enabled)=0
const char * extraInfo
Definition: IAgoraRtcEngine.h:598
virtual int setAVSyncSource(const char *channelId, uid_t uid)=0
const char * appId
Definition: IAgoraRtcEngine.h:2633
virtual int enableInEarMonitoring(bool enabled, int includeAudioFilters)=0
virtual void onRtmpStreamingEvent(const char *url, RTMP_STREAMING_EVENT eventCode)
Definition: IAgoraRtcEngine.h:2128
int regulatedCaptureFrameHeight
Definition: IAgoraRtcEngine.h:282
virtual int setEffectPosition(int soundId, int pos)=0
Definition: AgoraBase.h:5243
int publishDuration
Definition: IAgoraRtcEngine.h:402
virtual int stopDirectCdnStreaming()=0
Definition: AgoraBase.h:3679
virtual int setEncryptionSecret(const char *secret) __deprecated=0
Definition: AgoraBase.h:4690
Definition: AgoraBase.h:4492
virtual int muteAllRemoteVideoStreams(bool mute)=0
virtual int setRemoteVideoSubscriptionOptions(uid_t uid, const VideoSubscriptionOptions &options)=0
Definition: AgoraBase.h:2919
int e2eDelay
Definition: IAgoraRtcEngine.h:350
int audioChannels
Definition: IAgoraRtcEngine.h:520
int regulatedCaptureFrameWidth
Definition: IAgoraRtcEngine.h:278
virtual int pauseEffect(int soundId)=0
Definition: AgoraBase.h:3971
Definition: AgoraBase.h:1175
virtual int muteLocalVideoStream(bool mute)=0
IRtcEngineEventHandler * eventHandler
Definition: IAgoraRtcEngine.h:2627
virtual int stopPreview(VIDEO_SOURCE_TYPE sourceType)=0
virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode)=0
virtual void onIntraRequestReceived()
Definition: IAgoraRtcEngine.h:1440
Definition: IAgoraRtcEngine.h:409
int canvasHeight
Definition: IAgoraRtcEngine.h:459
virtual int setVoiceConversionPreset(VOICE_CONVERSION_PRESET preset)=0
int videoHeight
Definition: IAgoraRtcEngine.h:2841
Definition: AgoraBase.h:3605
virtual int enableLocalVideo(bool enabled)=0
virtual void onLeaveChannel(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1348
virtual int joinChannel(const char *token, const char *channelId, uid_t uid, const ChannelMediaOptions &options)=0
virtual int getAudioTrackCount()=0
virtual void onFirstRemoteVideoDecoded(uid_t uid, int width, int height, int elapsed) __deprecated
Definition: IAgoraRtcEngine.h:1521
virtual int createDataStream(int *streamId, DataStreamConfig &config)=0
uid_t uid
Definition: IAgoraRtcEngine.h:253
virtual int stopChannelMediaRelay()=0
Optional< THREAD_PRIORITY_TYPE > threadPriority
Definition: IAgoraRtcEngine.h:2680
virtual int registerAudioEncodedFrameObserver(const AudioEncodedFrameObserverConfig &config, IAudioEncodedFrameObserver *observer)=0
virtual int resumeAllEffects()=0
virtual int joinChannelWithUserAccountEx(const char *token, const char *channelId, const char *userAccount, const ChannelMediaOptions &options, IRtcEngineEventHandler *eventHandler)=0
int width
Definition: IAgoraRtcEngine.h:493
virtual int pauseAudioMixing()=0
virtual int setPlaybackAudioFrameBeforeMixingParameters(int sampleRate, int channel)=0
Definition: AgoraRefPtr.h:44
virtual IVideoDeviceCollection * enumerateVideoDevices()=0
bool stopAudioMixing
Definition: IAgoraRtcEngine.h:1166
virtual const char * getVersion(int *build)=0
int totalActiveTime
Definition: IAgoraRtcEngine.h:398
virtual int setAudioMixingPitch(int pitch)=0
int videoWidth
Definition: IAgoraRtcEngine.h:2836
virtual void onRemoteAudioTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate)
Definition: IAgoraRtcEngine.h:2247
const char * publishUrl
Definition: IAgoraRtcEngine.h:591
Definition: IAgoraRtcEngine.h:2985
uid_t remoteUid
Definition: IAgoraRtcEngine.h:2996
int lifecycle
Definition: IAgoraRtcEngine.h:573
virtual int startPreview()=0
LOCAL_PROXY_MODE mode
Definition: IAgoraRtcEngine.h:1153
virtual void onLocalAudioStats(const LocalAudioStats &stats)
Definition: IAgoraRtcEngine.h:1742
Definition: IAgoraRtcEngine.h:1135
virtual void onClientRoleChangeFailed(CLIENT_ROLE_CHANGE_FAILED_REASON reason, CLIENT_ROLE_TYPE currentRole)
Definition: IAgoraRtcEngine.h:2084
virtual int getDevice(int index, char deviceNameUTF8[MAX_DEVICE_ID_LENGTH], char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
int videoBitrate
Definition: IAgoraRtcEngine.h:2851
virtual void onLastmileQuality(int quality)
Definition: IAgoraRtcEngine.h:1477
char deviceId[MAX_DEVICE_ID_LENGTH]
Definition: IAgoraRtcEngine.h:653
virtual void onUserEnableVideo(uid_t uid, bool enabled) __deprecated
Definition: IAgoraRtcEngine.h:1692
virtual int setRemoteRenderMode(uid_t uid, media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
Definition: AgoraBase.h:3352
int sentFrameRate
Definition: IAgoraRtcEngine.h:261
Definition: AgoraBase.h:1855
const char ** ipList
Definition: IAgoraRtcEngine.h:1138
virtual int setDirectCdnStreamingVideoConfiguration(const VideoEncoderConfiguration &config)=0
virtual int createDataStream(int *streamId, bool reliable, bool ordered)=0
virtual int setVolumeOfEffect(int soundId, int volume)=0
virtual void onUserInfoUpdated(uid_t uid, const UserInfo &info)
Definition: IAgoraRtcEngine.h:2354
virtual void onNetworkTypeChanged(NETWORK_TYPE type)
Definition: IAgoraRtcEngine.h:2313
int videoFramerate
Definition: IAgoraRtcEngine.h:505
virtual int setDualStreamMode(SIMULCAST_STREAM_MODE mode, const SimulcastStreamConfig &streamConfig)=0
virtual int enableAudioVolumeIndication(int interval, int smooth, bool reportVad)=0
virtual int registerPacketObserver(IPacketObserver *observer)=0
virtual int unregisterMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type)=0
virtual int enableDualStreamMode(bool enabled, const SimulcastStreamConfig &streamConfig)=0
virtual void onLocalVideoTranscoderError(const TranscodingVideoStream &stream, VIDEO_TRANSCODER_ERROR error)
Definition: IAgoraRtcEngine.h:2471
virtual int getUserInfoByUid(uid_t uid, rtc::UserInfo *userInfo)=0
virtual int pauseAllEffects()=0
virtual int disableAudioSpectrumMonitor()=0
Definition: IAgoraRtcEngineEx.h:42
virtual void onFirstLocalAudioFramePublished(int elapsed)
Definition: IAgoraRtcEngine.h:1967
Definition: AgoraBase.h:97
int sentBitrate
Definition: IAgoraRtcEngine.h:257
virtual int getAudioMixingPublishVolume()=0
virtual int addVideoWatermark(const char *watermarkUrl, const WatermarkOptions &options)=0
virtual void onRejoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1227
int totalFrozenTime
Definition: IAgoraRtcEngine.h:384
virtual int stopPrimaryCustomAudioTrack()=0
virtual int setSubscribeVideoWhitelist(uid_t *uidList, int uidNumber)=0
virtual int setCloudProxy(CLOUD_PROXY_TYPE proxyType)=0
Definition: AgoraBase.h:1650
Definition: IAgoraRtcEngine.h:1194
double height
Definition: IAgoraRtcEngine.h:425
virtual int leaveChannel(const LeaveChannelOptions &options)=0
virtual int getDevice(char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
virtual int startAudioMixing(const char *filePath, bool loopback, int cycle, int startPos)=0
virtual void onUserMuteAudio(uid_t uid, bool muted)
Definition: IAgoraRtcEngine.h:1653
Definition: AgoraBase.h:1489
virtual int registerLocalUserAccount(const char *appId, const char *userAccount)=0
virtual void onUplinkNetworkInfoUpdated(const UplinkNetworkInfo &info)
Definition: IAgoraRtcEngine.h:1450
Definition: AgoraBase.h:5226
Definition: AgoraBase.h:3201
const char * backgroundColor
Definition: IAgoraRtcEngine.h:462
virtual int getAudioMixingCurrentPosition()=0
virtual int startDirectCdnStreaming(IDirectCdnStreamingEventHandler *eventHandler, const char *publishUrl, const DirectCdnStreamingMediaOptions &options)=0
virtual int registerAudioSpectrumObserver(agora::media::IAudioSpectrumObserver *observer)=0
virtual int startEchoTest(int intervalInSeconds)=0
QUALITY_ADAPT_INDICATION qualityAdaptIndication
Definition: IAgoraRtcEngine.h:308
Definition: AgoraBase.h:1833
virtual int setMixedAudioFrameParameters(int sampleRate, int channel, int samplesPerCall)=0
virtual int getVolumeOfEffect(int soundId)=0
virtual CONNECTION_STATE_TYPE getConnectionState()=0
const char * channelId
Definition: IAgoraRtcEngine.h:3009
virtual int setExtensionProperty(const char *provider, const char *extension, const char *key, const char *value, agora::media::MEDIA_SOURCE_TYPE type=agora::media::UNKNOWN_MEDIA_SOURCE)=0
virtual int enableEncryption(bool enabled, const EncryptionConfig &config)=0
virtual int enableContentInspect(bool enabled, const media::ContentInspectConfig &config)=0
virtual void onRemoteAudioStateChanged(uid_t uid, REMOTE_AUDIO_STATE state, REMOTE_AUDIO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:2025
virtual int enableCustomAudioLocalPlayback(int sourceId, bool enabled)=0
virtual int startRhythmPlayer(const char *sound1, const char *sound2, const AgoraRhythmPlayerConfig &config)=0
virtual int configRhythmPlayer(const AgoraRhythmPlayerConfig &config)=0
virtual int adjustAudioMixingPublishVolume(int volume)=0
virtual int getAudioMixingDuration()=0
virtual void onUserMuteVideo(uid_t userId, bool muted) __deprecated
Definition: IAgoraRtcEngine.h:1671
virtual void onVideoDeviceStateChanged(const char *deviceId, int deviceType, int deviceState)
Definition: IAgoraRtcEngine.h:1402
const char * appData
Definition: IAgoraRtcEngine.h:472
virtual void onAudioMixingPositionChanged(int64_t position)
Reports current AudioMixing progress.
Definition: IAgoraRtcEngine.h:1380
virtual int setRemoteVoicePosition(uid_t uid, double pan, double gain)=0
virtual int registerMediaMetadataObserver(IMetadataObserver *observer, IMetadataObserver::METADATA_TYPE type)=0
virtual void onRhythmPlayerStateChanged(RHYTHM_PLAYER_STATE_TYPE state, RHYTHM_PLAYER_ERROR_TYPE errorCode)
Definition: IAgoraRtcEngine.h:1849
virtual int startChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration)=0
Definition: AgoraBase.h:4095
int defaultLayout
Definition: IAgoraRtcEngine.h:570
virtual void onTranscodingUpdated()
Definition: IAgoraRtcEngine.h:2144
virtual int updateRtmpTranscoding(const LiveTranscoding &transcoding)=0
virtual void onWlAccMessage(WLACC_MESSAGE_REASON reason, WLACC_SUGGEST_ACTION action, const char *wlAccMsg)
Definition: IAgoraRtcEngine.h:2293
virtual void onRequestToken()
Definition: IAgoraRtcEngine.h:1933
virtual void onError(int err, const char *msg)
Definition: IAgoraRtcEngine.h:1253
Definition: AgoraBase.h:4971
virtual int startRtmpStreamWithoutTranscoding(const char *url)=0
int regionCount
Definition: IAgoraRtcEngine.h:469
agora::media::MEDIA_SOURCE_TYPE mediaSourceType
Definition: IAgoraRtcEngine.h:2989
virtual void onProxyConnected(const char *channel, uid_t uid, PROXY_TYPE proxyType, const char *localProxyIp, int elapsed)
Definition: IAgoraRtcEngine.h:1240
virtual int enableExtension(const char *provider, const char *extension, bool enable=true, agora::media::MEDIA_SOURCE_TYPE type=agora::media::UNKNOWN_MEDIA_SOURCE)=0
int height
Definition: IAgoraRtcEngine.h:556
virtual void onAudioMixingFinished() __deprecated
Definition: IAgoraRtcEngine.h:1389
const char * verifyDomainName
Definition: IAgoraRtcEngine.h:1150
Definition: IAgoraRtcEngine.h:7434
VIDEO_CODEC_TYPE codecType
Definition: IAgoraRtcEngine.h:317
uid_t localUid
Definition: IAgoraRtcEngine.h:3014
Definition: AgoraBase.h:3546
virtual int adjustAudioMixingPlayoutVolume(int volume)=0
int audioBitrate
Definition: IAgoraRtcEngine.h:517
virtual void onDirectCdnStreamingStateChanged(DIRECT_CDN_STREAMING_STATE state, DIRECT_CDN_STREAMING_ERROR error, const char *message)
Definition: IAgoraRtcEngine.h:2873
virtual void onAudioVolumeIndication(const AudioVolumeInfo *speakers, unsigned int speakerNumber, int totalVolume)
Definition: IAgoraRtcEngine.h:1330
virtual void onConnectionBanned()
Definition: IAgoraRtcEngine.h:1878
Definition: AgoraBase.h:2958
virtual int setLocalPublishFallbackOption(STREAM_FALLBACK_OPTIONS option)=0
bool dualStreamEnabled
Definition: IAgoraRtcEngine.h:328
virtual int setDualStreamMode(SIMULCAST_STREAM_MODE mode)=0
Definition: IAgoraRtcEngine.h:2832
uid_t uid
Definition: IAgoraRtcEngine.h:338
virtual void onUserOffline(uid_t uid, USER_OFFLINE_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:1637
virtual int setSubscribeAudioBlacklist(uid_t *uidList, int uidNumber)=0
virtual int stopRtmpStream(const char *url)=0
Definition: AgoraBase.h:1803
double y
Definition: IAgoraRtcEngine.h:419
virtual int stopAudioMixing()=0
virtual int queryCodecCapability(CodecCapInfo *codec_info, int &size)=0
Definition: IAgoraRtcEngine.h:548
virtual int setLogLevel(commons::LOG_LEVEL level)=0
commons::LogConfig logConfig
Definition: IAgoraRtcEngine.h:2675
virtual void onChannelMediaRelayEvent(int code)
Definition: IAgoraRtcEngine.h:2221
virtual int setRemoteDefaultVideoStreamType(VIDEO_STREAM_TYPE streamType)=0
virtual int setRemoteVideoStreamType(uid_t uid, VIDEO_STREAM_TYPE streamType)=0
Definition: AgoraBase.h:4987
int height
Definition: IAgoraRtcEngine.h:497
virtual int startRtmpStreamWithTranscoding(const char *url, const LiveTranscoding &transcoding)=0
virtual void onStreamMessageError(uid_t userId, int streamId, int code, int missed, int cached)
Definition: IAgoraRtcEngine.h:1914
virtual int setVideoEncoderConfiguration(const VideoEncoderConfiguration &config)=0
Definition: IAgoraRtcEngine.h:745
virtual int stopAllEffects()=0
virtual int pauseAllChannelMediaRelay()=0
int captureFrameHeight
Definition: IAgoraRtcEngine.h:270
virtual int startAudioMixing(const char *filePath, bool loopback, int cycle)=0
virtual int adjustLoopbackSignalVolume(int volume)=0
virtual int takeSnapshot(uid_t uid, const char *filePath)=0
save current time video frame to jpeg and write as a jpeg
const char * license
Definition: IAgoraRtcEngine.h:2650
int canvasWidth
Definition: IAgoraRtcEngine.h:454
bool stopMicrophoneRecording
Definition: IAgoraRtcEngine.h:1178
const char * rawStreamUrl
Definition: IAgoraRtcEngine.h:595
virtual void onRemoteVideoStats(const RemoteVideoStats &stats)
Definition: IAgoraRtcEngine.h:1788
virtual int setAudioEffectParameters(AUDIO_EFFECT_PRESET preset, int param1, int param2)=0
virtual int setColorEnhanceOptions(bool enabled, const ColorEnhanceOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
virtual void onTokenPrivilegeWillExpire(const char *token)
Definition: IAgoraRtcEngine.h:1949
int targetFrameRate
Definition: IAgoraRtcEngine.h:301
int audioBitrate
Definition: IAgoraRtcEngine.h:2856
virtual int setRemoteSubscribeFallbackOption(STREAM_FALLBACK_OPTIONS option)=0
virtual int getExtensionProperty(const char *provider, const char *extension, const ExtensionInfo &extensionInfo, const char *key, char *value, int buf_len)=0
CHANNEL_PROFILE_TYPE channelProfile
Definition: IAgoraRtcEngine.h:2645
virtual int setEarMonitoringAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
virtual void onContentInspectResult(media::CONTENT_INSPECT_RESULT result)
Definition: IAgoraRtcEngine.h:2046
virtual void onAudioDeviceStateChanged(const char *deviceId, int deviceType, int deviceState)
Definition: IAgoraRtcEngine.h:1368
Definition: AgoraBase.h:4706
virtual void onAudioQuality(uid_t uid, int quality, unsigned short delay, unsigned short lost)
Definition: IAgoraRtcEngine.h:1272
Definition: IAgoraRtcEngine.h:1160
virtual void onRemoteAudioStats(const RemoteAudioStats &stats)
Definition: IAgoraRtcEngine.h:1756
virtual int setEffectsVolume(int volume)=0
virtual int playAllEffects(int loopCount, double pitch, double pan, int gain, bool publish=false)=0
int fps
Definition: IAgoraRtcEngine.h:2846
virtual int stopLastmileProbeTest()=0
virtual int setAdvancedAudioOptions(AdvancedAudioOptions &options, int sourceType=0)=0
Definition: IAgoraRtcEngine.h:2480
virtual void onRtmpStreamingStateChanged(const char *url, RTMP_STREAM_PUBLISH_STATE state, RTMP_STREAM_PUBLISH_ERROR_TYPE errCode)
Definition: IAgoraRtcEngine.h:2114
virtual int renewToken(const char *token)=0
virtual int pauseAudio() __deprecated=0
virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile)=0
virtual int sendStreamMessage(int streamId, const char *data, size_t length)=0
unsigned short txPacketLossRate
Definition: IAgoraRtcEngine.h:321
virtual void onLocalVideoStats(VIDEO_SOURCE_TYPE source, const LocalVideoStats &stats)
Definition: IAgoraRtcEngine.h:1774
int avSyncTimeMs
Definition: IAgoraRtcEngine.h:393
bool domainLimit
Definition: IAgoraRtcEngine.h:2696
Definition: AgoraBase.h:4048
virtual void onStreamMessage(uid_t userId, int streamId, const char *data, size_t length, uint64_t sentTs)
Definition: IAgoraRtcEngine.h:1893
int decoderOutputFrameRate
Definition: IAgoraRtcEngine.h:365
void * context
Definition: IAgoraRtcEngine.h:2640
virtual void onFirstLocalVideoFrame(VIDEO_SOURCE_TYPE source, int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1489
virtual void onJoinChannelSuccess(const char *channel, uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1209
virtual int setEncryptionMode(const char *encryptionMode) __deprecated=0
int zOrder
Definition: IAgoraRtcEngine.h:429
int captureFrameRate
Definition: IAgoraRtcEngine.h:264
virtual int startPrimaryCustomAudioTrack(const AudioTrackConfig &config)=0
Definition: AgoraBase.h:4112
virtual int muteRemoteVideoStream(uid_t uid, bool mute)=0
virtual int setLowlightEnhanceOptions(bool enabled, const LowlightEnhanceOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
Definition: IAgoraRtcEngine.h:2524
int frozenRate
Definition: IAgoraRtcEngine.h:388
virtual int enableLocalAudio(bool enabled)=0
virtual int setupLocalVideo(const VideoCanvas &canvas)=0
int appDataLength
Definition: IAgoraRtcEngine.h:475
virtual int setLocalVoiceReverb(AUDIO_REVERB_TYPE reverbKey, int value)=0
virtual int stopEffect(int soundId)=0
double alpha
Definition: IAgoraRtcEngine.h:434
virtual void release(bool sync=false)=0
int encodedFrameHeight
Definition: IAgoraRtcEngine.h:291
Optional< int > audioProcessingChannels
Definition: IAgoraRtcEngine.h:749
virtual void onLocalAudioStateChanged(LOCAL_AUDIO_STREAM_STATE state, LOCAL_AUDIO_STREAM_ERROR error)
Definition: IAgoraRtcEngine.h:2008
int superResolutionType
Definition: IAgoraRtcEngine.h:406
virtual int getUserInfoByUserAccount(const char *userAccount, rtc::UserInfo *userInfo)=0
Definition: AgoraBase.h:3860
virtual int setDefaultMuteAllRemoteAudioStreams(bool mute) __deprecated=0
virtual int updateChannelMediaRelay(const ChannelMediaRelayConfiguration &configuration)=0
virtual int setLogFile(const char *filePath)=0
virtual int enableVirtualBackground(bool enabled, VirtualBackgroundSource backgroundSource, SegmentationProperty segproperty, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
virtual int setCameraCapturerConfiguration(const CameraCapturerConfiguration &config)=0
int delay __deprecated
Definition: IAgoraRtcEngine.h:346
int width
Definition: IAgoraRtcEngine.h:552
double width
Definition: IAgoraRtcEngine.h:423
virtual int startEchoTest(const EchoTestConfiguration &config)=0
virtual int getEffectsVolume()=0
virtual void onEncryptionError(ENCRYPTION_ERROR_TYPE errorType)
Definition: IAgoraRtcEngine.h:2321
virtual int getEffectDuration(const char *filePath)=0
Definition: AgoraBase.h:1640
Definition: IAgoraLog.h:82
virtual void onLocalVideoStateChanged(VIDEO_SOURCE_TYPE source, LOCAL_VIDEO_STREAM_STATE state, LOCAL_VIDEO_STREAM_ERROR error)
Definition: IAgoraRtcEngine.h:1555
virtual int setPlaybackAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
virtual int setLogFileSize(unsigned int fileSizeInKBytes)=0
bool stopAllEffect
Definition: IAgoraRtcEngine.h:1172
AGORA_API agora::rtc::IRtcEngine *AGORA_CALL createAgoraRtcEngine()
virtual int setBeautyEffectOptions(bool enabled, const BeautyOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
virtual int startAudioRecording(const AudioRecordingConfiguration &config)=0
bool autoRegisterAgoraExtensions
Definition: IAgoraRtcEngine.h:2703
Definition: IAgoraRtcEngine.h:249
virtual int startAudioFrameDump(const char *channel_id, uid_t user_id, const char *location, const char *uuid, const char *passwd, long duration_ms, bool auto_upload)=0
virtual int resumeAllChannelMediaRelay()=0
virtual int setExtensionProperty(const char *provider, const char *extension, const ExtensionInfo &extensionInfo, const char *key, const char *value)=0
virtual void onUserStateChanged(uid_t uid, uint32_t state)
Definition: IAgoraRtcEngine.h:1702
Definition: IAgoraRtcEngine.h:2863
virtual void onAudioSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2379
virtual int startSecondaryCustomAudioTrack(const AudioTrackConfig &config)=0
Definition: AgoraBase.h:5124
virtual void onWlAccStats(WlAccStats currentStats, WlAccStats averageStats)
Definition: IAgoraRtcEngine.h:2304
virtual void onClientRoleChanged(CLIENT_ROLE_TYPE oldRole, CLIENT_ROLE_TYPE newRole)
Definition: IAgoraRtcEngine.h:2073
virtual int setAudioMixingPosition(int pos)=0
virtual void onVideoPublishStateChanged(VIDEO_SOURCE_TYPE source, const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2428
int receivedBitrate
Definition: IAgoraRtcEngine.h:362
Definition: AgoraBase.h:2239
Definition: AgoraBase.h:3480
virtual int enableVideoImageSource(bool enable, const ImageTrackOptions &options)=0
enable or disable video image source to replace the current video source published or resume it
virtual void onFirstRemoteVideoFrame(uid_t userId, int width, int height, int elapsed)
Definition: IAgoraRtcEngine.h:1593
int encoderOutputFrameRate
Definition: IAgoraRtcEngine.h:285
virtual int unregisterAudioSpectrumObserver(agora::media::IAudioSpectrumObserver *observer)=0
virtual int setupRemoteVideo(const VideoCanvas &canvas)=0
virtual void onLastmileProbeResult(const LastmileProbeResult &result)
Definition: IAgoraRtcEngine.h:1286
virtual int startDeviceTest(view_t hwnd)=0
virtual int setLocalVideoMirrorMode(VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
virtual void onConnectionLost()
Definition: IAgoraRtcEngine.h:1861
bool owner
Definition: IAgoraRtcEngine.h:578
virtual int setInEarMonitoringVolume(int volume)=0
virtual int setDefaultMuteAllRemoteVideoStreams(bool mute) __deprecated=0
virtual int enableSoundPositionIndication(bool enabled)=0
const Region * regions
Definition: IAgoraRtcEngine.h:466
virtual int stopPreview()=0
virtual int destroyCustomEncodedVideoTrack(video_track_id_t video_track_id)=0
virtual void onVideoSizeChanged(VIDEO_SOURCE_TYPE sourceType, uid_t uid, int width, int height, int rotation)
Definition: IAgoraRtcEngine.h:1536
virtual int muteRecordingSignal(bool mute)=0
virtual void onLocalUserRegistered(uid_t uid, const char *userAccount)
Definition: IAgoraRtcEngine.h:2341
int encodedFrameWidth
Definition: IAgoraRtcEngine.h:288
Definition: AgoraBase.h:1932
Definition: AgoraBase.h:4007
virtual int setVoiceBeautifierParameters(VOICE_BEAUTIFIER_PRESET preset, int param1, int param2)=0
virtual int muteRemoteAudioStream(uid_t uid, bool mute)=0
virtual int setVideoDenoiserOptions(bool enabled, const VideoDenoiserOptions &options, agora::media::MEDIA_SOURCE_TYPE type=agora::media::PRIMARY_CAMERA_SOURCE)=0
virtual void onSnapshotTaken(uid_t uid, const char *filePath, int width, int height, int errCode)
snapshot taken callback
Definition: IAgoraRtcEngine.h:2059
virtual int destroyCustomVideoTrack(video_track_id_t video_track_id)=0
virtual int setVoiceConversionParameters(VOICE_CONVERSION_PRESET preset, int param1, int param2)=0
virtual int adjustAudioMixingVolume(int volume)=0
Definition: AgoraBase.h:1897
Definition: AgoraBase.h:3080
virtual void onAudioDeviceVolumeChanged(MEDIA_DEVICE_TYPE deviceType, int volume, bool muted)
Definition: IAgoraRtcEngine.h:2095
virtual int leaveChannel()=0
virtual int setClientRole(CLIENT_ROLE_TYPE role)=0
int width
Definition: IAgoraRtcEngine.h:354
virtual void onMediaDeviceChanged(int deviceType)
Definition: IAgoraRtcEngine.h:1415
AUDIO_SCENARIO_TYPE audioScenario
Definition: IAgoraRtcEngine.h:2659
int rendererOutputFrameRate
Definition: IAgoraRtcEngine.h:368
virtual int setVoiceBeautifierPreset(VOICE_BEAUTIFIER_PRESET preset)=0
virtual int rate(const char *callId, int rating, const char *description)=0
int targetBitrate
Definition: IAgoraRtcEngine.h:298
virtual int getCallId(agora::util::AString &callId)=0
Definition: IAgoraRtcEngine.h:489
virtual int uploadLogFile(agora::util::AString &requestId)=0
int encodedFrameCount
Definition: IAgoraRtcEngine.h:312
int bitrate
Definition: IAgoraRtcEngine.h:564
int regulatedCaptureFrameRate
Definition: IAgoraRtcEngine.h:274
virtual int enableWirelessAccelerate(bool enabled)=0
virtual video_track_id_t createCustomEncodedVideoTrack(const SenderOptions &sender_option)=0
Definition: IAgoraRtcEngine.h:2623
virtual int unloadAllEffects()=0
Definition: IAgoraRtcEngine.h:3034
virtual int setClientRole(CLIENT_ROLE_TYPE role, const ClientRoleOptions &options)=0
virtual int enableLoopbackRecording(bool enabled, const char *deviceName=NULL)=0
virtual void onActiveSpeaker(uid_t userId)
Definition: IAgoraRtcEngine.h:2044
Definition: IAgoraRtcEngine.h:666
virtual int setAudioMixingDualMonoMode(media::AUDIO_MIXING_DUAL_MONO_MODE mode)=0
Definition: AgoraBase.h:4620
virtual int getEffectCurrentPosition(int soundId)=0
virtual int resumeAudio() __deprecated=0
virtual int muteLocalAudioStream(bool mute)=0
virtual int joinChannelWithUserAccount(const char *token, const char *channelId, const char *userAccount)=0
virtual int setChannelProfile(CHANNEL_PROFILE_TYPE profile)=0
int frameLossRate
Definition: IAgoraRtcEngine.h:371
virtual int updateDirectCdnStreamingMediaOptions(const DirectCdnStreamingMediaOptions &options)=0
virtual int setLocalVoicePitch(double pitch)=0
int height
Definition: IAgoraRtcEngine.h:358
int captureFrameWidth
Definition: IAgoraRtcEngine.h:267
virtual int setAudioEffectPreset(AUDIO_EFFECT_PRESET preset)=0
virtual int setSubscribeVideoBlacklist(uid_t *uidList, int uidNumber)=0
bool useExternalEglContext
Definition: IAgoraRtcEngine.h:2689
virtual int preloadEffect(int soundId, const char *filePath, int startPos=0)=0
virtual int stopEchoTest()=0
virtual int startAudioRecording(const char *filePath, AUDIO_RECORDING_QUALITY_TYPE quality)=0
virtual int enableRemoteSuperResolution(uid_t userId, bool enable)=0
virtual int setLocalVoiceEqualization(AUDIO_EQUALIZATION_BAND_FREQUENCY bandFrequency, int bandGain)=0
Definition: AgoraBase.h:153
Definition: IAgoraRtcEngine.h:616
virtual int getNetworkType()=0
int ipListSize
Definition: IAgoraRtcEngine.h:1141
AUDIO_SAMPLE_RATE_TYPE audioSampleRate
Definition: IAgoraRtcEngine.h:513
virtual int enableExtension(const char *provider, const char *extension, const ExtensionInfo &extensionInfo, bool enable=true)=0
virtual void onConnectionInterrupted()
Definition: IAgoraRtcEngine.h:1874
int framerate
Definition: IAgoraRtcEngine.h:560
virtual int resumeEffect(int soundId)=0
const char * injectStreamUrl
Definition: IAgoraRtcEngine.h:587
virtual void onAudioRoutingChanged(int routing)
Definition: IAgoraRtcEngine.h:2159
virtual int playEffect(int soundId, const char *filePath, int loopCount, double pitch, double pan, int gain, bool publish=false, int startPos=0)=0
int videoBitrate
Definition: IAgoraRtcEngine.h:509
CAPTURE_BRIGHTNESS_LEVEL_TYPE captureBrightnessLevel
Definition: IAgoraRtcEngine.h:324
virtual int enableVideo()=0
virtual int setRemoteUserSpatialAudioParams(uid_t uid, const agora::SpatialAudioParams ¶ms)=0
virtual int enableDualStreamMode(bool enabled)=0
virtual int setHeadphoneEQParameters(int lowGain, int highGain)=0
const char ** domainList
Definition: IAgoraRtcEngine.h:1144
virtual void onFirstLocalVideoFramePublished(VIDEO_SOURCE_TYPE source, int elapsed)
Definition: IAgoraRtcEngine.h:1501
virtual int startEchoTest()=0
virtual int updateChannelMediaOptions(const ChannelMediaOptions &options)=0
virtual int initialize(const RtcEngineContext &context)=0
virtual void onNetworkQuality(uid_t uid, int txQuality, int rxQuality)
Definition: IAgoraRtcEngine.h:1428
virtual int resumeAudioMixing()=0
Definition: IAgoraRtcEngine.h:755
virtual int unloadEffect(int soundId)=0
Definition: IAgoraRtcEngine.h:410
virtual int stopRhythmPlayer()=0
virtual int getAudioMixingPlayoutVolume()=0
virtual int startLastmileProbeTest(const LastmileProbeConfig &config)=0
virtual void onVideoSubscribeStateChanged(const char *channel, uid_t uid, STREAM_SUBSCRIBE_STATE oldState, STREAM_SUBSCRIBE_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2396
virtual int getExtensionProperty(const char *provider, const char *extension, const char *key, char *value, int buf_len, agora::media::MEDIA_SOURCE_TYPE type=agora::media::UNKNOWN_MEDIA_SOURCE)=0
virtual int adjustPlaybackSignalVolume(int volume)=0
virtual void onRemoteVideoStateChanged(uid_t uid, REMOTE_VIDEO_STATE state, REMOTE_VIDEO_STATE_REASON reason, int elapsed)
Definition: IAgoraRtcEngine.h:1572
virtual int setExtensionProviderProperty(const char *provider, const char *key, const char *value)=0
int injectStreamWidth
Definition: IAgoraRtcEngine.h:581
VIDEO_STREAM_TYPE rxStreamType
Definition: IAgoraRtcEngine.h:378
virtual int enableAudio()=0
virtual int stopDeviceTest()=0
virtual int disableVideo()=0
virtual int setSubscribeAudioWhitelist(uid_t *uidList, int uidNumber)=0
int videoGop
Definition: IAgoraRtcEngine.h:501
Definition: AgoraBase.h:5450
virtual int setLogFilter(unsigned int filter)=0
virtual int getLoopbackRecordingVolume()=0
virtual void onPermissionError(PERMISSION_TYPE permissionType)
Definition: IAgoraRtcEngine.h:2329
virtual void onUploadLogResult(const char *requestId, bool success, UPLOAD_ERROR_REASON reason)
Definition: IAgoraRtcEngine.h:2364
virtual int addVideoWatermark(const RtcImage &watermark)=0
virtual int setHeadphoneEQPreset(HEADPHONE_EQUALIZER_PRESET preset)=0
virtual int setLocalAccessPoint(const LocalAccessPointConfiguration &config)=0
virtual void onRemoteVideoTransportStats(uid_t uid, unsigned short delay, unsigned short lost, unsigned short rxKBitRate)
Definition: IAgoraRtcEngine.h:2268
virtual int stopSecondaryCustomAudioTrack()=0
virtual video_track_id_t createCustomVideoTrack()=0
virtual int disableAudio()=0
virtual int muteAllRemoteAudioStreams(bool mute)=0
virtual void onRtcStats(const RtcStats &stats)
Definition: IAgoraRtcEngine.h:1357
virtual void onUserJoined(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1618
Definition: IAgoraRtcEngine.h:7427
virtual int sendCustomReportMessage(const char *id, const char *category, const char *event, const char *label, int value)=0
int packetLossRate
Definition: IAgoraRtcEngine.h:374
Definition: AgoraBase.h:2946
Definition: AgoraBase.h:5416
int rendererOutputFrameRate
Definition: IAgoraRtcEngine.h:294
virtual void onDownlinkNetworkInfoUpdated(const DownlinkNetworkInfo &info)
Definition: IAgoraRtcEngine.h:1461
virtual void onAudioMixingStateChanged(AUDIO_MIXING_STATE_TYPE state, AUDIO_MIXING_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:1836
virtual void onFirstRemoteAudioFrame(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1977
virtual int setLocalRenderMode(media::base::RENDER_MODE_TYPE renderMode, VIDEO_MIRROR_MODE_TYPE mirrorMode)=0
virtual int setAudioProfile(AUDIO_PROFILE_TYPE profile, AUDIO_SCENARIO_TYPE scenario) __deprecated=0
unsigned int areaCode
Definition: IAgoraRtcEngine.h:2670
virtual void onLicenseValidationFailure(LICENSE_ERROR_TYPE error)
Definition: IAgoraRtcEngine.h:1958
Definition: IAgoraRtcEngine.h:647
virtual int selectAudioTrack(int index)=0
Definition: IAgoraRtcEngine.h:334
virtual int startAudioRecording(const char *filePath, int sampleRate, AUDIO_RECORDING_QUALITY_TYPE quality)=0
int injectStreamHeight
Definition: IAgoraRtcEngine.h:584
int domainListSize
Definition: IAgoraRtcEngine.h:1147
virtual int joinChannel(const char *token, const char *channelId, const char *info, uid_t uid)=0
Definition: AgoraBase.h:2191
virtual int setRecordingAudioFrameParameters(int sampleRate, int channel, RAW_AUDIO_FRAME_OP_MODE_TYPE mode, int samplesPerCall)=0
virtual void onUserEnableLocalVideo(uid_t uid, bool enabled) __deprecated
Definition: IAgoraRtcEngine.h:1717
virtual int setDevice(const char deviceIdUTF8[MAX_DEVICE_ID_LENGTH])=0
virtual void onChannelMediaRelayStateChanged(int state, int code)
Definition: IAgoraRtcEngine.h:2193
virtual int complain(const char *callId, const char *description)=0
virtual int clearVideoWatermarks()=0
virtual int stopAudioRecording()=0
virtual void onAudioPublishStateChanged(const char *channel, STREAM_PUBLISH_STATE oldState, STREAM_PUBLISH_STATE newState, int elapseSinceLastState)
Definition: IAgoraRtcEngine.h:2412
virtual void onFirstRemoteAudioDecoded(uid_t uid, int elapsed)
Definition: IAgoraRtcEngine.h:1989
virtual int startPreview(VIDEO_SOURCE_TYPE sourceType)=0
Definition: AgoraBase.h:3930
uid_t uid
Definition: IAgoraRtcEngine.h:413
virtual void onConnectionStateChanged(CONNECTION_STATE_TYPE state, CONNECTION_CHANGED_REASON_TYPE reason)
Definition: IAgoraRtcEngine.h:2281
Definition: AgoraBase.h:4167
double x
Definition: IAgoraRtcEngine.h:416