我需要检索 AudioRecord 类
读取缓冲区时的时间戳。我需要以毫秒为单位跟踪时间。我试图在读取缓冲区后添加时间戳检索,但是当我收到下一个缓冲区时,检索它所花费的时间可能会波动很大。有没有办法从回调中接收录制音频的时间?
int bufferReadResult = audioRecord.read(buffer, 0,blockSize);
long startTime = System.nanoTime()/ 1000;
是我目前正在尝试的。
最佳答案
音频由本地振荡器实时采样。一旦操作系统有空闲时间将 block 发送给您,就会将其发送给您。 我不确定,但我认为你无法获得所获取信号的绝对时间。 您可以做的是对记录的音频信号的 2 个事件之间的样本进行计数,并通过对样本进行计数并了解样本频率来获得精确的耗时。 希望这会有所帮助。
关于android - 如何在 Android 中接收 Audiorecord 的硬件时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16281472/