2011-08-19 71 views
0

我將Java項目移植到Android。如何在不使用AudioSystem的情況下計算FrameLength?

如您所知,Android沒有javax.sound軟件包。

我需要計算frameLength。

我的聲音文件大小爲283KB。幀大小爲4,幀率爲44100,樣本大小爲16位。

當我只使用純Java時,幀長度爲69632。

你知道有什麼方程式來得到這個嗎?

謝謝。

回答

1

對於原始PCM數據,基本上,每個樣本有4個字節。

((283 KB)*(每KB 1024個字節))/(每幀4個字節)==> 72448

但是一個wav可以包括很多除了原始PCM,例如歌曲標題或藝術家信息。

Here's有關wav格式的更多信息。您可能必須以原始字節加載文件來解析標題,但標題的幀大小位於可預測的位置。

也許別人的Android體驗已經炮製出一種方法。 也許谷歌應該把Java看作一個完整的實體,並正確地許可和實現它。

相關問題