_audio.md 30.1 KB
Newer Older
D
hdi api  
duangavin123 已提交
1 2 3
# Audio


D
duangavin123 已提交
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
## **概述**

Audio模块接口定义。

音频接口涉及自定义类型、驱动加载接口、驱动适配器接口、音频播放(Render)接口、音频录音(Capture)接口等。

**Since**:

1.0

**Version**:

1.0


D
hdi api  
duangavin123 已提交
19 20 21 22 23
## **汇总**


### 文件

D
duangavin123 已提交
24
  | 名称 | 描述 | 
D
hdi api  
duangavin123 已提交
25 26 27 28 29 30 31 32 33 34 35 36 37 38
| -------- | -------- |
| [audio_adapter.h](audio__adapter_8h.md) | Audio适配器的接口定义文件 | 
| [audio_attribute.h](audio__attribute_8h.md) | Audio属性的接口定义文件 | 
| [audio_capture.h](audio__capture_8h.md) | Audio录音的接口定义文件 | 
| [audio_control.h](audio__control_8h.md) | Audio控制的接口定义文件 | 
| [audio_manager.h](audio__manager_8h.md) | Audio适配器管理及加载的接口定义文件 | 
| [audio_render.h](audio__render_8h.md) | Audio播放的接口定义文件 | 
| [audio_scene.h](audio__scene_8h.md) | Audio场景的接口定义文件 | 
| [audio_types.h](audio__types_8h.md) | Audio模块接口定义中使用的自定义数据类型 | 
| [audio_volume.h](audio__volume_8h.md) | Audio音量的接口定义文件 | 


### 类

D
duangavin123 已提交
39
  | 名称 | 描述 | 
D
hdi api  
duangavin123 已提交
40
| -------- | -------- |
D
duangavin123 已提交
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
| [AudioAdapter](_audio_adapter.md) | AudioAdapter音频适配器接口 | 
| [AudioAttribute](_audio_attribute.md) | AudioAttribute音频属性接口 | 
| [AudioCapture](_audio_capture.md) | AudioCapture音频录音接口 | 
| [AudioControl](_audio_control.md) | AudioControl音频控制接口 | 
| [AudioManager](_audio_manager.md) | AudioManager音频适配器管理接口 | 
| [AudioRender](_audio_render.md) | AudioRender音频播放接口 | 
| [AudioScene](_audio_scene.md) | AudioScene音频场景接口 | 
| [AudioPort](_audio_port.md) | 音频端口 | 
| [AudioAdapterDescriptor](_audio_adapter_descriptor.md) | 音频适配器描述符 | 
| [AudioDeviceDescriptor](_audio_device_descriptor.md) | 音频设备描述符 | 
| [AudioSceneDescriptor](_audio_scene_descriptor.md) | 音频场景描述符 | 
| [AudioSceneDescriptor::SceneDesc](union_audio_scene_descriptor_1_1_scene_desc.md) | 音频场景描述 | 
| [AudioSampleAttributes](_audio_sample_attributes.md) | 音频采样属性 | 
| [AudioTimeStamp](_audio_time_stamp.md) | 音频时间戳 | 
| [AudioSubPortCapability](_audio_sub_port_capability.md) | 音频子端口的支持能力 | 
| [AudioPortCapability](_audio_port_capability.md) | 音频端口的支持能力 | 
| [AudioMmapBufferDescripter](_audio_mmap_buffer_descripter.md) | mmap缓冲区描述符 | 
| [AudioDevExtInfo](_audio_dev_ext_info.md) | 音频设备拓展信息 | 
| [AudioMixExtInfo](_audio_mix_ext_info.md) | 音轨拓展信息 | 
| [AudioSessionExtInfo](_audio_session_ext_info.md) | 会话拓展信息 | 
| [AudioRouteNode](_audio_route_node.md) | 音频路由节点 | 
| [AudioRoute](_audio_route.md) | 音频路由信息 | 
| [AudioVolume](_audio_volume.md) | AudioVolume音频音量接口 | 
D
hdi api  
duangavin123 已提交
64 65 66 67


### 类型定义

D
duangavin123 已提交
68
  | 名称 | 描述 | 
