- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
问题如何在流初始化之前以正确的质量初始化 dash.js?
问题:使用 dash.js 设置质量时,播放开始时出现绿色伪影(见下图)。通过响应 STREAM_INITIALIZED
事件,在流初始化后设置质量。
上下文:我正在尝试创建一个带有破折号的应用程序,用户应该能够在其中选择播放质量。此选择将通过使用像这样的 cookie 来设置:cookies.set('preferredQuality', quality.value);
,其中值对应于 0、1、2 或 3(在破折号中设置) .js,setQualityFor 和 setAutoSwitchQualityFor 设置为 false
)。
然后在创建破折号实例的逻辑中,我监听 STREAM_INITIALIZED
事件并尝试在那里设置质量
this.dashJsInstance.on(dashjs.MediaPlayer.events.STREAM_INITIALIZED, this.onStreamInitialized, this);
onStreamInitialized: function() {
const quality = cookies.get('preferredQuality');
if (quality !== -1) {
this.dashJsInstance.setAutoSwitchQualityFor('video', false);
this.dashJsInstance.setQualityFor('video', quality);
}
},
这会导致图像中显示绿色伪影。
最佳答案
不确定这是否是正确答案,但通过监听 onFragmentLoaded
事件解决了这个问题。这绝不是最好的答案,但它确实有效。我们通过做这样的事情来实现它:
onFragmentLoaded: function(e) {
if (e.request && e.request.type === 'InitializationSegment') {
const preferredQuality = quality // Preferred quality;
const currentQuality = current // Current quality;
if (currentQuality !== preferredQuality) {
this.dashJsInstance.setQualityFor('video', preferredQuality);
this.dashJsInstance.setAutoSwitchQualityFor('video', false);
}
}
},
关于javascript - 初始化具有一定质量的 dash.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52035242/
我正在尝试开发右边框/Angular 具有特定 Angular (30°) 的表格。我见过一些类似的解决方案,但它们都无法在一定程度上发挥作用。如果我想从 30° 改变到 20°,我不想花太多力气。
我是一名优秀的程序员,十分优秀!