C++SDK  1.0.0
| 宏定义 | 类型定义 | 枚举 | 变量
combase_1.h 文件参考
#include "defines.h"
#include "errorcode.h"
combase_1.h 的引用(Include)关系图:

浏览源代码.

struct  UserStatus
 
struct  AudioCodecInst
 
struct  NetworkStats
 

宏定义

#define __BUILD_LIVECAST__
 
#define Max_RoomId   64
 
#define Max_UserId   40
 
#define Max_UserData   128
 
#define Max_DeviceId   256
 
#define Max_StreamId   64
 
#define Max_UserName   32
 
#define Max_DeviceName   64
 
#define Max_DeviceDescription   128
 
#define Max_RoomName   256
 
#define Max_Password   16
 
#define Max_Message   256
 
#define Max_Address   64
 
#define Max_StringEnum   32
 
#define Max_UrlLen   256
 
#define Max_TimeLen   64
 
#define avd_testFlagChange(oldValue, newValue, mask)   (0 != ((oldValue^newValue) & mask))
 以下为一组二进制操作函数 更多...
 
#define avd_isFlagSet(uValue, mask)   (0 != (uValue & mask))
 
#define avd_setFlag(uValue, mask)   uValue |= mask;
 
#define avd_clearFlag(uValue, mask)   uValue &= ~mask;
 
#define avd_getFlag(uValue, mask)   uValue &mask;
 
#define avd_xorFlag(uValue, mask)   uValue ^= mask;
 
#define NAMESPACE_TEE3_BEGIN
 
#define NAMESPACE_TEE3_END
 
#define NAMESPACE_TEE3_AVD_BEGIN
 
#define NAMESPACE_TEE3_AVD_END
 
#define USE_NAMESPACE_TEE3
 
#define USE_NAMESPACE_TEE3_AVD
 
#define FOURCC(a, b, c, d)
 

类型定义

typedef int AVDHandle
 
typedef int Result
 
typedef DeviceStatus MicrophoneStatus
 
typedef DeviceStatus CameraStatus
 
typedef DeviceStatus ScreenStatus
 

枚举

enum  DeviceStatus {
  ds_none, ds_ready, ds_published, ds_muted,
  ds_none, ds_ready, ds_published, ds_muted
}
 
enum  VideoQuality {
  quality_low = (1 << 0), quality_normal = (1 << 1), quality_high = (1 << 2), quality_low = (1 << 0),
  quality_normal = (1 << 1), quality_high = (1 << 2)
}
 
enum  VideoRatio {
  ratio_4_3, ratio_16_9, ratio_cif, ratio_default = ratio_4_3,
  ratio_4_3, ratio_16_9, ratio_cif, ratio_default = ratio_4_3
}
 
enum  VideoRotation {
  rotation_0 = 0, rotation_90 = 90, rotation_180 = 180, rotation_270 = 270,
  rotation_default = rotation_0, rotation_0 = 0, rotation_90 = 90, rotation_180 = 180,
  rotation_270 = 270, rotation_default = rotation_0
}
 
enum  VideoCodec {
  codec_vp8, codec_h264, codec_vp9, codec_h265,
  codec_i420, codec_default = codec_vp8, codec_vp8, codec_h264,
  codec_vp9, codec_h265, codec_i420, codec_default = codec_vp8
}
 
enum  StreamType {
  stream_main, stream_assist1, stream_assist2, stream_main,
  stream_assist1, stream_assist2
}
 
enum  CameraType {
  ct_unknown, ct_front, ct_back, ct_unknown,
  ct_front, ct_back
}
 
enum  ScreenType {
  st_unknown, st_desktop, st_application, st_unknown,
  st_desktop, st_application
}
 
enum  RoomMode {
  clear_set = (1 << 0), rm_mcu = (1 << 31), rm_p2p = rm_mcu + clear_set, rm_attr_join_host_first = (1 << 1),
  rm_attr_join_before_host = rm_attr_join_host_first + clear_set, rm_attr_netacc = (1 << 2), rm_attr_netacc_close = rm_attr_netacc + clear_set, rm_attr_hostcontrol = (1 << 3),
  rm_attr_freespeech = rm_attr_hostcontrol + clear_set, rm_modes = 0xFFF00000, rm_attributes = 0x000FFFFE, clear_set = (1 << 0),
  rm_mcu = (1 << 31), rm_p2p = rm_mcu + clear_set, rm_attr_join_host_first = (1 << 1), rm_attr_join_before_host = rm_attr_join_host_first + clear_set,
  rm_attr_netacc = (1 << 2), rm_attr_netacc_close = rm_attr_netacc + clear_set, rm_attr_hostcontrol = (1 << 3), rm_attr_freespeech = rm_attr_hostcontrol + clear_set,
  rm_modes = 0xFFF00000, rm_attributes = 0x000FFFFE
}
 
enum  RoomStatus {
  rs_scheduled, rs_opening, rs_locked, rs_closed,
  rs_scheduled, rs_opening, rs_locked, rs_closed
}
 
enum  ConnectionStatus {
  cs_ready, cs_connecting, cs_connected, cs_connectFailed,
  cs_ready, cs_connecting, cs_connected, cs_connectFailed
}
 
enum  FileFormats {
  kFileFormatWavFile = 1, kFileFormatPcm16kHzFile = 7, kFileFormatPcm8kHzFile = 8, kFileFormatPcm32kHzFile = 9,
  kFileFormatWavFile = 1, kFileFormatPcm16kHzFile = 7, kFileFormatPcm8kHzFile = 8, kFileFormatPcm32kHzFile = 9
}
 
enum  EngineOption {
  eo_camera_mode_frontback, eo_camera_capability_default, eo_video_quality_publish_default, eo_video_ration_default,
  eo_video_quality_subscribe_default, eo_video_publish_svc_default, eo_video_codec_priority, eo_demo_urlbase_liverecord,
  eo_data_channel_tcp_priority, eo_network_proxy, eo_video_resolution_16balign, eo_video_swapwh_by_rotation,
  eo_video_codec_hw_priority, eo_audio_aec_LowLatencyModeDelayEstimate, eo_audio_aec_HighLatencyModeDelayEstimate, eo_audio_agc_PlayoutGainMultipleValue,
  eo_audio_aec_AudioDelayOffset, eo_audio_aec_Enable, eo_audio_aec_DAEcho_Enable, eo_audio_noiseSuppression_Enable,
  eo_audio_autoGainControl_Enable, eo_audio_highpassFilter_Enable, eo_mcu_cluster_route_params, eo_media_connproxy_ip,
  eo_media_connproxy_port, eo_video_codec_hw_encode, eo_video_codec_hw_decode, eo_video_renderusecapture,
  eo_audio_noiseSuppression_Level, eo_dump_audio_pcm_record, eo_video_resolution_lowNosupported, eo_video_localrender_lowfps,
  eo_livecast_appmanageroom = 1000, eo_test_rtc_string_1 = 2000, eo_test_rtc_int_1, eo_internal_hardware_identifier,
  eo_camera_mode_frontback, eo_camera_capability_default, eo_video_quality_publish_default, eo_video_ration_default,
  eo_video_quality_subscribe_default, eo_video_publish_svc_default, eo_video_codec_priority, eo_demo_urlbase_liverecord,
  eo_data_channel_tcp_priority, eo_network_proxy, eo_video_resolution_16balign, eo_video_swapwh_by_rotation,
  eo_video_codec_hw_priority, eo_audio_aec_LowLatencyModeDelayEstimate, eo_audio_aec_HighLatencyModeDelayEstimate, eo_audio_agc_PlayoutGainMultipleValue,
  eo_audio_aec_AudioDelayOffset, eo_audio_aec_Enable, eo_audio_aec_DAEcho_Enable, eo_audio_noiseSuppression_Enable,
  eo_audio_autoGainControl_Enable, eo_audio_highpassFilter_Enable, eo_mcu_cluster_route_params, eo_media_connproxy_ip,
  eo_media_connproxy_port, eo_video_codec_hw_encode, eo_video_codec_hw_decode, eo_video_renderusecapture,
  eo_audio_noiseSuppression_Level, eo_dump_audio_pcm_record, eo_video_resolution_lowNosupported, eo_livecast_appmanageroom = 1000,
  eo_test_rtc_string_1 = 2000, eo_test_rtc_int_1, eo_internal_hardware_identifier
}
 
