Platform: Rockchip
OS: Android 6.0
Kernel: 3.10.92
HAL:
默认的配置在
hardware/rockchip/audio/tinyalsa_hal/audio_hw.h:
struct pcm_config pcm_config_in = {
.channels = 2,
.rate =44100, //配置的是44100Hz.
.period_size = 16,
.period_count = 32,
.format = PCM_FORMAT_S16_LE,
};
流程:
adev_open_input_stream -> audio_hw.c
in->stream.read ->
in_read ->
start_input_stream ->
pcm_open -> pcm.c //使用tinyalsa库标准接口
open -> //设备格式是/dev/snd/pcmC%uD%u%c
ioctl(pcm->fd, SNDRV_PCM_IOCTL_HW_PARAMS, ¶ms) ->
snd_pcm_capture_ioctl -> pcm_native.c //进入kernel
snd_pcm_capture_ioctl1 ->
OS: Android 6.0
Kernel: 3.10.92
HAL:
默认的配置在
hardware/rockchip/audio/tinyalsa_hal/audio_hw.h:
struct pcm_config pcm_config_in = {
.channels = 2,
.rate =44100, //配置的是44100Hz.
.period_size = 16,
.period_count = 32,
.format = PCM_FORMAT_S16_LE,
};
流程:
adev_open_input_stream -> audio_hw.c
in->stream.read ->
in_read ->
start_input_stream ->
pcm_open -> pcm.c //使用tinyalsa库标准接口
open -> //设备格式是/dev/snd/pcmC%uD%u%c
ioctl(pcm->fd, SNDRV_PCM_IOCTL_HW_PARAMS, ¶ms) ->
snd_pcm_capture_ioctl -> pcm_native.c //进入kernel
snd_pcm_capture_ioctl1 ->