4

我正在爲Google Chrome編寫擴展程序。我有一種情況:我有一個mp3文件的鏈接,我可以播放它。我可以提取它的持續時間..html5音頻。如何獲得比特率

但我怎麼能計算比特率?是否有可能通過一些屬性?或通過一些使用文件大小的計算?如果第二個 - 如何獲得文件大小?

謝謝。

+0

有沒有更新?我做了一些研究並在下面分享。 – 2012-07-25 03:01:43

+0

我發現唯一的解決方案,使用'HEAD'類型發出Ajax請求,並在..知道文件大小後很容易計算比特率...但似乎它是可怕的解決方案。當然它適用於域限制 – ValeriiVasin 2012-07-25 06:54:12

+0

您是否使用HEAD請求中的Content-Length標頭?我在下面更新了我的答案。 – 2012-07-25 14:09:17

回答

6

更新:

做一個HEAD請求,並從Content-Length header文件大小。既然你知道持續時間,你就可以計算出比特率。

研究:

在這裏,我想分享一些我的研究。

您可能已經知道這一點 - 根據the MP3 format specification將比特率存儲在內部。但我相信你寧願不讀檔案,自己處理所有這些!希望你可以找到工具或API來提供幫助。考慮到這一點......

  • 我環顧四周尋找公共Web API,它將提取MP3的信息,但沒有找到任何跳出我的東西。

  • 如果您可以找到您可以從Chrome訪問的ExifTool版本,則它具有計算比特率的API。

  • 有一個叫做SoundManager的Javascript庫看起來很有前途,但它並不能準確計算比特率。

  • 我看着Web Audio API,但沒有看到特別提到讀MP3文件,因此沒有辦法提取比特率。

+0

我一直在尋找無處不在,找到一個非常類似的問題的答案。我希望能夠使用JS/HTML5來提取mp3音頻信息,比如比特率,採樣率等。有沒有一種方法可以獲得所有這些信息?我甚至不需要閱讀它,我只想識別唯一的文件。 – PixMach 2015-05-02 18:58:10