如何在jwplayer 6自动模式下找到质量的比特率值?

问题描述 投票:2回答:1

我想知道在jwplayer 6的自动模式下视频播放过程中的比特率。视频开始时,所选值为“自动”。但与其他值不同,“自动”值不包括比特率或其他参数。

我的默认参数:

primary: "flash",
autostart:"true"

我读过this post,但它没有帮助我。

有人可以帮帮我吗?

javascript jwplayer jwplayer6 bitrate
1个回答
2
投票

我从@EthanJWPlayer获得了一个演示。这是非常明确的演示..而且我简化了代码。

首先在jwplayer函数上添加此方法:

var bitrateList = [],
    bandwidth = 0,
    currentBitrate =0,
    levels; 

jwplayer().setup({
....          
    events: 
        onQualityChange: function(callback) {
            levels = callback.levels;
            render();
        },

        onQualityLevels: function(callback) {
            levels = callback.levels;
            render();
        },

        onMeta: function(event) {
            if (event.metadata.bandwidth) {
                var b = event.metadata.bandwidth;
                var l = Number(event.metadata.currentLevel.substr(0, 1));
                if (b != bandwidth) {
                    bandwidth = b;
                    currentBitrate = bitrateList[l - 1];
                }
            }
        }
});

function render() {
    bitrateList = [];
    for (var i = 1; i < levels.length; i++) {
        bitrateList.push(levels[i].bitrate);
    }
}

您可以从“currentBitrate”变量中获取JavaScript代码的任何位置。例如:

sendStatistics(currentBitrate);

除自适应比特率流(adaptive streaming - jw播放器自动模式)外,还根据当前带宽更改每秒比特率值。如果你想获得比特率的值,请在代码上方附加并获得currentBitrate值。

© www.soinside.com 2019 - 2024. All rights reserved.