摘 要: 本文通过对HTML 5中视频和音频重要事件的研究,总结出HTML 5中重要事件在什么时候使用其中重要的相关属性,并以实例利用事件相关属性进行设置,给读者以相应启发。

关键字:HTML 5;视频;音频;事件;加载;属性

中图分类号:TP393.092 文献标识码:A DOI:10.3969/j.issn.1003-6970.2013.07.012

本文著录格式:[1]李超. HTML 5中视频和音频核心事件的相关研究[J].软件,2013,34(7):35-36

0 引言

HTML 5中的视频和音频中有不少核心的事件,有的比较容易理解,基本能从字面解析,比如“play”事件。而有的则不容易理解,特别是“progress”事件。因此,在本文中,将带领读者研究HTML 5视频和音频中重要的事件,探究这些事件是应该在什么时候使用其中的重要相关属性。

1 播放相关的事件

先看下视频和音频中的playback事件。plackback事件发生的时机在播放媒体或停止媒体中。其中“play”和“pause”事件分别在媒体播放和停止的时候触发,但也有一个“ended”事件,该事件是在媒体播放完毕到达最后的时候触发,无论是正常情况下的结束或是用户自己动播放条到媒体文件的最后。

2 关于加载事件

2.1 loadedmetadata事件

这里,不同浏览器是有差别的。在Mobile Safari中,preload的属性其实没声明,等于设置为“none”。但在IE 10中,媒体的元数据默认是自动加载的,所以preload设置为none其实跟设置为metadata的作用是一样的。

2.2 canplay事件

2.3 canplaythrough事件

2.4 Progress事件

重点看一下progress事件。该事件在数据正在下载的时候会触发。当preload设置为none的时候,progress事件在知道播放事件真正开始前是不会触发的。如果preload设置为“metadata”,则该事件会短暂触发大概几秒,然后停止,直到真正的播放行为开始时才触发;如果preload设置为“auto”,则会触发一直直到整个媒体文件下载完毕。

无论preload如何设置,一旦用户开始进行播放的行为,则浏览器会开始下载整个媒体文件,会持续触发progress事件,一直到整个文件下载完毕,即使视频被暂停。

当数据下载后,需要了解如何用时间表达这个progress的事件,则深入了解progress事件是十分重要的。当数据开始加载时,会创建表示媒体播放时间的范围,比如一旦头10秒的数据已经加载,则以数组的方式记录了开始和结束时间,如下的方式表示:[0,10]

实际上是会有多个时间范围存在的,比如用户手工使用播放器的进度条去移动到想要的位置,则浏览器会忽略当前的时间范围而加载新的部分而不是象Flash那样重新加载两个时间点之间的部分。

3 结束语

由于HTML 5的新特性使Web开发人员能够较轻松的完成视频、音频与网页中的其他内容的整合,为Internet上的多媒体应用提供了新的思路,具有非常广泛的应用前景。做为Web开发人员,应该尽快掌握HTML 5中视频和音频中重要事件的新特性并加以应用,为HTML 5的推广和发展推波助澜。

参考文献

[1]李安琪,HTML5标准实施与未来发展,信息技术与标准化,2012.11

[2]王江静,Web应用的新技术HTML5,电脑知识与技术,2012.11

[3]刘天寅,浅析HTML5在多媒体上的应用前景,硅谷,2010.20

