audio_stream 结构参考

audio_stream 结构参考

#include < audio.h >

数据字段

uint32_t(*  get_sample_rate )(const struct audio_stream *stream)
 
int(*  set_sample_rate )(struct audio_stream *stream, uint32_t rate)
 
size_t(*  get_buffer_size )(const struct audio_stream *stream)
 
audio_channel_mask_t(*  get_channels )(const struct audio_stream *stream)
 
audio_format_t(*  get_format )(const struct audio_stream *stream)
 
int(*  set_format )(struct audio_stream *stream, audio_format_t format)
 
int(*  standby )(struct audio_stream *stream)
 
int(*  dump )(const struct audio_stream *stream, int fd)
 
audio_devices_t(*  get_device )(const struct audio_stream *stream)
 
int(*  set_device )(struct audio_stream *stream, audio_devices_t device)
 
int(*  set_parameters )(struct audio_stream *stream, const char *kv_pairs)
 
char *(*  get_parameters )(const struct audio_stream *stream, const char *keys)
 
int(*  add_audio_effect )(const struct audio_stream *stream, effect_handle_t effect)
 
int(*  remove_audio_effect )(const struct audio_stream *stream, effect_handle_t effect)
 

详细说明

定义位于文件 audio.h 170 行

字段文档

int(* add_audio_effect)(const struct audio_stream *stream, effect_handle_t effect)

定义位于文件 audio.h 的 246 行。

int(* dump)(const struct audio_stream *stream, int fd)

转储音频输入/输出设备的状态

定义位于文件 audio.h 的第 212 行。

size_t(* get_buffer_size)(const struct audio_stream *stream)

返回此流的输入/输出缓冲区大小(以字节为单位),例如4800. 它应为帧大小的倍数。另请参阅 get_input_buffer_size。

定义位于文件 audio.h 的 第 186 行。

audio_channel_mask_t(* get_channels)(const struct audio_stream *stream)

返回声道掩码,例如 AUDIO_CHANNEL_OUT_STEREO 或 AUDIO_CHANNEL_IN_STEREO

定义位于文件 audio.h 的第 192 行。

audio_devices_t(* get_device)(const struct audio_stream *stream)

返回此串流连接到的设备集

定义位于文件 audio.h 的第 215 行。

audio_format_t(* get_format)(const struct audio_stream *stream)

返回音频格式,例如 AUDIO_FORMAT_PCM_16_BIT

定义位于文件 audio.h 的第 197 行。

char*(* get_parameters)(const struct audio_stream *stream, const char *keys)

定义位于文件 audio.h 的 244 行。

uint32_t(* get_sample_rate)(const struct audio_stream *stream)

返回采样率(以 Hz 为单位),例如 44100。

定义位于文件 audio.h 的 第 175 行。

int(* remove_audio_effect)(const struct audio_stream *stream, effect_handle_t effect)

定义位于文件 audio.h 的 248 行。

int(* set_device)(struct audio_stream *stream, audio_devices_t device)

目前未使用 - set_device() 对应于 set_parameters() ,且输入和输出都使用键 AUDIO_PARAMETER_STREAM_ROUTING。AUDIO_PARAMETER_STREAM_INPUT_SOURCE 是仅供输入串流使用的额外信息。

定义位于文件 audio.h 的第 223 行。

int(* set_format)(struct audio_stream *stream, audio_format_t format)

定义位于文件 audio.h 的 第 202 行。

int(* set_parameters)(struct audio_stream *stream, const char *kv_pairs)

设置/获取音频串流参数。该函数接受参数键值对的列表,格式为:key1=value1;key2=value2;...

某些键已预留给标准参数(请参阅 AudioParameter 类)

如果实现在输出处于活动状态时不接受参数更改,但在其他情况下接受该参数,则必须返回 -ENOSYS。

音频 flinger 会将数据流置于待机状态,然后更改参数值。

定义位于文件 audio.h 的 238 行。

int(* set_sample_rate)(struct audio_stream *stream, uint32_t rate)

定义位于文件 audio.h 的 180 行。

int(* standby)(struct audio_stream *stream)

将音频硬件输入/输出置于待机模式。驱动程序应在下一次 I/O 操作时退出待机模式。成功时返回 0,失败时返回 <0。

定义位于文件 audio.h 的第 209 行。


此结构体的文档是根据以下文件生成的:
  • hardware/libhardware/include/hardware/ audio.h