我在哪里可以从Android框架获取原始pcm数据? 我想我可以从中得到它:
Write (const void * buffer, size_t userSize, bool blocking)
/framework/av/media/libmedia/AudioTrack.cpp
中的
但是,它与流媒体服务前的文件中的pcm数据和写入时获得的pcm数据不同。
我认为这就像重新抽样一样。
我在哪里可以获得原始pcm数据?
注意:
答案 0 :(得分:0)
你有更好的机会在android-framework层下面的一层点击pcm
缓冲区 - audio hal。现在这将取决于硬件,因此我可以为您提供一些可能的示例: -
hardware/xxx/audio/hal/audio_hw.c
(在我的情况下xxx是qcom)
in_read()
- > pcm_read()
external/tinyalsa/pcm.c
pcm_read()
答案 1 :(得分:0)
AudioTrack.cpp中的PCM数据将输入到AudioMixer和AudioEffects组件以自定义效果,然后输入到音频HAL中。