在dash.js中,文件DashMetrics.js上有一个函数getBandwidthForRepresentation()。它需要两个参数:representationId和periodId。我可以使用getCurrentRepresentationSwitch()来获取presentationId。但是我不知道如何获取periodId?我可以通过哪个功能获取数据?

我试图在dash-reference-client上看到示例,这令人困惑,但仍然不知道。

谢谢

最佳答案

我知道您的问题有点陈旧,您可能不再需要这个问题,但是如果有人最终需要,我会发送一些代码。

如您所说,getBandwidthForRepresentation()需要2个参数:representationIdperiodId

如何获取representationId:


您需要获取指标:var metrics = player.getMetricsFor('video')
和破折号指标:var dashMetrics = player.getDashMetrics()
现在我们得到了presentationId:var representationId = dashMetrics.getCurrentRepresentationSwitch(metrics).to


如何获得peropdId:


我们获得活动流信息:var streamInfo = player.getActiveStream().getStreamInfo()
我们使用index作为periodId:var periodId = streamInfo.index


如何获得带宽:


我们现在可以获得带宽:var bandwidth = dashMetrics.getBandwidthForRepresentation(representationId, periodId)


完整代码:

var metrics = player.getMetricsFor('video')
var dashMetrics = player.getDashMetrics()
var representationId = dashMetrics.getCurrentRepresentationSwitch(metrics).to
var streamInfo = player.getActiveStream().getStreamInfo()
var periodId = streamInfo.index
var bandwidth = dashMetrics.getBandwidthForRepresentation(representationId, periodId)


希望能帮助到你

关于javascript - 如何在DashMetrics上获取periodId,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35753308/

10-10 02:28