enum  RoomOption {
  ro_video_drop_data, ro_audio_drop_data, ro_media_use_dtls, ro_room_reconnect_times,
  ro_room_connect_timeout, ro_audio_auto_subscribe, ro_audio_option_codec, ro_audio_mixerdata_callback_buffered,
  ro_video_default_camera, ro_room_auto_rejoin, ro_room_rejoin_times, ro_room_options_apply,
  ro_screen_share_fps, ro_screen_share_audio, ro_video_mixer_published =1000, ro_video_drop_data,
  ro_audio_drop_data, ro_media_use_dtls, ro_room_reconnect_times, ro_room_connect_timeout,
  ro_audio_auto_subscribe, ro_audio_option_codec, ro_audio_mixerdata_callback_buffered, ro_video_default_camera,
  ro_room_auto_rejoin, ro_room_rejoin_times, ro_room_options_apply, ro_screen_share_fps,
  ro_screen_share_audio, ro_video_mixer_published =1000
}
 
enum  RecordAudioType {
  ra_none, ra_user_single, ra_user_all, ra_none,
  ra_user_single, ra_user_all
}
 
enum  RecordVideoType {
  rv_none, rv_main, rv_ass1, rv_ass2,
  rv_none, rv_main, rv_ass1, rv_ass2
}
 
enum  MediaFileType { mt_mp4, mt_webm, mt_mp4, mt_webm }
 
enum  RecordStatus {
  rs_created, rs_recording, rs_availble, rs_removed,
  rs_exception, rs_created, rs_recording, rs_availble,
  rs_removed, rs_exception
}
 
enum  LiveStatus {
  ls_created, ls_living, ls_stopped, ls_removed,
  ls_exception, ls_created, ls_living, ls_stopped,
  ls_removed, ls_exception
}
 
enum  LivecastStatus {
  lc_init, lc_connecting, lc_ready, lc_livecast,
  lc_reconnecting, lc_init, lc_connecting, lc_ready,
  lc_livecast, lc_reconnecting
}
 
enum  MixerVideoLayoutType {
  vl_auto_overlay, vl_auto_segment, vl_manual, vl_auto_overlay,
  vl_auto_segment, vl_manual
}
 
enum  FunctionType {
  ft_none = 0, ft_roommanager = (1 << 0), ft_datachannel = (1 << 1), ft_chat = (1 << 2),
  ft_audio = (1 << 3), ft_video = (1 << 4), ft_video_hd = (1 << 5), ft_screen = (1 << 6),
  ft_annotation = (1 << 7), ft_p2p = (1 << 10), ft_outgoing = (1 << 11), ft_avei = (1 << 12),
  ft_client_record_audio = (1 << 13), ft_client_record_video = (1 << 14), ft_clinet_livebroadcast = (1 << 15), ft_record_audio = (1 << 16),
  ft_record_video = (1 << 17), ft_livebroadcast = (1 << 18), ft_h265 = (1 << 19), ft_platform_android = (1 << 20),
  ft_platform_ios = (1 << 21), ft_platform_win = (1 << 22), ft_platform_mac = (1 << 23), ft_platform_linux = (1 << 24),
  ft_platform_web = (1 << 25), ft_platform_all = ft_platform_android + ft_platform_ios + ft_platform_win + ft_platform_mac + ft_platform_linux + ft_platform_web, ft_basic = ft_datachannel + ft_chat + ft_audio + ft_video, ft_standard = ft_basic + ft_screen + ft_p2p + ft_client_record_audio + ft_client_record_video + ft_avei + ft_record_audio + ft_record_video + ft_clinet_livebroadcast + ft_roommanager,
  ft_all = ft_platform_all + ft_standard + ft_video_hd + ft_annotation + ft_livebroadcast + ft_outgoing + ft_h265, ft_none = 0, ft_roommanager = (1 << 0), ft_datachannel = (1 << 1),
  ft_chat = (1 << 2), ft_audio = (1 << 3), ft_video = (1 << 4), ft_video_hd = (1 << 5),
  ft_screen = (1 << 6), ft_annotation = (1 << 7), ft_p2p = (1 << 10), ft_outgoing = (1 << 11),
  ft_avei = (1 << 12), ft_client_record_audio = (1 << 13), ft_client_record_video = (1 << 14), ft_clinet_livebroadcast = (1 << 15),
  ft_record_audio = (1 << 16), ft_record_video = (1 << 17), ft_livebroadcast = (1 << 18), ft_h265 = (1 << 19),
  ft_platform_android = (1 << 20), ft_platform_ios = (1 << 21), ft_platform_win = (1 << 22), ft_platform_mac = (1 << 23),
  ft_platform_linux = (1 << 24), ft_platform_web = (1 << 25), ft_platform_all = ft_platform_android + ft_platform_ios + ft_platform_win + ft_platform_mac + ft_platform_linux + ft_platform_web, ft_basic = ft_datachannel + ft_chat + ft_audio + ft_video,
  ft_standard = ft_basic + ft_screen + ft_p2p + ft_client_record_audio + ft_client_record_video + ft_avei + ft_record_audio + ft_record_video + ft_clinet_livebroadcast + ft_roommanager, ft_all = ft_platform_all + ft_standard + ft_video_hd + ft_annotation + ft_livebroadcast + ft_outgoing + ft_h265
}
 
enum  FourCC {
  FOURCC_I420 = FOURCC('I', '4', '2', '0'), FOURCC_YV12 = FOURCC('Y', 'V', '1', '2'), FOURCC_NV21 = FOURCC('N', 'V', '2', '1'), FOURCC_NV12 = FOURCC('N', 'V', '1', '2'),
  FOURCC_YUY2 = FOURCC('Y', 'U', 'Y', '2'), FOURCC_UYVY = FOURCC('U', 'Y', 'V', 'Y'), FOURCC_MJPG = FOURCC('M', 'J', 'P', 'G'), FOURCC_ARGB = FOURCC('A', 'R', 'G', 'B'),
  FOURCC_24BG = FOURCC('2', '4', 'B', 'G'), FOURCC_H264 = FOURCC('H', '2', '6', '4'), FOURCC_H265 = FOURCC('H', '2', '6', '5'), FOURCC_I420 = FOURCC('I', '4', '2', '0'),
  FOURCC_YV12 = FOURCC('Y', 'V', '1', '2'), FOURCC_NV21 = FOURCC('N', 'V', '2', '1'), FOURCC_NV12 = FOURCC('N', 'V', '1', '2'), FOURCC_YUY2 = FOURCC('Y', 'U', 'Y', '2'),
  FOURCC_UYVY = FOURCC('U', 'Y', 'V', 'Y'), FOURCC_MJPG = FOURCC('M', 'J', 'P', 'G'), FOURCC_ARGB = FOURCC('A', 'R', 'G', 'B'), FOURCC_24BG = FOURCC('2', '4', 'B', 'G'),
  FOURCC_H264 = FOURCC('H', '2', '6', '4'), FOURCC_H265 = FOURCC('H', '2', '6', '5')
}
 
