HTML5之视频功能

  1. 云栖社区>
  2. 博客列表>
  3. 正文

HTML5之视频功能

方瑞东 2015-04-06 08:59:00 浏览538 评论0

摘要: HTML5之视频功能 1、Web上的视频 直到现在,仍然不存在一项旨在网页上显示视频的标准。 今天,大多数视频是通过插件(比如 Flash)来显示的。然而,并非所有浏览器都拥有同样的

HTML5之视频功能


1、Web上的视频

直到现在,仍然不存在一项旨在网页上显示视频的标准。

今天,大多数视频是通过插件(比如 Flash)来显示的。然而,并非所有浏览器都拥有同样的插件。

HTML5 规定了一种通过 video 元素来包含视频的标准方法。


2、视频格式

当前,video 元素支持三种视频格式:

格式

IE

Firefox

Opera

Chrome

Safari

Ogg

No

3.5+

10.5+

5.0+

No

MPEG 4

9.0+

No

No

5.0+

3.0+

WebM

No

4.0+

10.6+

6.0+

No

注:

Ogg = 带有 Theora 视频编码和 Vorbis 音频编码的 Ogg 文件

MPEG4 = 带有 H.264 视频编码和 AAC 音频编码的 MPEG 4 文件

WebM = 带有 VP8 视频编码和 Vorbis 音频编码的 WebM 文件


3、工作模式

如需在 HTML5 中显示视频,所需要的是:

<video src="movie.ogg" controls="controls">
</video>
其中,src="movie.ogg" 指视频的本地地址;controls="controls" 指control 属性,供添加播放、暂停和音量控件。

若想制定视频的宽度和高度,<video>与 </video> 之间插入的内容是供不支持 video 元素的浏览器显示的,则:

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

注:

上面的例子使用一个 Ogg文件,适用于Firefox、Opera 以及 Chrome 浏览器。

要确保适用于 Safari浏览器,视频文件必须是 MPEG4 类型。

video 元素允许多个 source 元素。source 元素可以链接不同的视频文件。浏览器将使用第一个可识别的格式:

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

注:InternetExplorer 8 不支持 video 元素。在 IE 9 中,将提供对使用 MPEG4 的 video 元素的支持。


4、<video> 标签的属性

属性

描述

autoplay

autoplay

如果出现该属性,则视频在就绪后马上播放。

controls

controls

如果出现该属性,则向用户显示控件,比如播放按钮。

height

pixels

设置视频播放器的高度。

loop

loop

如果出现该属性,则当媒介文件完成播放后再次开始播放。

preload

preload

如果出现该属性,则视频在页面加载时进行加载,并预备播放。

如果使用 "autoplay",则忽略该属性。

src

url

要播放的视频的 URL。

width

pixels

设置视频播放器的宽度。


5、HTML5 <video> - 使用 DOM 进行控制

HTML5 <video> 元素同样拥有方法、属性和事件。

其中的方法用于播放、暂停以及加载等。其中的属性(比如时长、音量等)可以被读取或设置。其中的 DOM 事件能够通知您,比方说,<video> 元素开始播放、已暂停,已停止,等等。

下例中简单的方法,向我们演示了如何使用 <video> 元素,读取并设置属性,以及如何调用方法。

<!DOCTYPE html>

<html>

<head lang="en">
    <meta charset="UTF-8">
    <title>在线视频播放器</title>
</head>

<body>

<div style="text-align:center;">
    <button onclick="playPause()">播放/暂停</button>
    <button onclick="makeBig()">大</button>
    <button onclick="makeNormal()">中</button>
    <button onclick="makeSmall()">小</button>
    <br />

    <video id="videos/movie.mp4" width="420" style="margin-top:15px;">
        <source src="videos/movie.mp4" type="video/mp4">
        Your browser does not support the video tag.
    </video>
</div>

<script type="text/javascript">
    var myVideo=document.getElementById("videos/movie.mp4");

    function playPause()
    {
        if (myVideo.paused)
            myVideo.play();
        else
            myVideo.pause();
    }

    function makeBig()
    {
        myVideo.width=560;
    }

    function makeSmall()
    {
        myVideo.width=320;
    }

    function makeNormal()
    {
        myVideo.width=420;
    }
</script>
</body>
</html>

上面的例子调用了两个方法:play()和 pause()。它同时使用了两个属性:paused 和 width。

运行效果如下图:



6、HTML5 <video> - 方法、属性以及事件

下面列出了大多数浏览器支持的视频方法、属性和事件:

方法

属性

事件

play()

currentSrc

play

pause()

currentTime

pause

load()

videoWidth

progress

canPlayType

videoHeight

error

 

duration

timeupdate

 

ended

ended

 

error

abort

 

paused

empty

 

muted

emptied

 

seeking

waiting

 

volume

loadedmetadata

 

height

 

 

width

 


注释:在所有属性中,只有videoWidth 和 videoHeight 属性是立即可用的。在视频的元数据已加载后,其他属性才可用。



用云栖社区APP,舒服~

【云栖快讯】云栖社区技术交流群汇总,阿里巴巴技术专家及云栖社区专家等你加入互动,老铁,了解一下?  详情请点击

网友评论

方瑞东
文章170篇 | 关注44
关注
集音视频上传、自动化转码处理、媒体资源管理、分发加速于一体的一站式音视频点播解决方案。 查看详情
基于领先的内容接入与分发网络和大规模分布式实时转码技术打造的音视频直播平台,提供便捷接入、高... 查看详情
是为多媒体数据提供的转码计算服务。它以经济、弹性和高可扩展的音视频转换方法,将多媒体数据转码... 查看详情
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效... 查看详情
建站4折

建站4折