我正在爲Google Chrome編寫擴展程序。我有一種情況:我有一個mp3文件的鏈接,我可以播放它。我可以提取它的持續時間..html5音頻。如何獲得比特率
但我怎麼能計算比特率?是否有可能通過一些屬性?或通過一些使用文件大小的計算?如果第二個 - 如何獲得文件大小?
謝謝。
我正在爲Google Chrome編寫擴展程序。我有一種情況:我有一個mp3文件的鏈接,我可以播放它。我可以提取它的持續時間..html5音頻。如何獲得比特率
但我怎麼能計算比特率?是否有可能通過一些屬性?或通過一些使用文件大小的計算?如果第二個 - 如何獲得文件大小?
謝謝。
更新:
做一個HEAD請求,並從Content-Length header文件大小。既然你知道持續時間,你就可以計算出比特率。
研究:
在這裏,我想分享一些我的研究。
您可能已經知道這一點 - 根據the MP3 format specification將比特率存儲在內部。但我相信你寧願不讀檔案,自己處理所有這些!希望你可以找到工具或API來提供幫助。考慮到這一點......
我環顧四周尋找公共Web API,它將提取MP3的信息,但沒有找到任何跳出我的東西。
如果您可以找到您可以從Chrome訪問的ExifTool版本,則它具有計算比特率的API。
有一個叫做SoundManager的Javascript庫看起來很有前途,但它並不能準確計算比特率。
我看着Web Audio API,但沒有看到特別提到讀MP3文件,因此沒有辦法提取比特率。
我一直在尋找無處不在,找到一個非常類似的問題的答案。我希望能夠使用JS/HTML5來提取mp3音頻信息,比如比特率,採樣率等。有沒有一種方法可以獲得所有這些信息?我甚至不需要閱讀它,我只想識別唯一的文件。 – PixMach 2015-05-02 18:58:10
有沒有更新?我做了一些研究並在下面分享。 – 2012-07-25 03:01:43
我發現唯一的解決方案,使用'HEAD'類型發出Ajax請求,並在..知道文件大小後很容易計算比特率...但似乎它是可怕的解決方案。當然它適用於域限制 – ValeriiVasin 2012-07-25 06:54:12
您是否使用HEAD請求中的Content-Length標頭?我在下面更新了我的答案。 – 2012-07-25 14:09:17