#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
impl OH_AudioChannelSet {
pub const CH_SET_FRONT_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(1);
pub const CH_SET_FRONT_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(2);
pub const CH_SET_FRONT_CENTER: OH_AudioChannelSet = OH_AudioChannelSet(4);
pub const CH_SET_LOW_FREQUENCY: OH_AudioChannelSet = OH_AudioChannelSet(8);
pub const CH_SET_BACK_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(16);
pub const CH_SET_BACK_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(32);
pub const CH_SET_FRONT_LEFT_OF_CENTER: OH_AudioChannelSet = OH_AudioChannelSet(64);
pub const CH_SET_FRONT_RIGHT_OF_CENTER: OH_AudioChannelSet = OH_AudioChannelSet(128);
pub const CH_SET_BACK_CENTER: OH_AudioChannelSet = OH_AudioChannelSet(256);
pub const CH_SET_SIDE_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(512);
pub const CH_SET_SIDE_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(1024);
pub const CH_SET_TOP_CENTER: OH_AudioChannelSet = OH_AudioChannelSet(2048);
pub const CH_SET_TOP_FRONT_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(4096);
pub const CH_SET_TOP_FRONT_CENTER: OH_AudioChannelSet = OH_AudioChannelSet(8192);
pub const CH_SET_TOP_FRONT_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(16384);
pub const CH_SET_TOP_BACK_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(32768);
pub const CH_SET_TOP_BACK_CENTER: OH_AudioChannelSet = OH_AudioChannelSet(65536);
pub const CH_SET_TOP_BACK_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(131072);
pub const CH_SET_STEREO_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(536870912);
pub const CH_SET_STEREO_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(1073741824);
pub const CH_SET_WIDE_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(2147483648);
pub const CH_SET_WIDE_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(4294967296);
pub const CH_SET_SURROUND_DIRECT_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(8589934592);
pub const CH_SET_SURROUND_DIRECT_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(17179869184);
pub const CH_SET_LOW_FREQUENCY_2: OH_AudioChannelSet = OH_AudioChannelSet(34359738368);
pub const CH_SET_TOP_SIDE_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(68719476736);
pub const CH_SET_TOP_SIDE_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(137438953472);
pub const CH_SET_BOTTOM_FRONT_CENTER: OH_AudioChannelSet = OH_AudioChannelSet(274877906944);
pub const CH_SET_BOTTOM_FRONT_LEFT: OH_AudioChannelSet = OH_AudioChannelSet(549755813888);
pub const CH_SET_BOTTOM_FRONT_RIGHT: OH_AudioChannelSet = OH_AudioChannelSet(1099511627776);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioChannelSet(pub ::core::ffi::c_ulonglong);
impl OH_AmbAttributeSet {
pub const AMB_ORD_1: OH_AmbAttributeSet = OH_AmbAttributeSet(1);
pub const AMB_ORD_2: OH_AmbAttributeSet = OH_AmbAttributeSet(2);
pub const AMB_ORD_3: OH_AmbAttributeSet = OH_AmbAttributeSet(3);
pub const AMB_COM_ACN: OH_AmbAttributeSet = OH_AmbAttributeSet(0);
pub const AMB_COM_FUMA: OH_AmbAttributeSet = OH_AmbAttributeSet(256);
pub const AMB_NOR_N3D: OH_AmbAttributeSet = OH_AmbAttributeSet(0);
pub const AMB_NOR_SN3D: OH_AmbAttributeSet = OH_AmbAttributeSet(4096);
pub const AMB_MODE: OH_AmbAttributeSet = OH_AmbAttributeSet(17592186044416);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AmbAttributeSet(pub ::core::ffi::c_ulonglong);
impl OH_AudioChannelLayout {
pub const CH_LAYOUT_UNKNOWN: OH_AudioChannelLayout = OH_AudioChannelLayout(0);
pub const CH_LAYOUT_MONO: OH_AudioChannelLayout = OH_AudioChannelLayout(4);
pub const CH_LAYOUT_STEREO: OH_AudioChannelLayout = OH_AudioChannelLayout(3);
pub const CH_LAYOUT_STEREO_DOWNMIX: OH_AudioChannelLayout = OH_AudioChannelLayout(1610612736);
pub const CH_LAYOUT_2POINT1: OH_AudioChannelLayout = OH_AudioChannelLayout(11);
pub const CH_LAYOUT_3POINT0: OH_AudioChannelLayout = OH_AudioChannelLayout(259);
pub const CH_LAYOUT_SURROUND: OH_AudioChannelLayout = OH_AudioChannelLayout(7);
pub const CH_LAYOUT_3POINT1: OH_AudioChannelLayout = OH_AudioChannelLayout(15);
pub const CH_LAYOUT_4POINT0: OH_AudioChannelLayout = OH_AudioChannelLayout(263);
pub const CH_LAYOUT_QUAD_SIDE: OH_AudioChannelLayout = OH_AudioChannelLayout(1539);
pub const CH_LAYOUT_QUAD: OH_AudioChannelLayout = OH_AudioChannelLayout(51);
pub const CH_LAYOUT_2POINT0POINT2: OH_AudioChannelLayout = OH_AudioChannelLayout(206158430211);
pub const CH_LAYOUT_AMB_ORDER1_ACN_N3D: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186044417);
pub const CH_LAYOUT_AMB_ORDER1_ACN_SN3D: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186048513);
pub const CH_LAYOUT_AMB_ORDER1_FUMA: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186044673);
pub const CH_LAYOUT_4POINT1: OH_AudioChannelLayout = OH_AudioChannelLayout(271);
pub const CH_LAYOUT_5POINT0: OH_AudioChannelLayout = OH_AudioChannelLayout(1543);
pub const CH_LAYOUT_5POINT0_BACK: OH_AudioChannelLayout = OH_AudioChannelLayout(55);
pub const CH_LAYOUT_2POINT1POINT2: OH_AudioChannelLayout = OH_AudioChannelLayout(206158430219);
pub const CH_LAYOUT_3POINT0POINT2: OH_AudioChannelLayout = OH_AudioChannelLayout(206158430215);
pub const CH_LAYOUT_5POINT1: OH_AudioChannelLayout = OH_AudioChannelLayout(1551);
pub const CH_LAYOUT_5POINT1_BACK: OH_AudioChannelLayout = OH_AudioChannelLayout(63);
pub const CH_LAYOUT_6POINT0: OH_AudioChannelLayout = OH_AudioChannelLayout(1799);
pub const CH_LAYOUT_3POINT1POINT2: OH_AudioChannelLayout = OH_AudioChannelLayout(20495);
pub const CH_LAYOUT_6POINT0_FRONT: OH_AudioChannelLayout = OH_AudioChannelLayout(1731);
pub const CH_LAYOUT_HEXAGONAL: OH_AudioChannelLayout = OH_AudioChannelLayout(311);
pub const CH_LAYOUT_6POINT1: OH_AudioChannelLayout = OH_AudioChannelLayout(1807);
pub const CH_LAYOUT_6POINT1_BACK: OH_AudioChannelLayout = OH_AudioChannelLayout(319);
pub const CH_LAYOUT_6POINT1_FRONT: OH_AudioChannelLayout = OH_AudioChannelLayout(1739);
pub const CH_LAYOUT_7POINT0: OH_AudioChannelLayout = OH_AudioChannelLayout(1591);
pub const CH_LAYOUT_7POINT0_FRONT: OH_AudioChannelLayout = OH_AudioChannelLayout(1735);
pub const CH_LAYOUT_7POINT1: OH_AudioChannelLayout = OH_AudioChannelLayout(1599);
pub const CH_LAYOUT_OCTAGONAL: OH_AudioChannelLayout = OH_AudioChannelLayout(1847);
pub const CH_LAYOUT_5POINT1POINT2: OH_AudioChannelLayout = OH_AudioChannelLayout(206158431759);
pub const CH_LAYOUT_7POINT1_WIDE: OH_AudioChannelLayout = OH_AudioChannelLayout(1743);
pub const CH_LAYOUT_7POINT1_WIDE_BACK: OH_AudioChannelLayout = OH_AudioChannelLayout(255);
pub const CH_LAYOUT_AMB_ORDER2_ACN_N3D: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186044418);
pub const CH_LAYOUT_AMB_ORDER2_ACN_SN3D: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186048514);
pub const CH_LAYOUT_AMB_ORDER2_FUMA: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186044674);
pub const CH_LAYOUT_5POINT1POINT4: OH_AudioChannelLayout = OH_AudioChannelLayout(185871);
pub const CH_LAYOUT_7POINT1POINT2: OH_AudioChannelLayout = OH_AudioChannelLayout(206158431807);
pub const CH_LAYOUT_7POINT1POINT4: OH_AudioChannelLayout = OH_AudioChannelLayout(185919);
pub const CH_LAYOUT_10POINT2: OH_AudioChannelLayout = OH_AudioChannelLayout(6442473271);
pub const CH_LAYOUT_9POINT1POINT4: OH_AudioChannelLayout = OH_AudioChannelLayout(6442636863);
pub const CH_LAYOUT_9POINT1POINT6: OH_AudioChannelLayout = OH_AudioChannelLayout(212601067071);
pub const CH_LAYOUT_HEXADECAGONAL: OH_AudioChannelLayout = OH_AudioChannelLayout(6442710839);
pub const CH_LAYOUT_AMB_ORDER3_ACN_N3D: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186044419);
pub const CH_LAYOUT_AMB_ORDER3_ACN_SN3D: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186048515);
pub const CH_LAYOUT_AMB_ORDER3_FUMA: OH_AudioChannelLayout =
OH_AudioChannelLayout(17592186044675);
pub const CH_LAYOUT_22POINT2: OH_AudioChannelLayout = OH_AudioChannelLayout(2164663779327);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioChannelLayout(pub ::core::ffi::c_ulonglong);
pub type OH_AudioStream_Result = Result<(), OH_AudioStreamErrorCode>;
impl OH_AudioStreamErrorCode {
pub const INVALID_PARAM: OH_AudioStreamErrorCode =
OH_AudioStreamErrorCode(const { core::num::NonZero::new(1).unwrap() });
pub const ILLEGAL_STATE: OH_AudioStreamErrorCode =
OH_AudioStreamErrorCode(const { core::num::NonZero::new(2).unwrap() });
pub const SYSTEM: OH_AudioStreamErrorCode =
OH_AudioStreamErrorCode(const { core::num::NonZero::new(3).unwrap() });
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
pub const UNSUPPORTED_FORMAT: OH_AudioStreamErrorCode =
OH_AudioStreamErrorCode(const { core::num::NonZero::new(4).unwrap() });
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStreamErrorCode(pub core::num::NonZero<::core::ffi::c_uint>);
impl OH_AudioStream_Type {
pub const AUDIOSTREAM_TYPE_RENDERER: OH_AudioStream_Type = OH_AudioStream_Type(1);
pub const AUDIOSTREAM_TYPE_CAPTURER: OH_AudioStream_Type = OH_AudioStream_Type(2);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_Type(pub ::core::ffi::c_uint);
impl OH_AudioStream_SampleFormat {
pub const AUDIOSTREAM_SAMPLE_U8: OH_AudioStream_SampleFormat = OH_AudioStream_SampleFormat(0);
pub const AUDIOSTREAM_SAMPLE_S16LE: OH_AudioStream_SampleFormat =
OH_AudioStream_SampleFormat(1);
pub const AUDIOSTREAM_SAMPLE_S24LE: OH_AudioStream_SampleFormat =
OH_AudioStream_SampleFormat(2);
pub const AUDIOSTREAM_SAMPLE_S32LE: OH_AudioStream_SampleFormat =
OH_AudioStream_SampleFormat(3);
#[cfg(feature = "api-17")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-17")))]
pub const AUDIOSTREAM_SAMPLE_F32LE: OH_AudioStream_SampleFormat =
OH_AudioStream_SampleFormat(4);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_SampleFormat(pub ::core::ffi::c_uint);
impl OH_AudioStream_EncodingType {
pub const AUDIOSTREAM_ENCODING_TYPE_RAW: OH_AudioStream_EncodingType =
OH_AudioStream_EncodingType(0);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const AUDIOSTREAM_ENCODING_TYPE_AUDIOVIVID: OH_AudioStream_EncodingType =
OH_AudioStream_EncodingType(1);
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
pub const AUDIOSTREAM_ENCODING_TYPE_E_AC3: OH_AudioStream_EncodingType =
OH_AudioStream_EncodingType(2);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_EncodingType(pub ::core::ffi::c_uint);
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct OH_AudioStreamInfo {
pub samplingRate: i32,
pub channelLayout: OH_AudioChannelLayout,
pub encodingType: OH_AudioStream_EncodingType,
pub sampleFormat: OH_AudioStream_SampleFormat,
}
impl OH_AudioStream_Usage {
pub const AUDIOSTREAM_USAGE_UNKNOWN: OH_AudioStream_Usage = OH_AudioStream_Usage(0);
pub const AUDIOSTREAM_USAGE_MUSIC: OH_AudioStream_Usage = OH_AudioStream_Usage(1);
pub const AUDIOSTREAM_USAGE_VOICE_COMMUNICATION: OH_AudioStream_Usage = OH_AudioStream_Usage(2);
pub const AUDIOSTREAM_USAGE_VOICE_ASSISTANT: OH_AudioStream_Usage = OH_AudioStream_Usage(3);
pub const AUDIOSTREAM_USAGE_ALARM: OH_AudioStream_Usage = OH_AudioStream_Usage(4);
pub const AUDIOSTREAM_USAGE_VOICE_MESSAGE: OH_AudioStream_Usage = OH_AudioStream_Usage(5);
pub const AUDIOSTREAM_USAGE_RINGTONE: OH_AudioStream_Usage = OH_AudioStream_Usage(6);
pub const AUDIOSTREAM_USAGE_NOTIFICATION: OH_AudioStream_Usage = OH_AudioStream_Usage(7);
pub const AUDIOSTREAM_USAGE_ACCESSIBILITY: OH_AudioStream_Usage = OH_AudioStream_Usage(8);
pub const AUDIOSTREAM_USAGE_MOVIE: OH_AudioStream_Usage = OH_AudioStream_Usage(10);
pub const AUDIOSTREAM_USAGE_GAME: OH_AudioStream_Usage = OH_AudioStream_Usage(11);
pub const AUDIOSTREAM_USAGE_AUDIOBOOK: OH_AudioStream_Usage = OH_AudioStream_Usage(12);
pub const AUDIOSTREAM_USAGE_NAVIGATION: OH_AudioStream_Usage = OH_AudioStream_Usage(13);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const AUDIOSTREAM_USAGE_VIDEO_COMMUNICATION: OH_AudioStream_Usage =
OH_AudioStream_Usage(17);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_Usage(pub ::core::ffi::c_uint);
impl OH_AudioStream_LatencyMode {
pub const AUDIOSTREAM_LATENCY_MODE_NORMAL: OH_AudioStream_LatencyMode =
OH_AudioStream_LatencyMode(0);
pub const AUDIOSTREAM_LATENCY_MODE_FAST: OH_AudioStream_LatencyMode =
OH_AudioStream_LatencyMode(1);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_LatencyMode(pub ::core::ffi::c_uint);
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
impl OH_AudioStream_DirectPlaybackMode {
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
pub const AUDIOSTREAM_DIRECT_PLAYBACK_NOT_SUPPORTED: OH_AudioStream_DirectPlaybackMode =
OH_AudioStream_DirectPlaybackMode(0);
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
pub const AUDIOSTREAM_DIRECT_PLAYBACK_BITSTREAM_SUPPORTED: OH_AudioStream_DirectPlaybackMode =
OH_AudioStream_DirectPlaybackMode(1);
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
pub const AUDIOSTREAM_DIRECT_PLAYBACK_PCM_SUPPORTED: OH_AudioStream_DirectPlaybackMode =
OH_AudioStream_DirectPlaybackMode(2);
}
#[repr(transparent)]
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_DirectPlaybackMode(pub ::core::ffi::c_uint);
impl OH_AudioStream_Event {
#[deprecated(
since = "20",
note = "Use instead: OH_AudioRenderer_OutputDeviceChangeCallback"
)]
pub const AUDIOSTREAM_EVENT_ROUTING_CHANGED: OH_AudioStream_Event = OH_AudioStream_Event(0);
}
#[repr(transparent)]
#[deprecated(
since = "20",
note = "Use instead: OH_AudioRenderer_OutputDeviceChangeCallback"
)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_Event(pub ::core::ffi::c_uint);
impl OH_AudioStream_State {
pub const AUDIOSTREAM_STATE_INVALID: OH_AudioStream_State = OH_AudioStream_State(-1);
pub const AUDIOSTREAM_STATE_NEW: OH_AudioStream_State = OH_AudioStream_State(0);
pub const AUDIOSTREAM_STATE_PREPARED: OH_AudioStream_State = OH_AudioStream_State(1);
pub const AUDIOSTREAM_STATE_RUNNING: OH_AudioStream_State = OH_AudioStream_State(2);
pub const AUDIOSTREAM_STATE_STOPPED: OH_AudioStream_State = OH_AudioStream_State(3);
pub const AUDIOSTREAM_STATE_RELEASED: OH_AudioStream_State = OH_AudioStream_State(4);
pub const AUDIOSTREAM_STATE_PAUSED: OH_AudioStream_State = OH_AudioStream_State(5);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_State(pub ::core::ffi::c_int);
impl OH_AudioInterrupt_ForceType {
pub const AUDIOSTREAM_INTERRUPT_FORCE: OH_AudioInterrupt_ForceType =
OH_AudioInterrupt_ForceType(0);
pub const AUDIOSTREAM_INTERRUPT_SHARE: OH_AudioInterrupt_ForceType =
OH_AudioInterrupt_ForceType(1);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioInterrupt_ForceType(pub ::core::ffi::c_uint);
impl OH_AudioInterrupt_Hint {
pub const AUDIOSTREAM_INTERRUPT_HINT_NONE: OH_AudioInterrupt_Hint = OH_AudioInterrupt_Hint(0);
pub const AUDIOSTREAM_INTERRUPT_HINT_RESUME: OH_AudioInterrupt_Hint = OH_AudioInterrupt_Hint(1);
pub const AUDIOSTREAM_INTERRUPT_HINT_PAUSE: OH_AudioInterrupt_Hint = OH_AudioInterrupt_Hint(2);
pub const AUDIOSTREAM_INTERRUPT_HINT_STOP: OH_AudioInterrupt_Hint = OH_AudioInterrupt_Hint(3);
pub const AUDIOSTREAM_INTERRUPT_HINT_DUCK: OH_AudioInterrupt_Hint = OH_AudioInterrupt_Hint(4);
pub const AUDIOSTREAM_INTERRUPT_HINT_UNDUCK: OH_AudioInterrupt_Hint = OH_AudioInterrupt_Hint(5);
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub const AUDIOSTREAM_INTERRUPT_HINT_MUTE: OH_AudioInterrupt_Hint = OH_AudioInterrupt_Hint(6);
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub const AUDIOSTREAM_INTERRUPT_HINT_UNMUTE: OH_AudioInterrupt_Hint = OH_AudioInterrupt_Hint(7);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioInterrupt_Hint(pub ::core::ffi::c_uint);
impl OH_AudioStream_SourceType {
pub const AUDIOSTREAM_SOURCE_TYPE_INVALID: OH_AudioStream_SourceType =
OH_AudioStream_SourceType(-1);
pub const AUDIOSTREAM_SOURCE_TYPE_MIC: OH_AudioStream_SourceType = OH_AudioStream_SourceType(0);
pub const AUDIOSTREAM_SOURCE_TYPE_VOICE_RECOGNITION: OH_AudioStream_SourceType =
OH_AudioStream_SourceType(1);
#[deprecated(
since = "12",
note = "Use instead: OH_AVScreenCapture in native interface"
)]
pub const AUDIOSTREAM_SOURCE_TYPE_PLAYBACK_CAPTURE: OH_AudioStream_SourceType =
OH_AudioStream_SourceType(2);
pub const AUDIOSTREAM_SOURCE_TYPE_VOICE_COMMUNICATION: OH_AudioStream_SourceType =
OH_AudioStream_SourceType(7);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const AUDIOSTREAM_SOURCE_TYPE_VOICE_MESSAGE: OH_AudioStream_SourceType =
OH_AudioStream_SourceType(10);
#[cfg(feature = "api-13")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
pub const AUDIOSTREAM_SOURCE_TYPE_CAMCORDER: OH_AudioStream_SourceType =
OH_AudioStream_SourceType(13);
#[cfg(feature = "api-14")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
pub const AUDIOSTREAM_SOURCE_TYPE_UNPROCESSED: OH_AudioStream_SourceType =
OH_AudioStream_SourceType(14);
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub const AUDIOSTREAM_SOURCE_TYPE_LIVE: OH_AudioStream_SourceType =
OH_AudioStream_SourceType(17);
}
#[repr(transparent)]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_SourceType(pub ::core::ffi::c_int);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
impl OH_AudioInterrupt_Mode {
pub const AUDIOSTREAM_INTERRUPT_MODE_SHARE: OH_AudioInterrupt_Mode = OH_AudioInterrupt_Mode(0);
pub const AUDIOSTREAM_INTERRUPT_MODE_INDEPENDENT: OH_AudioInterrupt_Mode =
OH_AudioInterrupt_Mode(1);
}
#[repr(transparent)]
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioInterrupt_Mode(pub ::core::ffi::c_uint);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
impl OH_AudioStream_AudioEffectMode {
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const EFFECT_NONE: OH_AudioStream_AudioEffectMode = OH_AudioStream_AudioEffectMode(0);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const EFFECT_DEFAULT: OH_AudioStream_AudioEffectMode = OH_AudioStream_AudioEffectMode(1);
}
#[repr(transparent)]
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_AudioEffectMode(pub ::core::ffi::c_uint);
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
impl OH_AudioStream_FastStatus {
pub const AUDIOSTREAM_FASTSTATUS_NORMAL: OH_AudioStream_FastStatus =
OH_AudioStream_FastStatus(0);
pub const AUDIOSTREAM_FASTSTATUS_FAST: OH_AudioStream_FastStatus = OH_AudioStream_FastStatus(1);
}
#[repr(transparent)]
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_FastStatus(pub ::core::ffi::c_uint);
#[repr(C)]
pub struct OH_AudioStreamBuilderStruct {
_unused: [u8; 0],
}
pub type OH_AudioStreamBuilder = OH_AudioStreamBuilderStruct;
#[repr(C)]
pub struct OH_AudioRendererStruct {
_unused: [u8; 0],
}
pub type OH_AudioRenderer = OH_AudioRendererStruct;
#[repr(C)]
pub struct OH_AudioCapturerStruct {
_unused: [u8; 0],
}
pub type OH_AudioCapturer = OH_AudioCapturerStruct;
#[deprecated(
since = "20",
note = "Use instead: Use the callback type: OH_AudioRenderer_OnWriteDataCallback, OH_AudioRenderer_OutputDeviceChangeCallback, OH_AudioRenderer_OnInterruptEvent, OH_AudioRenderer_OnErrorCallback separately"
)]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct OH_AudioRenderer_Callbacks_Struct {
pub OH_AudioRenderer_OnWriteData: ::core::option::Option<
unsafe extern "C" fn(
renderer: *mut OH_AudioRenderer,
userData: *mut ::core::ffi::c_void,
buffer: *mut ::core::ffi::c_void,
length: i32,
) -> i32,
>,
pub OH_AudioRenderer_OnStreamEvent: ::core::option::Option<
unsafe extern "C" fn(
renderer: *mut OH_AudioRenderer,
userData: *mut ::core::ffi::c_void,
event: OH_AudioStream_Event,
) -> i32,
>,
pub OH_AudioRenderer_OnInterruptEvent: ::core::option::Option<
unsafe extern "C" fn(
renderer: *mut OH_AudioRenderer,
userData: *mut ::core::ffi::c_void,
type_: OH_AudioInterrupt_ForceType,
hint: OH_AudioInterrupt_Hint,
) -> i32,
>,
pub OH_AudioRenderer_OnError: ::core::option::Option<
unsafe extern "C" fn(
renderer: *mut OH_AudioRenderer,
userData: *mut ::core::ffi::c_void,
error: OH_AudioStream_Result,
) -> i32,
>,
}
#[deprecated(
since = "20",
note = "Use instead: Use the callback type: OH_AudioRenderer_OnWriteDataCallback, OH_AudioRenderer_OutputDeviceChangeCallback, OH_AudioRenderer_OnInterruptEvent, OH_AudioRenderer_OnErrorCallback separately"
)]
pub type OH_AudioRenderer_Callbacks = OH_AudioRenderer_Callbacks_Struct;
#[deprecated(
since = "20",
note = "Use instead: Use the callback type: OH_AudioCapturer_OnReadDataCallback, OH_AudioCapturer_OnDeviceChangeCallback, OH_AudioCapturer_OnInterruptCallback and OH_AudioCapturer_OnErrorCallback separately"
)]
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct OH_AudioCapturer_Callbacks_Struct {
pub OH_AudioCapturer_OnReadData: ::core::option::Option<
unsafe extern "C" fn(
capturer: *mut OH_AudioCapturer,
userData: *mut ::core::ffi::c_void,
buffer: *mut ::core::ffi::c_void,
length: i32,
) -> i32,
>,
pub OH_AudioCapturer_OnStreamEvent: ::core::option::Option<
unsafe extern "C" fn(
capturer: *mut OH_AudioCapturer,
userData: *mut ::core::ffi::c_void,
event: OH_AudioStream_Event,
) -> i32,
>,
pub OH_AudioCapturer_OnInterruptEvent: ::core::option::Option<
unsafe extern "C" fn(
capturer: *mut OH_AudioCapturer,
userData: *mut ::core::ffi::c_void,
type_: OH_AudioInterrupt_ForceType,
hint: OH_AudioInterrupt_Hint,
) -> i32,
>,
pub OH_AudioCapturer_OnError: ::core::option::Option<
unsafe extern "C" fn(
capturer: *mut OH_AudioCapturer,
userData: *mut ::core::ffi::c_void,
error: OH_AudioStream_Result,
) -> i32,
>,
}
#[deprecated(
since = "20",
note = "Use instead: Use the callback type: OH_AudioCapturer_OnReadDataCallback, OH_AudioCapturer_OnDeviceChangeCallback, OH_AudioCapturer_OnInterruptCallback and OH_AudioCapturer_OnErrorCallback separately"
)]
pub type OH_AudioCapturer_Callbacks = OH_AudioCapturer_Callbacks_Struct;
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
impl OH_AudioStream_DeviceChangeReason {
pub const REASON_UNKNOWN: OH_AudioStream_DeviceChangeReason =
OH_AudioStream_DeviceChangeReason(0);
pub const REASON_NEW_DEVICE_AVAILABLE: OH_AudioStream_DeviceChangeReason =
OH_AudioStream_DeviceChangeReason(1);
pub const REASON_OLD_DEVICE_UNAVAILABLE: OH_AudioStream_DeviceChangeReason =
OH_AudioStream_DeviceChangeReason(2);
pub const REASON_OVERRODE: OH_AudioStream_DeviceChangeReason =
OH_AudioStream_DeviceChangeReason(3);
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub const REASON_SESSION_ACTIVATED: OH_AudioStream_DeviceChangeReason =
OH_AudioStream_DeviceChangeReason(4);
#[cfg(feature = "api-20")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-20")))]
pub const REASON_STREAM_PRIORITY_CHANGED: OH_AudioStream_DeviceChangeReason =
OH_AudioStream_DeviceChangeReason(5);
}
#[repr(transparent)]
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_DeviceChangeReason(pub ::core::ffi::c_uint);
#[cfg(feature = "api-11")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-11")))]
pub type OH_AudioRenderer_OutputDeviceChangeCallback = ::core::option::Option<
unsafe extern "C" fn(
renderer: *mut OH_AudioRenderer,
userData: *mut ::core::ffi::c_void,
reason: OH_AudioStream_DeviceChangeReason,
),
>;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub type OH_AudioRenderer_OnMarkReachedCallback = ::core::option::Option<
unsafe extern "C" fn(
renderer: *mut OH_AudioRenderer,
samplePos: u32,
userData: *mut ::core::ffi::c_void,
),
>;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub type OH_AudioRenderer_WriteDataWithMetadataCallback = ::core::option::Option<
unsafe extern "C" fn(
renderer: *mut OH_AudioRenderer,
userData: *mut ::core::ffi::c_void,
audioData: *mut ::core::ffi::c_void,
audioDataSize: i32,
metadata: *mut ::core::ffi::c_void,
metadataSize: i32,
) -> i32,
>;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
impl OH_AudioStream_PrivacyType {
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const AUDIO_STREAM_PRIVACY_TYPE_PUBLIC: OH_AudioStream_PrivacyType =
OH_AudioStream_PrivacyType(0);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub const AUDIO_STREAM_PRIVACY_TYPE_PRIVATE: OH_AudioStream_PrivacyType =
OH_AudioStream_PrivacyType(1);
#[cfg(feature = "api-21")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-21")))]
pub const AUDIO_STREAM_PRIVACY_TYPE_SHARED: OH_AudioStream_PrivacyType =
OH_AudioStream_PrivacyType(2);
}
#[repr(transparent)]
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_PrivacyType(pub ::core::ffi::c_uint);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
impl OH_AudioData_Callback_Result {
pub const AUDIO_DATA_CALLBACK_RESULT_INVALID: OH_AudioData_Callback_Result =
OH_AudioData_Callback_Result(-1);
pub const AUDIO_DATA_CALLBACK_RESULT_VALID: OH_AudioData_Callback_Result =
OH_AudioData_Callback_Result(0);
}
#[repr(transparent)]
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioData_Callback_Result(pub ::core::ffi::c_int);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub type OH_AudioRenderer_OnWriteDataCallback = ::core::option::Option<
unsafe extern "C" fn(
renderer: *mut OH_AudioRenderer,
userData: *mut ::core::ffi::c_void,
audioData: *mut ::core::ffi::c_void,
audioDataSize: i32,
) -> OH_AudioData_Callback_Result,
>;
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
impl OH_AudioStream_VolumeMode {
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
pub const AUDIOSTREAM_VOLUMEMODE_SYSTEM_GLOBAL: OH_AudioStream_VolumeMode =
OH_AudioStream_VolumeMode(0);
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
pub const AUDIOSTREAM_VOLUMEMODE_APP_INDIVIDUAL: OH_AudioStream_VolumeMode =
OH_AudioStream_VolumeMode(1);
}
#[repr(transparent)]
#[cfg(feature = "api-19")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-19")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_VolumeMode(pub ::core::ffi::c_uint);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
impl OH_AudioStream_LatencyType {
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_LATENCY_TYPE_ALL: OH_AudioStream_LatencyType =
OH_AudioStream_LatencyType(0);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_LATENCY_TYPE_SOFTWARE: OH_AudioStream_LatencyType =
OH_AudioStream_LatencyType(1);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_LATENCY_TYPE_HARDWARE: OH_AudioStream_LatencyType =
OH_AudioStream_LatencyType(2);
}
#[repr(transparent)]
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_LatencyType(pub ::core::ffi::c_uint);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
impl OH_AudioStream_PlaybackCaptureMode {
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_PLAYBACKCAPTURE_MODE_DEFAULT: OH_AudioStream_PlaybackCaptureMode =
OH_AudioStream_PlaybackCaptureMode(0);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_PLAYBACKCAPTURE_MODE_MEDIA: OH_AudioStream_PlaybackCaptureMode =
OH_AudioStream_PlaybackCaptureMode(1);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_PLAYBACKCAPTURE_MODE_EXCLUDING_SELF: OH_AudioStream_PlaybackCaptureMode =
OH_AudioStream_PlaybackCaptureMode(32768);
}
#[repr(transparent)]
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_PlaybackCaptureMode(pub ::core::ffi::c_uint);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
impl OH_AudioStream_PlaybackCaptureStartState {
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_PLAYBACKCAPTURE_START_STATE_SUCCESS:
OH_AudioStream_PlaybackCaptureStartState = OH_AudioStream_PlaybackCaptureStartState(0);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_PLAYBACKCAPTURE_START_STATE_FAILED:
OH_AudioStream_PlaybackCaptureStartState = OH_AudioStream_PlaybackCaptureStartState(1);
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
pub const AUDIOSTREAM_PLAYBACKCAPTURE_START_STATE_NOT_AUTHORIZED:
OH_AudioStream_PlaybackCaptureStartState = OH_AudioStream_PlaybackCaptureStartState(2);
}
#[repr(transparent)]
#[cfg(feature = "api-23")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-23")))]
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
pub struct OH_AudioStream_PlaybackCaptureStartState(pub ::core::ffi::c_uint);