如何在不使用AudioSystem的情况下计算帧长



我正在将Java项目移植到Android.

如你所知,Android没有javax。声音方案。

我需要计算帧长。

我的声音文件大小是283KB。帧大小为4,帧速率为44100,采样大小为16。

当我使用纯Java时,帧长是69632。

你知道得到这个的方程吗?

谢谢。

对于原始PCM数据,基本上每个样本有4个字节。

((283 KB) *(1024字节/KB))/(4字节/帧)==> 72448

但是除了原始的PCM之外,wav还可以包含很多内容,例如歌曲标题或艺术家信息。

这里有一些关于wav格式的更多信息。您可能必须以原始字节的形式加载文件来解析报头,但是报头在可预测的位置具有帧大小。

也许其他有Android经验的人已经想出了一个方法。也许Google应该把Java当作一个完整的实体,适当地授权并实现它。

相关内容

最新更新