enum  AudioCodec {
  codec_pcm = 0, codec_aac = 1, codec_vorbise = 2, codec_opus = 3,
  codec_isac = 4, codec_pcma = 5, codec_pcmu = 6, codec_pcm = 0,
  codec_aac = 1, codec_vorbise = 2, codec_opus = 3, codec_isac = 4,
  codec_pcma = 5, codec_pcmu = 6
}
 
enum  AudioRecordedType {
  ART_NONE = 0, ART_ALL = 1, ART_ONLY_SELF = 2, ART_ONLY_OTHERS = 3,
  ART_NONE = 0, ART_ALL = 1, ART_ONLY_SELF = 2, ART_ONLY_OTHERS = 3
}
 

变量

const AudioCodecInst kTbPcm16Bwb = { 108, "L16", 16000, 320, 1, 256000 }
 
const AudioCodecInst kTbPcm44Bwb = { 130, "L16", 44100, 882, 1, 512000 }
 
const AudioCodecInst kTbPcm48Bwb = { 131, "L16", 48000, 960, 1, 512000 }
 
const AudioCodecInst kTbPcm16Stereo = { 112, "L16", 16000, 320, 2, 256000 }
 
const AudioCodecInst kTbPcm44Stereo = { 135, "L16", 44100, 882, 2, 512000 }
 
const AudioCodecInst kTbPcm48Stereo = { 136, "L16", 48000, 960, 2, 512000 }
 
const AudioCodecInst kTbPcmu = { 0, "PCMU", 8000, 160, 1, 64000 }
 
const AudioCodecInst kTbPcma = { 8, "PCMA", 8000, 160, 1, 64000 }
 
const AudioCodecInst kTbPcmuStereo = { 110, "PCMU", 8000, 160, 2, 64000 }
 
const AudioCodecInst kTbPcmaStereo = { 118, "PCMA", 8000, 160, 2, 64000 }
 
const AudioCodecInst kTbIsacWb = { 103, "ISAC", 16000, 480, 1, 32000 }
 
const AudioCodecInst kTbIsacSwb = { 104, "ISAC", 32000, 960, 1, 56000 }
 
const AudioCodecInst kTbIlbc = { 102, "ILBC", 8000, 240, 1, 13300 }
 
const AudioCodecInst kTbOpus = { 120, "opus", 48000, 960, 2, 64000 }
 

宏定义说明

#define __BUILD_LIVECAST__
#define avd_clearFlag (   uValue,
  mask 
)    uValue &= ~mask;

清除uint32的某特定位为0

参数
[in,out]uValue设置值。
[in]mask特定位标志。
#define avd_getFlag (   uValue,
  mask 
)    uValue &mask;

获取uint32的某些特定位

参数
[in,out]uValue设置值。
[in]mask特定位标志。
#define avd_isFlagSet (   uValue,
  mask 
)    (0 != (uValue & mask))

判断uint32的某特定位是否为1

参数
[in]uValue测试值。
[in]mask特定位标志。
返回
返回是否为1。
#define avd_setFlag (   uValue,
  mask 
)    uValue |= mask;

设置uint32的某特定位为1

参数
[in,out]uValue设置值。
[in]mask特定位标志。
#define avd_testFlagChange (   oldValue,
  newValue,
  mask 
)    (0 != ((oldValue^newValue) & mask))

以下为一组二进制操作函数

判断uint32的某特定位是否已经改变

参数
[in]oldValue原值。
[in]newValue新值。
[in]mask特定位标志。
返回
返回是否改变。
#define avd_xorFlag (   uValue,
  mask 
)    uValue ^= mask;

取反uint32的某特定位

参数
[in,out]uValue设置值。
[in]mask特定位标志。
#define FOURCC (   a,
  b,
  c,
 
)
值:
( \
(static_cast<uint32>(a)) | (static_cast<uint32>(b) << 8) | \
(static_cast<uint32>(c) << 16) | (static_cast<uint32>(d) << 24))
unsigned int uint32
Definition: defines.h:393
#define Max_Address   64

最大地址长度

#define Max_DeviceDescription   128

设备描述最大字符长度

#define Max_DeviceId   256

设备Id最大字符长度

#define Max_DeviceName   64

设备名最大字符长度

#define Max_Message   256

消息最大字符长度

#define Max_Password   16

密码最大字符长度

#define Max_RoomId   64

房间Id最大字符长度:服务器缺省是40

#define Max_RoomName   256

房间名最大字符长度

#define Max_StreamId   64

媒体流Id最大字符长度

#define Max_StringEnum   32

最大字符串枚举长度

#define Max_TimeLen   64

最大时间字符串长度

#define Max_UrlLen   256

最大url的字符长度

#define Max_UserData   128

用户数据最大字符长度

#define Max_UserId   40

用户Id最大字符长度

#define Max_UserName   32

用户名最大字符长度

#define NAMESPACE_TEE3_AVD_BEGIN
#define NAMESPACE_TEE3_AVD_END
#define NAMESPACE_TEE3_BEGIN
#define NAMESPACE_TEE3_END
#define USE_NAMESPACE_TEE3
#define USE_NAMESPACE_TEE3_AVD

类型定义说明

typedef int AVDHandle

句柄类型

摄像头状态

麦克风状态

typedef int Result

返回值类型

屏幕窗口共享状态

枚举类型说明

enum AudioCodec
枚举值
codec_pcm 
codec_aac 
codec_vorbise 
codec_opus 
codec_isac 
codec_pcma 
codec_pcmu 
codec_pcm 
codec_aac 
codec_vorbise 
codec_opus 
codec_isac 
codec_pcma 
codec_pcmu 
枚举值
ART_NONE 
ART_ALL 
ART_ONLY_SELF 
ART_ONLY_OTHERS 
ART_NONE 
ART_ALL 
ART_ONLY_SELF 
ART_ONLY_OTHERS 
enum CameraType

摄像头类型.

枚举值
ct_unknown 

未知类型

ct_front 

前置摄像头

ct_back 

后置摄像头

ct_unknown 

未知类型

ct_front 

前置摄像头

ct_back 

后置摄像头

房间网络状态

枚举值
cs_ready 

初始状态

cs_connecting 

正在连接服务器

cs_connected 

已经连接上服务器

cs_connectFailed 

连接服务器失败

cs_ready 

初始状态

cs_connecting 

正在连接服务器

cs_connected 

已经连接上服务器

cs_connectFailed 

连接服务器失败

设备状态.

枚举值
ds_none 

无设备状态(如设备被拔出等)

ds_ready 

