簡體   English   中英

Mediaelement.js視頻在Chrome中恢復播放問題

[英]Mediaelementjs video resume playback issues in Chrome

可以使用一些幫助。 我們的網站上有一些Brightcove托管的MP4視頻。 使用帶有Flash后備功能的Mediaelementjs的HTML5視頻播放器來顯示它們。

問題是:當用戶使用標准的Mediaelementjs控件暫停並恢復視頻時,視頻並不總是恢復。 有時,它只是回到開始。 當視頻尚未完全加載時,這種情況在很大程度上(但並非總是如此)發生。 哦,似乎只有Chrome會受影響。

現在,工作的最后一部分如下:在Chrome開發工具中檢查視頻通常會給我們顯示“已檢查元素已崩潰”消息,從而浪費了整個標簽。

知道是什么原因造成的嗎? 首先,我為如何調試問題而煩惱。 我已經嘗試過刪除頁面上所有有沖突的腳本,並使用preload屬性,但都無濟於事。

<div class="mejs-mediaelement"><video id="foo" style="width: 100%; height: 100%;" width="622" height="321" poster="foo">
<source id="foo" src="foo" type="video/mp4">
<object width="600" style="width: 100%; height: 100%;" height="338" type="application/x-shockwave-flash" src="/js/mediaelement/flashmediaelement.swf" data="/js/mediaelement/flashmediaelement.swf">
    <param name="movie" value="/js/mediaelement/flashmediaelement.swf">
    <param name="flashvars" value="foo">
</object>

在您的中介JS lib文件中,搜索:

htmlMediaElement.canPlayType(mediaFiles[i].type).replace(/no/, '')

更改:

if (htmlMediaElement.canPlayType(mediaFiles[i].type).replace(/no/, '') !== '' 
    // special case for Mac/Safari 5.0.3 which answers '' to canPlayType('audio/mp3') but 'maybe' to canPlayType('audio/mpeg')
    || htmlMediaElement.canPlayType(mediaFiles[i].type.replace(/mp3/,'mpeg')).replace(/no/, '') !== '') {

至:

if (htmlMediaElement.canPlayType(mediaFiles[i].type).replace(/no|maybe/, '') !== '' 
    // special case for Mac/Safari 5.0.3 which answers '' to canPlayType('audio/mp3') but 'maybe' to canPlayType('audio/mpeg')
    || htmlMediaElement.canPlayType(mediaFiles[i].type.replace(/mp3/,'mpeg')).replace(/no|maybe/, '') !== '') {

讓我知道它是否對您有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM