【全國】 集團簡介 關注我們
幫學院 商標分類表-2024尼斯分類 知識產(chǎn)權交易

快幫集團

解決html5網(wǎng)頁中video標簽無法播放的方法

2019-03-21

為什么我錄制的MP4視頻在本地可以播放但是使用html5video多媒體播放標簽不能正常播放只有一個進度條而不顯示圖像?


為了避免大家遇到同樣的問題我在這里就給大家普及一下html5關于<video>標簽的知識吧。

 

在使用html4協(xié)議做網(wǎng)站時我們想要在網(wǎng)頁上播放一個視頻要不使用flash去播放,要么就是嵌入式頁面來實現(xiàn),對于html5來說這兩種方法非常的不方便因為一個牛逼哄哄的<video>出現(xiàn)了,這個標簽的功能就是讓多媒體文件可以很方便的在網(wǎng)頁中播放。


html中播放一個視頻只需要一個標簽:

 

    <video src="http://sp.ntaotu.com/localhost-wordpress-phpstudy.mp4" controls="controls" width="500" height="300"></video>

 

    代碼雖然少了很多,但是功能卻很健全,這就是html5的亮點之一吧!

 

關于<video>標簽所支持的視頻格式和編碼:

 

    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<video>標簽。


如果瀏覽器不支持video標簽怎么辦?

 

比如IE瀏覽器還有老版本的瀏覽器對html5的支持不太好,當用戶用這些瀏覽器打開我們帶有視頻的網(wǎng)頁怎么辦呢?

 

我們可以把代碼這樣寫:

 

    <video src="http://sp.ntaotu.com/localhost-wordpress-phpstudy.mp4" controls="controls" width="500" height="300">您的瀏覽器不支持播放該視頻!</video>

 

這樣在不支持html5的瀏覽器中就會提示您的瀏覽器不支持播放該視頻!啦!


關于video標簽的擴展參數(shù)說明:

 

video 元素允許多個 source 元素。source 元素可以鏈接不同的視頻文件。瀏覽器將使用第一個可識別的格式,這樣我們只要多準備幾個不同格式的視頻就可以了。


用法:

 

1,  <video width="500" height="250" controls="controls">

 

2,  <source src="movie.ogg" type="video/ogg">

 

3 <source src="movie.mp4" type="video/mp4">

 

 4,您的瀏覽器不支持此種視頻格式。

 

 5, </video>

 

1,    autoplay :出現(xiàn)該屬性意味著視頻在就緒后將自動播放,用法:autoplay="autoplay"

 

2,  controls :出現(xiàn)該屬性意味著向用戶顯示控件,如播放按鈕等,用法:controls="controls"

 

3,   height:設置高度      width:設置寬度

 

4,   loop:自動重播,用法:loop="loop"

 

5,  preload:視頻在頁面加載時進行加載并預備播放,用法:preload="auto" - 當頁面加載后載入整個視頻;preload="meta" - 當頁面加載后只載入元數(shù)據(jù);preload="none" - 當頁面加載后不載入視頻。注意:若使用了autoplay,則忽略preload

 

6,    src:要播放視頻的url

 

mp4網(wǎng)頁播放有聲音無圖像的解決辦法:

 

關于網(wǎng)頁播放mp4格式的視頻,找了一些插件,這里推薦一下video.js

 

官方網(wǎng)址:http://www.videojs.com/

 

github https://github.com/videojs/video.js/

 

demohttp://www.videojs.com/downloads/video-js-4.12.5.zip

 

使用方法:

 

    引入文件:指派flash播放的swf文件

 

    <link rel="stylesheet">

    <script src="http://example.com/path/to/video.js"></script>

    <script>

    videojs.options.flash.swf = "http://example.com/path/to/video-js.swf"

    </script>

 

    設置video參數(shù)(設置mp4視頻地址)

 

    <video id="example_video_1" class="video-js vjs-default-skin"

    controls preload="auto" width="640" height="264"

    poster="http://video-js.zencoder.com/oceans-clip.png"

    data-setup=‘{"example_option":true}‘>

    <source src="http://video-js.zencoder.com/oceans-clip.mp4" type=‘video/mp4‘ />

    <source src="http://video-js.zencoder.com/oceans-clip.webm" type=‘video/webm‘ />

    <source src="http://video-js.zencoder.com/oceans-clip.ogv" type=‘video/ogg‘ />

    <p class="vjs-no-js">To view this video please enable JavaScript, and consider upgrading to a web browser that <a target="_blank">supports HTML5 video</a></p>

    </video>


使用demo里面的mp4視頻源,播放一切正常,換上自己的mp4源發(fā)現(xiàn)只有聲音并沒有圖像。這讓我很為難。

 

想來想去這跟插件沒關系,跟瀏覽器沒有關系,跟自己視頻源的格式編碼有關系。

 

找了很多辦法,嘗試過swf播放,但是mp4轉碼成swf格式,失真太嚴重,導致視頻很模糊,質量很糟糕。

 

下載了格式工廠,嘗試著轉換了很多格式,都不盡人意。

 

發(fā)現(xiàn)mp4的視頻編碼有三種:MPEG4(DivX),MPEG4(Xvid),AVC(H264),我使用格式工廠一個一個嘗試。

 

最終發(fā)現(xiàn)轉換成AVC(H264)編碼,完美解決問題。

 

總結:網(wǎng)頁播放mp4視頻,出現(xiàn)有聲音無圖像問題,先使用格式工廠轉換mp4->mp4格式,輸出編碼選擇AVC(H264),然后在網(wǎng)頁中代碼調用,看是否解決問題。



TAG標簽耗時:0.006417989730835 秒

文章內(nèi)容來源于網(wǎng)絡,侵刪

常見問題

京公網(wǎng)安備 11010802036823號

   

京ICP備16051929號

   

增值電信業(yè)務許可證編號:京B2-20190686

   

專利代理機構代碼:16087

   

人力資源服務許可證編號:1101082019043

   

代理記賬許可證書編號:DLJZ11010820210015

0