设备初始化状态 (如设备插入或从发布状态关闭发布)

ds_published 

设备打开发布状态

ds_muted 

设备静默状态

ds_none 

无设备状态(如设备被拔出等)

ds_ready 

设备初始化状态 (如设备插入或从发布状态关闭发布)

ds_published 

设备打开发布状态

ds_muted 

设备静默状态

引擎选项

注解
引擎选项枚举列出了用于设置引擎的选项,在以下函数中使用。
参见
IAVDEngine.setOption
IAVDEngine.getOption
枚举值
eo_camera_mode_frontback 

值类型为bool, 字符类型为"true" or "false":表示摄像头使用模式:前后置摄像头模式(true)和多摄像头模式(false)。 多摄像头模式:本机的所有摄像头将展现在房间中;可以同时预览发布多个摄像头;桌面端本地应用和网页端应用多采用此种方式。 前后置摄像头模式:本机的前后置摄像头将作为一个摄像头展现在房间中;同一时刻只能打开一个摄像头;普通移动端采用此种方式。

eo_camera_capability_default 

值类型为CameraCapability, 字符类型为"{\"width":640,"height":480,"maxFPS":10}":表示摄像头缺省采集参数。当前系统默认的采集 参数为:windows桌面版和web网页版{640,480,10};android/ios移动版{320,240,10}。

eo_video_quality_publish_default 

值类型为VideoQuality, 字符类型为"low" or "normal" or "high":表示摄像头发布缺省采用的视频质量,与camera_capability_default的设置相互影响。 当前系统默认的采集参数为:windows桌面版和web网页版 普通质量;android/ios移动版 流畅质量。

eo_video_ration_default 

值类型为VideoRatio, 字符类型为"4_3" or "16_9" or "cif":表示视频缺省宽高比。 当前系统默认的采集参数为:4:3。

eo_video_quality_subscribe_default 

值类型为VideoQuality, 字符类型为"low" or "normal" or "high":表示订阅视频缺省采用的视频质量。 当前系统默认的采集参数为:windows桌面版和web网页版 普通质量;android/ios移动版 流畅质量。

eo_video_publish_svc_default 

值类型为bool, 字符类型为"true" or "false":表示视频发布时缺省是否采用多流。 当前系统默认的采集参数为:false。

eo_video_codec_priority 

值类型为VideoCodec, 字符类型为"h264","h265","vp8","vp9":表示视频编码优先采用h264,h265,vp8,vp9编解码。 当前系统默认参数值为:vp8。

eo_demo_urlbase_liverecord 

值类型为String:表示演示直播和录制的服务器地址,只能获取。

eo_data_channel_tcp_priority 

值类型为bool, 字符类型为"true" or "false":表示房间中数据通道用的网络连接类型:TCP优先(true)和UDP优先(false), 缺省为UDP优先。 当前如果选TCP优先,将只是用TCP数据连接,UDP即使设置了不使用。

eo_network_proxy 

值类型为bool, 字符类型为"true" or "false":表示启用或不启用,建议局域网或者简单的环境不使用代理。 当前系统默认参数值为:true。

eo_video_resolution_16balign 

值类型为bool, 字符类型为"true" or "false":表示启用或不启用视频分辨率16字节严格对齐模式;在16字节对齐模式下,分辨率的宽和高都会向对齐的分辨率靠, 如1080–>1088,540–>544,180–>176等,有些硬件设备(某些android手机)只支持16字节对齐的硬件编解码,android上可以考虑开启此选项来做更好的设备兼容性和编码效率。 当前系统默认参数值为:false。 ------— 10

eo_video_swapwh_by_rotation 

值类型为bool, 字符类型为"true" or "false":表示视频publish或preview时设置的分辨率根据输入视频旋转角度变换宽高:变换宽高(true)和不变换宽高严格按设置分辨率裁剪拉伸(false), 缺省为变换宽高。

eo_video_codec_hw_priority 

值类型为bool, 字符类型为"true" or "false":表示是否优先使用硬件编解码:优先使用硬件编解码(true)和优先使用软件编解码(false), 缺省为硬件编解码优先。

eo_audio_aec_LowLatencyModeDelayEstimate 

android系统可用;值类型为int, 取值:[30, 400]; 字符类型数值字符串如"50":表示AEC延时下限,用于回音消除。 缺省为 80; 回音消除算法与设备的麦克风和扬声器距离,及会场大小都有关系,有可能需要特别调试。

eo_audio_aec_HighLatencyModeDelayEstimate 

android系统可用;值类型为int, 取值:[30, 400]; 字符类型数值字符串如"50":表示AEC延时上限,用于回音消除。 缺省为 160; 回音消除算法与设备的麦克风和扬声器距离,及会场大小都有关系,有可能需要特别调试。

eo_audio_agc_PlayoutGainMultipleValue 

值类型为float, 取值:[0.1, 10.0]; 字符类型数值字符串如"2.0":表示语音播放时的增益倍数。 缺省为 1.0。值设置过大会导致声音失真。

eo_audio_aec_AudioDelayOffset 

值类型为int, 取值:[0, 500]; 字符类型数值字符串如"50":表示AEC估计延时,用于回音消除。 缺省为 0; 回音消除算法与设备的麦克风和扬声器距离,及会场大小都有关系,有可能需要特别调试。 no use in ios. | delay | in ms between AnalyzeReverseStream() receiving a far-end frame and ProcessStream() receiving a near-end frame containing the corresponding echo. On the client-side this can be expressed as delay = (t_render - t_analyze) + (t_process - t_capture)

eo_audio_aec_Enable 

值类型为bool, 字符类型为"true" or "false":表示启用或不启用, 一般情况下都需要回音消除算法,当需要录制音乐的时候,建议关闭。 当前系统默认参数值为:true。

eo_audio_aec_DAEcho_Enable 

值类型为bool, 字符类型为"true" or "false":表示在回音消除时启用或不启用延时消除算法,此算法较耗费cpu,但效果会较好,移动端缺省不启用,如果特殊需要就启用。 当前系统默认参数值为:false。 no use in ios.

eo_audio_noiseSuppression_Enable 

值类型为bool, 字符类型为"true" or "false":表示在音频采集时是否使用噪音抑制,抑制后会消除部分噪音。 当前系统默认参数值为:true。

eo_audio_autoGainControl_Enable 

值类型为bool, 字符类型为"true" or "false":表示在音频采集时是否启用自动增益,增益打开后会自动调整麦克风采集音频大小。 当前系统默认参数值为:true。

eo_audio_highpassFilter_Enable 

值类型为bool, 字符类型为"true" or "false":表示在音频采集时是否启用高通滤波,一些尖锐的声音会被过滤掉。 当前系统默认参数值为:false。

eo_mcu_cluster_route_params 

值类型为json String:设置分布式集群部署中加房间时mcu服务器的分配路由参数。 取值格式如下:{"ip_tag":"local","idc_code":""} ip_tag 对应于 rtc_node_addr 中的tag标志,用于区分同一台服务器的多网卡地址,可以自定义,然后在参数中传入。举例的话,比如 'local','internal','dianxin','liantong' idc_code 对应于 rtc_node 中的 idc_code标志,用于区分不同的服务器,唯一,可以自定义。比如北京服务器设置为'beijing',杭州的设置为'hangzhou',然后在参数中传入,用于定位到服务器。

