aio_attr->sample_rate = OT_AUDIO_SAMPLE_RATE_48000; aio_attr->bit_width = OT_AUDIO_BIT_WIDTH_16; aio_attr->work_mode = OT_AIO_MODE_I2S_SLAVE; aio_attr->snd_mode = OT_AUDIO_SOUND_MODE_MONO; aio_attr->expand_flag = 0; aio_attr->frame_num = 30; /* 30:frame num */ aio_attr->point_num_per_frame = AACLC_SAMPLES_PER_FRAME; aio_attr->chn_cnt = 2; /* 2:chn cnt */ *ai_dev = SAMPLE_AUDIO_EXTERN_AI_DEV; aio_attr->clk_share = 1; aio_attr->i2s_type = OT_AIO_I2STYPE_EXTERN;详细解析
时间: 2023-08-23 17:03:43 浏览: 168
aio.zip_aio_asynchronous io_linux aio
这段代码涉及音频输入输出设备的设置参数,具体解析如下:
1. `aio_attr->sample_rate = OT_AUDIO_SAMPLE_RATE_48000;` 设置音频采样率为 48000Hz。
2. `aio_attr->bit_width = OT_AUDIO_BIT_WIDTH_16;` 设置音频采样位宽为 16bit。
3. `aio_attr->work_mode = OT_AIO_MODE_I2S_SLAVE;` 设置音频输入输出设备的工作模式为 I2S 从设备模式。
4. `aio_attr->snd_mode = OT_AUDIO_SOUND_MODE_MONO;` 设置音频采集模式为单声道模式。
5. `aio_attr->expand_flag = 0;` 扩展标志位,暂未使用。
6. `aio_attr->frame_num = 30;` 设置音频数据帧数为 30。
7. `aio_attr->point_num_per_frame = AACLC_SAMPLES_PER_FRAME;` 设置每帧采样点数为 AACLC_SAMPLES_PER_FRAME。
8. `aio_attr->chn_cnt = 2;` 设置音频通道数为 2。
9. `*ai_dev = SAMPLE_AUDIO_EXTERN_AI_DEV;` 设置音频设备类型为 SAMPLE_AUDIO_EXTERN_AI_DEV。
10. `aio_attr->clk_share = 1;` 设置时钟共享标志为 1。
11. `aio_attr->i2s_type = OT_AIO_I2STYPE_EXTERN;` 设置 I2S 类型为外部 I2S 接口。
阅读全文