多站點都會使用到視頻. HTML5 提供了展示視頻的標準。
檢測您的瀏覽器是否支持 HTML5 視頻:
檢測
Web站點上的視頻
直到現在,仍然不存在一項旨在網頁上顯示視頻的標準。
今天,大多數視頻是通過插件(比如 Flash)來顯示的。然而,并非所有瀏覽器都擁有同樣的插件。
HTML5 規定了一種通過 video 元素來包含視頻的標準方法。
瀏覽器支持
Internet Explorer 9+, Firefox, Opera, Chrome, 和 Safari 支持 <video> 元素.
注意: Internet Explorer 8 或者更早的IE版本不支持 <video> 元素。
HTML5 (視頻)- 如何工作
如需在 HTML5 中顯示視頻,您所有需要的是:
實例
<video width="320" height="240" controls>
<source src="movie.mp4" type="video/mp4">
<source src="movie.ogg" type="video/ogg">
您的瀏覽器不支持Video標簽。
</video>
<video> 元素提供了 播放、暫停和音量控件來控制視頻。
同時<video> 元素元素也提供了 width 和 height 屬性控制視頻的尺寸.如果設置的高度和寬度,所需的視頻空間會在頁面加載時保留。。如果沒有設置這些屬性,瀏覽器不知道大小的視頻,瀏覽器就不能再加載時保留特定的空間,頁面就會根據原始視頻的大小而改變。
<video> 與</video> 標簽之間插入的內容是提供給不支持 video 元素的瀏覽器顯示的。
<video> 元素支持多個 <source> 元素. <source> 元素可以鏈接不同的視頻文件。瀏覽器將使用第一個可識別的格式:
視頻格式與瀏覽器的支持
當前, <video> 元素支持三種視頻格式: MP4, WebM, 和 Ogg:
瀏覽器 | MP4 | WebM | Ogg |
---|---|---|---|
Internet Explorer | YES | NO | NO |
Chrome | YES | YES | YES |
Firefox | YES | YES | YES |
Safari | YES | NO | NO |
Opera | YES (從 Opera 25 起) | YES | YES |
MP4 = 帶有 H.264 視頻編碼和 AAC 音頻編碼的 MPEG 4 文件
WebM = 帶有 VP8 視頻編碼和 Vorbis 音頻編碼的 WebM 文件
Ogg = 帶有 Theora 視頻編碼和 Vorbis 音頻編碼的 Ogg 文件
視頻格式
格式 | MIME-type |
---|---|
MP4 | video/mp4 |
WebM | video/webm |
Ogg | video/ogg |
HTML5 <video> - 使用 DOM 進行控制
HTML5 <video> 和 <audio> 元素同樣擁有方法、屬性和事件。
<video> 和 <audio>元素的方法、屬性和事件可以使用JavaScript進行控制.
其中的方法有用于播放、暫停以及加載等。其中的屬性(比如時長、音量等)可以被讀取或設置。其中的 DOM 事件能夠通知您,比方說,<video> 元素開始播放、已暫停,已停止,等等。
例中簡單的方法,向我們演示了如何使用 <video> 元素,讀取并設置屬性,以及如何調用方法。
實例 1
為視頻創建簡單的播放/暫停以及調整尺寸控件:
播放/暫停 放大 縮小 普通
上面的例子調用了兩個方法:play() 和 pause()。它同時使用了兩個屬性:paused 和 width。
HTML5 Video 標簽
標簽 | 描述 |
---|---|
<video> | 定義一個視頻 |
<source> | 定義多種媒體資源,比如 <video> 和<audio> |
<track> | 定義在媒體播放器文本軌跡 |
共支持三種格式: Ogg、MPEG4、WebM。但這三種格式對于瀏覽器的兼容性卻各不同。
格式 IE Firefox Opera Chrome Safari
Ogg No 3.5+ 10.5+ 5.0+ No
MPEG4 9.0+ No No 5.0+ 3.0+
WebM No 4.0+ 10.6+ 6.0+ No
NO:代表不支持這款瀏覽器。
X.0+:表示支持這款及版本更高的瀏覽器。
這些大家應該都知道,所以這個不是我說的重點
下面來說一下我今天做項目遇到的問題:
我在項目中需要插入一段視頻,視頻是甲方提供的,當時我們寫的要求是提供一個mp4格式的就可以了。甲方提供的也確實是MP4格式的,但是瀏覽器竟然不支持。這個是為什么?不是說好的支持MP4格式的嗎?然后我開始查資料,才明白原來MP4只是一個容器,里面還有一個叫編碼器的東西。格式雖然都是MP4但是html中只支持H.264的編碼格式。所以要用軟件來轉碼。軟件我已經上傳到資源里面了。感興趣的可以下載看看。
關于標簽所支持的視頻格式和編碼:
MP4 = MPEG 4文件使用 H264 視頻編解碼器和AAC音頻編解碼器
WebM = WebM 文件使用 VP8 視頻編解碼器和 Vorbis 音頻編解碼器
Ogg = Ogg 文件使用 Theora 視頻編解碼器和 Vorbis音頻編解碼器
使用方法(以MP4為例)
第一步
第二步
第三步
開源精選》是我們分享Github、Gitee等開源社區中優質項目的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是一個開源的 HTML5 視頻播放器插件——MuiPlayer。
MuiPlayer 是一個開源的HTML5視頻播放插件,其默認配置了精美可操作的的播放控件,涉及了常用的播放場景,例如全屏播放、播放快進、循環播放、音量調節等功能。支持 mp4、m3u8、flv 等多種媒體格式播放,解決大部分兼容問題,同時適應在PC、手機端播放。
使用 npm 安裝:
npm i mui-player --save
使用 yarn 安裝:
yarn add mui-player
1 使用 script 標簽引入:
<!-- 引入基礎樣式文件 mui-player.min.css -->
<link rel="stylesheet" type="text/css" href="css/mui-player.min.css"/>
<!-- 引入基礎腳本 mui-player.min.js -->
<script type="text/javascript" src="js/mui-player.min.js"></script>
<!-- 指定播放器容器 -->
<div id="mui-player"></div>
或者使用模塊管理器引入:
import 'mui-player/dist/mui-player.min.css'
import MuiPlayer from 'mui-player'
2 定義播放器容器
<div id="mui-player"></div>
3 初始化構建播放器
// 初始化 MuiPlayer 插件,MuiPlayer 方法傳遞一個對象,該對象包括所有插件的配置
var mp = new MuiPlayer({
container:'#mui-player',
title:'標題',
src:'./static/media/media.mp4',
})
以上就能為初始化構建一個具有默認配置控件的視頻播放器。
更多API基礎配置: https://muiplayer.js.org/zh/guide/api.html#%E4%B8%BB%E8%A6%81%E9%85%8D%E7%BD%AE
更多內容大家可自行前往閱讀。
開源地址:https://gitee.com/muiplayer/hello-muiplayer
*請認真填寫需求信息,我們會在24小時內與您取得聯系。