HTML 視頻-6.4HTML 媒體

閱讀 ?·? 發(fā)布日期 2019-07-11 12:44 ?·? admin

在 HTML 中播放視頻的方法有很多種。

實(shí)例

<video width="320" height="240" controls="controls">
  <source src="movie.mp4" type="video/mp4" />
  <source src="movie.ogg" type="video/ogg" />
  <source src="movie.webm" type="video/webm" />
  <object data="movie.mp4" width="320" height="240">
    <embed src="movie.swf" width="320" height="240" />
  </object>
</video>

問題,問題,以及解決方法

在 HTML 中播放視頻并不容易!

您需要諳熟大量技巧,以確保您的視頻文件在所有瀏覽器中(Internet Explorer, Chrome, Firefox, Safari, Opera)和所有硬件上(PC, Mac , iPad, iPhone)都能夠播放。

在本章,W3School 為您總結(jié)了問題和解決方法。

使用 <embed> 標(biāo)簽

<embed> 標(biāo)簽的作用是在 HTML 頁面中嵌入多媒體元素。

下面的 HTML 代碼顯示嵌入網(wǎng)頁的 Flash 視頻:

實(shí)例

<embed src="movie.swf" height="200" width="200"/>

問題

  • HTML4 無法識(shí)別 <embed> 標(biāo)簽。您的頁面無法通過驗(yàn)證。
  • 如果瀏覽器不支持 Flash,那么視頻將無法播放
  • iPad 和 iPhone 不能顯示 Flash 視頻。
  • 如果您將視頻轉(zhuǎn)換為其他格式,那么它仍然不能在所有瀏覽器中播放。

使用 <object> 標(biāo)簽

<object> 標(biāo)簽的作用是在 HTML 頁面中嵌入多媒體元素。

下面的 HTML 片段顯示嵌入網(wǎng)頁的一段 Flash 視頻:

實(shí)例

<object data="movie.swf" height="200" width="200"/>

問題

  • 如果瀏覽器不支持 Flash,將無法播放視頻。
  • iPad 和 iPhone 不能顯示 Flash 視頻。
  • 如果您將視頻轉(zhuǎn)換為其他格式,那么它仍然不能在所有瀏覽器中播放。

使用 <video> 標(biāo)簽

<video> 是 HTML 5 中的新標(biāo)簽。

<video> 標(biāo)簽的作用是在 HTML 頁面中嵌入視頻元素。

以下 HTML 片段會(huì)顯示一段嵌入網(wǎng)頁的 ogg、mp4 或 webm 格式的視頻:

實(shí)例

<video width="320" height="240" controls="controls">
  <source src="movie.mp4" type="video/mp4" />
  <source src="movie.ogg" type="video/ogg" />
  <source src="movie.webm" type="video/webm" />
Your browser does not support the video tag.
</video>

問題

  • 您必須把視頻轉(zhuǎn)換為很多不同的格式。
  • <video> 元素在老式瀏覽器中無效。
  • <video> 元素?zé)o法通過 HTML 4 和 XHTML 驗(yàn)證。

最好的 HTML 解決方法

HTML 5 + <object> + <embed>

<video width="320" height="240" controls="controls">
  <source src="movie.mp4" type="video/mp4" />
  <source src="movie.ogg" type="video/ogg" />
  <source src="movie.webm" type="video/webm" />
  <object data="movie.mp4" width="320" height="240">
    <embed src="movie.swf" width="320" height="240" />
  </object>
</video>

上例中使用了 4 中不同的視頻格式。HTML 5 <video> 元素會(huì)嘗試播放以 mp4、ogg 或 webm 格式中的一種來播放視頻。如果均失敗,則回退到 <embed> 元素。

問題

  • 您必須把視頻轉(zhuǎn)換為很多不同的格式
  • <video> 元素?zé)o法通過 HTML 4 和 XHTML 驗(yàn)證。
  • <embed> 元素?zé)o法通過 HTML 4 和 XHTML 驗(yàn)證。

注釋:使用 <!DOCTYPE html> (HTML5) 解決驗(yàn)證問題。

優(yōu)酷解決方案

在 HTML 中顯示視頻的最簡(jiǎn)單的方法是使用優(yōu)酷等視頻網(wǎng)站。

如果您希望在網(wǎng)頁中播放視頻,那么您可以把視頻上傳到優(yōu)酷等視頻網(wǎng)站,然后在您的網(wǎng)頁中插入 HTML 代碼即可播放視頻:

<embed src="http://player.youku.com/player.php/sid/XMzI2NTc4NTMy/v.swf" 
width="480" height="400" 
type="application/x-shockwave-flash">
</embed>

使用超鏈接

如果網(wǎng)頁包含指向媒體文件的超鏈接,大多數(shù)瀏覽器會(huì)使用“輔助應(yīng)用程序”來播放文件。

以下代碼片段顯示指向 AVI 文件的鏈接。如果用戶點(diǎn)擊該鏈接,瀏覽器會(huì)啟動(dòng)“輔助應(yīng)用程序”,比如 Windows Media Player 來播放這個(gè) AVI 文件:

實(shí)例

<a href="movie.swf">Play a video file</a>

關(guān)于內(nèi)聯(lián)視頻的一段注釋

當(dāng)視頻被包含在網(wǎng)頁中時(shí),它被稱為內(nèi)聯(lián)視頻。

如果您打算在 web 應(yīng)用程序中使用內(nèi)聯(lián)視頻,您需要意識(shí)到很多人都覺得內(nèi)聯(lián)視頻令人惱火。

同時(shí)請(qǐng)注意,用戶可能已經(jīng)關(guān)閉了瀏覽器中的內(nèi)聯(lián)視頻選項(xiàng)。

我們最好的建議是只在用戶希望看到內(nèi)聯(lián)視頻的地方包含它們。一個(gè)正面的例子是,在用戶需要看到視頻并點(diǎn)擊某個(gè)鏈接時(shí),會(huì)打開頁面然后播放視頻。

HTML 4.01 多媒體標(biāo)簽

標(biāo)簽 描述
<applet> 不贊成。定義內(nèi)嵌 applet。
<embed> 不贊成。定義內(nèi)嵌對(duì)象。(HTML5 中允許)
<object> 定義內(nèi)嵌對(duì)象。
<param> 定義對(duì)象的參數(shù)。

HTML 5 多媒體標(biāo)簽

標(biāo)簽 描述
<video> 標(biāo)簽定義聲音,比如音樂或其他音頻流。
<embed> 標(biāo)簽定義嵌入的內(nèi)容,比如插件。