我使用 dash.js 将以下清单中的内容加载到 HTML5 视频中:MPD 文件。它包含一个视频和四个音轨。我试图弄清楚如何枚举和启用/禁用可用的不同音轨。
我知道,如果将它们作为TRACK
元素添加到元素中,VIDEO
我可以启用/禁用它们,video.audioTracks
但这是不可能的,因为它们是从清单中加载的。
任何关于我如何解决这个问题的指示都将不胜感激。
我使用 dash.js 将以下清单中的内容加载到 HTML5 视频中:MPD 文件。它包含一个视频和四个音轨。我试图弄清楚如何枚举和启用/禁用可用的不同音轨。
我知道,如果将它们作为TRACK
元素添加到元素中,VIDEO
我可以启用/禁用它们,video.audioTracks
但这是不可能的,因为它们是从清单中加载的。
任何关于我如何解决这个问题的指示都将不胜感激。
videoObject.audioTracks[audioTrackIndex].enabled = true;
以下是获取可用品质列表的方法:
// assuming player is the instance of MediaPlayer
var metricsExt = player.getMetricsExt();
var num_qualities = metricsExt.getMaxIndexForBufferType('audio', 0 /*that's the period index*/);
var qualities = [];
for (var i = 0; i < num_qualities; i++) {
qualities.push(metricsExt.getBandwidthForRepresentation(i+1));
}
然后如果用户选择另一种质量:
player.setQualityFor('audio', newQualityIdx);
// newQualityIdx is the 0-based index of the chosen quality
auto-switch-quality
如果用户手动选择质量,您可能还想关闭:
player.setAutoSwitchQuality(false);