eo_media_connproxy_ip 

值类型为String:表示媒体服务器IP映射后对应的映射IP,通过连接此IP和相关端口可以与真实媒体服务器通讯。

eo_media_connproxy_port 

值类型为int,字符类型数值字符串如"8050":表示媒体服务器端口映射后对应的映射端口,通过连接映射IP和此I端口可以与真实媒体服务器通讯。

eo_video_codec_hw_encode 

值类型为bool, 字符类型为"true" or "false":表示是否优先使用硬件编码:优先使用硬件编码(true)和优先使用软件编码(false), 缺省为硬件编码优先。

eo_video_codec_hw_decode 

值类型为bool, 字符类型为"true" or "false":表示是否优先使用硬件解码:优先使用硬件解码(true)和优先使用软件解码(false), 缺省为硬件解码优先。

eo_video_renderusecapture 

值类型为bool, 字符类型为"true" or "false":表示在导入视频时的渲染attachRender时,是否采用导入视频直接渲染还是经过拉伸的视频再渲染。 当前系统默认参数值为:false。

eo_audio_noiseSuppression_Level 

值类型为int, 取值:[0, 3]; 字符类型数值字符串如"1":表示在使用噪音抑制时的音频噪音程度,数字越大抑制越厉害。 当前系统默认参数值为:2。

eo_dump_audio_pcm_record 
eo_video_resolution_lowNosupported 

调试时使用:是否录制本地音频,类型bool ,字符串 "true" or "false",加会之前调用,生成文件在日志文件目录下。 当前系统默认参数值为:false,

eo_video_localrender_lowfps 
eo_livecast_appmanageroom 

值类型为bool, 字符类型为"true" or "false":设置房间中发布视频时是否发布混屏后视频;系统默认为true。 no use in ios.下面的选项预留测试使用,分别表示字符串,整形等自定义参数

eo_test_rtc_string_1 
eo_test_rtc_int_1 
eo_internal_hardware_identifier 

值类型为String:表示设备的硬件标识号,sdk内部使用。

eo_camera_mode_frontback 

值类型为bool, 字符类型为"true" or "false":表示摄像头使用模式:前后置摄像头模式(true)和多摄像头模式(false)。 多摄像头模式:本机的所有摄像头将展现在房间中;可以同时预览发布多个摄像头;桌面端本地应用和网页端应用多采用此种方式。 前后置摄像头模式:本机的前后置摄像头将作为一个摄像头展现在房间中;同一时刻只能打开一个摄像头;普通移动端采用此种方式。

eo_camera_capability_default 

值类型为CameraCapability, 字符类型为"{\"width":640,"height":480,"maxFPS":10}":表示摄像头缺省采集参数。当前系统默认的采集 参数为:windows桌面版和web网页版{640,480,10};android/ios移动版{320,240,10}。

eo_video_quality_publish_default 

值类型为VideoQuality, 字符类型为"low" or "normal" or "high":表示摄像头发布缺省采用的视频质量,与camera_capability_default的设置相互影响。 当前系统默认的采集参数为:windows桌面版和web网页版 普通质量;android/ios移动版 流畅质量。

eo_video_ration_default 

值类型为VideoRatio, 字符类型为"4_3" or "16_9" or "cif":表示视频缺省宽高比。 当前系统默认的采集参数为:4:3。

eo_video_quality_subscribe_default 

值类型为VideoQuality, 字符类型为"low" or "normal" or "high":表示订阅视频缺省采用的视频质量。 当前系统默认的采集参数为:windows桌面版和web网页版 普通质量;android/ios移动版 流畅质量。

eo_video_publish_svc_default 

值类型为bool, 字符类型为"true" or "false":表示视频发布时缺省是否采用多流。 当前系统默认的采集参数为:false。

eo_video_codec_priority 

值类型为VideoCodec, 字符类型为"h264","h265","vp8","vp9":表示视频编码优先采用h264,h265,vp8,vp9编解码。 当前系统默认参数值为:vp8。

eo_demo_urlbase_liverecord 

值类型为String:表示演示直播和录制的服务器地址,只能获取。

eo_data_channel_tcp_priority 

值类型为bool, 字符类型为"true" or "false":表示房间中数据通道用的网络连接类型:TCP优先(true)和UDP优先(false), 缺省为UDP优先。 当前如果选TCP优先,将只是用TCP数据连接,UDP即使设置了不使用。

eo_network_proxy 

值类型为bool, 字符类型为"true" or "false":表示启用或不启用,建议局域网或者简单的环境不使用代理。 当前系统默认参数值为:true。

eo_video_resolution_16balign 

值类型为bool, 字符类型为"true" or "false":表示启用或不启用视频分辨率16字节严格对齐模式;在16字节对齐模式下,分辨率的宽和高都会向对齐的分辨率靠, 如1080–>1088,540–>544,180–>176等,有些硬件设备(某些android手机)只支持16字节对齐的硬件编解码,android上可以考虑开启此选项来做更好的设备兼容性和编码效率。 当前系统默认参数值为:false。 ------— 10

eo_video_swapwh_by_rotation 

值类型为bool, 字符类型为"true" or "false":表示视频publish或preview时设置的分辨率根据输入视频旋转角度变换宽高:变换宽高(true)和不变换宽高严格按设置分辨率裁剪拉伸(false), 缺省为变换宽高。

eo_video_codec_hw_priority 

值类型为bool, 字符类型为"true" or "false":表示是否优先使用硬件编解码:优先使用硬件编解码(true)和优先使用软件编解码(false), 缺省为硬件编解码优先。

eo_audio_aec_LowLatencyModeDelayEstimate 

android系统可用;值类型为int, 取值:[30, 400]; 字符类型数值字符串如"50":表示AEC延时下限,用于回音消除。 缺省为 80; 回音消除算法与设备的麦克风和扬声器距离,及会场大小都有关系,有可能需要特别调试。

eo_audio_aec_HighLatencyModeDelayEstimate 

android系统可用;值类型为int, 取值:[30, 400]; 字符类型数值字符串如"50":表示AEC延时上限,用于回音消除。 缺省为 160; 回音消除算法与设备的麦克风和扬声器距离,及会场大小都有关系,有可能需要特别调试。

eo_audio_agc_PlayoutGainMultipleValue 

值类型为float, 取值:[0.1, 10.0]; 字符类型数值字符串如"2.0":表示语音播放时的增益倍数。 缺省为 1.0。值设置过大会导致声音失真。

eo_audio_aec_AudioDelayOffset 

值类型为int, 取值:[0, 500]; 字符类型数值字符串如"50":表示AEC估计延时,用于回音消除。 缺省为 0; 回音消除算法与设备的麦克风和扬声器距离,及会场大小都有关系,有可能需要特别调试。 no use in ios. | delay | in ms between AnalyzeReverseStream() receiving a far-end frame and ProcessStream() receiving a near-end frame containing the corresponding echo. On the client-side this can be expressed as delay = (t_render - t_analyze) + (t_process - t_capture)

eo_audio_aec_Enable 

值类型为bool, 字符类型为"true" or "false":表示启用或不启用, 一般情况下都需要回音消除算法,当需要录制音乐的时候,建议关闭。 当前系统默认参数值为:true。

eo_audio_aec_DAEcho_Enable 