html5 音频事件,HTML5中视频和音频核心事件的相关研究相关推荐

  1. php怎样查看视频播放的进度条,H5中视频与音频标签和进度条如何使用

    这次给大家带来H5中视频与音频标签和进度条如何使用,H5中视频与音频标签和进度条使用的注意事项有哪些,下面就是实战案例,一起来看一下. 最近项目中使用Html5的video和audio标签来在线播放视 ...

  2. android 播放3gp音频,说说 Android 中如何操作音频与视频文件

    1 音频 在 Android 中播放音频文件用的是 MediaPlayer 类,它提供了一些较为常用的控制方法. 方法 说明 setDataSource() 指定音频文件位置. prepare() 准 ...

  3. 事件抽取中的“门面技术”:事件名称生成浅谈

    6月10日,"网信中国"微信公众号发布消息称:微博热搜榜.热门话题榜暂停更新一周,这使得很多热榜平台都受到波及,而在吃瓜之余,我们更进一步地思考热点榜单以及热点名称生成背后的技术, ...

  4. java中action事件_Java中,()接口可以处理ActionEvent事件_学小易找答案

    [单选题]Test中已定义Public float m(float a,float b),在类Test中增加()方法将会编译错误 [单选题]如下代码,()可以使成员变量m被函数fun()直接访问 cl ...

  5. 在html中搜索按钮事件,html中button绑定点击事件的几种方法介绍

    HTML中为button绑定事件的方式有三种. 例如以下标签: submit 一.使用jquery进行绑定$('#btn_submit').click(function(){ }); 二.使用原生js ...

  6. python实时音频处理_Python中的实时音频处理

    我正在写一个程序来检查电脑记录的音频信号中是否有小故障.在检测到音频后,我想检查数据的前5秒是否有问题(以44.1kHz的采样率对应220500个样本),继续到下一个5秒的数据并检查其中是否有问题,然 ...

  7. php 单选框选中事件,html中的checkbox和radio事件选择用法详解

    radio注册了click事件以后,神奇的是用键盘上的上下左右选择时,居然会触发鼠标事件,滚轮也会触发,这种神奇的事情在mousedown下面是不会发生的.(webkit不能使用上下左右选择) che ...

  8. 在php中焦点事件,Js中的onblur和onfocus事件(图文教程)

    html页面中,诸如按钮.文本框等可视元素都具有拥有和失去焦点的事件,这些事件在响应鼠标或键盘动作时都可激发预设的操作.本文以文本框获得和失去焦点为例简单讲解onfocus和onblur的应用. 一. ...

  9. oracle9i查等待事件,Oracle9i中的一个特殊等待事件

    那是不是我们每当遇到性能问题的时候都要patch到9.2.0.3呢? 我们已经知道他的真实情况依然在v$session_wait的p1.p2.p3参数里体现,所以,我们可以根据这些参数,找出这个nul ...

最新文章

  1. 比较零知识证明算法zkSNARK,zkSTARKs,zkBoo,Sonic,BulletProofs
  2. ZOJ3715 竞选班长求最小花费
  3. Oracle checkpoint详解
  4. Delphi笔记整理(二)
  5. zabbix的入门与配置
  6. 查看数值类型python_python里怎么查看数据类型
  7. 微信小程序中识别html标签的方法
  8. 【手势识别】基于matlab GUI肤色手势识别【含Matlab源码 716期】
  9. 火山PC_数据库知识_MySQL操作
  10. java拦截器与AOP的区分理解
  11. 网络弱电工程办理签证注意九个方面
  12. 软考信息安全工程师考试大纲第二版
  13. 存储器类型与S3C2440启动地址
  14. 在阿里云云虚拟主机上个人网站的Https访问配置
  15. python实现推广小项目
  16. RFID标签的基础知识(3)--了解芯片(之超高频标签芯片篇)
  17. 无线传感网路由协议(一)
  18. Unity3D学习系列教程
  19. javascript设计模式-中介者模式(mediator pattern)
  20. JAVA 接口 验证哥特巴赫猜想

热门文章

  1. java 找到一行 更换单词_Java实现对一行英文进行单词提取功能示例
  2. Leetcode学习成长记:天池leetcode基础训练营Task02链表
  3. input输入框只能输入正整数
  4. 指向结构体变量的指针变量
  5. System Verilog自学笔记专栏概述博文目录
  6. MATLAB基础数组操作及循环语句语法简介
  7. ROS Nodelet使用
  8. HDU-1796 How many integers can you find 容斥定理
  9. 从Myeclipe转向Idea,各种遇坑与填坑经验,持续更新(图文)
  10. 计算机病毒教学评课,计算机病毒评课稿.docx