2013-04-29 91 views
2

我需要检索AudioRecord class何时读取缓冲区的时间戳。我需要跟踪以毫秒为单位的时间。我在读取缓冲区后尝试添加时间戳,但是当我收到下一个缓冲区时,检索它所花费的时间可能会波动很多。有没有从回调的方式来获得录制音频的时间?如何在Android中接收Audiorecord的硬件时间戳?

int bufferReadResult = audioRecord.read(buffer, 0,blockSize); 
      long startTime = System.nanoTime()/ 1000; 

是我目前正在尝试的。

回答

0

本地振荡器实时采样音频。一旦操作系统有空闲时间发送给你,一个块就会发送给你。 我不确定,但我认为你无法得到获取信号的绝对时间。 您可以做的是在记录的音频信号上对2个事件之间的样本进行计数,并通过对样本进行计数并了解采样频率来获得精确的流逝时间。 希望这有助于。