值类型为bool, 字符类型为"true" or "false":表示在回音消除时启用或不启用延时消除算法,此算法较耗费cpu,但效果会较好,移动端缺省不启用,如果特殊需要就启用。 当前系统默认参数值为:false。 no use in ios.

eo_audio_noiseSuppression_Enable 

值类型为bool, 字符类型为"true" or "false":表示在音频采集时是否使用噪音抑制,抑制后会消除部分噪音。 当前系统默认参数值为:true。

eo_audio_autoGainControl_Enable 

值类型为bool, 字符类型为"true" or "false":表示在音频采集时是否启用自动增益,增益打开后会自动调整麦克风采集音频大小。 当前系统默认参数值为:true。

eo_audio_highpassFilter_Enable 

值类型为bool, 字符类型为"true" or "false":表示在音频采集时是否启用高通滤波,一些尖锐的声音会被过滤掉。 当前系统默认参数值为:false。

eo_mcu_cluster_route_params 

值类型为json String:设置分布式集群部署中加房间时mcu服务器的分配路由参数。 取值格式如下:{"ip_tag":"local","idc_code":""} ip_tag 对应于 rtc_node_addr 中的tag标志,用于区分同一台服务器的多网卡地址,可以自定义,然后在参数中传入。举例的话,比如 'local','internal','dianxin','liantong' idc_code 对应于 rtc_node 中的 idc_code标志,用于区分不同的服务器,唯一,可以自定义。比如北京服务器设置为'beijing',杭州的设置为'hangzhou',然后在参数中传入,用于定位到服务器。

eo_media_connproxy_ip 

值类型为String:表示媒体服务器IP映射后对应的映射IP,通过连接此IP和相关端口可以与真实媒体服务器通讯。

eo_media_connproxy_port 

值类型为int,字符类型数值字符串如"8050":表示媒体服务器端口映射后对应的映射端口,通过连接映射IP和此I端口可以与真实媒体服务器通讯。

eo_video_codec_hw_encode 

值类型为bool, 字符类型为"true" or "false":表示是否优先使用硬件编码:优先使用硬件编码(true)和优先使用软件编码(false), 缺省为硬件编码优先。

eo_video_codec_hw_decode 

值类型为bool, 字符类型为"true" or "false":表示是否优先使用硬件解码:优先使用硬件解码(true)和优先使用软件解码(false), 缺省为硬件解码优先。

eo_video_renderusecapture 

值类型为bool, 字符类型为"true" or "false":表示在导入视频时的渲染attachRender时,是否采用导入视频直接渲染还是经过拉伸的视频再渲染。 当前系统默认参数值为:false。

eo_audio_noiseSuppression_Level 

值类型为int, 取值:[0, 3]; 字符类型数值字符串如"1":表示在使用噪音抑制时的音频噪音程度,数字越大抑制越厉害。 当前系统默认参数值为:2。

eo_dump_audio_pcm_record 
eo_video_resolution_lowNosupported 

调试时使用:是否录制本地音频,类型bool ,字符串 "true" or "false",加会之前调用,生成文件在日志文件目录下。 当前系统默认参数值为:false,

eo_livecast_appmanageroom 

值类型为bool, 字符类型为"true" or "false":设置房间中发布视频时是否发布混屏后视频;系统默认为true。 no use in ios.下面的选项预留测试使用,分别表示字符串,整形等自定义参数

eo_test_rtc_string_1 
eo_test_rtc_int_1 
eo_internal_hardware_identifier 

值类型为String:表示设备的硬件标识号,sdk内部使用。

枚举值
kFileFormatWavFile 

WavFile

kFileFormatPcm16kHzFile 

Pcm16kHzFile

kFileFormatPcm8kHzFile 

Pcm8kHzFile

kFileFormatPcm32kHzFile 

Pcm32kHzFile

kFileFormatWavFile 

WavFile

kFileFormatPcm16kHzFile 

Pcm16kHzFile

kFileFormatPcm8kHzFile 

Pcm8kHzFile

kFileFormatPcm32kHzFile 

Pcm32kHzFile

enum FourCC
枚举值
FOURCC_I420 
FOURCC_YV12 
FOURCC_NV21 
FOURCC_NV12 
FOURCC_YUY2 
FOURCC_UYVY 
FOURCC_MJPG 
FOURCC_ARGB 
FOURCC_24BG 
FOURCC_H264 
FOURCC_H265 
FOURCC_I420 
FOURCC_YV12 
FOURCC_NV21 
FOURCC_NV12 
FOURCC_YUY2 
FOURCC_UYVY 
FOURCC_MJPG 
FOURCC_ARGB 
FOURCC_24BG 
FOURCC_H264 
FOURCC_H265 

AVD功能点定义

枚举值
ft_none 

无功能点

ft_roommanager 

透明通道:一对多,一对一

ft_datachannel 

透明通道:一对多,一对一

ft_chat 

聊天:房间内公聊,私聊

ft_audio 

语音

ft_video 

普通视频(640x480及以下)

ft_video_hd 

高清视频

ft_screen 

屏幕共享:应用,桌面

ft_annotation 

注释白板

ft_p2p 

P2P房间

ft_outgoing 

设备集成(rtsp,h323,sip等)

ft_avei 

音视频导入导出

ft_client_record_audio 

客户端音频录制

ft_client_record_video 

客户端视频录制

ft_clinet_livebroadcast 

客户端直播路数

ft_record_audio 

服务器旁路录制音频

ft_record_video 

服务器旁路录制视频

ft_livebroadcast 

服务器旁路直播

ft_h265 

H265模块

ft_platform_android 

平台:android系统

ft_platform_ios 

平台:ios系统

ft_platform_win 

平台:windows桌面系统

ft_platform_mac 

平台:mac ox桌面系统

ft_platform_linux 

平台:linux桌面系统

ft_platform_web 

平台:web js系统

ft_platform_all 
ft_basic 
ft_standard 
ft_all 
ft_none 

无功能点

ft_roommanager 

透明通道:一对多,一对一

ft_datachannel 

透明通道:一对多,一对一

ft_chat 

聊天:房间内公聊,私聊

ft_audio 

语音

ft_video 

普通视频(640x480及以下)

ft_video_hd 

高清视频

ft_screen 

屏幕共享:应用,桌面

ft_annotation 

注释白板

ft_p2p 

P2P房间

ft_outgoing 

设备集成(rtsp,h323,sip等)

ft_avei 

音视频导入导出

ft_client_record_audio 

客户端音频录制

ft_client_record_video 

客户端视频录制

ft_clinet_livebroadcast 

客户端直播路数

ft_record_audio 

服务器旁路录制音频

ft_record_video 

服务器旁路录制视频

ft_livebroadcast 

服务器旁路直播

ft_h265 

H265模块

ft_platform_android 

平台:android系统

ft_platform_ios 

平台:ios系统

ft_platform_win 

平台:windows桌面系统

ft_platform_mac 

平台:mac ox桌面系统

ft_platform_linux 

平台:linux桌面系统

ft_platform_web 

平台:web js系统

ft_platform_all 
ft_basic 
ft_standard 
ft_all 

客户端直播状态定义

枚举值
lc_init 

初始状态

lc_connecting 

正在连接服务器

lc_ready 

视频可以预览,已经准备好可以直播

lc_livecast 

正在直播

lc_reconnecting 

