Agora Java API Reference for Android
|
7 #pragma once // NOLINT(build/header_guard)
14 #ifndef OPTIONAL_ENUM_SIZE_T
15 #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
16 #define OPTIONAL_ENUM_SIZE_T enum : size_t
18 #define OPTIONAL_ENUM_SIZE_T enum
22 #if !defined(__APPLE__)
29 typedef unsigned int uid_t;
30 typedef unsigned int track_id_t;
31 typedef unsigned int conn_id_t;
32 typedef unsigned int video_track_id_t;
34 static const unsigned int DEFAULT_CONNECTION_ID = 0;
35 static const unsigned int DUMMY_CONNECTION_ID = (std::numeric_limits<unsigned int>::max)();
38 struct EncodedVideoFrameInfo;
60 ROUTE_HEADSETNOMIC = 2,
64 ROUTE_SPEAKERPHONE = 3,
68 ROUTE_LOUDSPEAKER = 4,
72 ROUTE_HEADSETBLUETOOTH = 5,
84 ROUTE_DISPLAYPORT = 8,
94 enum BYTES_PER_SAMPLE {
98 TWO_BYTES_PER_SAMPLE = 2,
104 size_t frames_per_buffer;
109 frames_per_buffer(0) {}
112 enum RAW_AUDIO_FRAME_OP_MODE_TYPE {
117 RAW_AUDIO_FRAME_OP_MODE_READ_ONLY = 0,
123 RAW_AUDIO_FRAME_OP_MODE_READ_WRITE = 2,
132 enum MEDIA_SOURCE_TYPE {
136 AUDIO_PLAYOUT_SOURCE = 0,
140 AUDIO_RECORDING_SOURCE = 1,
144 PRIMARY_CAMERA_SOURCE = 2,
148 SECONDARY_CAMERA_SOURCE = 3,
152 PRIMARY_SCREEN_SOURCE = 4,
156 SECONDARY_SCREEN_SOURCE = 5,
160 CUSTOM_VIDEO_SOURCE = 6,
164 MEDIA_PLAYER_SOURCE = 7,
168 RTC_IMAGE_PNG_SOURCE = 8,
172 RTC_IMAGE_JPEG_SOURCE = 9,
176 RTC_IMAGE_GIF_SOURCE = 10,
180 REMOTE_VIDEO_SOURCE = 11,
184 TRANSCODED_VIDEO_SOURCE = 12,
188 UNKNOWN_MEDIA_SOURCE = 100
192 #define MAX_CONTENT_INSPECT_MODULE_COUNT 32
193 enum CONTENT_INSPECT_RESULT {
194 CONTENT_INSPECT_NEUTRAL = 1,
195 CONTENT_INSPECT_SEXY = 2,
196 CONTENT_INSPECT_PORN = 3,
199 enum CONTENT_INSPECT_TYPE {
203 CONTENT_INSPECT_INVALID = 0,
207 CONTENT_INSPECT_MODERATION = 1,
211 CONTENT_INSPECT_SUPERVISION = 2
224 type = CONTENT_INSPECT_INVALID;
231 const char* extraInfo;
242 extraInfo = rth.extraInfo;
252 typedef void* view_t;
254 typedef const char* user_id_t;
256 static const uint8_t kMaxCodecNameLength = 50;
268 uint8_t audioLevelIndication;
271 audioLevelIndication(127) {}
307 kMaxDataSizeSamples = 3840,
309 kMaxDataSizeBytes = kMaxDataSizeSamples *
sizeof(int16_t),
342 if (length > kMaxDataSizeSamples) {
343 length = kMaxDataSizeSamples;
346 memcpy(this->data_, src.
data_, length *
sizeof(int16_t));
360 AudioPcmFrame(
const AudioPcmFrame& src)
366 size_t length = src.samples_per_channel_ * src.num_channels_;
367 if (length > kMaxDataSizeSamples) {
368 length = kMaxDataSizeSamples;
371 memcpy(this->data_, src.data_, length *
sizeof(int16_t));
377 enum AUDIO_DUAL_MONO_MODE {
379 AUDIO_DUAL_MONO_STEREO = 0,
381 AUDIO_DUAL_MONO_L = 1,
383 AUDIO_DUAL_MONO_R = 2,
385 AUDIO_DUAL_MONO_MIX = 3
405 enum VIDEO_PIXEL_FORMAT {
409 VIDEO_PIXEL_DEFAULT = 0,
413 VIDEO_PIXEL_I420 = 1,
417 VIDEO_PIXEL_BGRA = 2,
421 VIDEO_PIXEL_NV21 = 3,
425 VIDEO_PIXEL_RGBA = 4,
429 VIDEO_PIXEL_NV12 = 8,
433 VIDEO_TEXTURE_2D = 10,
437 VIDEO_TEXTURE_OES = 11,
441 VIDEO_CVPIXEL_NV12 = 12,
445 VIDEO_CVPIXEL_I420 = 13,
449 VIDEO_CVPIXEL_BGRA = 14,
453 VIDEO_PIXEL_I422 = 16,
459 enum RENDER_MODE_TYPE {
464 RENDER_MODE_HIDDEN = 1,
475 RENDER_MODE_ADAPTIVE __deprecated = 3,
481 enum VIDEO_SOURCE_TYPE {
485 CAMERA_SOURCE_FRONT = 0,
489 CAMERA_SOURCE_BACK = 1,
493 VIDEO_SOURCE_UNSPECIFIED = 2,
502 format(VIDEO_PIXEL_DEFAULT),
646 type(VIDEO_PIXEL_DEFAULT),
756 virtual bool isExternal() {
return true; }
757 virtual VIDEO_PIXEL_FORMAT getVideoFormatPreference() {
return VIDEO_PIXEL_DEFAULT; }
760 enum MEDIA_PLAYER_SOURCE_TYPE {
766 MEDIA_PLAYER_SOURCE_DEFAULT,
772 MEDIA_PLAYER_SOURCE_FULL_FEATURED,
777 MEDIA_PLAYER_SOURCE_SIMPLE,
780 enum VIDEO_MODULE_POSITION {
781 POSITION_POST_CAPTURER = 1 << 0,
782 POSITION_PRE_RENDERER = 1 << 1,
783 POSITION_PRE_ENCODER = 1 << 2,
784 POSITION_POST_FILTERS = 1 << 3,
803 enum { MAX_HANDLE_TIME_CNT = 10 };
853 AUDIO_FRAME_POSITION_NONE = 0x0000,
891 rtc::RAW_AUDIO_FRAME_OP_MODE_TYPE mode;
899 AudioParams(
int samplerate,
int channel, rtc::RAW_AUDIO_FRAME_OP_MODE_TYPE type,
int samplesPerCall) :
sample_rate(samplerate), channels(channel), mode(type),
samples_per_call(samplesPerCall) {}
903 virtual ~IAudioFrameObserverBase() {}
1140 enum VIDEO_FRAME_PROCESS_MODE {
1141 PROCESS_MODE_READ_ONLY,
1142 PROCESS_MODE_READ_WRITE,
1187 virtual bool onSecondaryCameraCaptureVideoFrame(
VideoFrame& videoFrame) = 0;
1225 virtual bool onPreEncodeScreenVideoFrame(
VideoFrame& videoFrame) = 0;
1244 virtual bool onSecondaryScreenCaptureVideoFrame(
VideoFrame& videoFrame) = 0;
1246 virtual bool onSecondaryPreEncodeScreenVideoFrame(
VideoFrame& videoFrame) = 0;
1267 virtual bool onTranscodedVideoFrame(
VideoFrame& videoFrame) = 0;
1274 return PROCESS_MODE_READ_ONLY;
1282 virtual base::VIDEO_PIXEL_FORMAT getVideoFormatPreference() {
return base::VIDEO_PIXEL_DEFAULT; }
1320 return base::POSITION_POST_CAPTURER | base::POSITION_PRE_RENDERER;
1336 enum EXTERNAL_VIDEO_SOURCE_TYPE {
1344 ENCODED_VIDEO_FRAME,
1352 enum MediaRecorderContainerFormat {
1363 enum MediaRecorderStreamType {
1367 STREAM_TYPE_AUDIO = 0x01,
1371 STREAM_TYPE_VIDEO = 0x02,
1375 STREAM_TYPE_BOTH = STREAM_TYPE_AUDIO | STREAM_TYPE_VIDEO,
1382 enum RecorderState {
1386 RECORDER_STATE_ERROR = -1,
1390 RECORDER_STATE_START = 2,
1394 RECORDER_STATE_STOP = 3,
1401 enum RecorderErrorCode {
1405 RECORDER_ERROR_NONE = 0,
1409 RECORDER_ERROR_WRITE_FAILED = 1,
1413 RECORDER_ERROR_NO_STREAM = 2,
1417 RECORDER_ERROR_OVER_MAX_DURATION = 3,
1421 RECORDER_ERROR_CONFIG_CHANGED = 4,
ContentInspectModule modules[MAX_CONTENT_INSPECT_MODULE_COUNT]
Definition: AgoraMediaBase.h:236
Definition: AgoraMediaBase.h:101
Definition: AgoraBase.h:1510
Definition: AgoraMediaBase.h:214
int moduleCount
Definition: AgoraMediaBase.h:239
unsigned int interval
Definition: AgoraMediaBase.h:222
CONTENT_INSPECT_TYPE type
Definition: AgoraMediaBase.h:218
Definition: AgoraMediaBase.h:230