Javascript 如何使用dash js音频播放器仅播放特定比特率?
我正在使用dash.js库,并通过dash协议为我的音频播放器实现自适应比特率 在其中一种情况下,我面临着一个问题,当我不想自适应地改变比特率时,我希望它是特定的,即320 kbps。我正在使用dash.js库中提供的方法,如下所示。但无法获取整个音频文件的静态比特率段Javascript 如何使用dash js音频播放器仅播放特定比特率?,javascript,media-source,mediastream,adaptive-bitrate,dash.js,Javascript,Media Source,Mediastream,Adaptive Bitrate,Dash.js,我正在使用dash.js库,并通过dash协议为我的音频播放器实现自适应比特率 在其中一种情况下,我面临着一个问题,当我不想自适应地改变比特率时,我希望它是特定的,即320 kbps。我正在使用dash.js库中提供的方法,如下所示。但无法获取整个音频文件的静态比特率段 (function () { var url = "https://xxxxxxxxxxxx.xxxxxxxx.net/myplaylist.mpd"; var player = dashjs.MediaPlay
(function () {
var url = "https://xxxxxxxxxxxx.xxxxxxxx.net/myplaylist.mpd";
var player = dashjs.MediaPlayer().create();
player.initialize(document.querySelector("#audioPlayer"), url, true);
player.setInitialBitrateFor('audio', 320);
player.setQualityFor('audio', 320);
player.setAutoSwitchQualityFor('audio', false);
player.getDebug().setLogToBrowserConsole(false);
})();
所以基本上有两种选择:自动和320kbps
“自动”将允许自适应比特率,但在此后的任何时间选择320 kbps时,它应仅获取该比特率的段
对于后面的场景,我将面临这个问题
有什么方法可以做到这一点吗?我在这里遗漏了什么吗?它没有设置比特率,因为它正在对比特率进行精确匹配 到目前为止,dash.js的比特率设置方式如下 当您执行
player.setInitialBitrateFor('audio',320)时代码>首先它将从mpd文件中获取带宽。
然后是一个内部机制,它将带宽除以1000,然后对值进行四舍五入。因此,如果您的mpd文件包含带宽=“320000”,
然后player.setInitialBitrateFor('audio',320)代码>将起作用
带宽可能会有变化,如321684,它将生成比特率值=321。在这种情况下,您必须执行player.setInitialBitrateFor('audio',321)将起作用
另外,setQualityFor方法将索引作为第二个参数。
所以我们可以这样做
player.setQualityFor('audio', indexValue);
其中考虑到有三个自适应集和
low bitrate (64 kbps) ==> 0 (indexValue)
Medium bitrate (128 kbps) ==> 1 (indexValue)
High bitrate (320 kbps) ==> 2 (indexValue)