我的Chrome扩展程序显示了.mp3
文件的链接列表,我需要获取每个元素的比特率。我该如何计算呢?
更新
解决了它。
答案 0 :(得分:7)
用这个简单的AJAX请求解决了它:
var audioLink = document.querySelector('.my_audio_link_class');
var durationBlock = document.querySelector('.element_with_duration_in_text_class').innerText.split(':'); //it has string '1:36' for example and i create new array with minutes and seconds
var duration = durationBlock[0]*60 + +durationBlock[1]; //convert minutes into seconds and convert string with second into integer, then summarize them
function (audioLink, duration) {
var xmlhttp = new XMLHttpRequest();
xmlhttp.overrideMimeType('text/xml');
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
var size = xmlhttp.getResponseHeader('Content-Length');//get file size
var kbit=size/128;//calculate bytes to kbit
var kbps= Math.ceil(Math.round(kbit/duration)/16)*16;
console.log(kbps);
}
};
xmlhttp.open("HEAD", audioLink, true);
xmlhttp.send();
}
希望它可以帮助别人并抱歉我的英语不好。