2014-06-28 89 views
1

我需要從瀏覽器動態播放MPEG-1文件。將它們上傳到YouTube或轉換視頻不是一種選擇。在HTML中播放MPEG-1視頻

我該怎麼做? 我見過這個,但答案不適用於MPEG-1。 Is there a way to play mpeg videos in HTML5?

視頻標籤不工作的文件,瀏覽器:

<video class="fullscreen" autoplay> 
    <source src="video/test2.mpeg"> 
</video> 

它只是顯示一個黑盒子和口吃噪音/聲音。我可以驗證視頻沒有損壞,因爲我可以使用VLC播放它。我只需要這個工作在一個特定的瀏覽器上(它不一定是交叉兼容的)。只要我不必轉換視頻,插件也可以。儘管我寧願避開它們。

回答

2

有些瀏覽器故意不支持<video>中的舊格式,以限制Web上蹩腳,遺留且可能不安全的視頻格式數量。

有工作像樣的機會,唯一的組合是H.264(MP4)的WebM(或Ogg Theora格式),所以你必須轉換視頻有很好的瀏覽器支持,你將不得不至少生成這兩種格式。

好消息是現代編解碼器比MPEG-1更有效率,所以你會得到更小的文件。


其他選項可能包括:

  • 讓用戶直接鏈接到視頻,使他們可以下載並像VLC外部播放器上播放。

  • 使用oldschool嵌入視頻<object>元素,並希望某些瀏覽器仍然具有可以播放視頻的舊版插件(但Chrome最近已移除了對所有插件的支持,除了專門爲Chrome自己的API編寫的一些插件外)。

  • 使用Emscripten(asm.js)將MPEG-1解碼器編譯爲JavaScript並自行將視頻解碼到<canvas>。 JS這些日子已經足夠快了(雖然它會迅速耗盡移動設備的電量,而糟糕的視頻編解碼器與JS解碼器的額外下載相結合將會帶來巨大的帶寬浪費)。