為什么我錄制的MP4視頻在本地可以播放但是使用html5的video多媒體播放標(biāo)簽不能正常播放只有一個進(jìn)度條而不顯示圖像?
為了避免大家遇到同樣的問題我在這里就給大家普及一下html5關(guān)于標(biāo)簽的知識吧。
在使用html4協(xié)議做網(wǎng)站時我們想要在網(wǎng)頁上播放一個視頻要不使用flash去播放,要么就是嵌入式頁面來實現(xiàn),對于html5來說這兩種方法非常的不方便因為一個牛逼哄哄的出現(xiàn)了,這個標(biāo)簽的功能就是讓多媒體文件可以很方便的在網(wǎng)頁中播放。
html中播放一個視頻只需要一個標(biāo)簽:
代碼雖然少了很多,但是功能卻很健全,這就是html5的亮點之一吧!
關(guān)于標(biāo)簽所支持的視頻格式和編碼:
MP4 = MPEG 4文件使用 H264 視頻編解碼器和AAC音頻編解碼器
WebM = WebM 文件使用 VP8 視頻編解碼器和 Vorbis 音頻編解碼器
Ogg = Ogg 文件使用 Theora 視頻編解碼器和 Vorbis音頻編解碼器
通過上面的信息我們會發(fā)現(xiàn)只有h264編碼的MP4視頻(MPEG-LA公司)、VP8編碼的webm格式的視頻(Google公司)和Theora編碼的ogg格式的視頻(iTouch開發(fā))可以支持html5的標(biāo)簽。
如果瀏覽器不支持video標(biāo)簽怎么辦?
比如IE瀏覽器還有老版本的瀏覽器對html5的支持不太好,當(dāng)用戶用這些瀏覽器打開我們帶有視頻的網(wǎng)頁怎么辦呢?
我們可以把代碼這樣寫:
您的瀏覽器不支持播放該視頻!
這樣在不支持html5的瀏覽器中就會提示“您的瀏覽器不支持播放該視頻!”啦!
關(guān)于video標(biāo)簽的擴(kuò)展參數(shù)說明:
video 元素允許多個 source 元素。source 元素可以鏈接不同的視頻文件。瀏覽器將使用第一個可識別的格式,這樣我們只要多準(zhǔn)備幾個不同格式的視頻就可以了。
用法:
1,
2,
3
4,您的瀏覽器不支持此種視頻格式。
5,
1, autoplay :出現(xiàn)該屬性意味著視頻在就緒后將自動播放,用法:autoplay="autoplay"
2, controls :出現(xiàn)該屬性意味著向用戶顯示控件,如播放按鈕等,用法:controls="controls"
3, height:設(shè)置高度 width:設(shè)置寬度
4, loop:自動重播,用法:loop="loop"
5, preload:視頻在頁面加載時進(jìn)行加載并預(yù)備播放,用法:preload="auto" - 當(dāng)頁面加載后載入整個視頻;preload="meta" - 當(dāng)頁面加載后只載入元數(shù)據(jù);preload="none" - 當(dāng)頁面加載后不載入視頻。注意:若使用了autoplay,則忽略preload
6, src:要播放視頻的url
mp4網(wǎng)頁播放有聲音無圖像的解決辦法:
關(guān)于網(wǎng)頁播放mp4格式的視頻,找了一些插件,這里推薦一下video.js
官方網(wǎng)址:http://www.videojs.com/
github :https://github.com/videojs/video.js/
demo:http://www.videojs.com/downloads/video-js-4.12.5.zip
使用方法:
①引入文件:指派flash播放的swf文件
② 設(shè)置video參數(shù)(設(shè)置mp4視頻地址)
controls preload="auto" width="640" height="264"
poster="http://video-js.zencoder.com/oceans-clip.png"
data-setup=‘{"example_option":true}‘>
webm" type=‘video/webm‘ />
To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video
使用demo里面的mp4視頻源,播放一切正常,換上自己的mp4源發(fā)現(xiàn)只有聲音并沒有圖像。這讓我很為難。
想來想去這跟插件沒關(guān)系,跟瀏覽器沒有關(guān)系,跟自己視頻源的格式編碼有關(guān)系。
找了很多辦法,嘗試過swf播放,但是mp4轉(zhuǎn)碼成swf格式,失真太嚴(yán)重,導(dǎo)致視頻很模糊,質(zhì)量很糟糕。
下載了格式工廠,嘗試著轉(zhuǎn)換了很多格式,都不盡人意。
發(fā)現(xiàn)mp4的視頻編碼有三種:MPEG4(DivX),MPEG4(Xvid),AVC(H264),我使用格式工廠一個一個嘗試。
最終發(fā)現(xiàn)轉(zhuǎn)換成AVC(H264)編碼,完美解決問題。
總結(jié):網(wǎng)頁播放mp4視頻,出現(xiàn)有聲音無圖像問題,先使用格式工廠轉(zhuǎn)換mp4->mp4格式,輸出編碼選擇AVC(H264),然后在網(wǎng)頁中代碼調(diào)用,看是否解決問題。
|