正在与服务器重连接

lc_init 

初始状态

lc_connecting 

正在连接服务器

lc_ready 

视频可以预览,已经准备好可以直播

lc_livecast 

正在直播

lc_reconnecting 

正在与服务器重连接

enum LiveStatus

旁路直播频道状态定义

枚举值
ls_created 

创建直播

ls_living 

正在直播

ls_stopped 

直播暂停

ls_removed 

直播被删除

ls_exception 

直播异常

ls_created 

创建直播

ls_living 

正在直播

ls_stopped 

直播暂停

ls_removed 

直播被删除

ls_exception 

直播异常

媒体文件类型定义

枚举值
mt_mp4 

MP4 文件格式,支持h264视频和aac音频封装

mt_webm 

WebM文件格式,支持vp8视频和opus音频封装

mt_mp4 

MP4 文件格式,支持h264视频和aac音频封装

mt_webm 

WebM文件格式,支持vp8视频和opus音频封装

视频混频布局类型

枚举值
vl_auto_overlay 

自动布局-窗口中重叠视频

vl_auto_segment 

自动布局-分割窗口排列视频

vl_manual 

手动布局

vl_auto_overlay 

自动布局-窗口中重叠视频

vl_auto_segment 

自动布局-分割窗口排列视频

vl_manual 

手动布局

录制音频类型定义

枚举值
ra_none 

无音频

ra_user_single 

同视频用户的单用户音频

ra_user_all 

整个房间中的所有音频混音

ra_none 

无音频

ra_user_single 

同视频用户的单用户音频

ra_user_all 

整个房间中的所有音频混音

旁路录制状态定义

枚举值
rs_created 

创建录制

rs_recording 

正在录制(如果相应视频和音频流上传服务器,就会保持到录制中;如没数据也无录制)

rs_availble 

录制完成可查看

rs_removed 

录制被删除

rs_exception 

录制异常(如不完整等)

rs_created 

创建录制

rs_recording 

正在录制(如果相应视频和音频流上传服务器,就会保持到录制中;如没数据也无录制)

rs_availble 

录制完成可查看

rs_removed 

录制被删除

rs_exception 

录制异常(如不完整等)

录制视频类型定义

枚举值
rv_none 

无视频

rv_main 

视频主流

rv_ass1 

视频辅流1

rv_ass2 

视频辅流2

rv_none 

无视频

rv_main 

视频主流

rv_ass1 

视频辅流1

rv_ass2 

视频辅流2

enum RoomMode

房间模式

枚举值
clear_set 
rm_mcu 

mcu模式

rm_p2p 

p2p模式

rm_attr_join_host_first 

房间中主持人要先加入其他人才能加入

rm_attr_join_before_host 

房间中其他人可以先于主持人加入

rm_attr_netacc 

房间中网络加速,暂不支持

rm_attr_netacc_close 

房间中网络没有加速,暂不支持

rm_attr_hostcontrol 

房间是场控模式,严格控制房间中的音视频,参会者默认没有音视频打开权限

rm_attr_freespeech 

房间是自由发言模式,默认

rm_modes 
rm_attributes 
clear_set 
rm_mcu 

mcu模式

rm_p2p 

p2p模式

rm_attr_join_host_first 

房间中主持人要先加入其他人才能加入

rm_attr_join_before_host 

房间中其他人可以先于主持人加入

rm_attr_netacc 

房间中网络加速,暂不支持

rm_attr_netacc_close 

房间中网络没有加速,暂不支持

rm_attr_hostcontrol 

房间是场控模式,严格控制房间中的音视频,参会者默认没有音视频打开权限

rm_attr_freespeech 

房间是自由发言模式,默认

rm_modes 
rm_attributes 
enum RoomOption

房间选项

注解
房间选项枚举列出了用于设置房间的选项,在以下函数中使用。
参见
IRoom.setOption
IRoom.getOption
枚举值
ro_video_drop_data 

值类型为bool, 字符类型为"true" or "false":表示接收到视频数据后不解码直接丢弃,一般用于模拟客服端做并发测试。 默认值为false,设置为true后将丢弃该房间所有接收到的视频数据。 必须在join调用之前设置才有效。

ro_audio_drop_data 

值类型为bool, 字符类型为"true" or "false":表示接收到音频数据后不解码直接丢弃,一般用于模拟客服端做并发测试。 默认值为false,设置为true后将丢弃该房间所有接收到的音频数据。 必须在join调用之前设置才有效。

ro_media_use_dtls 

值类型为bool, 字符类型为"true" or "false":表示音视频是否启用DTLS加密,DTLS加密数据更加安全,但是会加重Server 的负担,在UDP丢包严重的网络环境下,媒体链接需要的时间会更多(30丢包,链接时间10s-40s)。 默认值为true,使用的是DTLS加密方式。 必须在join调用之前设置才有效。

ro_room_reconnect_times 

值类型为int32, 字符类型为"3" or "2"等数字字符:设置每次断线后重连次数。系统默认为重连3次,如需改变需要应用层自己设置。 在join之前或者之后设置都有效。

ro_room_connect_timeout 

值类型为uint32, 字符类型为"3000" or "5000" :设置链接超时时间,单位毫秒,必须是正数,系统默认是5000毫秒。 在join之前或者之后设置都有效。

ro_audio_auto_subscribe 

值类型为bool, 字符类型为"true" or "false":表示是否自动订阅音频,true 自动订阅,false 不自动订阅 默认为true

ro_audio_option_codec 

值类型为String, 音频编码算法:字符类型为"ISAC" or "opus" or "AAC":分别表示isac语音编码 和 opus音乐编码 和 AAC语音编码;缺省为"ISAC"。 必须在join调用之前设置才有效。

ro_audio_mixerdata_callback_buffered 

值类型为bool, 字符类型为"true" or "false":表示房间中混音数据回调是否缓冲为1024sample后回调:缓冲(true)和不缓冲(false), 缺省为缓冲。 在join之前或者之后设置都有效。

ro_video_default_camera 

值类型为枚举CameraType, 字符类型为"front" or "back":表示前后置摄像头模式时房间中默认使用的摄像头:前置(front)和后置(back), 缺省为前置。 必须在join调用之前设置才有效。

ro_room_auto_rejoin 

值类型为int32, 字符类型为"true" or "false":在重连失败之后是否尝试自动重新加入房间,系统默认为true。 在join之前或者之后设置都有效。

ro_room_rejoin_times 

值类型为uint32, 字符类型为"3" or "2"等数字字符:设置断线重连失败后自动加入的次数,在启用ro_room_auto_rejoin为true后有效。 系统默认为3,尝试3次重新加入,如果都失败将通过onConnectionStatus接口返回cs_connectFailed状态。 在join之前或者之后设置都有效。

ro_room_options_apply 

值类型为String, 房间中各种选项(根据字符枚举)立即应用。当前字符枚举有:"audio_options":Engine中设置的音频选项应用如aec,agc等。

ro_screen_share_fps 

值类型为uint32, 字符类型为"3" or "10"等数字字符:设置共享屏幕时的帧率,系统默认为5。

ro_screen_share_audio 

值类型为bool, 字符类型为"true" or "false":设置共享屏幕时的是否共享扬声器的声音;系统默认为false。暂时没实现。

ro_video_mixer_published 

值类型为bool, 字符类型为"true" or "false":设置简易房间中发布视频时是否发布混屏后视频;系统默认为false。

ro_video_drop_data 

值类型为bool, 字符类型为"true" or "false":表示接收到视频数据后不解码直接丢弃,一般用于模拟客服端做并发测试。 默认值为false,设置为true后将丢弃该房间所有接收到的视频数据。 必须在join调用之前设置才有效。

ro_audio_drop_data 

值类型为bool, 字符类型为"true" or "false":表示接收到音频数据后不解码直接丢弃,一般用于模拟客服端做并发测试。 默认值为false,设置为true后将丢弃该房间所有接收到的音频数据。 必须在join调用之前设置才有效。

ro_media_use_dtls 

值类型为bool, 字符类型为"true" or "false":表示音视频是否启用DTLS加密,DTLS加密数据更加安全,但是会加重Server 的负担,在UDP丢包严重的网络环境下,媒体链接需要的时间会更多(30丢包,链接时间10s-40s)。 默认值为true,使用的是DTLS加密方式。 必须在join调用之前设置才有效。

ro_room_reconnect_times 

值类型为int32, 字符类型为"3" or "2"等数字字符:设置每次断线后重连次数。系统默认为重连3次,如需改变需要应用层自己设置。 在join之前或者之后设置都有效。

ro_room_connect_timeout 

值类型为uint32, 字符类型为"3000" or "5000" :设置链接超时时间,单位毫秒,必须是正数,系统默认是5000毫秒。 在join之前或者之后设置都有效。

ro_audio_auto_subscribe 

值类型为bool, 字符类型为"true" or "false":表示是否自动订阅音频,true 自动订阅,false 不自动订阅 默认为true

ro_audio_option_codec 

值类型为String, 音频编码算法:字符类型为"ISAC" or "opus" or "AAC":分别表示isac语音编码 和 opus音乐编码 和 AAC语音编码;缺省为"ISAC"。 必须在join调用之前设置才有效。

ro_audio_mixerdata_callback_buffered 

值类型为bool, 字符类型为"true" or "false":表示房间中混音数据回调是否缓冲为1024sample后回调:缓冲(true)和不缓冲(false), 缺省为缓冲。 在join之前或者之后设置都有效。

ro_video_default_camera 

值类型为枚举CameraType, 字符类型为"front" or "back":表示前后置摄像头模式时房间中默认使用的摄像头:前置(front)和后置(back), 缺省为前置。 必须在join调用之前设置才有效。

ro_room_auto_rejoin 

值类型为int32, 字符类型为"true" or "false":在重连失败之后是否尝试自动重新加入房间,系统默认为true。 在join之前或者之后设置都有效。

ro_room_rejoin_times 

值类型为uint32, 字符类型为"3" or "2"等数字字符:设置断线重连失败后自动加入的次数,在启用ro_room_auto_rejoin为true后有效。 系统默认为3,尝试3次重新加入,如果都失败将通过onConnectionStatus接口返回cs_connectFailed状态。 在join之前或者之后设置都有效。

ro_room_options_apply 

值类型为String, 房间中各种选项(根据字符枚举)立即应用。当前字符枚举有:"audio_options":Engine中设置的音频选项应用如aec,agc等。

ro_screen_share_fps 

值类型为uint32, 字符类型为"3" or "10"等数字字符:设置共享屏幕时的帧率,系统默认为5。

ro_screen_share_audio 

值类型为bool, 字符类型为"true" or "false":设置共享屏幕时的是否共享扬声器的声音;系统默认为false。暂时没实现。

ro_video_mixer_published 

值类型为bool, 字符类型为"true" or "false":设置简易房间中发布视频时是否发布混屏后视频;系统默认为false。

enum RoomStatus

房间状态

枚举值
rs_scheduled 

已经安排好

rs_opening 

正在进行中

rs_locked 

已锁定房间:锁定房间后,新用户无法加入房间

rs_closed 

已关闭房间

rs_scheduled 

已经安排好

rs_opening 

正在进行中

rs_locked 

已锁定房间:锁定房间后,新用户无法加入房间

rs_closed 

已关闭房间

enum ScreenType
枚举值
st_unknown 

未知类型

st_desktop 

桌面

st_application 

应用

st_unknown 

未知类型

st_desktop 

桌面

st_application 

应用

enum StreamType

视频主辅流类型.

枚举值
stream_main 

主流

stream_assist1 

辅流1

stream_assist2 

辅流2

stream_main 

主流

stream_assist1 

辅流1

stream_assist2 

辅流2

enum VideoCodec

视频编解码器类型.

枚举值
codec_vp8 

VP8编解码器类型

codec_h264 

H264编解码器类型

codec_vp9 

VP9编解码器类型

codec_h265 

H265编解码器类型

codec_i420 
codec_default 
codec_vp8 

VP8编解码器类型

codec_h264 

H264编解码器类型

codec_vp9 

VP9编解码器类型

codec_h265 

H265编解码器类型

codec_i420 
codec_default 

视频质量类型.

枚举值
quality_low 

流畅

quality_normal 

标清

quality_high 

高清

quality_low 

流畅

quality_normal 

标清

quality_high 

高清

enum VideoRatio

视频宽高比类型.

枚举值
ratio_4_3 

4:3视频

ratio_16_9 

16:9视频

ratio_cif 

CIF比例视频

ratio_default 
ratio_4_3 

4:3视频

ratio_16_9 

16:9视频

ratio_cif 

CIF比例视频

ratio_default 

视频角度类型.

枚举值
rotation_0 
rotation_90 
rotation_180 
rotation_270 
rotation_default 
rotation_0 
rotation_90 
rotation_180 
rotation_270 
rotation_default 

变量说明

const AudioCodecInst kTbIlbc = { 102, "ILBC", 8000, 240, 1, 13300 }
const AudioCodecInst kTbIsacSwb = { 104, "ISAC", 32000, 960, 1, 56000 }
const AudioCodecInst kTbIsacWb = { 103, "ISAC", 16000, 480, 1, 32000 }
const AudioCodecInst kTbOpus = { 120, "opus", 48000, 960, 2, 64000 }
const AudioCodecInst kTbPcm16Bwb = { 108, "L16", 16000, 320, 1, 256000 }

支持的音频编码格式

在声音回调的时候使用,以下为目前支持的编码格式。

const AudioCodecInst kTbPcm16Stereo = { 112, "L16", 16000, 320, 2, 256000 }
const AudioCodecInst kTbPcm44Bwb = { 130, "L16", 44100, 882, 1, 512000 }
const AudioCodecInst kTbPcm44Stereo = { 135, "L16", 44100, 882, 2, 512000 }
const AudioCodecInst kTbPcm48Bwb = { 131, "L16", 48000, 960, 1, 512000 }
const AudioCodecInst kTbPcm48Stereo = { 136, "L16", 48000, 960, 2, 512000 }
const AudioCodecInst kTbPcma = { 8, "PCMA", 8000, 160, 1, 64000 }
const AudioCodecInst kTbPcmaStereo = { 118, "PCMA", 8000, 160, 2, 64000 }
const AudioCodecInst kTbPcmu = { 0, "PCMU", 8000, 160, 1, 64000 }
const AudioCodecInst kTbPcmuStereo = { 110, "PCMU", 8000, 160, 2, 64000 }