2014-04-28 70 views
1

我想這個流網址:http://stream331.overseebrasil.com.br/live_previd_155/definst/live_previd_155/playlist.m3u8流M3U8用的Video.js

<audio id="streaming" class="video-js vjs-default-skin" controls> 
    <source src="http://stream331.overseebrasil.com.br/live_previd_155/_definst_/live_previd_155/playlist.m3u8" type='audio/mp4; codecs=mp4a.40.2' /> 
</audio> 

Safari瀏覽器/蘋果機和Safari/iOS設備工作正常,但代碼不會在Chrome和Firefox上運行。

我試圖從類型屬性中刪除編解碼器的信息,什麼也沒有發生。 火狐說:

Specified "type" attribute of "audio/mp4; codecs=mp4a.40.2" is not supported. Load of media resource http://stream331.overseebrasil.com.br/live_previd_155/_definst_/live_previd_155/playlist.m3u8 failed. 
All candidate resources failed to load. Media load paused. 

我也試圖改變基於MIME頁面(http://www.videojs.com/projects/mimes.html) 有關該問題的任何想法的類型屬性?

回答

5

跨瀏覽器HLS支持正在單獨的插件contrib-hls中進行處理。它在Safari中工作,因爲瀏覽器本身支持HLS回放,但其他方面都沒有,因爲Video.js回退不支持。

嘗試插件非常簡單,但如果您使用的是Video.js的CDN版本,則需要將contrib-hls上傳到某處。

<script src="/path/to/video.js"></script> 
<script src="/path/to/videojs-hls.min.js"></script> 
<script> 
    var player = videojs('video'); 
    player.hls('http://example.com/video.m3u8'); 
</script> 

然後你就可以把球員像往常一樣,player.play()

+0

否「訪問控制允許來源」標頭出現在所請求的資源>>我如何使用這個插件從另一個域加載源而不會出現此錯誤? –

+2

由於m3u8是通過XHR檢索的,所以其他域只需包含CORS頭文件。 –

+0

視頻gular提供了繞過'cors'問題的方法。但我沒有得到它。有人解釋嗎? –