D
hdi api  
duangavin123 已提交
69 70
| -------- | -------- |
| AudioHandle | 音频句柄 | 
D
duangavin123 已提交
71
| ([RenderCallback](#rendercallback)) (enum AudioCallbackType, void \*reserved, void \*cookie) | 回调函数指针 | 
D
hdi api  
duangavin123 已提交
72 73 74 75


### 枚举

D
duangavin123 已提交
76
  | 名称 | 描述 | 
D
hdi api  
duangavin123 已提交
77
| -------- | -------- |
D
duangavin123 已提交
78 79 80 81 82 83 84 85 86 87 88 89 90 91
| [AudioPortDirection](#audioportdirection) { PORT_OUT = 0x1u, PORT_IN = 0x2u, PORT_OUT_IN = 0x3u } | 音频端口的类型 | 
| [AudioPortPin](#audioportpin) { PIN_NONE = 0x0u, PIN_OUT_SPEAKER = 0x1u, PIN_OUT_HEADSET = 0x2u, PIN_OUT_LINEOUT = 0x4u,   PIN_OUT_HDMI = 0x8u, PIN_OUT_USB = 0x10u, PIN_OUT_USB_EXT = 0x20u, PIN_IN_MIC = 0x8000001u,   PIN_IN_HS_MIC = 0x8000002u, PIN_IN_LINEIN = 0x8000004u, PIN_IN_USB_EXT = 0x8000008u } | 音频适配器端口的PIN脚 | 
| [AudioCategory](#audiocategory) { AUDIO_IN_MEDIA = 0, AUDIO_IN_COMMUNICATION, AUDIO_IN_RINGTONE, AUDIO_IN_CALL } | 音频类型(category) | 
| [AudioFormat](#audioformat){ AUDIO_FORMAT_PCM_8_BIT = 0x1u, AUDIO_FORMAT_PCM_16_BIT = 0x2u, AUDIO_FORMAT_PCM_24_BIT = 0x3u, AUDIO_FORMAT_PCM_32_BIT = 0x4u,   AUDIO_FORMAT_AAC_MAIN = 0x1000001u, AUDIO_FORMAT_AAC_LC = 0x1000002u, AUDIO_FORMAT_AAC_LD = 0x1000003u, AUDIO_FORMAT_AAC_ELD = 0x1000004u,   AUDIO_FORMAT_AAC_HE_V1 = 0x1000005u, AUDIO_FORMAT_AAC_HE_V2 = 0x1000006u, AUDIO_FORMAT_G711A = 0x2000001u, AUDIO_FORMAT_G711U = 0x2000002u,   AUDIO_FORMAT_G726 = 0x2000003u } | 音频格式 | 
| [AudioChannelMask](#audiochannelmask){ AUDIO_CHANNEL_FRONT_LEFT = 0x1, AUDIO_CHANNEL_FRONT_RIGHT = 0x2, AUDIO_CHANNEL_MONO = 0x1u, AUDIO_CHANNEL_STEREO = 0x3u } | 音频通道掩码(mask) | 
| [AudioSampleRatesMask](#audiosampleratesmask){ AUDIO_SAMPLE_RATE_MASK_8000 = 0x1u, AUDIO_SAMPLE_RATE_MASK_12000 = 0x2u, AUDIO_SAMPLE_RATE_MASK_11025 = 0x4u, AUDIO_SAMPLE_RATE_MASK_16000 = 0x8u,   AUDIO_SAMPLE_RATE_MASK_22050 = 0x10u, AUDIO_SAMPLE_RATE_MASK_24000 = 0x20u, AUDIO_SAMPLE_RATE_MASK_32000 = 0x40u, AUDIO_SAMPLE_RATE_MASK_44100 = 0x80u,   AUDIO_SAMPLE_RATE_MASK_48000 = 0x100u, AUDIO_SAMPLE_RATE_MASK_64000 = 0x200u, AUDIO_SAMPLE_RATE_MASK_96000 = 0x400u, AUDIO_SAMPLE_RATE_MASK_INVALID = 0xFFFFFFFFu } | 音频采样频率MASK | 
| [AudioPortPassthroughMode](#audioportpassthroughmode){ PORT_PASSTHROUGH_LPCM = 0x1, PORT_PASSTHROUGH_RAW = 0x2, PORT_PASSTHROUGH_HBR2LBR = 0x4, PORT_PASSTHROUGH_AUTO = 0x8 } | 音频端口的数据透传模式 | 
| [AudioSampleFormat](#audiosampleformat){ AUDIO_SAMPLE_FORMAT_S8, AUDIO_SAMPLE_FORMAT_S8P, AUDIO_SAMPLE_FORMAT_U8, AUDIO_SAMPLE_FORMAT_U8P,   AUDIO_SAMPLE_FORMAT_S16, AUDIO_SAMPLE_FORMAT_S16P, AUDIO_SAMPLE_FORMAT_U16, AUDIO_SAMPLE_FORMAT_U16P,   AUDIO_SAMPLE_FORMAT_S24, AUDIO_SAMPLE_FORMAT_S24P, AUDIO_SAMPLE_FORMAT_U24, AUDIO_SAMPLE_FORMAT_U24P,   AUDIO_SAMPLE_FORMAT_S32, AUDIO_SAMPLE_FORMAT_S32P, AUDIO_SAMPLE_FORMAT_U32, AUDIO_SAMPLE_FORMAT_U32P,   AUDIO_SAMPLE_FORMAT_S64, AUDIO_SAMPLE_FORMAT_S64P, AUDIO_SAMPLE_FORMAT_U64, AUDIO_SAMPLE_FORMAT_U64P,   AUDIO_SAMPLE_FORMAT_F32, AUDIO_SAMPLE_FORMAT_F32P, AUDIO_SAMPLE_FORMAT_F64, AUDIO_SAMPLE_FORMAT_F64P } | 原始音频样本格式 | 
| [AudioChannelMode](#audiochannelmode){  AUDIO_CHANNEL_NORMAL = 0, AUDIO_CHANNEL_BOTH_LEFT, AUDIO_CHANNEL_BOTH_RIGHT, AUDIO_CHANNEL_EXCHANGE,   AUDIO_CHANNEL_MIX, AUDIO_CHANNEL_LEFT_MUTE, AUDIO_CHANNEL_RIGHT_MUTE, AUDIO_CHANNEL_BOTH_MUTE } | 音频播放的通道模式 | 
| [AudioDrainNotifyType](#audiodrainnotifytype){ AUDIO_DRAIN_NORMAL_MODE, AUDIO_DRAIN_EARLY_MODE } | DrainBuffer函数结束类型 | 
| [AudioCallbackType](#audiocallbacktype){ AUDIO_NONBLOCK_WRITE_COMPELETED, AUDIO_DRAIN_COMPELETED, AUDIO_FLUSH_COMPLETED, AUDIO_RENDER_FULL,   AUDIO_ERROR_OCCUR } | 回调函数通知事件类型 | 
| [AudioPortRole](#audioportrole){ AUDIO_PORT_UNASSIGNED_ROLE = 0, AUDIO_PORT_SOURCE_ROLE = 1, AUDIO_PORT_SINK_ROLE = 2 } | 音频端口角色 | 
| [AudioPortType](#audioporttype){ AUDIO_PORT_UNASSIGNED_TYPE = 0, AUDIO_PORT_DEVICE_TYPE = 1, AUDIO_PORT_MIX_TYPE = 2, AUDIO_PORT_SESSION_TYPE = 3 } | 音频端口类型. | 
| [AudioSessionType](#audiosessiontype){ AUDIO_OUTPUT_STAGE_SESSION = 0, AUDIO_OUTPUT_MIX_SESSION, AUDIO_ALLOCATE_SESSION, AUDIO_INVALID_SESSION } | 端口会话类型 | 
D
hdi api  
duangavin123 已提交
92 93 94 95


### 函数

D
duangavin123 已提交
96
  | 名称 | 描述 | 
D
hdi api  
duangavin123 已提交
97
| -------- | -------- |
D
duangavin123 已提交
98
| [GetAudioManagerFuncs](#getaudiomanagerfuncs)(void) | 获取音频适配器管理接口的操作函数列表,详情参考[AudioManager](_audio_manager.md)。 | 
D
hdi api  
duangavin123 已提交
99 100 101 102


### 变量

D
duangavin123 已提交
103
  | 变量 名称 | 描述 | 
D
hdi api  
duangavin123 已提交
104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180
| -------- | -------- |
| [AudioPort::dir](#dir) | 音频端口的类型。 | 
| [AudioPort::portId](#portid-14) | 音频端口的ID。 | 
| [AudioPort::portName](#portname) | 音频端口的名称。 | 
| [AudioAdapterDescriptor::adapterName](#adaptername) | 音频适配器的名称。 | 
| [AudioAdapterDescriptor::portNum](#portnum) | 一个音频适配器支持的端口数目。 | 
| [AudioAdapterDescriptor::ports](#ports) | 一个音频适配器支持的端口列表。 | 
| [AudioDeviceDescriptor::portId](#portid-24) | 音频端口ID。 | 
| [AudioDeviceDescriptor::pins](#pins) | 音频端口上的PIN脚(输出、输入)。 | 
| [AudioDeviceDescriptor::desc](#desc-15) | 以字符串命名的音频设备。 | 
| [AudioSceneDescriptor::SceneDesc::id](#id) | 音频场景的ID。 | 
| [AudioSceneDescriptor::SceneDesc::desc](#desc-35) | 以字符串命名的音频场景。 | 
| [AudioSceneDescriptor::scene](#scene) | 音频场景的名称。 | 
| [AudioSceneDescriptor::desc](#desc-25) | 音频设备描述符。 | 
| [AudioSampleAttributes::type](#type-13) | 音频类型。 | 
| [AudioSampleAttributes::interleaved](#interleaved) | 音频数据交织的标记。 | 
| [AudioSampleAttributes::format](#format) | 音频数据格式。 | 
| [AudioSampleAttributes::sampleRate](#samplerate) | 音频采样频率。 | 
| [AudioSampleAttributes::channelCount](#channelcount-12) | 音频通道数目,如单通道(mono)为1、立体声(stereo)为2。 | 
| [AudioSampleAttributes::period](#period) | 音频采样周期。 | 
| [AudioSampleAttributes::frameSize](#framesize) | 音频数据的帧大小。 | 
| [AudioSampleAttributes::isBigEndian](#isbigendian) | 音频数据的大端标志。 | 
| [AudioSampleAttributes::isSignedData](#issigneddata) | 音频数据的有符号或无符号标志。 | 
| [AudioSampleAttributes::startThreshold](#startthreshold) | 音频渲染开始阈值。 | 
| [AudioSampleAttributes::stopThreshold](#stopthreshold) | 音频渲染停止阈值。 | 
| [AudioSampleAttributes::silenceThreshold](#silencethreshold) | 音频捕获缓冲区阈值。 | 
| [AudioSampleAttributes::streamId](#streamid-12) | 渲染或捕获的音频标识符。 | 
| [AudioTimeStamp::tvSec](#tvsec) | tvSec时间,单位:秒。 | 
| [AudioTimeStamp::tvNSec](#tvnsec) | tvNSec时间,单位:纳秒。 | 
| [AudioSubPortCapability::portId](#portid-34) | 子端口ID。 | 
| [AudioSubPortCapability::desc](#desc-45) | 以字符串命名的子端口。 | 
| [AudioSubPortCapability::mask](#mask) | 数据透传模式。 | 
| [AudioPortCapability::deviceType](#devicetype) | 设备输出、输入类型。 | 
| [AudioPortCapability::deviceId](#deviceid) | 绑定(bind)设备ID,唯一的设备识别符。 | 
| [AudioPortCapability::hardwareMode](#hardwaremode) | 是否支持设备绑定处理。 | 
| [AudioPortCapability::formatNum](#formatnum) | 支持的音频格式数目。 | 
| [AudioPortCapability::formats](#formats) | 支持的音频格式。 | 
| [AudioPortCapability::sampleRateMasks](#sampleratemasks) | 支持的音频采样频率(8k、16k、32k、48k)。 | 
| [AudioPortCapability::channelMasks](#channelmasks) | 设备的声道布局掩码(mask)。 | 
| [AudioPortCapability::channelCount](#channelcount-22) | 支持的最大声道总数。 | 
| [AudioPortCapability::subPortsNum](#subportsnum) | 支持的子端口数目(仅用于输出设备)。 | 
| [AudioPortCapability::subPorts](#subports) | 支持的子端口列表。 | 
| [AudioPortCapability::supportSampleFormatNum](#supportsampleformatnum) | 支持的音频样本格式数量。 | 
| [AudioPortCapability::supportSampleFormats](#supportsampleformats) | 支持的音频样本格式。 | 
| [AudioMmapBufferDescripter::memoryAddress](#memoryaddress) | 指向mmap缓冲区的指针。 | 
| [AudioMmapBufferDescripter::memoryFd](#memoryfd) | mmap缓冲区的文件描述符。 | 
| [AudioMmapBufferDescripter::totalBufferFrames](#totalbufferframes) | 缓冲区总大小,单位:帧。 | 
| [AudioMmapBufferDescripter::transferFrameSize](#transferframesize) | 传输大小,单位:帧。 | 
| [AudioMmapBufferDescripter::isShareable](#isshareable) | mmap缓冲区是否可以在进程间共享。 | 
| [AudioDevExtInfo::moduleId](#moduleid-12) | 音频流绑定的模块ID。 | 
| [AudioDevExtInfo::type](#type-23) | 音频端口上的PIN脚(输出、输入)。 | 
| [AudioDevExtInfo::desc](#desc-55) | 地址描述。 | 
| [AudioMixExtInfo::moduleId](#moduleid-22) | 流所属模块标识符。 | 
| [AudioMixExtInfo::streamId](#streamid-22) | 由调用者传递的Render或Capture标识符。 | 
| [AudioSessionExtInfo::sessionType](#sessiontype) | 音频会话类型。 | 
| [AudioRouteNode::portId](#portid-44) | 音频端口ID。 | 
| [AudioRouteNode::role](#role) | 指定端口角色为sink或source。 | 
| [AudioRouteNode::type](#type-33) | 指定端口类型。 | 
| [AudioRouteNode::device](#device) | 设备特定信息。 | 
| [AudioRouteNode::mix](#mix) | 音轨特定信息。 | 
| [AudioRouteNode::session](#session) | 会话特定信息。 | 
| [AudioRoute::sourcesNum](#sourcesnum) | 发送端节点数量。 | 
| [AudioRoute::sources](#sources) | 发送端列表。 | 
| [AudioRoute::sinksNum](#sinksnum) | 接受端节点数量。 | 
| [AudioRoute::sinks](#sinks) | 接受端列表。 | 


## **类型定义说明**


### RenderCallback

  
```
typedef int32_t(* RenderCallback) (enum AudioCallbackType, void *reserved, void *cookie)
```

D
duangavin123 已提交
181
**描述:**
D
hdi api  
duangavin123 已提交
182

D
hdi api  
duangavin123 已提交
183
回调函数指针。
D
hdi api  
duangavin123 已提交
184

D
duangavin123 已提交
185
**参数:**
D
hdi api  
duangavin123 已提交
186 187 188 189 190 191 192

  | 名称 | 描述 | 
| -------- | -------- |
| AudioCallbackType | 回调函数响应类型 | 
| reserved | 保留字段 | 
| cookie | 用于传递数据 | 

D
duangavin123 已提交
193
**返回:**
D
hdi api  
duangavin123 已提交
194

D
duangavin123 已提交
195
成功返回值0,失败返回负值。
D
hdi api  
duangavin123 已提交
196

D
duangavin123 已提交
197
**参见:**
D
hdi api  
duangavin123 已提交
198

D
duangavin123 已提交
199
[RegCallback](_audio_render.md#regcallback)
D
hdi api  
duangavin123 已提交
200 201 202 203 204 205 206 207 208 209 210 211


## **枚举类型说明**


### AudioCallbackType

  
```
enum AudioCallbackType
```

D
duangavin123 已提交
212
**描述:**
D
hdi api  
duangavin123 已提交
213

D
hdi api  
duangavin123 已提交
214
回调函数通知事件类型。
D
hdi api  
duangavin123 已提交
215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_NONBLOCK_WRITE_COMPELETED | 非阻塞式写完成 | 
| AUDIO_DRAIN_COMPELETED | DrainBuffer完成 | 
| AUDIO_FLUSH_COMPLETED | Flush完成 | 
| AUDIO_RENDER_FULL | Render缓冲区已满 | 
| AUDIO_ERROR_OCCUR | 发生了错误 | 


### AudioCategory

  
```
enum AudioCategory
```

D
duangavin123 已提交
232
**描述:**
D
hdi api  
duangavin123 已提交
233

D
hdi api  
duangavin123 已提交
234
音频类型(category)。
D
hdi api  
duangavin123 已提交
235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_IN_MEDIA | 媒体 | 
| AUDIO_IN_COMMUNICATION | 通信 | 
| AUDIO_IN_RINGTONE | 铃声 | 
| AUDIO_IN_CALL | 呼叫 | 


### AudioChannelMask

  
```
enum AudioChannelMask
```

D
duangavin123 已提交
251
**描述:**
D
hdi api  
duangavin123 已提交
252

D
hdi api  
duangavin123 已提交
253
音频通道掩码(mask)。
D
hdi api  
duangavin123 已提交
254

D
hdi api  
duangavin123 已提交
255
定义音频声道的位置。
D
hdi api  
duangavin123 已提交
256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_CHANNEL_FRONT_LEFT | 声道布局前左 | 
| AUDIO_CHANNEL_FRONT_RIGHT | 声道布局前右 | 
| AUDIO_CHANNEL_MONO | 单声道 | 
| AUDIO_CHANNEL_STEREO | 立体声,由左右声道组成(FRONT_LEFT \| FRONT_RIGHT) | 


### AudioChannelMode

  
```
enum AudioChannelMode
```

D
duangavin123 已提交
272
**描述:**
D
hdi api  
duangavin123 已提交
273

D
hdi api  
duangavin123 已提交
274
音频播放的通道模式。
D
hdi api  
duangavin123 已提交
275

D
duangavin123 已提交
276 277 278
**注意:**

下面的模式是针对双通道立体声的音频播放而设置,其他不支持。
D
hdi api  
duangavin123 已提交
279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_CHANNEL_NORMAL | 正常模式,不做处理 | 
| AUDIO_CHANNEL_BOTH_LEFT | 两个声道全部为左声道声音 | 
| AUDIO_CHANNEL_BOTH_RIGHT | 两个声道全部为右声道声音 | 
| AUDIO_CHANNEL_EXCHANGE | 左右声道数据互换,左声道为右声道声音,右声道为左声道声音 | 
| AUDIO_CHANNEL_MIX | 左右两个声道输出为左右声道相加(混音) | 
| AUDIO_CHANNEL_LEFT_MUTE | 左声道静音,右声道播放原右声道声音 | 
| AUDIO_CHANNEL_RIGHT_MUTE | 右声道静音,左声道播放原左声道声音 | 
| AUDIO_CHANNEL_BOTH_MUTE | 左右声道均静音 | 


### AudioDrainNotifyType

  
```
enum AudioDrainNotifyType
```

D
duangavin123 已提交
299
**描述:**
D
hdi api  
duangavin123 已提交
300

D
hdi api  
duangavin123 已提交
301
DrainBuffer函数结束类型。
D
hdi api  
duangavin123 已提交
302 303 304 305 306 307 308 309 310 311 312 313 314 315

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_DRAIN_NORMAL_MODE | DrainBuffer在所有数据播放结束后返回 | 
| AUDIO_DRAIN_EARLY_MODE | DrainBuffer()在当前曲目的所有数据播放完之前返回,以便留出时间给音频服务做连续性曲目切换 | 


### AudioFormat

  
```
enum AudioFormat
```

D
duangavin123 已提交
316
**描述:**
D
hdi api  
duangavin123 已提交
317

D
hdi api  
duangavin123 已提交
318
音频格式。
D
hdi api  
duangavin123 已提交
319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_FORMAT_PCM_8_BIT | 8bit位宽pcm格式 | 
| AUDIO_FORMAT_PCM_16_BIT | 16bit位宽pcm格式 | 
| AUDIO_FORMAT_PCM_24_BIT | 24bit位宽pcm格式 | 
| AUDIO_FORMAT_PCM_32_BIT | 32bit位宽pcm格式 | 
| AUDIO_FORMAT_AAC_MAIN | AAC MAIN格式 | 
| AUDIO_FORMAT_AAC_LC | AAC LC格式 | 
| AUDIO_FORMAT_AAC_LD | AAC LD格式 | 
| AUDIO_FORMAT_AAC_ELD | AAC ELD格式 | 
| AUDIO_FORMAT_AAC_HE_V1 | AAC HE_V1格式 | 
| AUDIO_FORMAT_AAC_HE_V2 | AAC HE_V2格式 | 
| AUDIO_FORMAT_G711A | G711A格式 | 
| AUDIO_FORMAT_G711U | G711u格式 | 
| AUDIO_FORMAT_G726 | G726格式 | 


### AudioPortDirection

  
```
enum AudioPortDirection
```

D
duangavin123 已提交
344
**描述:**
D
hdi api  
duangavin123 已提交
345

D
hdi api  
duangavin123 已提交
346
音频端口的类型。
D
hdi api  
duangavin123 已提交
347 348 349

  | 枚举值 | 描述 | 
| -------- | -------- |
D
duangavin123 已提交
350 351 352
| PORT_OUT | 音频输出端口 | 
| PORT_IN | 音频输入端口 | 
| PORT_OUT_IN | 音频输出/入端口, 同时支持输出和输入能力(OUT \| IN) | 
D
hdi api  
duangavin123 已提交
353 354 355 356 357 358 359 360 361


### AudioPortPassthroughMode

  
```
enum AudioPortPassthroughMode
```

D
duangavin123 已提交
362
**描述:**
D
hdi api  
duangavin123 已提交
363

D
hdi api  
duangavin123 已提交
364
音频端口的数据透传模式。
D
hdi api  
duangavin123 已提交
365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380

  | 枚举值 | 描述 | 
| -------- | -------- |
| PORT_PASSTHROUGH_LPCM | 立体声pcm | 
| PORT_PASSTHROUGH_RAW | HDMI透传 | 
| PORT_PASSTHROUGH_HBR2LBR | 蓝光次世代音频降规格输出 | 
| PORT_PASSTHROUGH_AUTO | 根据HDMI EDID能力自动匹配 | 


### AudioPortPin

  
```
enum AudioPortPin
```

D
duangavin123 已提交
381
**描述:**
D
hdi api  
duangavin123 已提交
382

D
hdi api  
duangavin123 已提交
383
音频适配器端口的PIN脚。
D
hdi api  
duangavin123 已提交
384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406

  | 枚举值 | 描述 | 
| -------- | -------- |
| PIN_NONE | 无效PIN | 
| PIN_OUT_SPEAKER | 喇叭输出 | 
| PIN_OUT_HEADSET | 有线耳机输出 | 
| PIN_OUT_LINEOUT | Lineout输出 | 
| PIN_OUT_HDMI | HDMI输出 | 
| PIN_OUT_USB | USB设备输出 | 
| PIN_OUT_USB_EXT | 扩展 USB 设备输出 | 
| PIN_IN_MIC | Mic输入 | 
| PIN_IN_HS_MIC | 有线耳机Mic输入 | 
| PIN_IN_LINEIN | Linein输入 | 
| PIN_IN_USB_EXT | 扩展 USB 设备输入 | 


### AudioPortRole

  
```
enum AudioPortRole
```

D
duangavin123 已提交
407
**描述:**
D
hdi api  
duangavin123 已提交
408

D
hdi api  
duangavin123 已提交
409
音频端口角色。
D
hdi api  
duangavin123 已提交
410 411 412 413 414 415 416 417 418 419 420 421 422 423 424

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_PORT_UNASSIGNED_ROLE | 未指定端口角色 | 
| AUDIO_PORT_SOURCE_ROLE | 指定端口为发送端角色 | 
| AUDIO_PORT_SINK_ROLE | 指定端口为接受端角色 | 


### AudioPortType

  
```
enum AudioPortType
```

D
duangavin123 已提交
425
**描述:**
D
hdi api  
duangavin123 已提交
426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443

音频端口类型。

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_PORT_UNASSIGNED_TYPE | 未指定端口类型 | 
| AUDIO_PORT_DEVICE_TYPE | 指定端口为设备类型 | 
| AUDIO_PORT_MIX_TYPE | 指定端口类型为复合类型 | 
| AUDIO_PORT_SESSION_TYPE | 指定端口为会话类型 | 


### AudioSampleFormat

  
```
enum AudioSampleFormat
```

D
duangavin123 已提交
444
**描述:**
D
hdi api  
duangavin123 已提交
445

D
hdi api  
duangavin123 已提交
446
原始音频样本格式。
D
hdi api  
duangavin123 已提交
447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_SAMPLE_FORMAT_S8 | 8bit位宽有符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_S8P | 8bit位宽有符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_U8 | 8bit位宽无符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_U8P | 8bit位宽无符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_S16 | 16bit位宽有符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_S16P | 16bit位宽有符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_U16 | 16bit位宽无符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_U16P | 16bit位宽无符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_S24 | 24bit位宽有符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_S24P | 24bit位宽有符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_U24 | 24bit位宽无符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_U24P | 24bit位宽无符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_S32 | 32bit位宽有符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_S32P | 32bit位宽有符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_U32 | 32bit位宽无符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_U32P | 32bit位宽无符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_S64 | 64bit位宽有符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_S64P | 64bit位宽有符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_U64 | 64bit位宽无符号交织样本 | 
| AUDIO_SAMPLE_FORMAT_U64P | 64bit位宽无符号非交织样本 | 
| AUDIO_SAMPLE_FORMAT_F32 | 32bit位宽浮点型交织样本 | 
| AUDIO_SAMPLE_FORMAT_F32P | 64bit位宽浮点型非交织样本 | 
| AUDIO_SAMPLE_FORMAT_F64 | 64bit位宽双精度浮点型交织样本 | 
| AUDIO_SAMPLE_FORMAT_F64P | 64bit位宽双精度浮点型非交织样本 | 


### AudioSampleRatesMask

  
```
enum AudioSampleRatesMask
```

D
duangavin123 已提交
483
**描述:**
D
hdi api  
duangavin123 已提交
484

D
hdi api  
duangavin123 已提交
485
音频采样频率MASK。
D
hdi api  
duangavin123 已提交
486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_SAMPLE_RATE_MASK_8000 | 8K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_12000 | 12K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_11025 | 11.025K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_16000 | 16K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_22050 | 22.050K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_24000 | 24K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_32000 | 32K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_44100 | 44.1K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_48000 | 48K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_64000 | 64K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_96000 | 96K 采样频率 | 
| AUDIO_SAMPLE_RATE_MASK_INVALID | 无效的采样频率 | 


### AudioSessionType

  
```
enum AudioSessionType
```

D
duangavin123 已提交
510
**描述:**
D
hdi api  
duangavin123 已提交
511

D
hdi api  
duangavin123 已提交
512
端口会话类型。
D
hdi api  
duangavin123 已提交
513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531

  | 枚举值 | 描述 | 
| -------- | -------- |
| AUDIO_OUTPUT_STAGE_SESSION | 会话绑定到指定输出流 | 
| AUDIO_OUTPUT_MIX_SESSION | 会话绑定到特定音轨 | 
| AUDIO_ALLOCATE_SESSION | 会话ID需重新申请 | 
| AUDIO_INVALID_SESSION | 无效会话类型 | 


## **函数说明**


### GetAudioManagerFuncs()

  
```
struct AudioManager* GetAudioManagerFuncs (void )
```

D
duangavin123 已提交
532
**描述:**
D
hdi api  
duangavin123 已提交
533 534 535

获取音频适配器管理接口的操作函数列表,详情参考[AudioManager](_audio_manager.md)

D
duangavin123 已提交
536
**返回:**
D
hdi api  
duangavin123 已提交
537 538 539 540 541 542 543 544 545 546 547 548 549 550

成功返回一个音频适配器管理接口的对象,失败返回NULL。


## **变量说明**


### adapterName

  
```
const char* AudioAdapterDescriptor::adapterName
```

D
duangavin123 已提交
551
**描述:**
D
hdi api  
duangavin123 已提交
552

D
duangavin123 已提交
553
音频适配器的名称
D
hdi api  
duangavin123 已提交
554 555 556 557 558 559 560 561 562


### channelCount [1/2]

  
```
uint32_t AudioSampleAttributes::channelCount
```

D
duangavin123 已提交
563
**描述:**
D
hdi api  
duangavin123 已提交
564 565 566 567 568 569 570 571 572 573 574

音频通道数目,如单通道(mono)为1、立体声(stereo)为2。


### channelCount [2/2]

  
```
unsigned int AudioPortCapability::channelCount
```

D
duangavin123 已提交
575
**描述:**
D
hdi api  
duangavin123 已提交
576

D
duangavin123 已提交
577
支持的最大声道总数
D
hdi api  
duangavin123 已提交
578 579 580 581 582 583 584 585 586


### channelMasks

  
```
enum AudioChannelMask AudioPortCapability::channelMasks
```

D
duangavin123 已提交
587
**描述:**
D
hdi api  
duangavin123 已提交
588 589 590 591 592 593 594 595 596 597 598

设备的声道布局掩码(mask),详情参考[AudioChannelMask](#audiochannelmask)


### desc [1/5]

  
```
const char* AudioDeviceDescriptor::desc
```

D
duangavin123 已提交
599
**描述:**
D
hdi api  
duangavin123 已提交
600

D
duangavin123 已提交
601
以字符串命名的音频设备
D
hdi api  
duangavin123 已提交
602 603 604 605 606 607 608 609 610


### desc [2/5]

  
```
struct AudioDeviceDescriptor AudioSceneDescriptor::desc
```

D
duangavin123 已提交
611
**描述:**
D
hdi api  
duangavin123 已提交
612

D
duangavin123 已提交
613
音频设备描述符
D
hdi api  
duangavin123 已提交
614 615 616 617 618 619 620 621 622


### desc [3/5]

  
```
const char* AudioSceneDescriptor::SceneDesc::desc
```

D
duangavin123 已提交
623
**描述:**
D
hdi api  
duangavin123 已提交
624

D
duangavin123 已提交
625
以字符串命名的音频场景
D
hdi api  
duangavin123 已提交
626 627 628 629 630 631 632 633 634


### desc [4/5]

  
```
const char* AudioSubPortCapability::desc
```

D
duangavin123 已提交
635
**描述:**
D
hdi api  
duangavin123 已提交
636

D
duangavin123 已提交
637
以字符串命名的子端口
D
hdi api  
duangavin123 已提交
638 639 640 641 642 643 644 645 646


### desc [5/5]

  
```
const char* AudioDevExtInfo::desc
```

D
duangavin123 已提交
647 648 649 650 651 652 653 654 655 656 657 658 659
**描述:**

地址描述


### device

  
```
struct AudioDevExtInfo AudioRouteNode::ext::device
```

**描述:**
D
hdi api  
duangavin123 已提交
660

D
duangavin123 已提交
661
设备特定信息。
D
hdi api  
duangavin123 已提交
662 663 664 665 666 667 668 669 670


### deviceId

  
```
unsigned int AudioPortCapability::deviceId
```

D
duangavin123 已提交
671
**描述:**
D
hdi api  
duangavin123 已提交
672 673 674 675 676 677 678 679 680 681 682

绑定(bind)设备ID,唯一的设备识别符。


### deviceType

  
```
unsigned int AudioPortCapability::deviceType
```

D
duangavin123 已提交
683
**描述:**
D
hdi api  
duangavin123 已提交
684 685 686 687 688 689 690 691 692 693 694

设备输出、输入类型。


### dir

  
```
enum AudioPortDirection AudioPort::dir
```

D
duangavin123 已提交
695
**描述:**
D
hdi api  
duangavin123 已提交
696 697 698 699 700 701 702 703 704 705 706

音频端口的类型,详情参考[AudioPortDirection](#audioportdirection)


### format

  
```
enum AudioFormat AudioSampleAttributes::format
```

D
duangavin123 已提交
707
**描述:**
D
hdi api  
duangavin123 已提交
708 709 710 711 712 713 714 715 716 717 718

音频数据格式,详情参考[AudioFormat](#audioformat)


### formatNum

  
```
unsigned int AudioPortCapability::formatNum
```

D
duangavin123 已提交
719
**描述:**
D
hdi api  
duangavin123 已提交
720

D
duangavin123 已提交
721
支持的音频格式数目
D
hdi api  
duangavin123 已提交
722 723 724 725 726 727 728 729 730


### formats

  
```
enum AudioFormat* AudioPortCapability::formats
```

D
duangavin123 已提交
731
**描述:**
D
hdi api  
duangavin123 已提交
732 733 734 735 736 737 738 739 740 741 742

支持的音频格式,详情参考[AudioFormat](#audioformat)


### frameSize

  
```
uint32_t AudioSampleAttributes::frameSize
```

D
duangavin123 已提交
743
**描述:**
D
hdi api  
duangavin123 已提交
744

D
duangavin123 已提交
745
音频数据的帧大小
D
hdi api  
duangavin123 已提交
746 747 748 749 750 751 752 753 754


### hardwareMode

  
```
bool AudioPortCapability::hardwareMode
```

D
duangavin123 已提交
755
**描述:**
D
hdi api  
duangavin123 已提交
756

D
duangavin123 已提交
757
是否支持设备绑定处理
D
hdi api  
duangavin123 已提交
758 759 760 761 762 763 764 765 766


### id

  
```
unsigned int AudioSceneDescriptor::SceneDesc::id
```

D
duangavin123 已提交
767
**描述:**
D
hdi api  
duangavin123 已提交
768

D
duangavin123 已提交
769
音频场景的ID
D
hdi api  
duangavin123 已提交
770 771 772 773 774 775 776 777 778


### interleaved

  
```
bool AudioSampleAttributes::interleaved
```

D
duangavin123 已提交
779
**描述:**
D
hdi api  
duangavin123 已提交
780

D
duangavin123 已提交
781
音频数据交织的标记
D
hdi api  
duangavin123 已提交
782 783 784 785 786 787 788 789 790


### isBigEndian

  
```
bool AudioSampleAttributes::isBigEndian
```

D
duangavin123 已提交
791
**描述:**
D
hdi api  
duangavin123 已提交
792

D
duangavin123 已提交
793
音频数据的大端标志
D
hdi api  
duangavin123 已提交
794 795 796 797 798 799 800 801 802


### isShareable

  
```
int32_t AudioMmapBufferDescripter::isShareable
```

D
duangavin123 已提交
803
**描述:**
D
hdi api  
duangavin123 已提交
804

D
duangavin123 已提交
805
mmap缓冲区是否可以在进程间共享
D
hdi api  
duangavin123 已提交
806 807 808 809 810 811 812 813 814


### isSignedData

  
```
bool AudioSampleAttributes::isSignedData
```

D
duangavin123 已提交
815
**描述:**
D
hdi api  
duangavin123 已提交
816 817 818 819 820 821 822 823 824 825 826

音频数据的有符号或无符号标志


### mask

  
```
enum AudioPortPassthroughMode AudioSubPortCapability::mask
```

D
duangavin123 已提交
827
**描述:**
D
hdi api  
duangavin123 已提交
828 829 830 831 832 833 834 835 836 837 838

数据透传模式,详情参考[AudioPortPassthroughMode](#audioportpassthroughmode)


### memoryAddress

  
```
void* AudioMmapBufferDescripter::memoryAddress
```

D
duangavin123 已提交
839
**描述:**
D
hdi api  
duangavin123 已提交
840

D
duangavin123 已提交
841
指向mmap缓冲区的指针
D
hdi api  
duangavin123 已提交
842 843 844 845 846 847 848 849 850


### memoryFd

  
```
int32_t AudioMmapBufferDescripter::memoryFd
```

D
duangavin123 已提交
851 852 853 854 855 856 857 858 859 860 861 862 863
**描述:**

mmap缓冲区的文件描述符


### mix

  
```
struct AudioMixExtInfo AudioRouteNode::ext::mix
```

**描述:**
D
hdi api  
duangavin123 已提交
864

D
duangavin123 已提交
865
音轨特定信息。
D
hdi api  
duangavin123 已提交
866 867 868 869 870 871 872 873 874


### moduleId [1/2]

  
```
int32_t AudioDevExtInfo::moduleId
```

D
duangavin123 已提交
875
**描述:**
D
hdi api  
duangavin123 已提交
876

D
duangavin123 已提交
877
音频流绑定的模块ID
D
hdi api  
duangavin123 已提交
878 879 880 881 882 883 884 885 886


### moduleId [2/2]

  
```
int32_t AudioMixExtInfo::moduleId
```

D
duangavin123 已提交
887
**描述:**
D
hdi api  
duangavin123 已提交
888

D
duangavin123 已提交
889
流所属模块标识符
D
hdi api  
duangavin123 已提交
890 891 892 893 894 895 896 897 898


### period

  
```
uint32_t AudioSampleAttributes::period
```

D
duangavin123 已提交
899
**描述:**
D
hdi api  
duangavin123 已提交
900

D
duangavin123 已提交
901
音频采样周期
D
hdi api  
duangavin123 已提交
902 903 904 905 906 907 908 909 910


### pins

  
```
enum AudioPortPin AudioDeviceDescriptor::pins
```

D
duangavin123 已提交
911
**描述:**
D
hdi api  
duangavin123 已提交
912 913 914 915 916 917 918 919 920 921 922

音频端口上的PIN脚(输出、输入),详情参考[AudioPortPin](#audioportpin)


### portId [1/4]

  
```
unsigned int AudioPort::portId
```

D
duangavin123 已提交
923
**描述:**
D
hdi api  
duangavin123 已提交
924

D
duangavin123 已提交
925
音频端口的ID
D
hdi api  
duangavin123 已提交
926 927 928 929 930 931 932 933 934


### portId [2/4]

  
```
unsigned int AudioDeviceDescriptor::portId
```

D
duangavin123 已提交
935
**描述:**
D
hdi api  
duangavin123 已提交
936

D
duangavin123 已提交
937
音频端口ID
D
hdi api  
duangavin123 已提交
938 939 940 941 942 943 944 945 946


### portId [3/4]

  
```
unsigned int AudioSubPortCapability::portId
```

D
duangavin123 已提交
947
**描述:**
D
hdi api  
duangavin123 已提交
948

D
duangavin123 已提交
949
子端口ID
D
hdi api  
duangavin123 已提交
950 951 952 953 954 955 956 957 958


### portId [4/4]

  
```
int32_t AudioRouteNode::portId
```

D
duangavin123 已提交
959
**描述:**
D
hdi api  
duangavin123 已提交
960

D
duangavin123 已提交
961
音频端口ID
D
hdi api  
duangavin123 已提交
962 963 964 965 966 967 968 969 970


### portName

  
```
const char* AudioPort::portName
```

D
duangavin123 已提交
971
**描述:**
D
hdi api  
duangavin123 已提交
972

D
duangavin123 已提交
973
音频端口的名称
D
hdi api  
duangavin123 已提交
974 975 976 977 978 979 980 981 982


### portNum

  
```
unsigned int AudioAdapterDescriptor::portNum
```

D
duangavin123 已提交
983
**描述:**
D
hdi api  
duangavin123 已提交
984

D
duangavin123 已提交
985
一个音频适配器支持的端口数目
D
hdi api  
duangavin123 已提交
986 987 988 989 990 991 992 993 994


### ports

  
```
struct AudioPort* AudioAdapterDescriptor::ports
```

D
duangavin123 已提交
995
**描述:**
D
hdi api  
duangavin123 已提交
996

D
duangavin123 已提交
997
一个音频适配器支持的端口列表
D
hdi api  
duangavin123 已提交
998 999 1000 1001 1002 1003 1004 1005 1006


### role

  
```
enum AudioPortRole AudioRouteNode::role
```

D
duangavin123 已提交
1007
**描述:**
D
hdi api  
duangavin123 已提交
1008

D
duangavin123 已提交
1009
指定端口角色为sink或source
D
hdi api  
duangavin123 已提交
1010 1011 1012 1013 1014 1015 1016 1017 1018


### sampleRate

  
```
unsigned int AudioSampleAttributes::sampleRate
```

D
duangavin123 已提交
1019
**描述:**
D
hdi api  
duangavin123 已提交
1020

D
duangavin123 已提交
1021
音频采样频率
D
hdi api  
duangavin123 已提交
1022 1023 1024 1025 1026 1027 1028 1029 1030


### sampleRateMasks

  
```
unsigned int AudioPortCapability::sampleRateMasks
```

D
duangavin123 已提交
1031
**描述:**
D
hdi api  
duangavin123 已提交
1032

D
duangavin123 已提交
1033
支持的音频采样频率(8k、16k、32k、48k)
D
hdi api  
duangavin123 已提交
1034 1035 1036 1037 1038 1039 1040 1041 1042


### scene

  
```
union AudioSceneDescriptor::SceneDesc AudioSceneDescriptor::scene
```

D
duangavin123 已提交
1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055
**描述:**

音频场景的名称


### session

  
```
struct AudioSessionExtInfo AudioRouteNode::ext::session
```

**描述:**
D
hdi api  
duangavin123 已提交
1056

D
duangavin123 已提交
1057
会话特定信息。
D
hdi api  
duangavin123 已提交
1058 1059 1060 1061 1062 1063 1064 1065 1066


### sessionType

  
```
enum AudioSessionType AudioSessionExtInfo::sessionType
```

D
duangavin123 已提交
1067
**描述:**
D
hdi api  
duangavin123 已提交
1068

D
duangavin123 已提交
1069
音频会话类型
D
hdi api  
duangavin123 已提交
1070 1071 1072 1073 1074 1075 1076 1077 1078


### silenceThreshold

  
```
uint32_t AudioSampleAttributes::silenceThreshold
```

D
duangavin123 已提交
1079
**描述:**
D
hdi api  
duangavin123 已提交
1080

D
duangavin123 已提交
1081
音频捕获缓冲区阈值
D
hdi api  
duangavin123 已提交
1082 1083 1084 1085 1086 1087 1088 1089 1090


### sinks

  
```
const struct AudioRouteNode* AudioRoute::sinks
```

D
duangavin123 已提交
1091
**描述:**
D
hdi api  
duangavin123 已提交
1092

D
duangavin123 已提交
1093
接受端列表
D
hdi api  
duangavin123 已提交
1094 1095 1096 1097 1098 1099 1100 1101 1102


### sinksNum

  
```
uint32_t AudioRoute::sinksNum
```

D
duangavin123 已提交
1103
**描述:**
D
hdi api  
duangavin123 已提交
1104

D
duangavin123 已提交
1105
接受端节点数量
D
hdi api  
duangavin123 已提交
1106 1107 1108 1109 1110 1111 1112 1113 1114


### sources

  
```
const struct AudioRouteNode* AudioRoute::sources
```

D
duangavin123 已提交
1115
**描述:**
D
hdi api  
duangavin123 已提交
1116

D
duangavin123 已提交
1117
发送端列表
D
hdi api  
duangavin123 已提交
1118 1119 1120 1121 1122 1123 1124 1125 1126


### sourcesNum

  
```
uint32_t AudioRoute::sourcesNum
```

D
duangavin123 已提交
1127
**描述:**
D
hdi api  
duangavin123 已提交
1128

D
duangavin123 已提交
1129
发送端节点数量
D
hdi api  
duangavin123 已提交
1130 1131 1132 1133 1134 1135 1136 1137 1138


### startThreshold

  
```
uint32_t AudioSampleAttributes::startThreshold
```

D
duangavin123 已提交
1139
**描述:**
D
hdi api  
duangavin123 已提交
1140

D
duangavin123 已提交
1141
音频渲染开始阈值
D
hdi api  
duangavin123 已提交
1142 1143 1144 1145 1146 1147 1148 1149 1150


### stopThreshold

  
```
uint32_t AudioSampleAttributes::stopThreshold
```

D
duangavin123 已提交
1151
**描述:**
D
hdi api  
duangavin123 已提交
1152

D
duangavin123 已提交
1153
音频渲染停止阈值
D
hdi api  
duangavin123 已提交
1154 1155 1156 1157 1158 1159 1160 1161 1162


### streamId [1/2]

  
```
int32_t AudioSampleAttributes::streamId
```

D
duangavin123 已提交
1163
**描述:**
D
hdi api  
duangavin123 已提交
1164

D
duangavin123 已提交
1165
渲染或捕获的音频标识符
D
hdi api  
duangavin123 已提交
1166 1167 1168 1169 1170 1171 1172 1173 1174


### streamId [2/2]

  
```
int32_t AudioMixExtInfo::streamId
```

D
duangavin123 已提交
1175
**描述:**
D
hdi api  
duangavin123 已提交
1176

D
duangavin123 已提交
1177
由调用者传递的Render或Capture标识符
D
hdi api  
duangavin123 已提交
1178 1179 1180 1181 1182 1183 1184 1185 1186


### subPorts

  
```
struct AudioSubPortCapability* AudioPortCapability::subPorts
```

D
duangavin123 已提交
1187
**描述:**
D
hdi api  
duangavin123 已提交
1188

D
duangavin123 已提交
1189
支持的子端口列表
D
hdi api  
duangavin123 已提交
1190 1191 1192 1193 1194 1195 1196 1197 1198


### subPortsNum

  
```
unsigned int AudioPortCapability::subPortsNum
```

D
duangavin123 已提交
1199
**描述:**
D
hdi api  
duangavin123 已提交
1200

D
duangavin123 已提交
1201
支持的子端口数目(仅用于输出设备)
D
hdi api  
duangavin123 已提交
1202 1203 1204 1205 1206 1207 1208 1209 1210


### supportSampleFormatNum

  
```
uint32_t AudioPortCapability::supportSampleFormatNum
```

D
duangavin123 已提交
1211
**描述:**
D
hdi api  
duangavin123 已提交
1212

D
duangavin123 已提交
1213
支持的音频样本格式数量
D
hdi api  
duangavin123 已提交
1214 1215 1216 1217 1218 1219 1220 1221 1222


### supportSampleFormats

  
```
enum AudioSampleFormat* AudioPortCapability::supportSampleFormats
```

D
duangavin123 已提交
1223
**描述:**
D
hdi api  
duangavin123 已提交
1224

D
duangavin123 已提交
1225
支持的音频样本格式,详请参考[AudioSampleFormat](#audiosampleformat)
D
hdi api  
duangavin123 已提交
1226 1227 1228 1229 1230 1231 1232 1233 1234


### totalBufferFrames

  
```
int32_t AudioMmapBufferDescripter::totalBufferFrames
```

D
duangavin123 已提交
1235
**描述:**
D
hdi api  
duangavin123 已提交
1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246

缓冲区总大小,单位:帧。


### transferFrameSize

  
```
int32_t AudioMmapBufferDescripter::transferFrameSize
```

D
duangavin123 已提交
1247
**描述:**
D
hdi api  
duangavin123 已提交
1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258

传输大小,单位:帧。


### tvNSec

  
```
int64_t AudioTimeStamp::tvNSec
```

D
duangavin123 已提交
1259
**描述:**
D
hdi api  
duangavin123 已提交
1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270

tvNSec时间,单位:纳秒。


### tvSec

  
```
int64_t AudioTimeStamp::tvSec
```

D
duangavin123 已提交
1271
**描述:**
D
hdi api  
duangavin123 已提交
1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282

tvSec时间,单位:秒。


### type [1/3]

  
```
enum AudioCategory AudioSampleAttributes::type
```

D
duangavin123 已提交
1283
**描述:**
D
hdi api  
duangavin123 已提交
1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294

音频类型,详情参考[AudioCategory](#audiocategory)


### type [2/3]

  
```
enum AudioPortPin AudioDevExtInfo::type
```

D
duangavin123 已提交
1295
**描述:**
D
hdi api  
duangavin123 已提交
1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306

音频端口上的PIN脚(输出、输入),详情参考[AudioPortPin](#audioportpin)


### type [3/3]

  
```
enum AudioPortType AudioRouteNode::type
```

D
duangavin123 已提交
1307
**描述:**
D
hdi api  
duangavin123 已提交
1308

D
duangavin123 已提交
1309
指定端口类型为device, mix等。