我正在將視頻嵌入網頁並使用mediaelements.js。我用下面的代碼從mediaelements.js例子:Firefox和HTML5視頻元素 - 閃回回退的奇怪行爲。 mediaelemnts.js中可能存在的錯誤
<video width="640" height="360" id="player2" poster="img/echo-hereweare.jpg" controls="controls" preload="none">
<source type="video/mp4" src="somevideo.mp4" />
<source type="video/webm" src="somevideo.webm" />
<source type="video/ogg" src="somevideo.ogv" />
<object width="640" height="360" type="application/x-shockwave-flash" data="flash/flashmediaelement.swf">
<param name="movie" value="flash/flashmediaelement.swf" />
<param name="flashvars" value="controls=true&file=somevideo.mp4" />
<img src="img/echo-hereweare.jpg" width="640" height="360" alt="Here we are"
title="No video playback capabilities" />
</object>
</video>
再後來就從例子是腳本代碼:
<script>
$('audio,video').mediaelementplayer({
success: function(player, node) {
$('#' + node.id + '-mode').html('mode: ' + player.pluginType);
}
});
</script>
然後我在Firefox中發現了一些奇怪的事情。 當我在不啓動mediaelements.js(不使用上面的腳本)的情況下使用此代碼時,firefox會嘗試播放.mp4,但控制檯自然會報告不支持.mp4格式的錯誤。到目前爲止如此正確。
在我的理解中,視頻元素現在應該嘗試下一個格式 - .webm。取而代之的是閃回回退被加載(flashmediaelement.swf)(到目前爲止還沒有播放,因爲播放按鈕沒有被點擊,但仍然完全加載了.swf)。
然後,當我播放視頻時,.webm被下載並播放 - 如預期的那樣。
當我用它來與mediaelements.js甚至怪異的事情正在發生 - .swf文件不僅被完全加載一次,但要求至少一個更多的時間,而不會被下載(你看到它在Firebug的網絡選項卡 - 帶有繁忙微調的黃色線條,就好像它會加載和加載一樣,但沒有錯誤或任何狀態代碼,也沒有顯示文件大小,它看起來有點像「卡住」請求。它的截圖,但目前不允許)。
另外,我在Firebug的控制檯中得到警報,說.webm無法解碼。 .webm-video開始加載,但不會完全加載(狀態碼206)。然後根本沒有視頻播放,因爲.webm試圖播放,但由於解碼錯誤而停止播放。那麼沒有閃回後備跳躍?
我的問題,現在:
- 是在Firefox這是正常的行爲媒體元素 - 即 備用版本的Adobe Flash被加載時,即使不需要嗎?
- 爲什麼它會在第二種場景中加載兩到三次 儘管它不被使用?我想這是一個bug mediaelemnts.js
- 第三,爲什麼firefox播放.webm沒有mediaelements.js 而不是mediaelements.js?我想另一個bug?
Thx任何幫助。
---注意--- 我知道我使用,自帶的mediaelements.js作爲備用解決方案,即使我不使用mediaelements.js瑞士法郎。有誰知道一個簡單的輕量級Flash視頻播放器?或者我必須堅持使用流式播放器作爲標準的Flash視頻播放器?