pub const TRUE: u32 = 1;
pub const FALSE: u32 = 0;
pub const __WORDSIZE: u32 = 64;
pub const __DARWIN_ONLY_64_BIT_INO_T: u32 = 0;
pub const __DARWIN_ONLY_VERS_1050: u32 = 0;
pub const __DARWIN_ONLY_UNIX_CONFORMANCE: u32 = 1;
pub const __DARWIN_UNIX03: u32 = 1;
pub const __DARWIN_64_BIT_INO_T: u32 = 1;
pub const __DARWIN_VERS_1050: u32 = 1;
pub const __DARWIN_NON_CANCELABLE: u32 = 0;
pub const __DARWIN_SUF_64_BIT_INO_T: &'static [u8; 9usize] = b"$INODE64\0";
pub const __DARWIN_SUF_1050: &'static [u8; 6usize] = b"$1050\0";
pub const __DARWIN_SUF_EXTSN: &'static [u8; 14usize] = b"$DARWIN_EXTSN\0";
pub const __DARWIN_C_ANSI: u32 = 4096;
pub const __DARWIN_C_FULL: u32 = 900000;
pub const __DARWIN_C_LEVEL: u32 = 900000;
pub const __STDC_WANT_LIB_EXT1__: u32 = 1;
pub const __DARWIN_NO_LONG_LONG: u32 = 0;
pub const _DARWIN_FEATURE_64_BIT_INODE: u32 = 1;
pub const _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE: u32 = 1;
pub const _DARWIN_FEATURE_UNIX_CONFORMANCE: u32 = 3;
pub const __PTHREAD_SIZE__: u32 = 8176;
pub const __PTHREAD_ATTR_SIZE__: u32 = 56;
pub const __PTHREAD_MUTEXATTR_SIZE__: u32 = 8;
pub const __PTHREAD_MUTEX_SIZE__: u32 = 56;
pub const __PTHREAD_CONDATTR_SIZE__: u32 = 8;
pub const __PTHREAD_COND_SIZE__: u32 = 40;
pub const __PTHREAD_ONCE_SIZE__: u32 = 8;
pub const __PTHREAD_RWLOCK_SIZE__: u32 = 192;
pub const __PTHREAD_RWLOCKATTR_SIZE__: u32 = 16;
pub const INT8_MAX: u32 = 127;
pub const INT16_MAX: u32 = 32767;
pub const INT32_MAX: u32 = 2147483647;
pub const INT64_MAX: u64 = 9223372036854775807;
pub const INT8_MIN: i32 = -128;
pub const INT16_MIN: i32 = -32768;
pub const INT32_MIN: i32 = -2147483648;
pub const INT64_MIN: i64 = -9223372036854775808;
pub const UINT8_MAX: u32 = 255;
pub const UINT16_MAX: u32 = 65535;
pub const UINT32_MAX: u32 = 4294967295;
pub const UINT64_MAX: i32 = -1;
pub const INT_LEAST8_MIN: i32 = -128;
pub const INT_LEAST16_MIN: i32 = -32768;
pub const INT_LEAST32_MIN: i32 = -2147483648;
pub const INT_LEAST64_MIN: i64 = -9223372036854775808;
pub const INT_LEAST8_MAX: u32 = 127;
pub const INT_LEAST16_MAX: u32 = 32767;
pub const INT_LEAST32_MAX: u32 = 2147483647;
pub const INT_LEAST64_MAX: u64 = 9223372036854775807;
pub const UINT_LEAST8_MAX: u32 = 255;
pub const UINT_LEAST16_MAX: u32 = 65535;
pub const UINT_LEAST32_MAX: u32 = 4294967295;
pub const UINT_LEAST64_MAX: i32 = -1;
pub const INT_FAST8_MIN: i32 = -128;
pub const INT_FAST16_MIN: i32 = -32768;
pub const INT_FAST32_MIN: i32 = -2147483648;
pub const INT_FAST64_MIN: i64 = -9223372036854775808;
pub const INT_FAST8_MAX: u32 = 127;
pub const INT_FAST16_MAX: u32 = 32767;
pub const INT_FAST32_MAX: u32 = 2147483647;
pub const INT_FAST64_MAX: u64 = 9223372036854775807;
pub const UINT_FAST8_MAX: u32 = 255;
pub const UINT_FAST16_MAX: u32 = 65535;
pub const UINT_FAST32_MAX: u32 = 4294967295;
pub const UINT_FAST64_MAX: i32 = -1;
pub const INTPTR_MAX: u64 = 9223372036854775807;
pub const INTPTR_MIN: i64 = -9223372036854775808;
pub const UINTPTR_MAX: i32 = -1;
pub const SIZE_MAX: i32 = -1;
pub const RSIZE_MAX: i32 = -1;
pub const WINT_MIN: i32 = -2147483648;
pub const WINT_MAX: u32 = 2147483647;
pub const SIG_ATOMIC_MIN: i32 = -2147483648;
pub const SIG_ATOMIC_MAX: u32 = 2147483647;
pub type BOOL = ::std::os::raw::c_int;
pub type int_least8_t = i8;
pub type int_least16_t = i16;
pub type int_least32_t = i32;
pub type int_least64_t = i64;
pub type uint_least8_t = u8;
pub type uint_least16_t = u16;
pub type uint_least32_t = u32;
pub type uint_least64_t = u64;
pub type int_fast8_t = i8;
pub type int_fast16_t = i16;
pub type int_fast32_t = i32;
pub type int_fast64_t = i64;
pub type uint_fast8_t = u8;
pub type uint_fast16_t = u16;
pub type uint_fast32_t = u32;
pub type uint_fast64_t = u64;
pub type __int8_t = ::std::os::raw::c_schar;
pub type __uint8_t = ::std::os::raw::c_uchar;
pub type __int16_t = ::std::os::raw::c_short;
pub type __uint16_t = ::std::os::raw::c_ushort;
pub type __int32_t = ::std::os::raw::c_int;
pub type __uint32_t = ::std::os::raw::c_uint;
pub type __int64_t = ::std::os::raw::c_longlong;
pub type __uint64_t = ::std::os::raw::c_ulonglong;
pub type __darwin_intptr_t = ::std::os::raw::c_long;
pub type __darwin_natural_t = ::std::os::raw::c_uint;
pub type __darwin_ct_rune_t = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Copy, Clone)]
pub union __mbstate_t {
pub __mbstate8: [::std::os::raw::c_char; 128usize],
pub _mbstateL: ::std::os::raw::c_longlong,
_bindgen_union_align: [u64; 16usize],
}
pub type __darwin_mbstate_t = __mbstate_t;
pub type __darwin_ptrdiff_t = ::std::os::raw::c_long;
pub type __darwin_size_t = ::std::os::raw::c_ulong;
pub type __darwin_va_list = __builtin_va_list;
pub type __darwin_wchar_t = ::std::os::raw::c_int;
pub type __darwin_rune_t = __darwin_wchar_t;
pub type __darwin_wint_t = ::std::os::raw::c_int;
pub type __darwin_clock_t = ::std::os::raw::c_ulong;
pub type __darwin_socklen_t = __uint32_t;
pub type __darwin_ssize_t = ::std::os::raw::c_long;
pub type __darwin_time_t = ::std::os::raw::c_long;
pub type __darwin_blkcnt_t = __int64_t;
pub type __darwin_blksize_t = __int32_t;
pub type __darwin_dev_t = __int32_t;
pub type __darwin_fsblkcnt_t = ::std::os::raw::c_uint;
pub type __darwin_fsfilcnt_t = ::std::os::raw::c_uint;
pub type __darwin_gid_t = __uint32_t;
pub type __darwin_id_t = __uint32_t;
pub type __darwin_ino64_t = __uint64_t;
pub type __darwin_ino_t = __darwin_ino64_t;
pub type __darwin_mach_port_name_t = __darwin_natural_t;
pub type __darwin_mach_port_t = __darwin_mach_port_name_t;
pub type __darwin_mode_t = __uint16_t;
pub type __darwin_off_t = __int64_t;
pub type __darwin_pid_t = __int32_t;
pub type __darwin_sigset_t = __uint32_t;
pub type __darwin_suseconds_t = __int32_t;
pub type __darwin_uid_t = __uint32_t;
pub type __darwin_useconds_t = __uint32_t;
pub type __darwin_uuid_t = [::std::os::raw::c_uchar; 16usize];
pub type __darwin_uuid_string_t = [::std::os::raw::c_char; 37usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __darwin_pthread_handler_rec {
pub __routine: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
pub __arg: *mut ::std::os::raw::c_void,
pub __next: *mut __darwin_pthread_handler_rec,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _opaque_pthread_attr_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 56usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _opaque_pthread_cond_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 40usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_condattr_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 8usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _opaque_pthread_mutex_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 56usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_mutexattr_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_once_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 8usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _opaque_pthread_rwlock_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 192usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct _opaque_pthread_rwlockattr_t {
pub __sig: ::std::os::raw::c_long,
pub __opaque: [::std::os::raw::c_char; 16usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct _opaque_pthread_t {
pub __sig: ::std::os::raw::c_long,
pub __cleanup_stack: *mut __darwin_pthread_handler_rec,
pub __opaque: [::std::os::raw::c_char; 8176usize],
}
pub type __darwin_pthread_attr_t = _opaque_pthread_attr_t;
pub type __darwin_pthread_cond_t = _opaque_pthread_cond_t;
pub type __darwin_pthread_condattr_t = _opaque_pthread_condattr_t;
pub type __darwin_pthread_key_t = ::std::os::raw::c_ulong;
pub type __darwin_pthread_mutex_t = _opaque_pthread_mutex_t;
pub type __darwin_pthread_mutexattr_t = _opaque_pthread_mutexattr_t;
pub type __darwin_pthread_once_t = _opaque_pthread_once_t;
pub type __darwin_pthread_rwlock_t = _opaque_pthread_rwlock_t;
pub type __darwin_pthread_rwlockattr_t = _opaque_pthread_rwlockattr_t;
pub type __darwin_pthread_t = *mut _opaque_pthread_t;
pub type u_int8_t = ::std::os::raw::c_uchar;
pub type u_int16_t = ::std::os::raw::c_ushort;
pub type u_int32_t = ::std::os::raw::c_uint;
pub type u_int64_t = ::std::os::raw::c_ulonglong;
pub type register_t = i64;
pub type user_addr_t = u_int64_t;
pub type user_size_t = u_int64_t;
pub type user_ssize_t = i64;
pub type user_long_t = i64;
pub type user_ulong_t = u_int64_t;
pub type user_time_t = i64;
pub type user_off_t = i64;
pub type syscall_arg_t = u_int64_t;
pub type intmax_t = ::std::os::raw::c_long;
pub type uintmax_t = ::std::os::raw::c_ulong;
pub type size_t = ::std::os::raw::c_ulong;
pub type rsize_t = ::std::os::raw::c_ulong;
pub type wchar_t = ::std::os::raw::c_int;
pub type max_align_t = u128;
pub type uid_t = ::std::os::raw::c_uint;
pub type view_t = *mut ::std::os::raw::c_void;
pub const API_TYPE_INITIALIZE: API_TYPE = 0;
pub const API_TYPE_RELEASE: API_TYPE = 1;
pub const API_TYPE_SET_CHANNEL_PROFILE: API_TYPE = 2;
pub const API_TYPE_SET_CLIENT_ROLE: API_TYPE = 3;
pub const API_TYPE_JOIN_CHANNEL: API_TYPE = 4;
pub const API_TYPE_SWITCH_CHANNEL: API_TYPE = 5;
pub const API_TYPE_LEAVE_CHANNEL: API_TYPE = 6;
pub const API_TYPE_RE_NEW_TOKEN: API_TYPE = 7;
pub const API_TYPE_REGISTER_LOCAL_USER_ACCOUNT: API_TYPE = 8;
pub const API_TYPE_JOIN_CHANNEL_WITH_USER_ACCOUNT: API_TYPE = 9;
pub const API_TYPE_GET_USER_INFO_BY_USER_ACCOUNT: API_TYPE = 10;
pub const API_TYPE_GET_USER_INFO_BY_UID: API_TYPE = 11;
pub const API_TYPE_START_ECHO_TEST: API_TYPE = 12;
pub const API_TYPE_START_ECHO_TEST_2: API_TYPE = 13;
pub const API_TYPE_STOP_ECHO_TEST: API_TYPE = 14;
pub const API_TYPE_ENABLE_VIDEO: API_TYPE = 15;
pub const API_TYPE_DISABLE_VIDEO: API_TYPE = 16;
pub const API_TYPE_SET_VIDEO_PROFILE: API_TYPE = 17;
pub const API_TYPE_SET_VIDEO_ENCODER_CONFIGURATION: API_TYPE = 18;
pub const API_TYPE_SET_CAMERA_CAPTURER_CONFIGURATION: API_TYPE = 19;
pub const API_TYPE_SET_UP_LOCAL_VIDEO: API_TYPE = 20;
pub const API_TYPE_SET_UP_REMOTE_VIDEO: API_TYPE = 21;
pub const API_TYPE_START_PREVIEW: API_TYPE = 22;
pub const API_TYPE_SET_REMOTE_USER_PRIORITY: API_TYPE = 23;
pub const API_TYPE_STOP_PREVIEW: API_TYPE = 24;
pub const API_TYPE_ENABLE_AUDIO: API_TYPE = 25;
pub const API_TYPE_ENABLE_LOCAL_AUDIO: API_TYPE = 26;
pub const API_TYPE_DISABLE_AUDIO: API_TYPE = 27;
pub const API_TYPE_SET_AUDIO_PROFILE: API_TYPE = 28;
pub const API_TYPE_MUTE_LOCAL_AUDIO_STREAM: API_TYPE = 29;
pub const API_TYPE_MUTE_ALL_REMOTE_AUDIO_STREAMS: API_TYPE = 30;
pub const API_TYPE_SET_DEFAULT_MUTE_ALL_REMOTE_AUDIO_STREAMS: API_TYPE = 31;
pub const API_TYPE_ADJUST_USER_PLAYBACK_SIGNAL_VOLUME: API_TYPE = 32;
pub const API_TYPE_MUTE_REMOTE_AUDIO_STREAM: API_TYPE = 33;
pub const API_TYPE_MUTE_LOCAL_VIDEO_STREAM: API_TYPE = 34;
pub const API_TYPE_ENABLE_LOCAL_VIDEO: API_TYPE = 35;
pub const API_TYPE_MUTE_ALL_REMOTE_VIDEO_STREAMS: API_TYPE = 36;
pub const API_TYPE_SET_DEFAULT_MUTE_ALL_REMOTE_VIDEO_STREAMS: API_TYPE = 37;
pub const API_TYPE_MUTE_REMOTE_VIDEO_STREAM: API_TYPE = 38;
pub const API_TYPE_SET_REMOTE_VIDEO_STREAM_TYPE: API_TYPE = 39;
pub const API_TYPE_SET_REMOTE_DEFAULT_VIDEO_STREAM_TYPE: API_TYPE = 40;
pub const API_TYPE_ENABLE_AUDIO_VOLUME_INDICATION: API_TYPE = 41;
pub const API_TYPE_START_AUDIO_RECORDING: API_TYPE = 42;
pub const API_TYPE_START_AUDIO_RECORDING2: API_TYPE = 43;
pub const API_TYPE_STOP_AUDIO_RECORDING: API_TYPE = 44;
pub const API_TYPE_ENABLE_FACE_DETECTION: API_TYPE = 62;
pub const API_TYPE_SET_REMOTE_VOICE_POSITIONN: API_TYPE = 73;
pub const API_TYPE_SET_LOG_FILE: API_TYPE = 79;
pub const API_TYPE_SET_LOG_FILTER: API_TYPE = 80;
pub const API_TYPE_SET_LOG_FILE_SIZE: API_TYPE = 81;
pub const API_TYPE_SET_LOCAL_RENDER_MODE: API_TYPE = 82;
pub const API_TYPE_SET_LOCAL_RENDER_MODE_2: API_TYPE = 83;
pub const API_TYPE_SET_REMOTE_RENDER_MODE: API_TYPE = 84;
pub const API_TYPE_SET_REMOTE_RENDER_MODE_2: API_TYPE = 85;
pub const API_TYPE_SET_LOCAL_VIDEO_MIRROR_MODE: API_TYPE = 86;
pub const API_TYPE_ENABLE_DUAL_STREAM_MODE: API_TYPE = 87;
pub const API_TYPE_ADJUST_RECORDING_SIGNAL_VOLUME: API_TYPE = 93;
pub const API_TYPE_ADJUST_PLAYBACK_SIGNAL_VOLUME: API_TYPE = 94;
pub const API_TYPE_ENABLE_WEB_SDK_INTEROPER_ABILITY: API_TYPE = 95;
pub const API_TYPE_SET_VIDEO_QUALITY_PARAMETERS: API_TYPE = 96;
pub const API_TYPE_SET_LOCAL_PUBLISH_FALLBACK_OPTION: API_TYPE = 97;
pub const API_TYPE_SET_REMOTE_SUBSCRIBE_FALLBACK_OPTION: API_TYPE = 98;
pub const API_TYPE_SWITCH_CAMERA: API_TYPE = 99;
pub const API_TYPE_SWITCH_CAMERA_2: API_TYPE = 100;
pub const API_TYPE_SET_DEFAULT_AUDIO_ROUTE_SPEAKER_PHONE: API_TYPE = 101;
pub const API_TYPE_SET_ENABLE_SPEAKER_PHONE: API_TYPE = 102;
pub const API_TYPE_ENABLE_IN_EAR_MONITORING: API_TYPE = 103;
pub const API_TYPE_SET_IN_EAR_MONITORING_VOLUME: API_TYPE = 104;
pub const API_TYPE_IS_SPEAKER_PHONE_ENABLED: API_TYPE = 105;
pub const API_TYPE_SET_AUDIO_SESSION_OPERATION_RESTRICTION: API_TYPE = 106;
pub const API_TYPE_ENABLE_LOOP_BACK_RECORDING: API_TYPE = 107;
pub const API_TYPE_START_SCREEN_CAPTURE_BY_DISPLAY_ID: API_TYPE = 108;
pub const API_TYPE_START_SCREEN_CAPTURE_BY_SCREEN_RECT: API_TYPE = 109;
pub const API_TYPE_START_SCREEN_CAPTURE_BY_WINDOW_ID: API_TYPE = 110;
pub const API_TYPE_SET_SCREEN_CAPTURE_CONTENT_HINT: API_TYPE = 111;
pub const API_TYPE_UPDATE_SCREEN_CAPTURE_PARAMETERS: API_TYPE = 112;
pub const API_TYPE_UPDATE_SCREEN_CAPTURE_REGION: API_TYPE = 113;
pub const API_TYPE_STOP_SCREEN_CAPTURE: API_TYPE = 114;
pub const API_TYPE_GET_CALL_ID: API_TYPE = 117;
pub const API_TYPE_RATE: API_TYPE = 118;
pub const API_TYPE_COMPLAIN: API_TYPE = 119;
pub const API_TYPE_GET_VERSION: API_TYPE = 120;
pub const API_TYPE_ENABLE_LAST_MILE_TEST: API_TYPE = 121;
pub const API_TYPE_DISABLE_LAST_MILE_TEST: API_TYPE = 122;
pub const API_TYPE_START_LAST_MILE_PROBE_TEST: API_TYPE = 123;
pub const API_TYPE_STOP_LAST_MILE_PROBE_TEST: API_TYPE = 124;
pub const API_TYPE_GET_ERROR_DESCRIPTION: API_TYPE = 125;
pub const API_TYPE_SET_ENCRYPTION_SECTRT: API_TYPE = 126;
pub const API_TYPE_SET_ENCRYPTION_MODE: API_TYPE = 127;
pub const API_TYPE_REGISTER_PACKET_OBSERVER: API_TYPE = 128;
pub const API_TYPE_CREATE_DATA_STREAM: API_TYPE = 129;
pub const API_TYPE_SEND_STREAM_MESSAGE: API_TYPE = 130;
pub const API_TYPE_ADD_PUBLISH_STREAM_URL: API_TYPE = 131;
pub const API_TYPE_REMOVE_PUBLISH_STREAM_URL: API_TYPE = 132;
pub const API_TYPE_SET_LIVE_TRANSCODING: API_TYPE = 133;
pub const API_TYPE_ADD_VIDEO_WATER_MARK: API_TYPE = 134;
pub const API_TYPE_ADD_VIDEO_WATER_MARK_2: API_TYPE = 135;
pub const API_TYPE_CLEAR_VIDEO_WATER_MARKS: API_TYPE = 136;
pub const API_TYPE_SET_BEAUTY_EFFECT_OPTIONS: API_TYPE = 137;
pub const API_TYPE_ADD_INJECT_STREAM_URL: API_TYPE = 138;
pub const API_TYPE_START_CHANNEL_MEDIA_RELAY: API_TYPE = 139;
pub const API_TYPE_UPDATE_CHANNEL_MEDIA_RELAY: API_TYPE = 140;
pub const API_TYPE_STOP_CHANNEL_MEDIA_RELAY: API_TYPE = 141;
pub const API_TYPE_REMOVE_INJECT_STREAM_URL: API_TYPE = 142;
pub const API_TYPE_GET_CONNECTION_STATE: API_TYPE = 143;
pub const API_TYPE_REGISTER_MEDIA_META_DATA_OBSERVER: API_TYPE = 144;
pub const API_TYPE_SET_PARAMETERS: API_TYPE = 145;
pub const API_TYPE_SET_PLAYBACK_DEVICE_VOLUME: API_TYPE = 146;
pub const API_TYPE_PUBLISH: API_TYPE = 147;
pub const API_TYPE_UNPUBLISH: API_TYPE = 148;
pub const API_TYPE_CHANNEL_ID: API_TYPE = 149;
pub const API_TYPE_SEND_METADATA: API_TYPE = 150;
pub const API_TYPE_SET_MAX_META_SIZE: API_TYPE = 151;
pub const API_TYPE_PUSH_AUDIO_FRAME: API_TYPE = 152;
pub const API_TYPE_PUSH_AUDIO_FRAME_2: API_TYPE = 153;
pub const API_TYPE_PULL_AUDIO_FRAME: API_TYPE = 154;
pub const API_TYPE_SET_EXTERN_VIDEO_SOURCE: API_TYPE = 155;
pub const API_TYPE_PUSH_VIDEO_FRAME: API_TYPE = 156;
pub type API_TYPE = ::std::os::raw::c_uint;
pub const API_TYPE_AUDIO_EFFECT_START_AUDIO_MIXING: API_TYPE_AUDIO_EFFECT = 45;
pub const API_TYPE_AUDIO_EFFECT_STOP_AUDIO_MIXING: API_TYPE_AUDIO_EFFECT = 46;
pub const API_TYPE_AUDIO_EFFECT_PAUSE_AUDIO_MIXING: API_TYPE_AUDIO_EFFECT = 47;
pub const API_TYPE_AUDIO_EFFECT_RESUME_AUDIO_MIXING: API_TYPE_AUDIO_EFFECT = 48;
pub const API_TYPE_AUDIO_EFFECT_SET_HIGH_QUALITY_AUDIO_PARAMETERS: API_TYPE_AUDIO_EFFECT = 49;
pub const API_TYPE_AUDIO_EFFECT_ADJUST_AUDIO_MIXING_VOLUME: API_TYPE_AUDIO_EFFECT = 50;
pub const API_TYPE_AUDIO_EFFECT_ADJUST_AUDIO_MIXING_PLAYOUT_VOLUME: API_TYPE_AUDIO_EFFECT = 51;
pub const API_TYPE_AUDIO_EFFECT_GET_AUDIO_MIXING_PLAYOUT_VOLUME: API_TYPE_AUDIO_EFFECT = 52;
pub const API_TYPE_AUDIO_EFFECT_ADJUST_AUDIO_MIXING_PUBLISH_VOLUME: API_TYPE_AUDIO_EFFECT = 53;
pub const API_TYPE_AUDIO_EFFECT_GET_AUDIO_MIXING_PUBLISH_VOLUME: API_TYPE_AUDIO_EFFECT = 54;
pub const API_TYPE_AUDIO_EFFECT_GET_AUDIO_MIXING_DURATION: API_TYPE_AUDIO_EFFECT = 55;
pub const API_TYPE_AUDIO_EFFECT_GET_AUDIO_MIXING_CURRENT_POSITION: API_TYPE_AUDIO_EFFECT = 56;
pub const API_TYPE_AUDIO_EFFECT_SET_AUDIO_MIXING_POSITION: API_TYPE_AUDIO_EFFECT = 57;
pub const API_TYPE_AUDIO_EFFECT_SET_AUDIO_MIXING_PITCH: API_TYPE_AUDIO_EFFECT = 58;
pub const API_TYPE_AUDIO_EFFECT_GET_EFFECTS_VOLUME: API_TYPE_AUDIO_EFFECT = 59;
pub const API_TYPE_AUDIO_EFFECT_SET_EFFECTS_VOLUME: API_TYPE_AUDIO_EFFECT = 60;
pub const API_TYPE_AUDIO_EFFECT_SET_VOLUME_OF_EFFECT: API_TYPE_AUDIO_EFFECT = 61;
pub const API_TYPE_AUDIO_EFFECT_PLAY_EFFECT: API_TYPE_AUDIO_EFFECT = 63;
pub const API_TYPE_AUDIO_EFFECT_STOP_EFFECT: API_TYPE_AUDIO_EFFECT = 64;
pub const API_TYPE_AUDIO_EFFECT_STOP_ALL_EFFECTS: API_TYPE_AUDIO_EFFECT = 65;
pub const API_TYPE_AUDIO_EFFECT_PRE_LOAD_EFFECT: API_TYPE_AUDIO_EFFECT = 66;
pub const API_TYPE_AUDIO_EFFECT_UN_LOAD_EFFECT: API_TYPE_AUDIO_EFFECT = 67;
pub const API_TYPE_AUDIO_EFFECT_PAUSE_EFFECT: API_TYPE_AUDIO_EFFECT = 68;
pub const API_TYPE_AUDIO_EFFECT_PAUSE_ALL_EFFECTS: API_TYPE_AUDIO_EFFECT = 69;
pub const API_TYPE_AUDIO_EFFECT_RESUME_EFFECT: API_TYPE_AUDIO_EFFECT = 70;
pub const API_TYPE_AUDIO_EFFECT_RESUME_ALL_EFFECTS: API_TYPE_AUDIO_EFFECT = 71;
pub const API_TYPE_AUDIO_EFFECT_ENABLE_SOUND_POSITION_INDICATION: API_TYPE_AUDIO_EFFECT = 72;
pub const API_TYPE_AUDIO_EFFECT_SET_LOCAL_VOICE_PITCH: API_TYPE_AUDIO_EFFECT = 74;
pub const API_TYPE_AUDIO_EFFECT_SET_LOCAL_VOICE_EQUALIZATION: API_TYPE_AUDIO_EFFECT = 75;
pub const API_TYPE_AUDIO_EFFECT_SET_LOCAL_VOICE_REVERB: API_TYPE_AUDIO_EFFECT = 76;
pub const API_TYPE_AUDIO_EFFECT_SET_LOCAL_VOICE_CHANGER: API_TYPE_AUDIO_EFFECT = 77;
pub const API_TYPE_AUDIO_EFFECT_SET_LOCAL_VOICE_REVERB_PRESET: API_TYPE_AUDIO_EFFECT = 78;
pub const API_TYPE_AUDIO_EFFECT_SET_EXTERNAL_AUDIO_SOURCE: API_TYPE_AUDIO_EFFECT = 88;
pub const API_TYPE_AUDIO_EFFECT_SET_EXTERNAL_AUDIO_SINK: API_TYPE_AUDIO_EFFECT = 89;
pub const API_TYPE_AUDIO_EFFECT_SET_RECORDING_AUDIO_FRAME_PARAMETERS: API_TYPE_AUDIO_EFFECT = 90;
pub const API_TYPE_AUDIO_EFFECT_SET_PLAYBACK_AUDIO_FRAME_PARAMETERS: API_TYPE_AUDIO_EFFECT = 91;
pub const API_TYPE_AUDIO_EFFECT_SET_MIXED_AUDIO_FRAME_PARAMETERS: API_TYPE_AUDIO_EFFECT = 92;
pub type API_TYPE_AUDIO_EFFECT = ::std::os::raw::c_uint;
pub const API_TYPE_DEVICE_MANAGER_GET_COUNT: API_TYPE_DEVICE_MANAGER = 151;
pub const API_TYPE_DEVICE_MANAGER_GET_DEVICE: API_TYPE_DEVICE_MANAGER = 152;
pub const API_TYPE_DEVICE_MANAGER_GET_CURRENT_DEVICE: API_TYPE_DEVICE_MANAGER = 153;
pub const API_TYPE_DEVICE_MANAGER_GET_CURRENT_DEVICE_INFO: API_TYPE_DEVICE_MANAGER = 154;
pub const API_TYPE_DEVICE_MANAGER_SET_DEVICE: API_TYPE_DEVICE_MANAGER = 155;
pub const API_TYPE_DEVICE_MANAGER_SET_DEVICE_VOLUME: API_TYPE_DEVICE_MANAGER = 156;
pub const API_TYPE_DEVICE_MANAGER_GET_DEVICE_VOLUME: API_TYPE_DEVICE_MANAGER = 157;
pub const API_TYPE_DEVICE_MANAGER_SET_DEVICE_MUTE: API_TYPE_DEVICE_MANAGER = 158;
pub const API_TYPE_DEVICE_MANAGER_GET_DEVICE_MUTE: API_TYPE_DEVICE_MANAGER = 159;
pub const API_TYPE_DEVICE_MANAGER_START_DEVICE_TEST: API_TYPE_DEVICE_MANAGER = 160;
pub const API_TYPE_DEVICE_MANAGER_STOP_DEVICE_TEST: API_TYPE_DEVICE_MANAGER = 161;
pub const API_TYPE_DEVICE_MANAGER_START_AUDIO_DEVICE_LOOP_BACK_TEST: API_TYPE_DEVICE_MANAGER = 162;
pub const API_TYPE_DEVICE_MANAGER_STOP_AUDIO_DEVICE_LOOP_BACK_TEST: API_TYPE_DEVICE_MANAGER = 163;
pub type API_TYPE_DEVICE_MANAGER = ::std::os::raw::c_uint;
pub const ERROR_CODE_ERROR_OK: ERROR_CODE = 0;
pub const ERROR_CODE_ERROR_INVALID_API_TYPE: ERROR_CODE = -100;
pub const ERROR_CODE_ERROR_INVALID_PARAM: ERROR_CODE = -101;
pub const ERROR_CODE_ERROR_PARSE_PARAMETER: ERROR_CODE = -102;
pub const ERROR_CODE_ERROR_NO_CURRENT_PARAMETER: ERROR_CODE = -103;
pub const ERROR_CODE_ERROR_NOT_SUPPORT_API: ERROR_CODE = -4;
pub const ERROR_CODE_ERROR_NOT_INITIALIZE_OBSERVER: ERROR_CODE = -104;
pub const ERROR_CODE_ERROR_NO_DEVICE: ERROR_CODE = -105;
pub const ERROR_CODE_ERROR_ENGINE_EXIST: ERROR_CODE = -106;
pub const ERROR_CODE_ERROR_NO_ENGINE: ERROR_CODE = -107;
pub const ERROR_CODE_ERROR_INVALID_DEVICE_TYPE: ERROR_CODE = -108;
pub type ERROR_CODE = ::std::os::raw::c_int;
pub const DEVICE_TYPE_PLAYBACK_DEVICE: DEVICE_TYPE = 0;
pub const DEVICE_TYPE_RECORDING_DEVICE: DEVICE_TYPE = 1;
pub type DEVICE_TYPE = ::std::os::raw::c_uint;
pub const MAX_DEVICE_ID_LENGTH_TYPE_MAX_DEVICE_ID_LENGTH: MAX_DEVICE_ID_LENGTH_TYPE = 512;
pub type MAX_DEVICE_ID_LENGTH_TYPE = ::std::os::raw::c_uint;
pub const MAX_USER_ACCOUNT_LENGTH_TYPE_MAX_USER_ACCOUNT_LENGTH: MAX_USER_ACCOUNT_LENGTH_TYPE = 256;
pub type MAX_USER_ACCOUNT_LENGTH_TYPE = ::std::os::raw::c_uint;
pub const MAX_CHANNEL_ID_LENGTH_TYPE_MAX_CHANNEL_ID_LENGTH: MAX_CHANNEL_ID_LENGTH_TYPE = 65;
pub type MAX_CHANNEL_ID_LENGTH_TYPE = ::std::os::raw::c_uint;
pub const QUALITY_REPORT_FORMAT_TYPE_QUALITY_REPORT_JSON: QUALITY_REPORT_FORMAT_TYPE = 0;
pub const QUALITY_REPORT_FORMAT_TYPE_QUALITY_REPORT_HTML: QUALITY_REPORT_FORMAT_TYPE = 1;
pub type QUALITY_REPORT_FORMAT_TYPE = ::std::os::raw::c_uint;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_RECORDING_ERROR: MEDIA_ENGINE_EVENT_CODE_TYPE =
0;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_PLAYOUT_ERROR: MEDIA_ENGINE_EVENT_CODE_TYPE = 1;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_RECORDING_WARNING:
MEDIA_ENGINE_EVENT_CODE_TYPE = 2;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_PLAYOUT_WARNING: MEDIA_ENGINE_EVENT_CODE_TYPE =
3;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_FILE_MIX_FINISH:
MEDIA_ENGINE_EVENT_CODE_TYPE = 10;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_FAREND_MUSIC_BEGINS:
MEDIA_ENGINE_EVENT_CODE_TYPE = 12;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_FAREND_MUSIC_ENDS:
MEDIA_ENGINE_EVENT_CODE_TYPE = 13;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_LOCAL_AUDIO_RECORD_ENABLED:
MEDIA_ENGINE_EVENT_CODE_TYPE = 14;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_LOCAL_AUDIO_RECORD_DISABLED:
MEDIA_ENGINE_EVENT_CODE_TYPE = 15;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_ROLE_BROADCASTER_SOLO:
MEDIA_ENGINE_EVENT_CODE_TYPE = 20;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_ROLE_BROADCASTER_INTERACTIVE:
MEDIA_ENGINE_EVENT_CODE_TYPE = 21;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_ROLE_AUDIENCE: MEDIA_ENGINE_EVENT_CODE_TYPE =
22;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_ROLE_COMM_PEER: MEDIA_ENGINE_EVENT_CODE_TYPE =
23;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_ROLE_GAME_PEER: MEDIA_ENGINE_EVENT_CODE_TYPE =
24;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_ADM_REQUIRE_RESTART:
MEDIA_ENGINE_EVENT_CODE_TYPE = 110;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_ADM_SPECIAL_RESTART:
MEDIA_ENGINE_EVENT_CODE_TYPE = 111;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_ADM_USING_COMM_PARAMS:
MEDIA_ENGINE_EVENT_CODE_TYPE = 112;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_ADM_USING_NORM_PARAMS:
MEDIA_ENGINE_EVENT_CODE_TYPE = 113;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_EVENT_MIXING_PLAY:
MEDIA_ENGINE_EVENT_CODE_TYPE = 710;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_EVENT_MIXING_PAUSED:
MEDIA_ENGINE_EVENT_CODE_TYPE = 711;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_EVENT_MIXING_RESTART:
MEDIA_ENGINE_EVENT_CODE_TYPE = 712;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_EVENT_MIXING_STOPPED:
MEDIA_ENGINE_EVENT_CODE_TYPE = 713;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_EVENT_MIXING_ERROR:
MEDIA_ENGINE_EVENT_CODE_TYPE = 714;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_ERROR_MIXING_OPEN:
MEDIA_ENGINE_EVENT_CODE_TYPE = 701;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_ERROR_MIXING_TOO_FREQUENT:
MEDIA_ENGINE_EVENT_CODE_TYPE = 702;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_ERROR_MIXING_INTERRUPTED_EOF:
MEDIA_ENGINE_EVENT_CODE_TYPE = 703;
pub const MEDIA_ENGINE_EVENT_CODE_TYPE_MEDIA_ENGINE_AUDIO_ERROR_MIXING_NO_ERROR:
MEDIA_ENGINE_EVENT_CODE_TYPE = 0;
pub type MEDIA_ENGINE_EVENT_CODE_TYPE = ::std::os::raw::c_uint;
pub const AUDIO_MIXING_STATE_TYPE_AUDIO_MIXING_STATE_PLAYING: AUDIO_MIXING_STATE_TYPE = 710;
pub const AUDIO_MIXING_STATE_TYPE_AUDIO_MIXING_STATE_PAUSED: AUDIO_MIXING_STATE_TYPE = 711;
pub const AUDIO_MIXING_STATE_TYPE_AUDIO_MIXING_STATE_STOPPED: AUDIO_MIXING_STATE_TYPE = 713;
pub const AUDIO_MIXING_STATE_TYPE_AUDIO_MIXING_STATE_FAILED: AUDIO_MIXING_STATE_TYPE = 714;
pub type AUDIO_MIXING_STATE_TYPE = ::std::os::raw::c_uint;
pub const AUDIO_MIXING_ERROR_TYPE_AUDIO_MIXING_ERROR_CAN_NOT_OPEN: AUDIO_MIXING_ERROR_TYPE = 701;
pub const AUDIO_MIXING_ERROR_TYPE_AUDIO_MIXING_ERROR_TOO_FREQUENT_CALL: AUDIO_MIXING_ERROR_TYPE =
702;
pub const AUDIO_MIXING_ERROR_TYPE_AUDIO_MIXING_ERROR_INTERRUPTED_EOF: AUDIO_MIXING_ERROR_TYPE = 703;
pub const AUDIO_MIXING_ERROR_TYPE_AUDIO_MIXING_ERROR_OK: AUDIO_MIXING_ERROR_TYPE = 0;
pub type AUDIO_MIXING_ERROR_TYPE = ::std::os::raw::c_uint;
pub const MEDIA_DEVICE_STATE_TYPE_MEDIA_DEVICE_STATE_ACTIVE: MEDIA_DEVICE_STATE_TYPE = 1;
pub const MEDIA_DEVICE_STATE_TYPE_MEDIA_DEVICE_STATE_DISABLED: MEDIA_DEVICE_STATE_TYPE = 2;
pub const MEDIA_DEVICE_STATE_TYPE_MEDIA_DEVICE_STATE_NOT_PRESENT: MEDIA_DEVICE_STATE_TYPE = 4;
pub const MEDIA_DEVICE_STATE_TYPE_MEDIA_DEVICE_STATE_UNPLUGGED: MEDIA_DEVICE_STATE_TYPE = 8;
pub type MEDIA_DEVICE_STATE_TYPE = ::std::os::raw::c_uint;
pub const MEDIA_DEVICE_TYPE_UNKNOWN_AUDIO_DEVICE: MEDIA_DEVICE_TYPE = -1;
pub const MEDIA_DEVICE_TYPE_AUDIO_PLAYOUT_DEVICE: MEDIA_DEVICE_TYPE = 0;
pub const MEDIA_DEVICE_TYPE_AUDIO_RECORDING_DEVICE: MEDIA_DEVICE_TYPE = 1;
pub const MEDIA_DEVICE_TYPE_VIDEO_RENDER_DEVICE: MEDIA_DEVICE_TYPE = 2;
pub const MEDIA_DEVICE_TYPE_VIDEO_CAPTURE_DEVICE: MEDIA_DEVICE_TYPE = 3;
pub const MEDIA_DEVICE_TYPE_AUDIO_APPLICATION_PLAYOUT_DEVICE: MEDIA_DEVICE_TYPE = 4;
pub type MEDIA_DEVICE_TYPE = ::std::os::raw::c_int;
pub const LOCAL_VIDEO_STREAM_STATE_LOCAL_VIDEO_STREAM_STATE_STOPPED: LOCAL_VIDEO_STREAM_STATE = 0;
pub const LOCAL_VIDEO_STREAM_STATE_LOCAL_VIDEO_STREAM_STATE_CAPTURING: LOCAL_VIDEO_STREAM_STATE = 1;
pub const LOCAL_VIDEO_STREAM_STATE_LOCAL_VIDEO_STREAM_STATE_ENCODING: LOCAL_VIDEO_STREAM_STATE = 2;
pub const LOCAL_VIDEO_STREAM_STATE_LOCAL_VIDEO_STREAM_STATE_FAILED: LOCAL_VIDEO_STREAM_STATE = 3;
pub type LOCAL_VIDEO_STREAM_STATE = ::std::os::raw::c_uint;
pub const LOCAL_VIDEO_STREAM_ERROR_LOCAL_VIDEO_STREAM_ERROR_OK: LOCAL_VIDEO_STREAM_ERROR = 0;
pub const LOCAL_VIDEO_STREAM_ERROR_LOCAL_VIDEO_STREAM_ERROR_FAILURE: LOCAL_VIDEO_STREAM_ERROR = 1;
pub const LOCAL_VIDEO_STREAM_ERROR_LOCAL_VIDEO_STREAM_ERROR_DEVICE_NO_PERMISSION:
LOCAL_VIDEO_STREAM_ERROR = 2;
pub const LOCAL_VIDEO_STREAM_ERROR_LOCAL_VIDEO_STREAM_ERROR_DEVICE_BUSY: LOCAL_VIDEO_STREAM_ERROR =
3;
pub const LOCAL_VIDEO_STREAM_ERROR_LOCAL_VIDEO_STREAM_ERROR_CAPTURE_FAILURE:
LOCAL_VIDEO_STREAM_ERROR = 4;
pub const LOCAL_VIDEO_STREAM_ERROR_LOCAL_VIDEO_STREAM_ERROR_ENCODE_FAILURE:
LOCAL_VIDEO_STREAM_ERROR = 5;
pub const LOCAL_VIDEO_STREAM_ERROR_LOCAL_VIDEO_STREAM_ERROR_SCREEN_CAPTURE_WINDOW_MINIMIZED:
LOCAL_VIDEO_STREAM_ERROR = 11;
pub type LOCAL_VIDEO_STREAM_ERROR = ::std::os::raw::c_uint;
pub const LOCAL_AUDIO_STREAM_STATE_LOCAL_AUDIO_STREAM_STATE_STOPPED: LOCAL_AUDIO_STREAM_STATE = 0;
pub const LOCAL_AUDIO_STREAM_STATE_LOCAL_AUDIO_STREAM_STATE_RECORDING: LOCAL_AUDIO_STREAM_STATE = 1;
pub const LOCAL_AUDIO_STREAM_STATE_LOCAL_AUDIO_STREAM_STATE_ENCODING: LOCAL_AUDIO_STREAM_STATE = 2;
pub const LOCAL_AUDIO_STREAM_STATE_LOCAL_AUDIO_STREAM_STATE_FAILED: LOCAL_AUDIO_STREAM_STATE = 3;
pub type LOCAL_AUDIO_STREAM_STATE = ::std::os::raw::c_uint;
pub const LOCAL_AUDIO_STREAM_ERROR_LOCAL_AUDIO_STREAM_ERROR_OK: LOCAL_AUDIO_STREAM_ERROR = 0;
pub const LOCAL_AUDIO_STREAM_ERROR_LOCAL_AUDIO_STREAM_ERROR_FAILURE: LOCAL_AUDIO_STREAM_ERROR = 1;
pub const LOCAL_AUDIO_STREAM_ERROR_LOCAL_AUDIO_STREAM_ERROR_DEVICE_NO_PERMISSION:
LOCAL_AUDIO_STREAM_ERROR = 2;
pub const LOCAL_AUDIO_STREAM_ERROR_LOCAL_AUDIO_STREAM_ERROR_DEVICE_BUSY: LOCAL_AUDIO_STREAM_ERROR =
3;
pub const LOCAL_AUDIO_STREAM_ERROR_LOCAL_AUDIO_STREAM_ERROR_RECORD_FAILURE:
LOCAL_AUDIO_STREAM_ERROR = 4;
pub const LOCAL_AUDIO_STREAM_ERROR_LOCAL_AUDIO_STREAM_ERROR_ENCODE_FAILURE:
LOCAL_AUDIO_STREAM_ERROR = 5;
pub type LOCAL_AUDIO_STREAM_ERROR = ::std::os::raw::c_uint;
pub const AUDIO_RECORDING_QUALITY_TYPE_AUDIO_RECORDING_QUALITY_LOW: AUDIO_RECORDING_QUALITY_TYPE =
0;
pub const AUDIO_RECORDING_QUALITY_TYPE_AUDIO_RECORDING_QUALITY_MEDIUM:
AUDIO_RECORDING_QUALITY_TYPE = 1;
pub const AUDIO_RECORDING_QUALITY_TYPE_AUDIO_RECORDING_QUALITY_HIGH: AUDIO_RECORDING_QUALITY_TYPE =
2;
pub type AUDIO_RECORDING_QUALITY_TYPE = ::std::os::raw::c_uint;
pub const QUALITY_TYPE_QUALITY_UNKNOWN: QUALITY_TYPE = 0;
pub const QUALITY_TYPE_QUALITY_EXCELLENT: QUALITY_TYPE = 1;
pub const QUALITY_TYPE_QUALITY_GOOD: QUALITY_TYPE = 2;
pub const QUALITY_TYPE_QUALITY_POOR: QUALITY_TYPE = 3;
pub const QUALITY_TYPE_QUALITY_BAD: QUALITY_TYPE = 4;
pub const QUALITY_TYPE_QUALITY_VBAD: QUALITY_TYPE = 5;
pub const QUALITY_TYPE_QUALITY_DOWN: QUALITY_TYPE = 6;
pub const QUALITY_TYPE_QUALITY_UNSUPPORTED: QUALITY_TYPE = 7;
pub const QUALITY_TYPE_QUALITY_DETECTING: QUALITY_TYPE = 8;
pub type QUALITY_TYPE = ::std::os::raw::c_uint;
pub const RENDER_MODE_TYPE_RENDER_MODE_HIDDEN: RENDER_MODE_TYPE = 1;
pub const RENDER_MODE_TYPE_RENDER_MODE_FIT: RENDER_MODE_TYPE = 2;
pub const RENDER_MODE_TYPE_RENDER_MODE_ADAPTIVE: RENDER_MODE_TYPE = 3;
pub const RENDER_MODE_TYPE_RENDER_MODE_FILL: RENDER_MODE_TYPE = 4;
pub type RENDER_MODE_TYPE = ::std::os::raw::c_uint;
pub const VIDEO_MIRROR_MODE_TYPE_VIDEO_MIRROR_MODE_AUTO: VIDEO_MIRROR_MODE_TYPE = 0;
pub const VIDEO_MIRROR_MODE_TYPE_VIDEO_MIRROR_MODE_ENABLED: VIDEO_MIRROR_MODE_TYPE = 1;
pub const VIDEO_MIRROR_MODE_TYPE_VIDEO_MIRROR_MODE_DISABLED: VIDEO_MIRROR_MODE_TYPE = 2;
pub type VIDEO_MIRROR_MODE_TYPE = ::std::os::raw::c_uint;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_120P: VIDEO_PROFILE_TYPE = 0;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_120P_3: VIDEO_PROFILE_TYPE = 2;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_180P: VIDEO_PROFILE_TYPE = 10;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_180P_3: VIDEO_PROFILE_TYPE = 12;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_180P_4: VIDEO_PROFILE_TYPE = 13;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_240P: VIDEO_PROFILE_TYPE = 20;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_240P_3: VIDEO_PROFILE_TYPE = 22;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_240P_4: VIDEO_PROFILE_TYPE = 23;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P: VIDEO_PROFILE_TYPE = 30;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P_3: VIDEO_PROFILE_TYPE = 32;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P_4: VIDEO_PROFILE_TYPE = 33;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P_6: VIDEO_PROFILE_TYPE = 35;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P_7: VIDEO_PROFILE_TYPE = 36;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P_8: VIDEO_PROFILE_TYPE = 37;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P_9: VIDEO_PROFILE_TYPE = 38;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P_10: VIDEO_PROFILE_TYPE = 39;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_360P_11: VIDEO_PROFILE_TYPE = 100;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_480P: VIDEO_PROFILE_TYPE = 40;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_480P_3: VIDEO_PROFILE_TYPE = 42;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_480P_4: VIDEO_PROFILE_TYPE = 43;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_480P_6: VIDEO_PROFILE_TYPE = 45;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_480P_8: VIDEO_PROFILE_TYPE = 47;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_480P_9: VIDEO_PROFILE_TYPE = 48;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_480P_10: VIDEO_PROFILE_TYPE = 49;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_720P: VIDEO_PROFILE_TYPE = 50;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_720P_3: VIDEO_PROFILE_TYPE = 52;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_720P_5: VIDEO_PROFILE_TYPE = 54;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_720P_6: VIDEO_PROFILE_TYPE = 55;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_1080P: VIDEO_PROFILE_TYPE = 60;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_1080P_3: VIDEO_PROFILE_TYPE = 62;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_1080P_5: VIDEO_PROFILE_TYPE = 64;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_1440P: VIDEO_PROFILE_TYPE = 66;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_1440P_2: VIDEO_PROFILE_TYPE = 67;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_4K: VIDEO_PROFILE_TYPE = 70;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_LANDSCAPE_4K_3: VIDEO_PROFILE_TYPE = 72;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_120P: VIDEO_PROFILE_TYPE = 1000;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_120P_3: VIDEO_PROFILE_TYPE = 1002;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_180P: VIDEO_PROFILE_TYPE = 1010;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_180P_3: VIDEO_PROFILE_TYPE = 1012;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_180P_4: VIDEO_PROFILE_TYPE = 1013;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_240P: VIDEO_PROFILE_TYPE = 1020;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_240P_3: VIDEO_PROFILE_TYPE = 1022;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_240P_4: VIDEO_PROFILE_TYPE = 1023;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P: VIDEO_PROFILE_TYPE = 1030;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P_3: VIDEO_PROFILE_TYPE = 1032;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P_4: VIDEO_PROFILE_TYPE = 1033;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P_6: VIDEO_PROFILE_TYPE = 1035;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P_7: VIDEO_PROFILE_TYPE = 1036;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P_8: VIDEO_PROFILE_TYPE = 1037;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P_9: VIDEO_PROFILE_TYPE = 1038;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P_10: VIDEO_PROFILE_TYPE = 1039;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_360P_11: VIDEO_PROFILE_TYPE = 1100;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_480P: VIDEO_PROFILE_TYPE = 1040;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_480P_3: VIDEO_PROFILE_TYPE = 1042;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_480P_4: VIDEO_PROFILE_TYPE = 1043;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_480P_6: VIDEO_PROFILE_TYPE = 1045;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_480P_8: VIDEO_PROFILE_TYPE = 1047;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_480P_9: VIDEO_PROFILE_TYPE = 1048;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_480P_10: VIDEO_PROFILE_TYPE = 1049;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_720P: VIDEO_PROFILE_TYPE = 1050;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_720P_3: VIDEO_PROFILE_TYPE = 1052;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_720P_5: VIDEO_PROFILE_TYPE = 1054;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_720P_6: VIDEO_PROFILE_TYPE = 1055;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_1080P: VIDEO_PROFILE_TYPE = 1060;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_1080P_3: VIDEO_PROFILE_TYPE = 1062;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_1080P_5: VIDEO_PROFILE_TYPE = 1064;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_1440P: VIDEO_PROFILE_TYPE = 1066;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_1440P_2: VIDEO_PROFILE_TYPE = 1067;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_4K: VIDEO_PROFILE_TYPE = 1070;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_PORTRAIT_4K_3: VIDEO_PROFILE_TYPE = 1072;
pub const VIDEO_PROFILE_TYPE_VIDEO_PROFILE_DEFAULT: VIDEO_PROFILE_TYPE = 30;
pub type VIDEO_PROFILE_TYPE = ::std::os::raw::c_uint;
pub const AUDIO_PROFILE_TYPE_AUDIO_PROFILE_DEFAULT: AUDIO_PROFILE_TYPE = 0;
pub const AUDIO_PROFILE_TYPE_AUDIO_PROFILE_SPEECH_STANDARD: AUDIO_PROFILE_TYPE = 1;
pub const AUDIO_PROFILE_TYPE_AUDIO_PROFILE_MUSIC_STANDARD: AUDIO_PROFILE_TYPE = 2;
pub const AUDIO_PROFILE_TYPE_AUDIO_PROFILE_MUSIC_STANDARD_STEREO: AUDIO_PROFILE_TYPE = 3;
pub const AUDIO_PROFILE_TYPE_AUDIO_PROFILE_MUSIC_HIGH_QUALITY: AUDIO_PROFILE_TYPE = 4;
pub const AUDIO_PROFILE_TYPE_AUDIO_PROFILE_MUSIC_HIGH_QUALITY_STEREO: AUDIO_PROFILE_TYPE = 5;
pub const AUDIO_PROFILE_TYPE_AUDIO_PROFILE_IOT: AUDIO_PROFILE_TYPE = 6;
pub const AUDIO_PROFILE_TYPE_AUDIO_PROFILE_NUM: AUDIO_PROFILE_TYPE = 7;
pub type AUDIO_PROFILE_TYPE = ::std::os::raw::c_uint;
pub const AUDIO_SCENARIO_TYPE_AUDIO_SCENARIO_DEFAULT: AUDIO_SCENARIO_TYPE = 0;
pub const AUDIO_SCENARIO_TYPE_AUDIO_SCENARIO_CHATROOM_ENTERTAINMENT: AUDIO_SCENARIO_TYPE = 1;
pub const AUDIO_SCENARIO_TYPE_AUDIO_SCENARIO_EDUCATION: AUDIO_SCENARIO_TYPE = 2;
pub const AUDIO_SCENARIO_TYPE_AUDIO_SCENARIO_GAME_STREAMING: AUDIO_SCENARIO_TYPE = 3;
pub const AUDIO_SCENARIO_TYPE_AUDIO_SCENARIO_SHOWROOM: AUDIO_SCENARIO_TYPE = 4;
pub const AUDIO_SCENARIO_TYPE_AUDIO_SCENARIO_CHATROOM_GAMING: AUDIO_SCENARIO_TYPE = 5;
pub const AUDIO_SCENARIO_TYPE_AUDIO_SCENARIO_IOT: AUDIO_SCENARIO_TYPE = 6;
pub const AUDIO_SCENARIO_TYPE_AUDIO_SCENARIO_NUM: AUDIO_SCENARIO_TYPE = 7;
pub type AUDIO_SCENARIO_TYPE = ::std::os::raw::c_uint;
pub const CHANNEL_PROFILE_TYPE_CHANNEL_PROFILE_COMMUNICATION: CHANNEL_PROFILE_TYPE = 0;
pub const CHANNEL_PROFILE_TYPE_CHANNEL_PROFILE_LIVE_BROADCASTING: CHANNEL_PROFILE_TYPE = 1;
pub const CHANNEL_PROFILE_TYPE_CHANNEL_PROFILE_GAME: CHANNEL_PROFILE_TYPE = 2;
pub type CHANNEL_PROFILE_TYPE = ::std::os::raw::c_uint;
pub const CLIENT_ROLE_TYPE_CLIENT_ROLE_BROADCASTER: CLIENT_ROLE_TYPE = 1;
pub const CLIENT_ROLE_TYPE_CLIENT_ROLE_AUDIENCE: CLIENT_ROLE_TYPE = 2;
pub type CLIENT_ROLE_TYPE = ::std::os::raw::c_uint;
pub const USER_OFFLINE_REASON_TYPE_USER_OFFLINE_QUIT: USER_OFFLINE_REASON_TYPE = 0;
pub const USER_OFFLINE_REASON_TYPE_USER_OFFLINE_DROPPED: USER_OFFLINE_REASON_TYPE = 1;
pub const USER_OFFLINE_REASON_TYPE_USER_OFFLINE_BECOME_AUDIENCE: USER_OFFLINE_REASON_TYPE = 2;
pub type USER_OFFLINE_REASON_TYPE = ::std::os::raw::c_uint;
pub const RTMP_STREAM_PUBLISH_STATE_RTMP_STREAM_PUBLISH_STATE_IDLE: RTMP_STREAM_PUBLISH_STATE = 0;
pub const RTMP_STREAM_PUBLISH_STATE_RTMP_STREAM_PUBLISH_STATE_CONNECTING:
RTMP_STREAM_PUBLISH_STATE = 1;
pub const RTMP_STREAM_PUBLISH_STATE_RTMP_STREAM_PUBLISH_STATE_RUNNING: RTMP_STREAM_PUBLISH_STATE =
2;
pub const RTMP_STREAM_PUBLISH_STATE_RTMP_STREAM_PUBLISH_STATE_RECOVERING:
RTMP_STREAM_PUBLISH_STATE = 3;
pub const RTMP_STREAM_PUBLISH_STATE_RTMP_STREAM_PUBLISH_STATE_FAILURE: RTMP_STREAM_PUBLISH_STATE =
4;
pub type RTMP_STREAM_PUBLISH_STATE = ::std::os::raw::c_uint;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_OK: RTMP_STREAM_PUBLISH_ERROR = 0;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_INVALID_ARGUMENT:
RTMP_STREAM_PUBLISH_ERROR = 1;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_ENCRYPTED_STREAM_NOT_ALLOWED:
RTMP_STREAM_PUBLISH_ERROR = 2;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_CONNECTION_TIMEOUT:
RTMP_STREAM_PUBLISH_ERROR = 3;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_INTERNAL_SERVER_ERROR:
RTMP_STREAM_PUBLISH_ERROR = 4;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_RTMP_SERVER_ERROR:
RTMP_STREAM_PUBLISH_ERROR = 5;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_TOO_OFTEN: RTMP_STREAM_PUBLISH_ERROR =
6;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_REACH_LIMIT:
RTMP_STREAM_PUBLISH_ERROR = 7;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_NOT_AUTHORIZED:
RTMP_STREAM_PUBLISH_ERROR = 8;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_STREAM_NOT_FOUND:
RTMP_STREAM_PUBLISH_ERROR = 9;
pub const RTMP_STREAM_PUBLISH_ERROR_RTMP_STREAM_PUBLISH_ERROR_FORMAT_NOT_SUPPORTED:
RTMP_STREAM_PUBLISH_ERROR = 10;
pub type RTMP_STREAM_PUBLISH_ERROR = ::std::os::raw::c_uint;
pub const RTMP_STREAMING_EVENT_RTMP_STREAMING_EVENT_FAILED_LOAD_IMAGE: RTMP_STREAMING_EVENT = 1;
pub type RTMP_STREAMING_EVENT = ::std::os::raw::c_uint;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_START_SUCCESS: INJECT_STREAM_STATUS = 0;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_START_ALREADY_EXISTS: INJECT_STREAM_STATUS = 1;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_START_UNAUTHORIZED: INJECT_STREAM_STATUS = 2;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_START_TIMEDOUT: INJECT_STREAM_STATUS = 3;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_START_FAILED: INJECT_STREAM_STATUS = 4;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_STOP_SUCCESS: INJECT_STREAM_STATUS = 5;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_STOP_NOT_FOUND: INJECT_STREAM_STATUS = 6;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_STOP_UNAUTHORIZED: INJECT_STREAM_STATUS = 7;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_STOP_TIMEDOUT: INJECT_STREAM_STATUS = 8;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_STOP_FAILED: INJECT_STREAM_STATUS = 9;
pub const INJECT_STREAM_STATUS_INJECT_STREAM_STATUS_BROKEN: INJECT_STREAM_STATUS = 10;
pub type INJECT_STREAM_STATUS = ::std::os::raw::c_uint;
pub const REMOTE_VIDEO_STREAM_TYPE_REMOTE_VIDEO_STREAM_HIGH: REMOTE_VIDEO_STREAM_TYPE = 0;
pub const REMOTE_VIDEO_STREAM_TYPE_REMOTE_VIDEO_STREAM_LOW: REMOTE_VIDEO_STREAM_TYPE = 1;
pub type REMOTE_VIDEO_STREAM_TYPE = ::std::os::raw::c_uint;
pub const RAW_AUDIO_FRAME_OP_MODE_TYPE_RAW_AUDIO_FRAME_OP_MODE_READ_ONLY:
RAW_AUDIO_FRAME_OP_MODE_TYPE = 0;
pub const RAW_AUDIO_FRAME_OP_MODE_TYPE_RAW_AUDIO_FRAME_OP_MODE_WRITE_ONLY:
RAW_AUDIO_FRAME_OP_MODE_TYPE = 1;
pub const RAW_AUDIO_FRAME_OP_MODE_TYPE_RAW_AUDIO_FRAME_OP_MODE_READ_WRITE:
RAW_AUDIO_FRAME_OP_MODE_TYPE = 2;
pub type RAW_AUDIO_FRAME_OP_MODE_TYPE = ::std::os::raw::c_uint;
pub const AUDIO_SAMPLE_RATE_TYPE_AUDIO_SAMPLE_RATE_32000: AUDIO_SAMPLE_RATE_TYPE = 32000;
pub const AUDIO_SAMPLE_RATE_TYPE_AUDIO_SAMPLE_RATE_44100: AUDIO_SAMPLE_RATE_TYPE = 44100;
pub const AUDIO_SAMPLE_RATE_TYPE_AUDIO_SAMPLE_RATE_48000: AUDIO_SAMPLE_RATE_TYPE = 48000;
pub type AUDIO_SAMPLE_RATE_TYPE = ::std::os::raw::c_uint;
pub const VIDEO_CODEC_PROFILE_TYPE_VIDEO_CODEC_PROFILE_BASELINE: VIDEO_CODEC_PROFILE_TYPE = 66;
pub const VIDEO_CODEC_PROFILE_TYPE_VIDEO_CODEC_PROFILE_MAIN: VIDEO_CODEC_PROFILE_TYPE = 77;
pub const VIDEO_CODEC_PROFILE_TYPE_VIDEO_CODEC_PROFILE_HIGH: VIDEO_CODEC_PROFILE_TYPE = 100;
pub type VIDEO_CODEC_PROFILE_TYPE = ::std::os::raw::c_uint;
pub const VIDEO_CODEC_TYPE_VIDEO_CODEC_VP8: VIDEO_CODEC_TYPE = 1;
pub const VIDEO_CODEC_TYPE_VIDEO_CODEC_H264: VIDEO_CODEC_TYPE = 2;
pub const VIDEO_CODEC_TYPE_VIDEO_CODEC_EVP: VIDEO_CODEC_TYPE = 3;
pub const VIDEO_CODEC_TYPE_VIDEO_CODEC_E264: VIDEO_CODEC_TYPE = 4;
pub type VIDEO_CODEC_TYPE = ::std::os::raw::c_uint;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_31:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 0;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_62:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 1;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_125:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 2;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_250:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 3;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_500:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 4;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_1K:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 5;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_2K:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 6;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_4K:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 7;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_8K:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 8;
pub const AUDIO_EQUALIZATION_BAND_FREQUENCY_AUDIO_EQUALIZATION_BAND_16K:
AUDIO_EQUALIZATION_BAND_FREQUENCY = 9;
pub type AUDIO_EQUALIZATION_BAND_FREQUENCY = ::std::os::raw::c_uint;
pub const AUDIO_REVERB_TYPE_AUDIO_REVERB_DRY_LEVEL: AUDIO_REVERB_TYPE = 0;
pub const AUDIO_REVERB_TYPE_AUDIO_REVERB_WET_LEVEL: AUDIO_REVERB_TYPE = 1;
pub const AUDIO_REVERB_TYPE_AUDIO_REVERB_ROOM_SIZE: AUDIO_REVERB_TYPE = 2;
pub const AUDIO_REVERB_TYPE_AUDIO_REVERB_WET_DELAY: AUDIO_REVERB_TYPE = 3;
pub const AUDIO_REVERB_TYPE_AUDIO_REVERB_STRENGTH: AUDIO_REVERB_TYPE = 4;
pub type AUDIO_REVERB_TYPE = ::std::os::raw::c_uint;
pub const VOICE_CHANGER_PRESET_VOICE_CHANGER_OFF: VOICE_CHANGER_PRESET = 0;
pub const VOICE_CHANGER_PRESET_VOICE_CHANGER_OLDMAN: VOICE_CHANGER_PRESET = 1;
pub const VOICE_CHANGER_PRESET_VOICE_CHANGER_BABYBOY: VOICE_CHANGER_PRESET = 2;
pub const VOICE_CHANGER_PRESET_VOICE_CHANGER_BABYGIRL: VOICE_CHANGER_PRESET = 3;
pub const VOICE_CHANGER_PRESET_VOICE_CHANGER_ZHUBAJIE: VOICE_CHANGER_PRESET = 4;
pub const VOICE_CHANGER_PRESET_VOICE_CHANGER_ETHEREAL: VOICE_CHANGER_PRESET = 5;
pub const VOICE_CHANGER_PRESET_VOICE_CHANGER_HULK: VOICE_CHANGER_PRESET = 6;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_VIGOROUS: VOICE_CHANGER_PRESET = 1048577;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_DEEP: VOICE_CHANGER_PRESET = 1048578;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_MELLOW: VOICE_CHANGER_PRESET = 1048579;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_FALSETTO: VOICE_CHANGER_PRESET = 1048580;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_FULL: VOICE_CHANGER_PRESET = 1048581;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_CLEAR: VOICE_CHANGER_PRESET = 1048582;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_RESOUNDING: VOICE_CHANGER_PRESET = 1048583;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_RINGING: VOICE_CHANGER_PRESET = 1048584;
pub const VOICE_CHANGER_PRESET_VOICE_BEAUTY_SPACIAL: VOICE_CHANGER_PRESET = 1048585;
pub const VOICE_CHANGER_PRESET_GENERAL_BEAUTY_VOICE_MALE_MAGNETIC: VOICE_CHANGER_PRESET = 2097153;
pub const VOICE_CHANGER_PRESET_GENERAL_BEAUTY_VOICE_FEMALE_FRESH: VOICE_CHANGER_PRESET = 2097154;
pub const VOICE_CHANGER_PRESET_GENERAL_BEAUTY_VOICE_FEMALE_VITALITY: VOICE_CHANGER_PRESET = 2097155;
pub type VOICE_CHANGER_PRESET = ::std::os::raw::c_uint;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_OFF: AUDIO_REVERB_PRESET = 0;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_FX_KTV: AUDIO_REVERB_PRESET = 1048577;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_FX_VOCAL_CONCERT: AUDIO_REVERB_PRESET = 1048578;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_FX_UNCLE: AUDIO_REVERB_PRESET = 1048579;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_FX_SISTER: AUDIO_REVERB_PRESET = 1048580;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_FX_STUDIO: AUDIO_REVERB_PRESET = 1048581;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_FX_POPULAR: AUDIO_REVERB_PRESET = 1048582;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_FX_RNB: AUDIO_REVERB_PRESET = 1048583;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_FX_PHONOGRAPH: AUDIO_REVERB_PRESET = 1048584;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_POPULAR: AUDIO_REVERB_PRESET = 1;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_RNB: AUDIO_REVERB_PRESET = 2;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_ROCK: AUDIO_REVERB_PRESET = 3;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_HIPHOP: AUDIO_REVERB_PRESET = 4;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_VOCAL_CONCERT: AUDIO_REVERB_PRESET = 5;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_KTV: AUDIO_REVERB_PRESET = 6;
pub const AUDIO_REVERB_PRESET_AUDIO_REVERB_STUDIO: AUDIO_REVERB_PRESET = 7;
pub const AUDIO_REVERB_PRESET_AUDIO_VIRTUAL_STEREO: AUDIO_REVERB_PRESET = 2097153;
pub type AUDIO_REVERB_PRESET = ::std::os::raw::c_uint;
pub const AUDIO_CODEC_PROFILE_TYPE_AUDIO_CODEC_PROFILE_LC_AAC: AUDIO_CODEC_PROFILE_TYPE = 0;
pub const AUDIO_CODEC_PROFILE_TYPE_AUDIO_CODEC_PROFILE_HE_AAC: AUDIO_CODEC_PROFILE_TYPE = 1;
pub type AUDIO_CODEC_PROFILE_TYPE = ::std::os::raw::c_uint;
pub const REMOTE_AUDIO_STATE_REMOTE_AUDIO_STATE_STOPPED: REMOTE_AUDIO_STATE = 0;
pub const REMOTE_AUDIO_STATE_REMOTE_AUDIO_STATE_STARTING: REMOTE_AUDIO_STATE = 1;
pub const REMOTE_AUDIO_STATE_REMOTE_AUDIO_STATE_DECODING: REMOTE_AUDIO_STATE = 2;
pub const REMOTE_AUDIO_STATE_REMOTE_AUDIO_STATE_FROZEN: REMOTE_AUDIO_STATE = 3;
pub const REMOTE_AUDIO_STATE_REMOTE_AUDIO_STATE_FAILED: REMOTE_AUDIO_STATE = 4;
pub type REMOTE_AUDIO_STATE = ::std::os::raw::c_uint;
pub const REMOTE_AUDIO_STATE_REASON_REMOTE_AUDIO_REASON_INTERNAL: REMOTE_AUDIO_STATE_REASON = 0;
pub const REMOTE_AUDIO_STATE_REASON_REMOTE_AUDIO_REASON_NETWORK_CONGESTION:
REMOTE_AUDIO_STATE_REASON = 1;
pub const REMOTE_AUDIO_STATE_REASON_REMOTE_AUDIO_REASON_NETWORK_RECOVERY:
REMOTE_AUDIO_STATE_REASON = 2;
pub const REMOTE_AUDIO_STATE_REASON_REMOTE_AUDIO_REASON_LOCAL_MUTED: REMOTE_AUDIO_STATE_REASON = 3;
pub const REMOTE_AUDIO_STATE_REASON_REMOTE_AUDIO_REASON_LOCAL_UNMUTED: REMOTE_AUDIO_STATE_REASON =
4;
pub const REMOTE_AUDIO_STATE_REASON_REMOTE_AUDIO_REASON_REMOTE_MUTED: REMOTE_AUDIO_STATE_REASON = 5;
pub const REMOTE_AUDIO_STATE_REASON_REMOTE_AUDIO_REASON_REMOTE_UNMUTED: REMOTE_AUDIO_STATE_REASON =
6;
pub const REMOTE_AUDIO_STATE_REASON_REMOTE_AUDIO_REASON_REMOTE_OFFLINE: REMOTE_AUDIO_STATE_REASON =
7;
pub type REMOTE_AUDIO_STATE_REASON = ::std::os::raw::c_uint;
pub const REMOTE_VIDEO_STATE_REMOTE_VIDEO_STATE_STOPPED: REMOTE_VIDEO_STATE = 0;
pub const REMOTE_VIDEO_STATE_REMOTE_VIDEO_STATE_STARTING: REMOTE_VIDEO_STATE = 1;
pub const REMOTE_VIDEO_STATE_REMOTE_VIDEO_STATE_DECODING: REMOTE_VIDEO_STATE = 2;
pub const REMOTE_VIDEO_STATE_REMOTE_VIDEO_STATE_FROZEN: REMOTE_VIDEO_STATE = 3;
pub const REMOTE_VIDEO_STATE_REMOTE_VIDEO_STATE_FAILED: REMOTE_VIDEO_STATE = 4;
pub type REMOTE_VIDEO_STATE = ::std::os::raw::c_uint;
pub const STREAM_PUBLISH_STATE_PUB_STATE_IDLE: STREAM_PUBLISH_STATE = 0;
pub const STREAM_PUBLISH_STATE_PUB_STATE_NO_PUBLISHED: STREAM_PUBLISH_STATE = 1;
pub const STREAM_PUBLISH_STATE_PUB_STATE_PUBLISHING: STREAM_PUBLISH_STATE = 2;
pub const STREAM_PUBLISH_STATE_PUB_STATE_PUBLISHED: STREAM_PUBLISH_STATE = 3;
pub type STREAM_PUBLISH_STATE = ::std::os::raw::c_uint;
pub const STREAM_SUBSCRIBE_STATE_SUB_STATE_IDLE: STREAM_SUBSCRIBE_STATE = 0;
pub const STREAM_SUBSCRIBE_STATE_SUB_STATE_NO_SUBSCRIBED: STREAM_SUBSCRIBE_STATE = 1;
pub const STREAM_SUBSCRIBE_STATE_SUB_STATE_SUBSCRIBING: STREAM_SUBSCRIBE_STATE = 2;
pub const STREAM_SUBSCRIBE_STATE_SUB_STATE_SUBSCRIBED: STREAM_SUBSCRIBE_STATE = 3;
pub type STREAM_SUBSCRIBE_STATE = ::std::os::raw::c_uint;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_INTERNAL: REMOTE_VIDEO_STATE_REASON =
0;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_NETWORK_CONGESTION:
REMOTE_VIDEO_STATE_REASON = 1;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_NETWORK_RECOVERY:
REMOTE_VIDEO_STATE_REASON = 2;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_LOCAL_MUTED:
REMOTE_VIDEO_STATE_REASON = 3;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_LOCAL_UNMUTED:
REMOTE_VIDEO_STATE_REASON = 4;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_REMOTE_MUTED:
REMOTE_VIDEO_STATE_REASON = 5;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_REMOTE_UNMUTED:
REMOTE_VIDEO_STATE_REASON = 6;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_REMOTE_OFFLINE:
REMOTE_VIDEO_STATE_REASON = 7;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK:
REMOTE_VIDEO_STATE_REASON = 8;
pub const REMOTE_VIDEO_STATE_REASON_REMOTE_VIDEO_STATE_REASON_AUDIO_FALLBACK_RECOVERY:
REMOTE_VIDEO_STATE_REASON = 9;
pub type REMOTE_VIDEO_STATE_REASON = ::std::os::raw::c_uint;
pub const FRAME_RATE_FRAME_RATE_FPS_1: FRAME_RATE = 1;
pub const FRAME_RATE_FRAME_RATE_FPS_7: FRAME_RATE = 7;
pub const FRAME_RATE_FRAME_RATE_FPS_10: FRAME_RATE = 10;
pub const FRAME_RATE_FRAME_RATE_FPS_15: FRAME_RATE = 15;
pub const FRAME_RATE_FRAME_RATE_FPS_24: FRAME_RATE = 24;
pub const FRAME_RATE_FRAME_RATE_FPS_30: FRAME_RATE = 30;
pub const FRAME_RATE_FRAME_RATE_FPS_60: FRAME_RATE = 60;
pub type FRAME_RATE = ::std::os::raw::c_uint;
pub const ORIENTATION_MODE_ORIENTATION_MODE_ADAPTIVE: ORIENTATION_MODE = 0;
pub const ORIENTATION_MODE_ORIENTATION_MODE_FIXED_LANDSCAPE: ORIENTATION_MODE = 1;
pub const ORIENTATION_MODE_ORIENTATION_MODE_FIXED_PORTRAIT: ORIENTATION_MODE = 2;
pub type ORIENTATION_MODE = ::std::os::raw::c_uint;
pub const DEGRADATION_PREFERENCE_MAINTAIN_QUALITY: DEGRADATION_PREFERENCE = 0;
pub const DEGRADATION_PREFERENCE_MAINTAIN_FRAMERATE: DEGRADATION_PREFERENCE = 1;
pub const DEGRADATION_PREFERENCE_MAINTAIN_BALANCED: DEGRADATION_PREFERENCE = 2;
pub type DEGRADATION_PREFERENCE = ::std::os::raw::c_uint;
pub const STREAM_FALLBACK_OPTIONS_STREAM_FALLBACK_OPTION_DISABLED: STREAM_FALLBACK_OPTIONS = 0;
pub const STREAM_FALLBACK_OPTIONS_STREAM_FALLBACK_OPTION_VIDEO_STREAM_LOW: STREAM_FALLBACK_OPTIONS =
1;
pub const STREAM_FALLBACK_OPTIONS_STREAM_FALLBACK_OPTION_AUDIO_ONLY: STREAM_FALLBACK_OPTIONS = 2;
pub type STREAM_FALLBACK_OPTIONS = ::std::os::raw::c_uint;
pub const CAPTURER_OUTPUT_PREFERENCE_CAPTURER_OUTPUT_PREFERENCE_AUTO: CAPTURER_OUTPUT_PREFERENCE =
0;
pub const CAPTURER_OUTPUT_PREFERENCE_CAPTURER_OUTPUT_PREFERENCE_PERFORMANCE:
CAPTURER_OUTPUT_PREFERENCE = 1;
pub const CAPTURER_OUTPUT_PREFERENCE_CAPTURER_OUTPUT_PREFERENCE_PREVIEW:
CAPTURER_OUTPUT_PREFERENCE = 2;
pub type CAPTURER_OUTPUT_PREFERENCE = ::std::os::raw::c_uint;
pub const PRIORITY_TYPE_PRIORITY_HIGH: PRIORITY_TYPE = 50;
pub const PRIORITY_TYPE_PRIORITY_NORMAL: PRIORITY_TYPE = 100;
pub type PRIORITY_TYPE = ::std::os::raw::c_uint;
pub const CONNECTION_STATE_TYPE_CONNECTION_STATE_DISCONNECTED: CONNECTION_STATE_TYPE = 1;
pub const CONNECTION_STATE_TYPE_CONNECTION_STATE_CONNECTING: CONNECTION_STATE_TYPE = 2;
pub const CONNECTION_STATE_TYPE_CONNECTION_STATE_CONNECTED: CONNECTION_STATE_TYPE = 3;
pub const CONNECTION_STATE_TYPE_CONNECTION_STATE_RECONNECTING: CONNECTION_STATE_TYPE = 4;
pub const CONNECTION_STATE_TYPE_CONNECTION_STATE_FAILED: CONNECTION_STATE_TYPE = 5;
pub type CONNECTION_STATE_TYPE = ::std::os::raw::c_uint;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_CONNECTING:
CONNECTION_CHANGED_REASON_TYPE = 0;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_JOIN_SUCCESS:
CONNECTION_CHANGED_REASON_TYPE = 1;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_INTERRUPTED:
CONNECTION_CHANGED_REASON_TYPE = 2;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_BANNED_BY_SERVER:
CONNECTION_CHANGED_REASON_TYPE = 3;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_JOIN_FAILED:
CONNECTION_CHANGED_REASON_TYPE = 4;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_LEAVE_CHANNEL:
CONNECTION_CHANGED_REASON_TYPE = 5;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_INVALID_APP_ID:
CONNECTION_CHANGED_REASON_TYPE = 6;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_INVALID_CHANNEL_NAME:
CONNECTION_CHANGED_REASON_TYPE = 7;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_INVALID_TOKEN:
CONNECTION_CHANGED_REASON_TYPE = 8;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_TOKEN_EXPIRED:
CONNECTION_CHANGED_REASON_TYPE = 9;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_REJECTED_BY_SERVER:
CONNECTION_CHANGED_REASON_TYPE = 10;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_SETTING_PROXY_SERVER:
CONNECTION_CHANGED_REASON_TYPE = 11;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_RENEW_TOKEN:
CONNECTION_CHANGED_REASON_TYPE = 12;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_CLIENT_IP_ADDRESS_CHANGED:
CONNECTION_CHANGED_REASON_TYPE = 13;
pub const CONNECTION_CHANGED_REASON_TYPE_CONNECTION_CHANGED_KEEP_ALIVE_TIMEOUT:
CONNECTION_CHANGED_REASON_TYPE = 14;
pub type CONNECTION_CHANGED_REASON_TYPE = ::std::os::raw::c_uint;
pub const NETWORK_TYPE_NETWORK_TYPE_UNKNOWN: NETWORK_TYPE = -1;
pub const NETWORK_TYPE_NETWORK_TYPE_DISCONNECTED: NETWORK_TYPE = 0;
pub const NETWORK_TYPE_NETWORK_TYPE_LAN: NETWORK_TYPE = 1;
pub const NETWORK_TYPE_NETWORK_TYPE_WIFI: NETWORK_TYPE = 2;
pub const NETWORK_TYPE_NETWORK_TYPE_MOBILE_2G: NETWORK_TYPE = 3;
pub const NETWORK_TYPE_NETWORK_TYPE_MOBILE_3G: NETWORK_TYPE = 4;
pub const NETWORK_TYPE_NETWORK_TYPE_MOBILE_4G: NETWORK_TYPE = 5;
pub type NETWORK_TYPE = ::std::os::raw::c_int;
pub const LASTMILE_PROBE_RESULT_STATE_LASTMILE_PROBE_RESULT_COMPLETE: LASTMILE_PROBE_RESULT_STATE =
1;
pub const LASTMILE_PROBE_RESULT_STATE_LASTMILE_PROBE_RESULT_INCOMPLETE_NO_BWE:
LASTMILE_PROBE_RESULT_STATE = 2;
pub const LASTMILE_PROBE_RESULT_STATE_LASTMILE_PROBE_RESULT_UNAVAILABLE:
LASTMILE_PROBE_RESULT_STATE = 3;
pub type LASTMILE_PROBE_RESULT_STATE = ::std::os::raw::c_uint;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_DEFAULT: AUDIO_ROUTE_TYPE = -1;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_HEADSET: AUDIO_ROUTE_TYPE = 0;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_EARPIECE: AUDIO_ROUTE_TYPE = 1;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_HEADSET_NO_MIC: AUDIO_ROUTE_TYPE = 2;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_SPEAKERPHONE: AUDIO_ROUTE_TYPE = 3;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_LOUDSPEAKER: AUDIO_ROUTE_TYPE = 4;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_BLUETOOTH: AUDIO_ROUTE_TYPE = 5;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_USB: AUDIO_ROUTE_TYPE = 6;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_HDMI: AUDIO_ROUTE_TYPE = 7;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_DISPLAYPORT: AUDIO_ROUTE_TYPE = 8;
pub const AUDIO_ROUTE_TYPE_AUDIO_ROUTE_AIRPLAY: AUDIO_ROUTE_TYPE = 9;
pub type AUDIO_ROUTE_TYPE = ::std::os::raw::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct LastmileProbeOneWayResult {
pub packetLossRate: ::std::os::raw::c_uint,
pub jitter: ::std::os::raw::c_uint,
pub availableBandwidth: ::std::os::raw::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct LastmileProbeResult {
pub state: LASTMILE_PROBE_RESULT_STATE,
pub uplinkReport: LastmileProbeOneWayResult,
pub downlinkReport: LastmileProbeOneWayResult,
pub rtt: ::std::os::raw::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct LastmileProbeConfig {
pub probeUplink: BOOL,
pub probeDownlink: BOOL,
pub expectedUplinkBitrate: ::std::os::raw::c_uint,
pub expectedDownlinkBitrate: ::std::os::raw::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct AudioVolumeInfo {
pub uid: uid_t,
pub volume: ::std::os::raw::c_uint,
pub vad: ::std::os::raw::c_uint,
pub channelId: *const ::std::os::raw::c_char,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct RtcStats {
pub duration: ::std::os::raw::c_uint,
pub txBytes: ::std::os::raw::c_uint,
pub rxBytes: ::std::os::raw::c_uint,
pub txAudioBytes: ::std::os::raw::c_uint,
pub txVideoBytes: ::std::os::raw::c_uint,
pub rxAudioBytes: ::std::os::raw::c_uint,
pub rxVideoBytes: ::std::os::raw::c_uint,
pub txKBitRate: ::std::os::raw::c_ushort,
pub rxKBitRate: ::std::os::raw::c_ushort,
pub rxAudioKBitRate: ::std::os::raw::c_ushort,
pub txAudioKBitRate: ::std::os::raw::c_ushort,
pub rxVideoKBitRate: ::std::os::raw::c_ushort,
pub txVideoKBitRate: ::std::os::raw::c_ushort,
pub lastmileDelay: ::std::os::raw::c_ushort,
pub txPacketLossRate: ::std::os::raw::c_ushort,
pub rxPacketLossRate: ::std::os::raw::c_ushort,
pub userCount: ::std::os::raw::c_uint,
pub cpuAppUsage: f64,
pub cpuTotalUsage: f64,
pub gatewayRtt: ::std::os::raw::c_int,
pub memoryAppUsageRatio: f64,
pub memoryTotalUsageRatio: f64,
pub memoryAppUsageInKbytes: ::std::os::raw::c_int,
}
pub const QUALITY_ADAPT_INDICATION_ADAPT_NONE: QUALITY_ADAPT_INDICATION = 0;
pub const QUALITY_ADAPT_INDICATION_ADAPT_UP_BANDWIDTH: QUALITY_ADAPT_INDICATION = 1;
pub const QUALITY_ADAPT_INDICATION_ADAPT_DOWN_BANDWIDTH: QUALITY_ADAPT_INDICATION = 2;
pub type QUALITY_ADAPT_INDICATION = ::std::os::raw::c_uint;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_OK: CHANNEL_MEDIA_RELAY_ERROR = 0;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_SERVER_ERROR_RESPONSE: CHANNEL_MEDIA_RELAY_ERROR =
1;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_SERVER_NO_RESPONSE: CHANNEL_MEDIA_RELAY_ERROR = 2;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_NO_RESOURCE_AVAILABLE: CHANNEL_MEDIA_RELAY_ERROR =
3;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_FAILED_JOIN_SRC: CHANNEL_MEDIA_RELAY_ERROR = 4;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_FAILED_JOIN_DEST: CHANNEL_MEDIA_RELAY_ERROR = 5;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_FAILED_PACKET_RECEIVED_FROM_SRC:
CHANNEL_MEDIA_RELAY_ERROR = 6;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_FAILED_PACKET_SENT_TO_DEST:
CHANNEL_MEDIA_RELAY_ERROR = 7;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_SERVER_CONNECTION_LOST: CHANNEL_MEDIA_RELAY_ERROR =
8;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_INTERNAL_ERROR: CHANNEL_MEDIA_RELAY_ERROR = 9;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_SRC_TOKEN_EXPIRED: CHANNEL_MEDIA_RELAY_ERROR = 10;
pub const CHANNEL_MEDIA_RELAY_ERROR_RELAY_ERROR_DEST_TOKEN_EXPIRED: CHANNEL_MEDIA_RELAY_ERROR = 11;
pub type CHANNEL_MEDIA_RELAY_ERROR = ::std::os::raw::c_uint;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_NETWORK_DISCONNECTED: CHANNEL_MEDIA_RELAY_EVENT = 0;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_NETWORK_CONNECTED: CHANNEL_MEDIA_RELAY_EVENT = 1;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_JOINED_SRC_CHANNEL:
CHANNEL_MEDIA_RELAY_EVENT = 2;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_JOINED_DEST_CHANNEL:
CHANNEL_MEDIA_RELAY_EVENT = 3;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_SENT_TO_DEST_CHANNEL:
CHANNEL_MEDIA_RELAY_EVENT = 4;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_RECEIVED_VIDEO_FROM_SRC:
CHANNEL_MEDIA_RELAY_EVENT = 5;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_RECEIVED_AUDIO_FROM_SRC:
CHANNEL_MEDIA_RELAY_EVENT = 6;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL:
CHANNEL_MEDIA_RELAY_EVENT = 7;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_REFUSED:
CHANNEL_MEDIA_RELAY_EVENT = 8;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_NOT_CHANGE:
CHANNEL_MEDIA_RELAY_EVENT = 9;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_PACKET_UPDATE_DEST_CHANNEL_IS_NULL:
CHANNEL_MEDIA_RELAY_EVENT = 10;
pub const CHANNEL_MEDIA_RELAY_EVENT_RELAY_EVENT_VIDEO_PROFILE_UPDATE: CHANNEL_MEDIA_RELAY_EVENT =
11;
pub type CHANNEL_MEDIA_RELAY_EVENT = ::std::os::raw::c_uint;
pub const CHANNEL_MEDIA_RELAY_STATE_RELAY_STATE_IDLE: CHANNEL_MEDIA_RELAY_STATE = 0;
pub const CHANNEL_MEDIA_RELAY_STATE_RELAY_STATE_CONNECTING: CHANNEL_MEDIA_RELAY_STATE = 1;
pub const CHANNEL_MEDIA_RELAY_STATE_RELAY_STATE_RUNNING: CHANNEL_MEDIA_RELAY_STATE = 2;
pub const CHANNEL_MEDIA_RELAY_STATE_RELAY_STATE_FAILURE: CHANNEL_MEDIA_RELAY_STATE = 3;
pub type CHANNEL_MEDIA_RELAY_STATE = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct LocalVideoStats {
pub sentBitrate: ::std::os::raw::c_int,
pub sentFrameRate: ::std::os::raw::c_int,
pub encoderOutputFrameRate: ::std::os::raw::c_int,
pub rendererOutputFrameRate: ::std::os::raw::c_int,
pub targetBitrate: ::std::os::raw::c_int,
pub targetFrameRate: ::std::os::raw::c_int,
pub qualityAdaptIndication: QUALITY_ADAPT_INDICATION,
pub encodedBitrate: ::std::os::raw::c_int,
pub encodedFrameWidth: ::std::os::raw::c_int,
pub encodedFrameHeight: ::std::os::raw::c_int,
pub encodedFrameCount: ::std::os::raw::c_int,
pub codecType: VIDEO_CODEC_TYPE,
pub txPacketLossRate: ::std::os::raw::c_ushort,
pub captureFrameRate: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct RemoteVideoStats {
pub uid: uid_t,
pub delay: ::std::os::raw::c_int,
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
pub receivedBitrate: ::std::os::raw::c_int,
pub decoderOutputFrameRate: ::std::os::raw::c_int,
pub rendererOutputFrameRate: ::std::os::raw::c_int,
pub packetLossRate: ::std::os::raw::c_int,
pub rxStreamType: REMOTE_VIDEO_STREAM_TYPE,
pub totalFrozenTime: ::std::os::raw::c_int,
pub frozenRate: ::std::os::raw::c_int,
pub totalActiveTime: ::std::os::raw::c_int,
pub publishDuration: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct LocalAudioStats {
pub numChannels: ::std::os::raw::c_int,
pub sentSampleRate: ::std::os::raw::c_int,
pub sentBitrate: ::std::os::raw::c_int,
pub txPacketLossRate: ::std::os::raw::c_ushort,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct RemoteAudioStats {
pub uid: uid_t,
pub quality: ::std::os::raw::c_int,
pub networkTransportDelay: ::std::os::raw::c_int,
pub jitterBufferDelay: ::std::os::raw::c_int,
pub audioLossRate: ::std::os::raw::c_int,
pub numChannels: ::std::os::raw::c_int,
pub receivedSampleRate: ::std::os::raw::c_int,
pub receivedBitrate: ::std::os::raw::c_int,
pub totalFrozenTime: ::std::os::raw::c_int,
pub frozenRate: ::std::os::raw::c_int,
pub totalActiveTime: ::std::os::raw::c_int,
pub publishDuration: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VideoDimensions {
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
}
pub const STANDARD_BITRATE: ::std::os::raw::c_int = 0;
pub const COMPATIBLE_BITRATE: ::std::os::raw::c_int = -1;
pub const DEFAULT_MIN_BITRATE: ::std::os::raw::c_int = -1;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct VideoEncoderConfiguration {
pub dimensions: VideoDimensions,
pub frameRate: FRAME_RATE,
pub minFrameRate: ::std::os::raw::c_int,
pub bitrate: ::std::os::raw::c_int,
pub minBitrate: ::std::os::raw::c_int,
pub orientationMode: ORIENTATION_MODE,
pub degradationPreference: DEGRADATION_PREFERENCE,
pub mirrorMode: VIDEO_MIRROR_MODE_TYPE,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct TranscodingUser {
pub uid: uid_t,
pub x: ::std::os::raw::c_int,
pub y: ::std::os::raw::c_int,
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
pub zOrder: ::std::os::raw::c_int,
pub alpha: f64,
pub audioChannel: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct RtcImage {
pub url: *const ::std::os::raw::c_char,
pub x: ::std::os::raw::c_int,
pub y: ::std::os::raw::c_int,
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct LiveStreamAdvancedFeature {
pub LBHQ: *const ::std::os::raw::c_char,
pub VEO: *const ::std::os::raw::c_char,
pub featureName: *const ::std::os::raw::c_char,
pub opened: BOOL,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct LiveTranscoding {
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
pub videoBitrate: ::std::os::raw::c_int,
pub videoFramerate: ::std::os::raw::c_int,
pub lowLatency: BOOL,
pub videoGop: ::std::os::raw::c_int,
pub videoCodecProfile: VIDEO_CODEC_PROFILE_TYPE,
pub backgroundColor: ::std::os::raw::c_uint,
pub userCount: ::std::os::raw::c_uint,
pub transcodingUsers: *mut TranscodingUser,
pub transcodingExtraInfo: *const ::std::os::raw::c_char,
pub metadata: *const ::std::os::raw::c_char,
pub watermark: *mut RtcImage,
pub backgroundImage: *mut RtcImage,
pub audioSampleRate: AUDIO_SAMPLE_RATE_TYPE,
pub audioBitrate: ::std::os::raw::c_int,
pub audioChannels: ::std::os::raw::c_int,
pub audioCodecProfile: AUDIO_CODEC_PROFILE_TYPE,
pub advancedFeatures: *mut LiveStreamAdvancedFeature,
pub advancedFeatureCount: ::std::os::raw::c_uint,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct CameraCapturerConfiguration {
pub preference: CAPTURER_OUTPUT_PREFERENCE,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct InjectStreamConfig {
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
pub videoGop: ::std::os::raw::c_int,
pub videoFramerate: ::std::os::raw::c_int,
pub videoBitrate: ::std::os::raw::c_int,
pub audioSampleRate: AUDIO_SAMPLE_RATE_TYPE,
pub audioBitrate: ::std::os::raw::c_int,
pub audioChannels: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ChannelMediaInfo {
pub channelName: *const ::std::os::raw::c_char,
pub token: *const ::std::os::raw::c_char,
pub uid: uid_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ChannelMediaRelayConfiguration {
pub srcInfo: *mut ChannelMediaInfo,
pub destInfos: *mut ChannelMediaInfo,
pub destCount: ::std::os::raw::c_int,
}
pub const RTMP_STREAM_LIFE_CYCLE_TYPE_RTMP_STREAM_LIFE_CYCLE_BIND2CHANNEL:
RTMP_STREAM_LIFE_CYCLE_TYPE = 1;
pub const RTMP_STREAM_LIFE_CYCLE_TYPE_RTMP_STREAM_LIFE_CYCLE_BIND2OWNER:
RTMP_STREAM_LIFE_CYCLE_TYPE = 2;
pub type RTMP_STREAM_LIFE_CYCLE_TYPE = ::std::os::raw::c_uint;
pub const VideoContentHint_CONTENT_HINT_NONE: VideoContentHint = 0;
pub const VideoContentHint_CONTENT_HINT_MOTION: VideoContentHint = 1;
pub const VideoContentHint_CONTENT_HINT_DETAILS: VideoContentHint = 2;
pub type VideoContentHint = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rectangle {
pub x: ::std::os::raw::c_int,
pub y: ::std::os::raw::c_int,
pub width: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Rect {
pub top: ::std::os::raw::c_int,
pub left: ::std::os::raw::c_int,
pub bottom: ::std::os::raw::c_int,
pub right: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct WatermarkOptions {
pub visibleInPreview: BOOL,
pub positionInLandscapeMode: Rectangle,
pub positionInPortraitMode: Rectangle,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ScreenCaptureParameters {
pub dimensions: VideoDimensions,
pub frameRate: ::std::os::raw::c_int,
pub bitrate: ::std::os::raw::c_int,
pub captureMouseCursor: BOOL,
pub windowFocus: BOOL,
pub excludeWindowList: *mut view_t,
pub excludeWindowCount: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct VideoCanvas {
pub view: view_t,
pub renderMode: ::std::os::raw::c_int,
pub channelId: [::std::os::raw::c_char; 65usize],
pub uid: uid_t,
pub priv_: *mut ::std::os::raw::c_void,
pub mirrorMode: VIDEO_MIRROR_MODE_TYPE,
}
pub const LIGHTENING_CONTRAST_LEVEL_LIGHTENING_CONTRAST_LOW: LIGHTENING_CONTRAST_LEVEL = 0;
pub const LIGHTENING_CONTRAST_LEVEL_LIGHTENING_CONTRAST_NORMAL: LIGHTENING_CONTRAST_LEVEL = 1;
pub const LIGHTENING_CONTRAST_LEVEL_LIGHTENING_CONTRAST_HIGH: LIGHTENING_CONTRAST_LEVEL = 2;
pub type LIGHTENING_CONTRAST_LEVEL = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct BeautyOptions {
pub lighteningContrastLevel: LIGHTENING_CONTRAST_LEVEL,
pub lighteningLevel: f32,
pub smoothnessLevel: f32,
pub rednessLevel: f32,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct UserInfo {
pub uid: uid_t,
pub userAccount: [::std::os::raw::c_char; 256usize],
}
pub const AREA_CODE_AREA_CODE_CN: AREA_CODE = 1;
pub const AREA_CODE_AREA_CODE_NA: AREA_CODE = 2;
pub const AREA_CODE_AREA_CODE_EUR: AREA_CODE = 4;
pub const AREA_CODE_AREA_CODE_AS: AREA_CODE = 8;
pub const AREA_CODE_AREA_CODE_JAPAN: AREA_CODE = 16;
pub const AREA_CODE_AREA_CODE_INDIA: AREA_CODE = 32;
pub const AREA_CODE_AREA_CODE_GLOBAL: AREA_CODE = 4294967295;
pub type AREA_CODE = ::std::os::raw::c_uint;
pub const ENCRYPTION_CONFIG_ENCRYPTION_FORCE_SETTING: ENCRYPTION_CONFIG = 1;
pub const ENCRYPTION_CONFIG_ENCRYPTION_FORCE_DISABLE_PACKET: ENCRYPTION_CONFIG = 2;
pub type ENCRYPTION_CONFIG = ::std::os::raw::c_uint;
pub const AUDIO_FRAME_TYPE_FRAME_TYPE_PCM16: AUDIO_FRAME_TYPE = 0;
pub type AUDIO_FRAME_TYPE = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct AudioFrame {
pub type_: AUDIO_FRAME_TYPE,
pub samples: ::std::os::raw::c_int,
pub bytesPerSample: ::std::os::raw::c_int,
pub channels: ::std::os::raw::c_int,
pub samplesPerSec: ::std::os::raw::c_int,
pub buffer: *mut ::std::os::raw::c_void,
pub renderTimeMs: ::std::os::raw::c_longlong,
pub avsync_type: ::std::os::raw::c_int,
}
pub const VIDEO_BUFFER_TYPE_VIDEO_BUFFER_RAW_DATA: VIDEO_BUFFER_TYPE = 1;
pub type VIDEO_BUFFER_TYPE = ::std::os::raw::c_uint;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_UNKNOWN: VIDEO_PIXEL_FORMAT = 0;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_I420: VIDEO_PIXEL_FORMAT = 1;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_BGRA: VIDEO_PIXEL_FORMAT = 2;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_NV21: VIDEO_PIXEL_FORMAT = 3;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_RGBA: VIDEO_PIXEL_FORMAT = 4;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_IMC2: VIDEO_PIXEL_FORMAT = 5;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_ARGB: VIDEO_PIXEL_FORMAT = 7;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_NV12: VIDEO_PIXEL_FORMAT = 8;
pub const VIDEO_PIXEL_FORMAT_VIDEO_PIXEL_I422: VIDEO_PIXEL_FORMAT = 16;
pub type VIDEO_PIXEL_FORMAT = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ExternalVideoFrame {
pub type_: VIDEO_BUFFER_TYPE,
pub format: VIDEO_PIXEL_FORMAT,
pub buffer: *mut ::std::os::raw::c_void,
pub stride: ::std::os::raw::c_int,
pub height: ::std::os::raw::c_int,
pub cropLeft: ::std::os::raw::c_int,
pub cropTop: ::std::os::raw::c_int,
pub cropRight: ::std::os::raw::c_int,
pub cropBottom: ::std::os::raw::c_int,
pub rotation: ::std::os::raw::c_int,
pub timestamp: ::std::os::raw::c_longlong,
}
pub const MEDIA_SOURCE_TYPE_AUDIO_PLAYOUT_SOURCE: MEDIA_SOURCE_TYPE = 0;
pub const MEDIA_SOURCE_TYPE_AUDIO_RECORDING_SOURCE: MEDIA_SOURCE_TYPE = 1;
pub type MEDIA_SOURCE_TYPE = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct ChannelMediaOptions {
pub autoSubscribeAudio: BOOL,
pub autoSubscribeVideo: BOOL,
}
pub const ENCRYPTION_MODE_AES_128_XTS: ENCRYPTION_MODE = 1;
pub const ENCRYPTION_MODE_AES_128_ECB: ENCRYPTION_MODE = 2;
pub const ENCRYPTION_MODE_AES_256_XTS: ENCRYPTION_MODE = 3;
pub const ENCRYPTION_MODE_SM4_128_ECB: ENCRYPTION_MODE = 4;
pub const ENCRYPTION_MODE_MODE_END: ENCRYPTION_MODE = 5;
pub type ENCRYPTION_MODE = ::std::os::raw::c_uint;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct EncryptionConfig {
pub encryptionMode: ENCRYPTION_MODE,
pub encryptionKey: *const ::std::os::raw::c_char,
}
pub type FUNC_OnChannelWarning = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
warn: ::std::os::raw::c_int,
msg: *const ::std::os::raw::c_char,
),
>;
pub type FUNC_OnChannelError = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
err: ::std::os::raw::c_int,
msg: *const ::std::os::raw::c_char,
),
>;
pub type FUNC_OnChannelJoinChannelSuccess = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelReJoinChannelSuccess = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelLeaveChannel = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
duration: ::std::os::raw::c_uint,
txBytes: ::std::os::raw::c_uint,
rxBytes: ::std::os::raw::c_uint,
txAudioBytes: ::std::os::raw::c_uint,
txVideoBytes: ::std::os::raw::c_uint,
rxAudioBytes: ::std::os::raw::c_uint,
rxVideoBytes: ::std::os::raw::c_uint,
txKBitRate: ::std::os::raw::c_ushort,
rxKBitRate: ::std::os::raw::c_ushort,
rxAudioKBitRate: ::std::os::raw::c_ushort,
txAudioKBitRate: ::std::os::raw::c_ushort,
rxVideoKBitRate: ::std::os::raw::c_ushort,
txVideoKBitRate: ::std::os::raw::c_ushort,
lastmileDelay: ::std::os::raw::c_ushort,
txPacketLossRate: ::std::os::raw::c_ushort,
rxPacketLossRate: ::std::os::raw::c_ushort,
userCount: ::std::os::raw::c_uint,
cpuAppUsage: f64,
cpuTotalUsage: f64,
gatewayRtt: ::std::os::raw::c_int,
memoryAppUsageRatio: f64,
memoryTotalUsageRatio: f64,
memoryAppUsageInKbytes: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelClientRoleChanged = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
oldRole: ::std::os::raw::c_int,
newRole: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelUserJoined = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelUserOffLine = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
reason: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelConnectionLost =
::std::option::Option<unsafe extern "C" fn(channelId: *const ::std::os::raw::c_char)>;
pub type FUNC_OnChannelRequestToken =
::std::option::Option<unsafe extern "C" fn(channelId: *const ::std::os::raw::c_char)>;
pub type FUNC_OnChannelTokenPrivilegeWillExpire = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
token: *const ::std::os::raw::c_char,
),
>;
pub type FUNC_OnChannelRtcStats = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
duration: ::std::os::raw::c_uint,
txBytes: ::std::os::raw::c_uint,
rxBytes: ::std::os::raw::c_uint,
txAudioBytes: ::std::os::raw::c_uint,
txVideoBytes: ::std::os::raw::c_uint,
rxAudioBytes: ::std::os::raw::c_uint,
rxVideoBytes: ::std::os::raw::c_uint,
txKBitRate: ::std::os::raw::c_ushort,
rxKBitRate: ::std::os::raw::c_ushort,
rxAudioKBitRate: ::std::os::raw::c_ushort,
txAudioKBitRate: ::std::os::raw::c_ushort,
rxVideoKBitRate: ::std::os::raw::c_ushort,
txVideoKBitRate: ::std::os::raw::c_ushort,
lastmileDelay: ::std::os::raw::c_ushort,
txPacketLossRate: ::std::os::raw::c_ushort,
rxPacketLossRate: ::std::os::raw::c_ushort,
userCount: ::std::os::raw::c_uint,
cpuAppUsage: f64,
cpuTotalUsage: f64,
gatewayRtt: ::std::os::raw::c_int,
memoryAppUsageRatio: f64,
memoryTotalUsageRatio: f64,
memoryAppUsageInKbytes: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelNetworkQuality = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
txQuality: ::std::os::raw::c_int,
rxQuality: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelRemoteVideoStats = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
delay: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
receivedBitrate: ::std::os::raw::c_int,
decoderOutputFrameRate: ::std::os::raw::c_int,
rendererOutputFrameRate: ::std::os::raw::c_int,
packetLossRate: ::std::os::raw::c_int,
rxStreamType: ::std::os::raw::c_int,
totalFrozenTime: ::std::os::raw::c_int,
frozenRate: ::std::os::raw::c_int,
totalActiveTime: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelRemoteAudioStats = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
quality: ::std::os::raw::c_int,
networkTransportDelay: ::std::os::raw::c_int,
jitterBufferDelay: ::std::os::raw::c_int,
audioLossRate: ::std::os::raw::c_int,
numChannels: ::std::os::raw::c_int,
receivedSampleRate: ::std::os::raw::c_int,
receivedBitrate: ::std::os::raw::c_int,
totalFrozenTime: ::std::os::raw::c_int,
frozenRate: ::std::os::raw::c_int,
totalActiveTime: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelRemoteAudioStateChanged = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
state: ::std::os::raw::c_int,
reason: ::std::os::raw::c_int,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelActiveSpeaker = ::std::option::Option<
unsafe extern "C" fn(channelId: *const ::std::os::raw::c_char, uid: uid_t),
>;
pub type FUNC_OnChannelVideoSizeChanged = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
rotation: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelRemoteVideoStateChanged = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
state: ::std::os::raw::c_int,
reason: ::std::os::raw::c_int,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelStreamMessage = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
streamId: ::std::os::raw::c_int,
data: *const ::std::os::raw::c_char,
length: size_t,
),
>;
pub type FUNC_OnChannelStreamMessageError = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
streamId: ::std::os::raw::c_int,
code: ::std::os::raw::c_int,
missed: ::std::os::raw::c_int,
cached: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelMediaRelayStateChanged2 = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
state: ::std::os::raw::c_int,
code: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelMediaRelayEvent2 = ::std::option::Option<
unsafe extern "C" fn(channelId: *const ::std::os::raw::c_char, code: ::std::os::raw::c_int),
>;
pub type FUNC_OnChannelRtmpStreamingStateChanged = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
url: *const ::std::os::raw::c_char,
state: ::std::os::raw::c_int,
errCode: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelTranscodingUpdated =
::std::option::Option<unsafe extern "C" fn(channelId: *const ::std::os::raw::c_char)>;
pub type FUNC_OnChannelStreamInjectedStatus = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
url: *const ::std::os::raw::c_char,
uid: uid_t,
status: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelRemoteSubscribeFallbackToAudioOnly = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
uid: uid_t,
isFallbackOrRecover: BOOL,
),
>;
pub type FUNC_OnChannelConnectionStateChanged = ::std::option::Option<
unsafe extern "C" fn(
channelId: *const ::std::os::raw::c_char,
state: ::std::os::raw::c_int,
reason: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnFacePositionChanged = ::std::option::Option<
unsafe extern "C" fn(
imageWidth: ::std::os::raw::c_int,
imageHeight: ::std::os::raw::c_int,
x: ::std::os::raw::c_int,
y: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
vecDistance: ::std::os::raw::c_int,
numFaces: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnChannelLocalPublishFallbackToAudioOnly = ::std::option::Option<
unsafe extern "C" fn(channelId: *const ::std::os::raw::c_char, isFallbackOrRecover: BOOL),
>;
pub type FUNC_OnChannelMediaRelayStateChanged = ::std::option::Option<
unsafe extern "C" fn(state: ::std::os::raw::c_int, code: ::std::os::raw::c_int),
>;
pub type FUNC_OnChannelMediaRelayEvent =
::std::option::Option<unsafe extern "C" fn(code: ::std::os::raw::c_int)>;
pub type FUNC_OnChannelTestEnd =
::std::option::Option<unsafe extern "C" fn(channelId: *const ::std::os::raw::c_char)>;
pub type FUNC_OnJoinChannelSuccess = ::std::option::Option<
unsafe extern "C" fn(
arg1: *const ::std::os::raw::c_char,
uid: uid_t,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnReJoinChannelSuccess = ::std::option::Option<
unsafe extern "C" fn(
arg1: *const ::std::os::raw::c_char,
uid: uid_t,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnConnectionLost = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnConnectionInterrupted = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnLeaveChannel = ::std::option::Option<
unsafe extern "C" fn(
duration: ::std::os::raw::c_uint,
txBytes: ::std::os::raw::c_uint,
rxBytes: ::std::os::raw::c_uint,
txAudioBytes: ::std::os::raw::c_uint,
txVideoBytes: ::std::os::raw::c_uint,
rxAudioBytes: ::std::os::raw::c_uint,
rxVideoBytes: ::std::os::raw::c_uint,
txKBitRate: ::std::os::raw::c_ushort,
rxKBitRate: ::std::os::raw::c_ushort,
rxAudioKBitRate: ::std::os::raw::c_ushort,
txAudioKBitRate: ::std::os::raw::c_ushort,
rxVideoKBitRate: ::std::os::raw::c_ushort,
txVideoKBitRate: ::std::os::raw::c_ushort,
lastmileDelay: ::std::os::raw::c_ushort,
txPacketLossRate: ::std::os::raw::c_ushort,
rxPacketLossRate: ::std::os::raw::c_ushort,
userCount: ::std::os::raw::c_uint,
cpuAppUsage: f64,
cpuTotalUsage: f64,
gatewayRtt: ::std::os::raw::c_int,
memoryAppUsageRatio: f64,
memoryTotalUsageRatio: f64,
memoryAppUsageInKbytes: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnRequestToken = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnUserJoined =
::std::option::Option<unsafe extern "C" fn(uid: uid_t, elapsed: ::std::os::raw::c_int)>;
pub type FUNC_OnUserOffline =
::std::option::Option<unsafe extern "C" fn(uid: uid_t, offLineReason: ::std::os::raw::c_int)>;
pub type FUNC_OnAudioVolumeIndication = ::std::option::Option<
unsafe extern "C" fn(
uid: *mut uid_t,
volume: *mut ::std::os::raw::c_uint,
vad: *mut ::std::os::raw::c_uint,
channelId: *mut *const ::std::os::raw::c_char,
speakerNumber: ::std::os::raw::c_int,
totalVolume: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnUserMuteAudio =
::std::option::Option<unsafe extern "C" fn(uid: uid_t, muted: BOOL)>;
pub type FUNC_OnWarning = ::std::option::Option<
unsafe extern "C" fn(warn: ::std::os::raw::c_int, msg: *const ::std::os::raw::c_char),
>;
pub type FUNC_OnError = ::std::option::Option<
unsafe extern "C" fn(error: ::std::os::raw::c_int, msg: *const ::std::os::raw::c_char),
>;
pub type FUNC_OnRtcStats = ::std::option::Option<
unsafe extern "C" fn(
duration: ::std::os::raw::c_uint,
txBytes: ::std::os::raw::c_uint,
rxBytes: ::std::os::raw::c_uint,
txAudioBytes: ::std::os::raw::c_uint,
txVideoBytes: ::std::os::raw::c_uint,
rxAudioBytes: ::std::os::raw::c_uint,
rxVideoBytes: ::std::os::raw::c_uint,
txKBitRate: ::std::os::raw::c_ushort,
rxKBitRate: ::std::os::raw::c_ushort,
rxAudioKBitRate: ::std::os::raw::c_ushort,
txAudioKBitRate: ::std::os::raw::c_ushort,
rxVideoKBitRate: ::std::os::raw::c_ushort,
txVideoKBitRate: ::std::os::raw::c_ushort,
lastmileDelay: ::std::os::raw::c_ushort,
txPacketLossRate: ::std::os::raw::c_ushort,
rxPacketLossRate: ::std::os::raw::c_ushort,
userCount: ::std::os::raw::c_uint,
cpuAppUsage: f64,
cpuTotalUsage: f64,
gatewayRtt: ::std::os::raw::c_int,
memoryAppUsageRatio: f64,
memoryTotalUsageRatio: f64,
memoryAppUsageInKbytes: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnAudioMixingFinished = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnAudioRouteChanged =
::std::option::Option<unsafe extern "C" fn(route: ::std::os::raw::c_int)>;
pub type FUNC_OnFirstRemoteVideoDecoded = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnVideoSizeChanged = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnClientRoleChanged = ::std::option::Option<
unsafe extern "C" fn(oldRole: ::std::os::raw::c_int, newRole: ::std::os::raw::c_int),
>;
pub type FUNC_OnUserMuteVideo =
::std::option::Option<unsafe extern "C" fn(uid: uid_t, muted: BOOL)>;
pub type FUNC_OnMicrophoneEnabled = ::std::option::Option<unsafe extern "C" fn(isEnabled: BOOL)>;
pub type FUNC_OnApiExecuted = ::std::option::Option<
unsafe extern "C" fn(
err: ::std::os::raw::c_int,
api: *const ::std::os::raw::c_char,
result: *const ::std::os::raw::c_char,
),
>;
pub type FUNC_OnFirstLocalAudioFrame =
::std::option::Option<unsafe extern "C" fn(elapsed: ::std::os::raw::c_int)>;
pub type FUNC_OnFirstRemoteAudioFrame =
::std::option::Option<unsafe extern "C" fn(userId: uid_t, elapsed: ::std::os::raw::c_int)>;
pub type FUNC_OnLastmileQuality =
::std::option::Option<unsafe extern "C" fn(quality: ::std::os::raw::c_int)>;
pub type FUNC_OnAudioQuality = ::std::option::Option<
unsafe extern "C" fn(
userId: uid_t,
quality: ::std::os::raw::c_int,
delay: ::std::os::raw::c_ushort,
lost: ::std::os::raw::c_ushort,
),
>;
pub type FUNC_OnStreamInjectedStatus = ::std::option::Option<
unsafe extern "C" fn(
url: *const ::std::os::raw::c_char,
userId: uid_t,
status: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnStreamUnpublished =
::std::option::Option<unsafe extern "C" fn(url: *const ::std::os::raw::c_char)>;
pub type FUNC_OnStreamPublished = ::std::option::Option<
unsafe extern "C" fn(url: *const ::std::os::raw::c_char, error: ::std::os::raw::c_int),
>;
pub type FUNC_OnStreamMessageError = ::std::option::Option<
unsafe extern "C" fn(
userId: uid_t,
streamId: ::std::os::raw::c_int,
code: ::std::os::raw::c_int,
missed: ::std::os::raw::c_int,
cached: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnStreamMessage = ::std::option::Option<
unsafe extern "C" fn(
userId: uid_t,
streamId: ::std::os::raw::c_int,
data: *const ::std::os::raw::c_char,
length: size_t,
),
>;
pub type FUNC_OnConnectionBanned = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnRemoteVideoTransportStats = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
delay: ::std::os::raw::c_ushort,
lost: ::std::os::raw::c_ushort,
rxKBitRate: ::std::os::raw::c_ushort,
),
>;
pub type FUNC_OnRemoteAudioTransportStats = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
delay: ::std::os::raw::c_ushort,
lost: ::std::os::raw::c_ushort,
rxKBitRate: ::std::os::raw::c_ushort,
),
>;
pub type FUNC_OnTranscodingUpdated = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnAudioDeviceVolumeChanged = ::std::option::Option<
unsafe extern "C" fn(
deviceType: ::std::os::raw::c_int,
volume: ::std::os::raw::c_int,
muted: BOOL,
),
>;
pub type FUNC_OnActiveSpeaker = ::std::option::Option<unsafe extern "C" fn(userId: uid_t)>;
pub type FUNC_OnMediaEngineStartCallSuccess = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnMediaEngineLoadSuccess = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnVideoStopped = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnTokenPrivilegeWillExpire =
::std::option::Option<unsafe extern "C" fn(token: *const ::std::os::raw::c_char)>;
pub type FUNC_OnNetworkQuality = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
txQuality: ::std::os::raw::c_int,
rxQuality: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnLocalVideoStats = ::std::option::Option<
unsafe extern "C" fn(
sentBitrate: ::std::os::raw::c_int,
sentFrameRate: ::std::os::raw::c_int,
encoderOutputFrameRate: ::std::os::raw::c_int,
rendererOutputFrameRate: ::std::os::raw::c_int,
targetBitrate: ::std::os::raw::c_int,
targetFrameRate: ::std::os::raw::c_int,
qualityAdaptIndication: ::std::os::raw::c_int,
encodedBitrate: ::std::os::raw::c_int,
encodedFrameWidth: ::std::os::raw::c_int,
encodedFrameHeight: ::std::os::raw::c_int,
encodedFrameCount: ::std::os::raw::c_int,
codecType: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnRemoteVideoStats = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
delay: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
receivedBitrate: ::std::os::raw::c_int,
decoderOutputFrameRate: ::std::os::raw::c_int,
rendererOutputFrameRate: ::std::os::raw::c_int,
packetLossRate: ::std::os::raw::c_int,
rxStreamType: ::std::os::raw::c_int,
totalFrozenTime: ::std::os::raw::c_int,
frozenRate: ::std::os::raw::c_int,
totalActiveTime: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnRemoteAudioStats = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
quality: ::std::os::raw::c_int,
networkTransportDelay: ::std::os::raw::c_int,
jitterBufferDelay: ::std::os::raw::c_int,
audioLossRate: ::std::os::raw::c_int,
numChannels: ::std::os::raw::c_int,
receivedSampleRate: ::std::os::raw::c_int,
receivedBitrate: ::std::os::raw::c_int,
totalFrozenTime: ::std::os::raw::c_int,
frozenRate: ::std::os::raw::c_int,
totalActiveTime: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnLocalAudioStats = ::std::option::Option<
unsafe extern "C" fn(
numChannels: ::std::os::raw::c_int,
sentSampleRate: ::std::os::raw::c_int,
sentBitrate: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnFirstLocalVideoFrame = ::std::option::Option<
unsafe extern "C" fn(
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnFirstRemoteVideoFrame = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnUserEnableVideo =
::std::option::Option<unsafe extern "C" fn(uid: uid_t, enabled: BOOL)>;
pub type FUNC_OnAudioDeviceStateChanged = ::std::option::Option<
unsafe extern "C" fn(
deviceId: *const ::std::os::raw::c_char,
deviceType: ::std::os::raw::c_int,
deviceState: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnCameraReady = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnCameraFocusAreaChanged = ::std::option::Option<
unsafe extern "C" fn(
x: ::std::os::raw::c_int,
y: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnCameraExposureAreaChanged = ::std::option::Option<
unsafe extern "C" fn(
x: ::std::os::raw::c_int,
y: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnRemoteAudioMixingBegin = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnRemoteAudioMixingEnd = ::std::option::Option<unsafe extern "C" fn()>;
pub type FUNC_OnAudioEffectFinished =
::std::option::Option<unsafe extern "C" fn(soundId: ::std::os::raw::c_int)>;
pub type FUNC_OnVideoDeviceStateChanged = ::std::option::Option<
unsafe extern "C" fn(
deviceId: *const ::std::os::raw::c_char,
deviceType: ::std::os::raw::c_int,
deviceState: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnRemoteVideoStateChanged = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
state: ::std::os::raw::c_int,
reason: ::std::os::raw::c_int,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnUserEnableLocalVideo =
::std::option::Option<unsafe extern "C" fn(uid: uid_t, enabled: BOOL)>;
pub type FUNC_OnLocalPublishFallbackToAudioOnly =
::std::option::Option<unsafe extern "C" fn(isFallbackOrRecover: BOOL)>;
pub type FUNC_OnRemoteSubscribeFallbackToAudioOnly =
::std::option::Option<unsafe extern "C" fn(uid: uid_t, isFallbackOrRecover: BOOL)>;
pub type FUNC_OnConnectionStateChanged = ::std::option::Option<
unsafe extern "C" fn(state: ::std::os::raw::c_int, reason: ::std::os::raw::c_int),
>;
pub type FUNC_OnRtmpStreamingStateChanged = ::std::option::Option<
unsafe extern "C" fn(
url: *const ::std::os::raw::c_char,
state: ::std::os::raw::c_int,
errCode: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnLocalUserRegistered = ::std::option::Option<
unsafe extern "C" fn(uid: uid_t, userAccount: *const ::std::os::raw::c_char),
>;
pub type FUNC_OnUserInfoUpdated = ::std::option::Option<
unsafe extern "C" fn(uid: uid_t, userUid: uid_t, userAccount: *mut ::std::os::raw::c_char),
>;
pub type FUNC_OnLocalAudioStateChanged = ::std::option::Option<
unsafe extern "C" fn(state: ::std::os::raw::c_int, error: ::std::os::raw::c_int),
>;
pub type FUNC_OnRemoteAudioStateChanged = ::std::option::Option<
unsafe extern "C" fn(
uid: uid_t,
state: ::std::os::raw::c_int,
reason: ::std::os::raw::c_int,
elapsed: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnCaptureVideoFrame = ::std::option::Option<
unsafe extern "C" fn(
videoFrameType: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
yStride: ::std::os::raw::c_int,
yBuffer: *mut ::std::os::raw::c_void,
rotation: ::std::os::raw::c_int,
renderTimeMs: i64,
),
>;
pub type FUNC_OnRenderVideoFrame = ::std::option::Option<
unsafe extern "C" fn(
uid: ::std::os::raw::c_uint,
videoFrameType: ::std::os::raw::c_int,
width: ::std::os::raw::c_int,
height: ::std::os::raw::c_int,
yStride: ::std::os::raw::c_int,
yBuffer: *mut ::std::os::raw::c_void,
rotation: ::std::os::raw::c_int,
renderTimeMs: i64,
),
>;
pub type FUNC_OnRecordAudioFrame = ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
samples: ::std::os::raw::c_int,
bytesPerSample: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
samplesPerSec: ::std::os::raw::c_int,
buffer: *mut ::std::os::raw::c_void,
renderTimeMs: i64,
avsync_type: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnPlaybackAudioFrame = ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
samples: ::std::os::raw::c_int,
bytesPerSample: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
samplesPerSec: ::std::os::raw::c_int,
buffer: *mut ::std::os::raw::c_void,
renderTimeMs: i64,
avsync_type: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnMixedAudioFrame = ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
samples: ::std::os::raw::c_int,
bytesPerSample: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
samplesPerSec: ::std::os::raw::c_int,
buffer: *mut ::std::os::raw::c_void,
renderTimeMs: i64,
avsync_type: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnPlaybackAudioFrameBeforeMixing = ::std::option::Option<
unsafe extern "C" fn(
uid: ::std::os::raw::c_uint,
type_: ::std::os::raw::c_int,
samples: ::std::os::raw::c_int,
bytesPerSample: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
samplesPerSec: ::std::os::raw::c_int,
buffer: *mut ::std::os::raw::c_void,
renderTimeMs: i64,
avsync_type: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnPullAudioFrame = ::std::option::Option<
unsafe extern "C" fn(
type_: ::std::os::raw::c_int,
samples: ::std::os::raw::c_int,
bytesPerSample: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
samplesPerSec: ::std::os::raw::c_int,
buffer: *mut ::std::os::raw::c_void,
renderTimeMs: i64,
avsync_type: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnAudioMixingStateChanged = ::std::option::Option<
unsafe extern "C" fn(
audioMixingStateType: ::std::os::raw::c_int,
audioMixingErrorType: ::std::os::raw::c_int,
),
>;
pub type FUNC_OnFirstRemoteAudioDecoded =
::std::option::Option<unsafe extern "C" fn(uid: uid_t, elapsed: ::std::os::raw::c_int)>;
pub type FUNC_OnLocalVideoStateChanged = ::std::option::Option<
unsafe extern "C" fn(localVideoState: ::std::os::raw::c_int, error: ::std::os::raw::c_int),
>;
pub type FUNC_OnNetworkTypeChanged =
::std::option::Option<unsafe extern "C" fn(networkType: ::std::os::raw::c_int)>;
pub type FUNC_OnLastmileProbeResult = ::std::option::Option<
unsafe extern "C" fn(
state: ::std::os::raw::c_int,
upLinkPacketLossRate: ::std::os::raw::c_uint,
upLinkjitter: ::std::os::raw::c_uint,
upLinkAvailableBandwidth: ::std::os::raw::c_uint,
downLinkPacketLossRate: ::std::os::raw::c_uint,
downLinkJitter: ::std::os::raw::c_uint,
downLinkAvailableBandwidth: ::std::os::raw::c_uint,
rtt: ::std::os::raw::c_uint,
),
>;
pub type FUNC_OnSendAudioPacket = ::std::option::Option<
unsafe extern "C" fn(
buffer: *const ::std::os::raw::c_uchar,
size: *mut ::std::os::raw::c_void,
) -> BOOL,
>;
pub type FUNC_OnSendVideoPacket = ::std::option::Option<
unsafe extern "C" fn(
buffer: *const ::std::os::raw::c_uchar,
size: *mut ::std::os::raw::c_void,
) -> BOOL,
>;
pub type FUNC_OnReceiveAudioPacket = ::std::option::Option<
unsafe extern "C" fn(
buffer: *const ::std::os::raw::c_uchar,
size: *mut ::std::os::raw::c_void,
) -> BOOL,
>;
pub type FUNC_OnReceiveVideoPacket = ::std::option::Option<
unsafe extern "C" fn(
buffer: *const ::std::os::raw::c_uchar,
size: *mut ::std::os::raw::c_void,
) -> BOOL,
>;
pub type FUNC_OnReadyToSendMetadata = ::std::option::Option<unsafe extern "C" fn() -> BOOL>;
pub type FUNC_OnMetadataReceived = ::std::option::Option<
unsafe extern "C" fn(
uid: ::std::os::raw::c_uint,
size: ::std::os::raw::c_uint,
buffer: *mut ::std::os::raw::c_uchar,
timeStampMs: ::std::os::raw::c_longlong,
),
>;
pub type FUNC_OnGetMaxMetadataSize =
::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_int>;
pub type FUNC_OnTestEnd = ::std::option::Option<unsafe extern "C" fn()>;
#[repr(C)]
#[derive(Copy, Clone)]
pub struct RtcEventHandler {
pub onJoinChannelSuccess: FUNC_OnJoinChannelSuccess,
pub onReJoinChannelSuccess: FUNC_OnReJoinChannelSuccess,
pub onLeaveChannel: FUNC_OnLeaveChannel,
pub onConnectionLost: FUNC_OnConnectionLost,
pub onConnectionInterrupted: FUNC_OnConnectionInterrupted,
pub onRequestToken: FUNC_OnRequestToken,
pub onUserJoined: FUNC_OnUserJoined,
pub onUserOffline: FUNC_OnUserOffline,
pub onAudioVolumeIndication: FUNC_OnAudioVolumeIndication,
pub onUserMuteAudio: FUNC_OnUserMuteAudio,
pub onWarning: FUNC_OnWarning,
pub onError: FUNC_OnError,
pub onRtcStats: FUNC_OnRtcStats,
pub onAudioMixingFinished: FUNC_OnAudioMixingFinished,
pub onAudioRouteChanged: FUNC_OnAudioRouteChanged,
pub onFirstRemoteVideoDecoded: FUNC_OnFirstRemoteVideoDecoded,
pub onVideoSizeChanged: FUNC_OnVideoSizeChanged,
pub onClientRoleChanged: FUNC_OnClientRoleChanged,
pub onUserMuteVideo: FUNC_OnUserMuteVideo,
pub onMicrophoneEnabled: FUNC_OnMicrophoneEnabled,
pub onApiCallExecuted: FUNC_OnApiExecuted,
pub onFirstLocalAudioFrame: FUNC_OnFirstLocalAudioFrame,
pub onFirstRemoteAudioFrame: FUNC_OnFirstRemoteAudioFrame,
pub onLastmileQuality: FUNC_OnLastmileQuality,
pub onAudioQuality: FUNC_OnAudioQuality,
pub onStreamInjectedStatus: FUNC_OnStreamInjectedStatus,
pub onStreamUnpublished: FUNC_OnStreamUnpublished,
pub onStreamPublished: FUNC_OnStreamPublished,
pub onStreamMessageError: FUNC_OnStreamMessageError,
pub onStreamMessage: FUNC_OnStreamMessage,
pub onConnectionBanned: FUNC_OnConnectionBanned,
pub onRemoteVideoTransportStats: FUNC_OnRemoteVideoTransportStats,
pub onRemoteAudioTransportStats: FUNC_OnRemoteAudioTransportStats,
pub onTranscodingUpdated: FUNC_OnTranscodingUpdated,
pub onAudioDeviceVolumeChanged: FUNC_OnAudioDeviceVolumeChanged,
pub onActiveSpeaker: FUNC_OnActiveSpeaker,
pub onMediaEngineStartCallSuccess: FUNC_OnMediaEngineStartCallSuccess,
pub onMediaEngineLoadSuccess: FUNC_OnMediaEngineLoadSuccess,
pub onConnectionStateChanged: FUNC_OnConnectionStateChanged,
pub onRemoteSubscribeFallbackToAudioOnly: FUNC_OnRemoteSubscribeFallbackToAudioOnly,
pub onLocalPublishFallbackToAudioOnly: FUNC_OnLocalPublishFallbackToAudioOnly,
pub onUserEnableLocalVideo: FUNC_OnUserEnableLocalVideo,
pub onRemoteVideoStateChanged: FUNC_OnRemoteVideoStateChanged,
pub onVideoDeviceStateChanged: FUNC_OnVideoDeviceStateChanged,
pub onAudioEffectFinished: FUNC_OnAudioEffectFinished,
pub onRemoteAudioMixingEnd: FUNC_OnRemoteAudioMixingEnd,
pub onRemoteAudioMixingBegin: FUNC_OnRemoteAudioMixingBegin,
pub onCameraExposureAreaChanged: FUNC_OnCameraExposureAreaChanged,
pub onCameraFocusAreaChanged: FUNC_OnCameraFocusAreaChanged,
pub onCameraReady: FUNC_OnCameraReady,
pub onAudioDeviceStateChanged: FUNC_OnAudioDeviceStateChanged,
pub onUserEnableVideo: FUNC_OnUserEnableVideo,
pub onFirstRemoteVideoFrame: FUNC_OnFirstRemoteVideoFrame,
pub onFirstLocalVideoFrame: FUNC_OnFirstLocalVideoFrame,
pub onRemoteAudioStats: FUNC_OnRemoteAudioStats,
pub onRemoteVideoStats: FUNC_OnRemoteVideoStats,
pub onLocalVideoStats: FUNC_OnLocalVideoStats,
pub onNetworkQuality: FUNC_OnNetworkQuality,
pub onTokenPrivilegeWillExpire: FUNC_OnTokenPrivilegeWillExpire,
pub onVideoStopped: FUNC_OnVideoStopped,
pub onAudioMixingStateChanged: FUNC_OnAudioMixingStateChanged,
pub onFirstRemoteAudioDecoded: FUNC_OnFirstRemoteAudioDecoded,
pub onLocalVideoStateChanged: FUNC_OnLocalVideoStateChanged,
pub onNetworkTypeChanged: FUNC_OnNetworkTypeChanged,
pub onRtmpStreamingStateChanged: FUNC_OnRtmpStreamingStateChanged,
pub onLastmileProbeResult: FUNC_OnLastmileProbeResult,
pub onLocalUserRegistered: FUNC_OnLocalUserRegistered,
pub onUserInfoUpdated: FUNC_OnUserInfoUpdated,
pub onLocalAudioStateChanged: FUNC_OnLocalAudioStateChanged,
pub onRemoteAudioStateChanged: FUNC_OnRemoteAudioStateChanged,
pub onLocalAudioStats: FUNC_OnLocalAudioStats,
pub onChannelMediaRelayStateChanged: FUNC_OnChannelMediaRelayStateChanged,
pub onChannelMediaRelayEvent: FUNC_OnChannelMediaRelayEvent,
pub onFacePositionChanged: FUNC_OnFacePositionChanged,
pub onTestEnd: FUNC_OnTestEnd,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct ChannelEventHandler {
pub onWarning: FUNC_OnChannelWarning,
pub onError: FUNC_OnChannelError,
pub onJoinChannelSuccess: FUNC_OnChannelJoinChannelSuccess,
pub onRejoinChannelSuccess: FUNC_OnChannelReJoinChannelSuccess,
pub onLeaveChannel: FUNC_OnChannelLeaveChannel,
pub onClientRoleChanged: FUNC_OnChannelClientRoleChanged,
pub onUserJoined: FUNC_OnChannelUserJoined,
pub onUserOffLine: FUNC_OnChannelUserOffLine,
pub onConnectionLost: FUNC_OnChannelConnectionLost,
pub onRequestToken: FUNC_OnChannelRequestToken,
pub onTokenPrivilegeWillExpire: FUNC_OnChannelTokenPrivilegeWillExpire,
pub onRtcStats: FUNC_OnChannelRtcStats,
pub onNetworkQuality: FUNC_OnChannelNetworkQuality,
pub onRemoteVideoStats: FUNC_OnChannelRemoteVideoStats,
pub onRemoteAudioStats: FUNC_OnChannelRemoteAudioStats,
pub onRemoteAudioStateChanged: FUNC_OnChannelRemoteAudioStateChanged,
pub onActiveSpeaker: FUNC_OnChannelActiveSpeaker,
pub onVideoSizeChanged: FUNC_OnChannelVideoSizeChanged,
pub onRemoteVideoStateChanged: FUNC_OnChannelRemoteVideoStateChanged,
pub onStreamMessage: FUNC_OnChannelStreamMessage,
pub onStreamMessageError: FUNC_OnChannelStreamMessageError,
pub onMediaRelayStateChanged: FUNC_OnChannelMediaRelayStateChanged2,
pub onMediaRelayEvent: FUNC_OnChannelMediaRelayEvent2,
pub onRtmpStreamingStateChanged: FUNC_OnChannelRtmpStreamingStateChanged,
pub onTranscodingUpdated: FUNC_OnChannelTranscodingUpdated,
pub onStreamInjectedStatus: FUNC_OnChannelStreamInjectedStatus,
pub onRemoteSubscribeFallbackToAudioOnly: FUNC_OnChannelRemoteSubscribeFallbackToAudioOnly,
pub onConnectionStateChanged: FUNC_OnChannelConnectionStateChanged,
pub onLocalPublishFallbackToAudioOnly: FUNC_OnChannelLocalPublishFallbackToAudioOnly,
pub onTestEnd: FUNC_OnChannelTestEnd,
}
pub type IRtcEngineBridge_ptr = *mut ::std::os::raw::c_void;
pub type IRtcChannelBridge_ptr = *mut ::std::os::raw::c_void;
pub type IVideoDeviceManager_ptr = *mut ::std::os::raw::c_void;
pub type IAudioPlaybackDeviceManager_ptr = *mut ::std::os::raw::c_void;
pub type IAudioRecordingDeviceManager_ptr = *mut ::std::os::raw::c_void;
extern "C" {
pub fn createRtcBridge() -> IRtcEngineBridge_ptr;
}
extern "C" {
pub fn release(apiBridge: IRtcEngineBridge_ptr, sync: BOOL);
}
extern "C" {
pub fn createChannel(
apiBridge: IRtcEngineBridge_ptr,
channelId: *const ::std::os::raw::c_char,
) -> IRtcChannelBridge_ptr;
}
extern "C" {
pub fn releaseChannel(apiBridge: IRtcChannelBridge_ptr);
}
extern "C" {
pub fn createAudioPlaybackDeviceManager(
apiBridge: IRtcEngineBridge_ptr,
) -> IAudioPlaybackDeviceManager_ptr;
}
extern "C" {
pub fn releaseAudioPlaybackDeviceManager(apiBridge: IAudioPlaybackDeviceManager_ptr);
}
extern "C" {
pub fn createAudioRecordingDeviceManager(
apiBridge: IRtcEngineBridge_ptr,
) -> IAudioRecordingDeviceManager_ptr;
}
extern "C" {
pub fn releaseAudioRecordingDeviceManager(apiBridge: IAudioRecordingDeviceManager_ptr);
}
extern "C" {
pub fn createVideoDeviceManager(apiBridge: IRtcEngineBridge_ptr) -> IVideoDeviceManager_ptr;
}
extern "C" {
pub fn releaseVideoDeviceManager(apiBridge: IVideoDeviceManager_ptr);
}
extern "C" {
pub fn initialize(
apiBridge: IRtcEngineBridge_ptr,
appId: *const ::std::os::raw::c_char,
context: *mut ::std::os::raw::c_void,
areaCode: AREA_CODE,
) -> ERROR_CODE;
}
extern "C" {
pub fn add_C_EventHandler(apiBridge: IRtcEngineBridge_ptr, handler: *mut RtcEventHandler);
}
extern "C" {
pub fn remove_C_EventHandler(apiBridge: IRtcEngineBridge_ptr);
}
extern "C" {
pub fn setChannelProfile(
apiBridge: IRtcEngineBridge_ptr,
channel_profile_type: CHANNEL_PROFILE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn setClientRole(apiBridge: IRtcEngineBridge_ptr, role: CLIENT_ROLE_TYPE) -> ERROR_CODE;
}
extern "C" {
pub fn joinChannel(
apiBridge: IRtcEngineBridge_ptr,
token: *const ::std::os::raw::c_char,
channelId: *const ::std::os::raw::c_char,
info: *const ::std::os::raw::c_char,
uid: uid_t,
) -> ERROR_CODE;
}
extern "C" {
pub fn switchChannel(
apiBridge: IRtcEngineBridge_ptr,
token: *const ::std::os::raw::c_char,
channelId: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn leaveChannel(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn renewToken(
apiBridge: IRtcEngineBridge_ptr,
token: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn registerLocalUserAccount(
apiBridge: IRtcEngineBridge_ptr,
appId: *const ::std::os::raw::c_char,
userAccount: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn joinChannelWithUserAccount(
apiBridge: IRtcEngineBridge_ptr,
token: *const ::std::os::raw::c_char,
channelId: *const ::std::os::raw::c_char,
userAccount: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn getUserInfoByUserAccount(
apiBridge: IRtcEngineBridge_ptr,
userAccount: *const ::std::os::raw::c_char,
userInfo: *mut UserInfo,
) -> ERROR_CODE;
}
extern "C" {
pub fn getUserInfoByUid(
apiBridge: IRtcEngineBridge_ptr,
uid: uid_t,
userInfo: *mut UserInfo,
) -> ERROR_CODE;
}
extern "C" {
pub fn startEchoTest(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn startEchoTest2(
apiBridge: IRtcEngineBridge_ptr,
intervalInSeconds: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn stopEchoTest(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn enableVideo(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn disableVideo(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setVideoProfile(
apiBridge: IRtcEngineBridge_ptr,
profile: VIDEO_PROFILE_TYPE,
swapWidthAndHeight: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn setVideoEncoderConfiguration(
apiBridge: IRtcEngineBridge_ptr,
config: VideoEncoderConfiguration,
) -> ERROR_CODE;
}
extern "C" {
pub fn setCameraCapturerConfiguration(
apiBridge: IRtcEngineBridge_ptr,
config: CameraCapturerConfiguration,
) -> ERROR_CODE;
}
extern "C" {
pub fn setupLocalVideo(apiBridge: IRtcEngineBridge_ptr, canvas: VideoCanvas) -> ERROR_CODE;
}
extern "C" {
pub fn setupRemoteVideo(apiBridge: IRtcEngineBridge_ptr, canvas: VideoCanvas) -> ERROR_CODE;
}
extern "C" {
pub fn startPreview(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setRemoteUserPriority(
apiBridge: IRtcEngineBridge_ptr,
uid: uid_t,
userPriority: PRIORITY_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn stopPreview(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn enableAudio(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn enableLocalAudio(apiBridge: IRtcEngineBridge_ptr, enabled: BOOL) -> ERROR_CODE;
}
extern "C" {
pub fn disableAudio(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setAudioProfile(
apiBridge: IRtcEngineBridge_ptr,
profile: AUDIO_PROFILE_TYPE,
scenario: AUDIO_SCENARIO_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn muteLocalAudioStream(apiBridge: IRtcEngineBridge_ptr, mute: BOOL) -> ERROR_CODE;
}
extern "C" {
pub fn muteAllRemoteAudioStreams(apiBridge: IRtcEngineBridge_ptr, mute: BOOL) -> ERROR_CODE;
}
extern "C" {
pub fn setDefaultMuteAllRemoteVideoStreams(
apiBridge: IRtcEngineBridge_ptr,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn adjustUserPlaybackSignalVolume(
apiBridge: IRtcEngineBridge_ptr,
uid: uid_t,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn muteRemoteAudioStream(
apiBridge: IRtcEngineBridge_ptr,
userId: uid_t,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn muteLocalVideoStream(apiBridge: IRtcEngineBridge_ptr, mute: BOOL) -> ERROR_CODE;
}
extern "C" {
pub fn enableLocalVideo(apiBridge: IRtcEngineBridge_ptr, enabled: BOOL) -> ERROR_CODE;
}
extern "C" {
pub fn muteAllRemoteVideoStreams(apiBridge: IRtcEngineBridge_ptr, mute: BOOL) -> ERROR_CODE;
}
extern "C" {
pub fn setDefaultMuteAllRemoteAudioStreams(
apiBridge: IRtcEngineBridge_ptr,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn muteRemoteVideoStream(
apiBridge: IRtcEngineBridge_ptr,
userId: uid_t,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn setRemoteVideoStreamType(
apiBridge: IRtcEngineBridge_ptr,
userId: uid_t,
streamType: REMOTE_VIDEO_STREAM_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn setRemoteDefaultVideoStreamType(
apiBridge: IRtcEngineBridge_ptr,
streamType: REMOTE_VIDEO_STREAM_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn enableAudioVolumeIndication(
apiBridge: IRtcEngineBridge_ptr,
interval: ::std::os::raw::c_int,
smooth: ::std::os::raw::c_int,
report_vad: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn startAudioRecording(
apiBridge: IRtcEngineBridge_ptr,
filePath: *const ::std::os::raw::c_char,
quality: AUDIO_RECORDING_QUALITY_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn startAudioRecording2(
apiBridge: IRtcEngineBridge_ptr,
filePath: *const ::std::os::raw::c_char,
sampleRate: ::std::os::raw::c_int,
quality: AUDIO_RECORDING_QUALITY_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn stopAudioRecording(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setRemoteVoicePosition(
apiBridge: IRtcEngineBridge_ptr,
uid: uid_t,
pan: f64,
gain: f64,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLogFile(
apiBridge: IRtcEngineBridge_ptr,
file: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLogFilter(
apiBridge: IRtcEngineBridge_ptr,
filter: ::std::os::raw::c_uint,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLogFileSize(
apiBridge: IRtcEngineBridge_ptr,
fileSizeInKBytes: ::std::os::raw::c_uint,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalRenderMode(
apiBridge: IRtcEngineBridge_ptr,
renderMode: RENDER_MODE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalRenderMode2(
apiBridge: IRtcEngineBridge_ptr,
renderMode: RENDER_MODE_TYPE,
mirrorMode: VIDEO_MIRROR_MODE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn setRemoteRenderMode(
apiBridge: IRtcEngineBridge_ptr,
userId: uid_t,
renderMode: RENDER_MODE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn setRemoteRenderMode2(
apiBridge: IRtcEngineBridge_ptr,
userId: uid_t,
renderMode: RENDER_MODE_TYPE,
mirrorMode: VIDEO_MIRROR_MODE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalVideoMirrorMode(
apiBridge: IRtcEngineBridge_ptr,
mirrorMode: VIDEO_MIRROR_MODE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn enableDualStreamMode(apiBridge: IRtcEngineBridge_ptr, enabled: BOOL) -> ERROR_CODE;
}
extern "C" {
pub fn adjustRecordingSignalVolume(
apiBridge: IRtcEngineBridge_ptr,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn adjustPlaybackSignalVolume(
apiBridge: IRtcEngineBridge_ptr,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn enableWebSdkInteroperability(
apiBridge: IRtcEngineBridge_ptr,
enabled: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn setVideoQualityParameters(
apiBridge: IRtcEngineBridge_ptr,
preferFrameRateOverImageQuality: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalPublishFallbackOption(
apiBridge: IRtcEngineBridge_ptr,
option: STREAM_FALLBACK_OPTIONS,
) -> ERROR_CODE;
}
extern "C" {
pub fn setRemoteSubscribeFallbackOption(
apiBridge: IRtcEngineBridge_ptr,
option: STREAM_FALLBACK_OPTIONS,
) -> ERROR_CODE;
}
extern "C" {
pub fn getCallId(apiBridge: IRtcEngineBridge_ptr) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn rate(
apiBridge: IRtcEngineBridge_ptr,
callId: *const ::std::os::raw::c_char,
rating: ::std::os::raw::c_int,
description: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn complain(
apiBridge: IRtcEngineBridge_ptr,
callId: *const ::std::os::raw::c_char,
description: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn getVersion(apiBridge: IRtcEngineBridge_ptr) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn enableLastmileTest(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn disableLastmileTest(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn startLastmileProbeTest(
apiBridge: IRtcEngineBridge_ptr,
config: LastmileProbeConfig,
) -> ERROR_CODE;
}
extern "C" {
pub fn stopLastmileProbeTest(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn getErrorDescription(
apiBridge: IRtcEngineBridge_ptr,
code: ::std::os::raw::c_int,
) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn setEncryptionSecret(
apiBridge: IRtcEngineBridge_ptr,
secret: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn setEncryptionMode(
apiBridge: IRtcEngineBridge_ptr,
encryptionMode: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn createDataStream(
apiBridge: IRtcEngineBridge_ptr,
streamId: *mut ::std::os::raw::c_int,
reliable: BOOL,
ordered: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn sendStreamMessage(
apiBridge: IRtcEngineBridge_ptr,
streamId: ::std::os::raw::c_int,
data: *const ::std::os::raw::c_char,
length: ::std::os::raw::c_longlong,
) -> ERROR_CODE;
}
extern "C" {
pub fn addPublishStreamUrl(
apiBridge: IRtcEngineBridge_ptr,
url: *const ::std::os::raw::c_char,
transcodingEnabled: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn removePublishStreamUrl(
apiBridge: IRtcEngineBridge_ptr,
url: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLiveTranscoding(
apiBridge: IRtcEngineBridge_ptr,
transcoding: *const LiveTranscoding,
) -> ERROR_CODE;
}
extern "C" {
pub fn addVideoWatermark(apiBridge: IRtcEngineBridge_ptr, watermark: RtcImage) -> ERROR_CODE;
}
extern "C" {
pub fn addVideoWatermark2(
apiBridge: IRtcEngineBridge_ptr,
watermarkUrl: *const ::std::os::raw::c_char,
options: WatermarkOptions,
) -> ERROR_CODE;
}
extern "C" {
pub fn clearVideoWatermarks(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setBeautyEffectOptions(
apiBridge: IRtcEngineBridge_ptr,
enabled: BOOL,
options: BeautyOptions,
) -> ERROR_CODE;
}
extern "C" {
pub fn addInjectStreamUrl(
apiBridge: IRtcEngineBridge_ptr,
url: *const ::std::os::raw::c_char,
config: InjectStreamConfig,
) -> ERROR_CODE;
}
extern "C" {
pub fn startChannelMediaRelay(
apiBridge: IRtcEngineBridge_ptr,
configuration: ChannelMediaRelayConfiguration,
) -> ERROR_CODE;
}
extern "C" {
pub fn updateChannelMediaRelay(
apiBridge: IRtcEngineBridge_ptr,
configuration: ChannelMediaRelayConfiguration,
) -> ERROR_CODE;
}
extern "C" {
pub fn stopChannelMediaRelay(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn removeInjectStreamUrl(
apiBridge: IRtcEngineBridge_ptr,
url: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn getConnectionState(apiBridge: IRtcEngineBridge_ptr) -> CONNECTION_STATE_TYPE;
}
extern "C" {
pub fn setParameters(
apiBridge: IRtcEngineBridge_ptr,
parameters: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn setPlaybackDeviceVolume(
apiBridge: IRtcEngineBridge_ptr,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn startAudioMixing(
apiBridge: IRtcEngineBridge_ptr,
filePath: *const ::std::os::raw::c_char,
loopback: BOOL,
replace: BOOL,
cycle: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn stopAudioMixing(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn pauseAudioMixing(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn resumeAudioMixing(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setHighQualityAudioParameters(
apiBridge: IRtcEngineBridge_ptr,
fullband: BOOL,
stereo: BOOL,
fullBitrate: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn adjustAudioMixingVolume(
apiBridge: IRtcEngineBridge_ptr,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn adjustAudioMixingPlayoutVolume(
apiBridge: IRtcEngineBridge_ptr,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn getAudioMixingPlayoutVolume(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn adjustAudioMixingPublishVolume(
apiBridge: IRtcEngineBridge_ptr,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn getAudioMixingPublishVolume(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn getAudioMixingDuration(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn getAudioMixingCurrentPosition(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setAudioMixingPosition(
apiBridge: IRtcEngineBridge_ptr,
pos: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn setAudioMixingPitch(
apiBridge: IRtcEngineBridge_ptr,
pitch: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn getEffectsVolume(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setEffectsVolume(
apiBridge: IRtcEngineBridge_ptr,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn setVolumeOfEffect(
apiBridge: IRtcEngineBridge_ptr,
soundId: ::std::os::raw::c_int,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn playEffect(
apiBridge: IRtcEngineBridge_ptr,
soundId: ::std::os::raw::c_int,
filePath: *const ::std::os::raw::c_char,
loopCount: ::std::os::raw::c_int,
pitch: f64,
pan: f64,
gain: ::std::os::raw::c_int,
publish: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn stopEffect(
apiBridge: IRtcEngineBridge_ptr,
soundId: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn stopAllEffects(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn preloadEffect(
apiBridge: IRtcEngineBridge_ptr,
soundId: ::std::os::raw::c_int,
filePath: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn unloadEffect(
apiBridge: IRtcEngineBridge_ptr,
soundId: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn pauseEffect(
apiBridge: IRtcEngineBridge_ptr,
soundId: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn pauseAllEffects(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn resumeEffect(
apiBridge: IRtcEngineBridge_ptr,
soundId: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn resumeAllEffects(apiBridge: IRtcEngineBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn enableSoundPositionIndication(
apiBridge: IRtcEngineBridge_ptr,
enabled: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalVoicePitch(apiBridge: IRtcEngineBridge_ptr, pitch: f64) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalVoiceEqualization(
apiBridge: IRtcEngineBridge_ptr,
bandFrequency: AUDIO_EQUALIZATION_BAND_FREQUENCY,
bandGain: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalVoiceReverb(
apiBridge: IRtcEngineBridge_ptr,
reverbKey: AUDIO_REVERB_TYPE,
value: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalVoiceChanger(
apiBridge: IRtcEngineBridge_ptr,
voiceChanger: VOICE_CHANGER_PRESET,
) -> ERROR_CODE;
}
extern "C" {
pub fn setLocalVoiceReverbPreset(
apiBridge: IRtcEngineBridge_ptr,
reverbPreset: AUDIO_REVERB_PRESET,
) -> ERROR_CODE;
}
extern "C" {
pub fn setExternalAudioSource(
apiBridge: IRtcEngineBridge_ptr,
enabled: BOOL,
sampleRate: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn setExternalAudioSink(
apiBridge: IRtcEngineBridge_ptr,
enabled: BOOL,
sampleRate: ::std::os::raw::c_int,
channels: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn setRecordingAudioFrameParameters(
apiBridge: IRtcEngineBridge_ptr,
sampleRate: ::std::os::raw::c_int,
channel: ::std::os::raw::c_int,
mode: RAW_AUDIO_FRAME_OP_MODE_TYPE,
samplesPerCall: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn setPlaybackAudioFrameParameters(
apiBridge: IRtcEngineBridge_ptr,
sampleRate: ::std::os::raw::c_int,
channel: ::std::os::raw::c_int,
mode: RAW_AUDIO_FRAME_OP_MODE_TYPE,
samplesPerCall: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn setMixedAudioFrameParameters(
apiBridge: IRtcEngineBridge_ptr,
sampleRate: ::std::os::raw::c_int,
samplesPerCall: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn pushAudioFrame(
apiBridge: IRtcEngineBridge_ptr,
type_: MEDIA_SOURCE_TYPE,
frame: *mut AudioFrame,
wrap: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn pushAudioFrame2(apiBridge: IRtcEngineBridge_ptr, frame: *mut AudioFrame) -> ERROR_CODE;
}
extern "C" {
pub fn pullAudioFrame(apiBridge: IRtcEngineBridge_ptr, frame: *mut AudioFrame) -> ERROR_CODE;
}
extern "C" {
pub fn setExternalVideoSource(
apiBridge: IRtcEngineBridge_ptr,
enable: BOOL,
useTexture: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn pushVideoFrame(
apiBridge: IRtcEngineBridge_ptr,
frame: *mut ExternalVideoFrame,
) -> ERROR_CODE;
}
extern "C" {
pub fn enableEncryption(
apiBridge: IRtcEngineBridge_ptr,
enabled: BOOL,
config: EncryptionConfig,
) -> ERROR_CODE;
}
extern "C" {
pub fn sendCustomReportMessage(
apiBridge: IRtcEngineBridge_ptr,
id: *const ::std::os::raw::c_char,
category: *const ::std::os::raw::c_char,
event: *const ::std::os::raw::c_char,
label: *const ::std::os::raw::c_char,
value: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_add_C_ChannelEventHandler(
apiBridge: IRtcChannelBridge_ptr,
channelEventHandler: *mut ChannelEventHandler,
);
}
extern "C" {
pub fn channel_remove_C_ChannelEventHandler(apiBridge: IRtcChannelBridge_ptr);
}
extern "C" {
pub fn channel_joinChannel(
apiBridge: IRtcChannelBridge_ptr,
token: *const ::std::os::raw::c_char,
info: *const ::std::os::raw::c_char,
uid: uid_t,
options: ChannelMediaOptions,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_joinChannelWithUserAccount(
apiBridge: IRtcChannelBridge_ptr,
token: *const ::std::os::raw::c_char,
userAccount: *const ::std::os::raw::c_char,
options: ChannelMediaOptions,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_leaveChannel(apiBridge: IRtcChannelBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn channel_publish(apiBridge: IRtcChannelBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn channel_unpublish(apiBridge: IRtcChannelBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn channel_channelId(apiBridge: IRtcChannelBridge_ptr) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn channel_getCallId(apiBridge: IRtcChannelBridge_ptr) -> *const ::std::os::raw::c_char;
}
extern "C" {
pub fn channel_renewToken(
apiBridge: IRtcChannelBridge_ptr,
token: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setEncryptionSecret(
apiBridge: IRtcChannelBridge_ptr,
secret: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setEncryptionMode(
apiBridge: IRtcChannelBridge_ptr,
encryptionMode: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setClientRole(
apiBridge: IRtcChannelBridge_ptr,
role: CLIENT_ROLE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setRemoteUserPriority(
apiBridge: IRtcChannelBridge_ptr,
uid: uid_t,
userPriority: PRIORITY_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setRemoteVoicePosition(
apiBridge: IRtcChannelBridge_ptr,
uid: uid_t,
pan: f64,
gain: f64,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setRemoteRenderMode(
apiBridge: IRtcChannelBridge_ptr,
userId: uid_t,
renderMode: RENDER_MODE_TYPE,
mirrorMode: VIDEO_MIRROR_MODE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setDefaultMuteAllRemoteAudioStreams(
apiBridge: IRtcChannelBridge_ptr,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setDefaultMuteAllRemoteVideoStreams(
apiBridge: IRtcChannelBridge_ptr,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_muteAllRemoteAudioStreams(
apiBridge: IRtcChannelBridge_ptr,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_adjustUserPlaybackSignalVolume(
apiBridge: IRtcChannelBridge_ptr,
userId: uid_t,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_muteRemoteAudioStream(
apiBridge: IRtcChannelBridge_ptr,
userId: uid_t,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_muteAllRemoteVideoStreams(
apiBridge: IRtcChannelBridge_ptr,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_muteRemoteVideoStream(
apiBridge: IRtcChannelBridge_ptr,
userId: uid_t,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setRemoteVideoStreamType(
apiBridge: IRtcChannelBridge_ptr,
userId: uid_t,
streamType: REMOTE_VIDEO_STREAM_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setRemoteDefaultVideoStreamType(
apiBridge: IRtcChannelBridge_ptr,
streamType: REMOTE_VIDEO_STREAM_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_addPublishStreamUrl(
apiBridge: IRtcChannelBridge_ptr,
url: *const ::std::os::raw::c_char,
transcodingEnabled: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_removePublishStreamUrl(
apiBridge: IRtcChannelBridge_ptr,
url: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_setLiveTranscoding(
apiBridge: IRtcChannelBridge_ptr,
transcoding: *const LiveTranscoding,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_addInjectStreamUrl(
apiBridge: IRtcChannelBridge_ptr,
url: *const ::std::os::raw::c_char,
config: InjectStreamConfig,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_removeInjectStreamUrl(
apiBridge: IRtcChannelBridge_ptr,
url: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_startChannelMediaRelay(
apiBridge: IRtcChannelBridge_ptr,
configuration: ChannelMediaRelayConfiguration,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_updateChannelMediaRelay(
apiBridge: IRtcChannelBridge_ptr,
configuration: ChannelMediaRelayConfiguration,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_stopChannelMediaRelay(apiBridge: IRtcChannelBridge_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn channel_createDataStream(
apiBridge: IRtcChannelBridge_ptr,
streamId: *mut ::std::os::raw::c_int,
reliable: BOOL,
ordered: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_sendStreamMessage(
apiBridge: IRtcChannelBridge_ptr,
streamId: ::std::os::raw::c_int,
data: *const ::std::os::raw::c_char,
length: ::std::os::raw::c_longlong,
) -> ERROR_CODE;
}
extern "C" {
pub fn channel_getConnectionState(apiBridge: IRtcChannelBridge_ptr) -> CONNECTION_STATE_TYPE;
}
extern "C" {
pub fn audio_device_getCount(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn audio_device_getDevice(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
index: ::std::os::raw::c_int,
deviceName: *mut ::std::os::raw::c_char,
deviceId: *mut ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_getCurrentDevice(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
deviceId: *mut ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_getCurrentDeviceInfo(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
deviceId: *mut ::std::os::raw::c_char,
deviceName: *mut ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_setDevice(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
deviceId: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_setDeviceVolume(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
volume: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_getDeviceVolume(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
volume: *mut ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_setDeviceMute(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
mute: BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_getDeviceMute(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
mute: *mut BOOL,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_startDeviceTest(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
testAudioFilePath: *const ::std::os::raw::c_char,
indicationInterval: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_stopDeviceTest(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_startAudioDeviceLoopbackTest(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
indicationInterval: ::std::os::raw::c_int,
) -> ERROR_CODE;
}
extern "C" {
pub fn audio_device_stopAudioDeviceLoopbackTest(
apiBridge: *mut ::std::os::raw::c_void,
type_: DEVICE_TYPE,
) -> ERROR_CODE;
}
extern "C" {
pub fn startDeviceTest(apiBridge: IVideoDeviceManager_ptr, hwnd: view_t) -> ERROR_CODE;
}
extern "C" {
pub fn stopDeviceTest(apiBridge: IVideoDeviceManager_ptr) -> ERROR_CODE;
}
extern "C" {
pub fn setDevice(
apiBridge: IVideoDeviceManager_ptr,
deviceId: *const ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn getDevice(
apiBridge: IVideoDeviceManager_ptr,
index: ::std::os::raw::c_int,
deviceName: *mut ::std::os::raw::c_char,
deviceId: *mut ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn getCurrentDevice(
apiBridge: IVideoDeviceManager_ptr,
deviceId: *mut ::std::os::raw::c_char,
) -> ERROR_CODE;
}
extern "C" {
pub fn getDeviceCount(apiBridge: IVideoDeviceManager_ptr) -> ::std::os::raw::c_int;
}
pub type FUNC_APICaseHandler = ::std::option::Option<
unsafe extern "C" fn(apiType: ::std::os::raw::c_int, paramter: *const ::std::os::raw::c_char),
>;
extern "C" {
pub fn begin_api_test(
caseFilePath: *const ::std::os::raw::c_char,
apiCaseHandler: FUNC_APICaseHandler,
);
}
extern "C" {
pub fn compare_and_dump_api_test_result(
caseFilePath: *const ::std::os::raw::c_char,
dumpFilePath: *const ::std::os::raw::c_char,
apiCaseHandler: FUNC_APICaseHandler,
);
}
extern "C" {
pub fn begin_rtc_engine_event_test(
caseFilePath: *const ::std::os::raw::c_char,
eventHandler: *mut RtcEventHandler,
);
}
extern "C" {
pub fn compare_dump_rtc_engine_event_test_result(
caseFilePath: *const ::std::os::raw::c_char,
dumpFilePath: *const ::std::os::raw::c_char,
eventHandler: *mut RtcEventHandler,
);
}
extern "C" {
pub fn log_engine_event_case(
eventType: *const ::std::os::raw::c_char,
parameter: *const ::std::os::raw::c_char,
);
}
extern "C" {
pub fn begin_channel_event_test(
caseFilePath: *const ::std::os::raw::c_char,
channelId: *const ::std::os::raw::c_char,
eventHandler: *mut ChannelEventHandler,
);
}
extern "C" {
pub fn compare_dump_channel_event_test_result(
caseFilePath: *const ::std::os::raw::c_char,
dumpFilePath: *const ::std::os::raw::c_char,
channelId: *const ::std::os::raw::c_char,
eventHandler: *mut ChannelEventHandler,
);
}
extern "C" {
pub fn log_channel_event_case(
eventType: *const ::std::os::raw::c_char,
parameter: *const ::std::os::raw::c_char,
);
}
pub type __builtin_va_list = [__va_list_tag; 1usize];
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __va_list_tag {
pub gp_offset: ::std::os::raw::c_uint,
pub fp_offset: ::std::os::raw::c_uint,
pub overflow_arg_area: *mut ::std::os::raw::c_void,
pub reg_save_area: *mut ::std::os::raw::c_void,
}