整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

HTML5 Video(视频)

多站点都会使用到视频. 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:

浏览器MP4WebMOgg
Internet ExplorerYESNONO
ChromeYESYESYES
FirefoxYESYESYES
SafariYESNONO
OperaYES (从 Opera 25 起)YESYES
  • MP4 = 带有 H.264 视频编码和 AAC 音频编码的 MPEG 4 文件

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

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

视频格式

格式MIME-type
MP4video/mp4
WebMvideo/webm
Oggvideo/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>定义在媒体播放器文本轨迹

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

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

在HTML5中,video元素目前支持三种格式的视频文件,

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

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

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

那么在HTML5中如何显示视频呢?例子如下:

<video src="demo.mp4" width="500" height="250" controls="controls">您的浏览器不支持此种视频格式。</video>

好了,现在来解释下video元素中各属性的含义,其中width、height就不解释了啊,主要说下controls,顾名思义,controls 就是控件们,哈哈,就是视频的播放、音量暂停等控件。video元素中间插入的汉字,聪明的你一定知道的,是提示用户浏览器不支持视频格式使用的。

需要注意的是,要确保适用于Safari 浏览器,视频文件必须是 MP4类型。而ogg格式的视频则是适用于Firefox、Opera 以及Chrome 浏览器。Internet Explorer 8 不支持 video 元素。在 IE 9 中,将提供对使用 MPEG4 的 video 元素的支持。

当然了,我们如果不确定自己的浏览器支持什么格式的视频,可以先检测一下。若是不想麻烦,那怎么办呢?我们可以这样:

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

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

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

您的浏览器不支持此种视频格式。

</video>

video 元素允许多个 source 元素。source 元素可以链接不同的视频文件。浏览器将使用第一个可识别的格式,这样我们只要多准备几个不同格式的视频就可以了。

接下来,介绍几个video标签的属性

1.autoplay :出现该属性意味着视频在就绪后将自动播放,用法:autoplay="autoplay"

2.controls :出现该属性意味着向用户显示控件,如播放按钮等,用法:controls="controls"

3.height:设置高度

4.width:设置宽度

5.loop:自动重播,用法:loop="loop"

6.preload:视频在页面加载时进行加载并预备播放,用法:preload="auto"

auto - 当页面加载后载入整个视频

meta - 当页面加载后只载入元数据

none - 当页面加载后不载入视频

注意:若使用了autoplay,则忽略preload

7.src:要播放视频的url

更多嵌入式、物联网、安卓、Java、HTML5等请继续关注华清远见成都中心!

在QWebEngineView中播放HTML视频,可以使用HTML5的video元素。首先,确保你已经加载了包含视频标签的HTML页面。然后,在QWebEngineView中执行以下步骤:

1. 获取QWebEnginePage对象:

```cpp

QWebEnginePage *page = view->page();

```

2. 注册一个JavaScript回调函数来处理视频事件:

```cpp

QObject::connect(page, &QWebEnginePage::loadFinished, [=](bool ok) {
if (ok) {
page->runJavaScript("document.getElementsByTagName('video')[0].addEventListener('ended', function() { window.videoEnded(); });");
}
});

```

这个示例中,我们注册了一个名为`videoEnded()`的JavaScript函数来处理视频结束事件。

3. 在C++代码中定义一个槽函数来处理视频结束事件:

```cpp

public slots:
void handleVideoEnded();

```

4. 将槽函数与JavaScript回调函数关联起来:

```cpp

QObject::connect(page, &QWebEnginePage::javaScriptWindowObjectCleared, [=]() {
page->mainFrame()->addToJavaScriptWindowObject("window", this);
});

```

5. 在槽函数中实现逻辑:

```cpp

void MyClass::handleVideoEnded()
{
// 处理视频结束事件的逻辑
}

```

6. 在JavaScript中调用C++槽函数:

```javascript

function videoEnded() {
window.videoEnded();
}

```

通过这些步骤,你就可以在QWebEngineView中播放和处理HTML视频了。请注意,这里只提供了基本的示例,具体实现可能需要根据你的具体需求进行调整。