native_audiostream_base.h
概述
声明OHAudio基础的数据结构。
库:libohaudio.so
引用文件:<ohaudio/native_audiostream_base.h>
系统能力: SystemCapability.Multimedia.Audio.Core
起始版本: 10
相关模块:OHAudio
汇总
结构体
| 名称 | 描述 |
|---|---|
| struct OH_AudioRenderer_Callbacks_Struct | 声明输出音频流的回调函数指针。 |
| struct OH_AudioCapturer_Callbacks_Struct | 声明输入音频流的回调函数指针。 |
类型定义
| 名称 | 描述 |
|---|---|
| typedef struct OH_AudioStreamBuilderStruct OH_AudioStreamBuilder | 声明音频流的构造器。 |
| typedef struct OH_AudioRendererStruct OH_AudioRenderer | 声明输出音频流。 |
| typedef struct OH_AudioCapturerStruct OH_AudioCapturer | 声明输入音频流。 |
| typedef struct OH_AudioRenderer_Callbacks_Struct OH_AudioRenderer_Callbacks | 声明输出音频流的回调函数指针。 |
| typedef struct OH_AudioCapturer_Callbacks_Struct OH_AudioCapturer_Callbacks | 声明输入音频流的回调函数指针。 |
| typedef void (*OH_AudioRenderer_OutputDeviceChangeCallback)(OH_AudioRenderer *renderer, void *userData, OH_AudioStream_DeviceChangeReason reason) | 输出音频流设备变更的回调函数。 |
| typedef void (*OH_AudioRenderer_OnMarkReachedCallback)(OH_AudioRenderer *renderer, uint32_t samplePos, void *userData) | 到达标记位置时回调。 |
| typedef int32_t (*OH_AudioRenderer_WriteDataWithMetadataCallback)(OH_AudioRenderer *renderer, void *userData, void *audioData, int32_t audioDataSize, void *metadata, int32_t metadataSize) | 该函数指针将指向用于同时写入音频数据和元数据的回调函数。 |
| typedef OH_AudioData_Callback_Result(* OH_AudioRenderer_OnWriteDataCallback)(OH_AudioRenderer *renderer, void *userData, void *audioData, int32_t audioDataSize) | 该函数指针将指向用于写入音频数据的回调函数。 |
枚举
| 名称 | 描述 |
|---|---|
| OH_AudioStream_Result { AUDIOSTREAM_SUCCESS = 0, AUDIOSTREAM_ERROR_INVALID_PARAM = 1, AUDIOSTREAM_ERROR_ILLEGAL_STATE = 2, AUDIOSTREAM_ERROR_SYSTEM = 3 } |
音频错误码。 |
| OH_AudioStream_Type { AUDIOSTREAM_TYPE_RENDERER = 1, AUDIOSTREAM_TYPE_CAPTURER = 2 } |
音频流类型。 |
| OH_AudioStream_SampleFormat { AUDIOSTREAM_SAMPLE_U8 = 0, AUDIOSTREAM_SAMPLE_S16LE = 1, AUDIOSTREAM_SAMPLE_S24LE = 2, AUDIOSTREAM_SAMPLE_S32LE = 3, AUDIOSTREAM_SAMPLE_F32LE = 4 } |
定义音频流采样格式。 |
| OH_AudioStream_EncodingType { AUDIOSTREAM_ENCODING_TYPE_RAW = 0, AUDIOSTREAM_ENCODING_TYPE_AUDIOVIVID = 1 } |
定义音频流编码类型。 |
| OH_AudioStream_Usage { AUDIOSTREAM_USAGE_UNKNOWN = 0, AUDIOSTREAM_USAGE_MUSIC = 1, AUDIOSTREAM_USAGE_VOICE_COMMUNICATION = 2, AUDIOSTREAM_USAGE_VOICE_ASSISTANT = 3, AUDIOSTREAM_USAGE_ALARM = 4, AUDIOSTREAM_USAGE_VOICE_MESSAGE = 5, AUDIOSTREAM_USAGE_RINGTONE = 6, AUDIOSTREAM_USAGE_NOTIFICATION = 7, AUDIOSTREAM_USAGE_ACCESSIBILITY = 8, AUDIOSTREAM_USAGE_MOVIE = 10, AUDIOSTREAM_USAGE_GAME = 11, AUDIOSTREAM_USAGE_AUDIOBOOK = 12, AUDIOSTREAM_USAGE_NAVIGATION = 13, AUDIOSTREAM_USAGE_VIDEO_COMMUNICATION = 17 } |
定义音频流使用场景。 |
| OH_AudioStream_LatencyMode { AUDIOSTREAM_LATENCY_MODE_NORMAL = 0, AUDIOSTREAM_LATENCY_MODE_FAST = 1 } |
定义音频时延模式。 |
| OH_AudioStream_VolumeMode { AUDIOSTREAM_VOLUMEMODE_SYSTEM_GLOBAL = 0, AUDIOSTREAM_VOLUMEMODE_APP_INDIVIDUAL = 1 } |
定义音频流音量模式。 |
| OH_AudioStream_State { AUDIOSTREAM_STATE_INVALID = -1, AUDIOSTREAM_STATE_NEW = 0, AUDIOSTREAM_STATE_PREPARED = 1, AUDIOSTREAM_STATE_RUNNING = 2, AUDIOSTREAM_STATE_STOPPED = 3, AUDIOSTREAM_STATE_RELEASED = 4, AUDIOSTREAM_STATE_PAUSED = 5 } |
定义音频流的状态。 |
| OH_AudioStream_SourceType { AUDIOSTREAM_SOURCE_TYPE_INVALID = -1, AUDIOSTREAM_SOURCE_TYPE_MIC = 0, AUDIOSTREAM_SOURCE_TYPE_VOICE_RECOGNITION = 1, AUDIOSTREAM_SOURCE_TYPE_PLAYBACK_CAPTURE = 2, AUDIOSTREAM_SOURCE_TYPE_VOICE_COMMUNICATION = 7, AUDIOSTREAM_SOURCE_TYPE_CAMCORDER = 13 } |
定义音频流使用场景。 |
| OH_AudioStream_Event { AUDIOSTREAM_EVENT_ROUTING_CHANGED = 0 } |
定义音频事件。 |
| OH_AudioInterrupt_ForceType { AUDIOSTREAM_INTERRUPT_FORCE = 0, AUDIOSTREAM_INTERRUPT_SHARE = 1 } |
定义音频中断类型。 |
| OH_AudioInterrupt_Hint { AUDIOSTREAM_INTERRUPT_HINT_NONE = 0, AUDIOSTREAM_INTERRUPT_HINT_RESUME = 1, AUDIOSTREAM_INTERRUPT_HINT_PAUSE = 2, AUDIOSTREAM_INTERRUPT_HINT_STOP = 3, AUDIOSTREAM_INTERRUPT_HINT_DUCK = 4, AUDIOSTREAM_INTERRUPT_HINT_UNDUCK = 5 } |
定义音频中断提示类型。 |
| OH_AudioInterrupt_Mode { AUDIOSTREAM_INTERRUPT_MODE_SHARE = 0, AUDIOSTREAM_INTERRUPT_MODE_INDEPENDENT = 1 } |
定义音频中断模式。 |
| OH_AudioStream_AudioEffectMode { EFFECT_NONE = 0, EFFECT_DEFAULT = 1 } |
定义音效模式。 |
| OH_AudioStream_DeviceChangeReason { REASON_UNKNOWN = 0, REASON_NEW_DEVICE_AVAILABLE = 1, REASON_OLD_DEVICE_UNAVAILABLE = 2, REASON_OVERRODE = 3 } |
流设备变更原因。 |
| OH_AudioStream_PrivacyType { AUDIO_STREAM_PRIVACY_TYPE_PUBLIC = 0, AUDIO_STREAM_PRIVACY_TYPE_PRIVATE = 1 } |
用于标识对应播放音频流是否支持被其他应用录制。 |
| OH_AudioData_Callback_Result { AUDIO_DATA_CALLBACK_RESULT_INVALID = -1, AUDIO_DATA_CALLBACK_RESULT_VALID = 0 } |
定义音频数据回调结果。 |