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;
33 static const unsigned int DEFAULT_CONNECTION_ID = 0;
34 static const unsigned int DUMMY_CONNECTION_ID = (std::numeric_limits<unsigned int>::max)();
37 struct EncodedVideoFrameInfo;
70 ROUTE_HEADSETBLUETOOTH,
81 enum NLP_AGGRESSIVENESS {
82 NLP_NOT_SPECIFIED = 0,
86 NLP_SUPER_AGGRESSIVE = 4,
93 enum BYTES_PER_SAMPLE {
97 TWO_BYTES_PER_SAMPLE = 2,
103 size_t frames_per_buffer;
108 frames_per_buffer(0) {}
111 enum RAW_AUDIO_FRAME_OP_MODE_TYPE {
116 RAW_AUDIO_FRAME_OP_MODE_READ_ONLY = 0,
122 RAW_AUDIO_FRAME_OP_MODE_READ_WRITE = 2,
131 enum MEDIA_SOURCE_TYPE {
135 AUDIO_PLAYOUT_SOURCE = 0,
139 AUDIO_RECORDING_SOURCE = 1,
143 PRIMARY_CAMERA_SOURCE = 2,
147 SECONDARY_CAMERA_SOURCE = 3,
151 PRIMARY_SCREEN_SOURCE = 4,
155 SECONDARY_SCREEN_SOURCE = 5,
159 CUSTOM_VIDEO_SOURCE = 6,
163 MEDIA_PLAYER_SOURCE = 7,
167 RTC_IMAGE_PNG_SOURCE = 8,
171 RTC_IMAGE_JPEG_SOURCE = 9,
175 RTC_IMAGE_GIF_SOURCE = 10,
179 REMOTE_VIDEO_SOURCE = 11,
183 TRANSCODED_VIDEO_SOURCE = 12,
187 UNKNOWN_MEDIA_SOURCE = 100
191 typedef void* view_t;
193 typedef const char* user_id_t;
195 static const uint8_t kMaxCodecNameLength = 50;
200 enum MAX_METADATA_SIZE_TYPE {
201 MAX_METADATA_SIZE_IN_BYTE = 1024
214 uint8_t audioLevelIndication;
217 audioLevelIndication(127) {}
220 enum AUDIO_PROCESSING_CHANNELS {
221 AUDIO_PROCESSING_MONO = 1,
222 AUDIO_PROCESSING_STEREO = 2,
226 AUDIO_PROCESSING_CHANNELS audioProcessingChannels;
263 kMaxDataSizeSamples = 3840,
265 kMaxDataSizeBytes = kMaxDataSizeSamples *
sizeof(int16_t),
298 if (length > kMaxDataSizeSamples) {
299 length = kMaxDataSizeSamples;
302 memcpy(this->data_, src.
data_, length *
sizeof(int16_t));
316 AudioPcmFrame(
const AudioPcmFrame& src)
322 size_t length = src.samples_per_channel_ * src.num_channels_;
323 if (length > kMaxDataSizeSamples) {
324 length = kMaxDataSizeSamples;
327 memcpy(this->data_, src.data_, length *
sizeof(int16_t));
333 enum AUDIO_DUAL_MONO_MODE {
335 AUDIO_DUAL_MONO_STEREO = 0,
337 AUDIO_DUAL_MONO_L = 1,
339 AUDIO_DUAL_MONO_R = 2,
341 AUDIO_DUAL_MONO_MIX = 3
361 enum VIDEO_PIXEL_FORMAT {
365 VIDEO_PIXEL_UNKNOWN = 0,
369 VIDEO_PIXEL_I420 = 1,
373 VIDEO_PIXEL_BGRA = 2,
377 VIDEO_PIXEL_NV21 = 3,
381 VIDEO_PIXEL_RGBA = 4,
385 VIDEO_PIXEL_NV12 = 8,
389 VIDEO_TEXTURE_2D = 10,
393 VIDEO_TEXTURE_OES = 11,
397 VIDEO_PIXEL_I422 = 16,
403 enum RENDER_MODE_TYPE {
408 RENDER_MODE_HIDDEN = 1,
419 RENDER_MODE_ADAPTIVE __deprecated = 3,
428 format(VIDEO_PIXEL_UNKNOWN),
562 type(VIDEO_PIXEL_UNKNOWN),
665 virtual bool isExternal() {
return true; }
668 enum MEDIA_PLAYER_SOURCE_TYPE {
674 MEDIA_PLAYER_SOURCE_DEFAULT,
680 MEDIA_PLAYER_SOURCE_FULL_FEATURED,
685 MEDIA_PLAYER_SOURCE_SIMPLE,
688 enum VIDEO_MODULE_POSITION {
689 POSITION_POST_CAPTURER = 1 << 0,
690 POSITION_PRE_RENDERER = 1 << 1,
691 POSITION_PRE_ENCODER = 1 << 2,
692 POSITION_POST_FILTERS = 1 << 3,
923 enum VIDEO_FRAME_PROCESS_MODE {
924 PROCESS_MODE_READ_ONLY,
925 PROCESS_MODE_READ_WRITE,
970 virtual bool onSecondaryCameraCaptureVideoFrame(
VideoFrame& videoFrame) = 0;
1008 virtual bool onPreEncodeScreenVideoFrame(
VideoFrame& videoFrame) = 0;
1027 virtual bool onSecondaryScreenCaptureVideoFrame(
VideoFrame& videoFrame) = 0;
1029 virtual bool onSecondaryPreEncodeScreenVideoFrame(
VideoFrame& videoFrame) = 0;
1050 virtual bool onTranscodedVideoFrame(
VideoFrame& videoFrame) = 0;
1057 return PROCESS_MODE_READ_ONLY;
1065 virtual base::VIDEO_PIXEL_FORMAT getVideoPixelFormatPreference() {
return base::VIDEO_PIXEL_I420; }
1103 return base::POSITION_POST_CAPTURER | base::POSITION_PRE_RENDERER;
1117 #define MAX_CONTENT_INSPECT_MODULE_COUNT 32
1118 enum CONTENT_INSPECT_RESULT {
1119 CONTENT_INSPECT_NEUTRAL = 1,
1120 CONTENT_INSPECT_SEXY = 2,
1121 CONTENT_INSPECT_PORN = 3,
1123 enum CONTENT_INSPECT_DEVICE_TYPE{
1124 CONTENT_INSPECT_DEVICE_INVALID = 0,
1125 CONTENT_INSPECT_DEVICE_AGORA = 1,
1126 CONTENT_INSPECT_DEVICE_HIVE = 2,
1127 CONTENT_INSPECT_DEVICE_TUPU = 3
1129 enum CONTENT_INSPECT_TYPE {
1133 CONTENT_INSPECT_INVALIDE = 0,
1137 CONTENT_INSPECT_MODERATION = 1,
1141 CONTENT_INSPECT_SUPERVISE = 2
1167 const char* extraInfo;
1182 extraInfo = rth.extraInfo;
1191 const char* channel;
1193 const char* filePath;
1196 channel = rth.channel;
1198 filePath = rth.filePath;
1216 virtual void onSnapshotTaken(
const char* channel,
unsigned int uid,
const char* filePath,
int width,
int height,
int errCode) = 0;
1223 enum EXTERNAL_VIDEO_SOURCE_TYPE {
1231 ENCODED_VIDEO_FRAME,
bool CloudWork
Definition: AgoraMediaBase.h:1163
ContentInspectModule modules[MAX_CONTENT_INSPECT_MODULE_COUNT]
Definition: AgoraMediaBase.h:1172
Definition: AgoraMediaBase.h:100
Definition: AgoraBase.h:1754
CONTENT_INSPECT_DEVICE_TYPE DeviceworkType
Definition: AgoraMediaBase.h:1166
Definition: AgoraMediaBase.h:1143
unsigned int frequency
Definition: AgoraMediaBase.h:1151
int moduleCount
Definition: AgoraMediaBase.h:1175
bool enable
Definition: AgoraMediaBase.h:1157
CONTENT_INSPECT_TYPE type
Definition: AgoraMediaBase.h:1147
bool DeviceWork
Definition: AgoraMediaBase.h:1160
Definition: AgoraMediaBase.h:1155