[问题] Audio Framework 阅读方法

楼主: tony123930 (HW)   2016-12-16 20:23:17
大家好,我最近在阅读 Android Framework 的程式码
主要着重于音讯的部分 /framework/av/
但现在爬 code 的过程中遇到一些问题
1. 在 PlaybackThread::threadLoop_write() 内,每次都会花 20 ms
经过推敲后发现是 mNormalSink->write() 耗时间,我猜测这个是因为
软件处理资料的速度,远快于硬件释放讯号的速度(数个微秒就可以处
理完 20 ms 长的音讯)为了等待硬件将讯号播放完才有一些等待的逻辑
在里面。但我往下翻了一下就看到 driver 层的部分了,程式码落在
/platform/hardware/qcom/audio_hw.c。但现在的问题就是,我不知道
我找到的程式码是否正确,以及不知道该怎么读,不晓得有无人可以提供
建议?
2. 在 AudioTrack 给订 buffersize 的时候,会叫到 getMinBufferSize()
之类的 API,其中计算跟 latency 相关。想请问这个 latency 的部分
要在哪找到呢?
3. FastMixer 跟 Effect 的部分,坊间的书好像很少着墨,不晓得有没有
推荐的网站呢?
谢谢大家!
作者: hivic   2016-12-22 15:48:00
1,2都在audio hal里 看你们用哪家方案out->stream.get_latency 大多是buffer size去推得

Links booklink

Contact Us: admin [ a t ] ucptt.com