html5音频视频专题

总结

1、 操作的就是video和audio两个对象,这两个对象有他们的属性和方法,通过对象的id就可以操作他们

<audio src="../video/琴箫合奏.mp3" controls="controls"></audio><br>

<video id="video" src="../video/qsmy.mp4" controls="controls" width="400"></video>

2、得到了video和audio对象,然后来操作这两者就不要太容易

学习要点

  • 掌握HTML5中音频视频的属性方法事件

基础知识回顾

video

  • src 要播放的视频的 URL。
  • autoplay 如果出现该属性,则视频在就绪后马上播放。
  • controls 如果出现该属性,则向用户显示控件,比如播放按钮。
  • height/width 设置视频播放器的高度/宽度。
  • loop 如果出现该属性,则当媒介文件完成播放后再次开始播放。
  • preload 如果出现该属性,则视频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。

audio

  • src 要播放的视频的 URL。
  • autoplay 如果出现该属性,则视频在就绪后马上播放。
  • controls 如果出现该属性,则向用户显示控件,比如播放按钮。
  • loop 如果出现该属性,则当媒介文件完成播放后再次开始播放。
  • preload 如果出现该属性,则视频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。

video/audio 方法

  1. play() 播放媒体文件 自动把paused属性变为flase
  2. pause() 暂停,自动把paused属性变为true
  3. load()加载媒体文件,为播放做准备。通常用于播放前的预加载。
  4. canPlayType()测试浏览器是否支持指定的媒体类型
    • canPlayType() 方法可返回下列值之一:
      1. "probably" - 浏览器最可能支持该音频/视频类型
      2. "maybe" - 浏览器也许支持该音频/视频类型
      3. "" - (空字符串)浏览器不支持该音频/视频类型
    • type的值

      video/ogg video/mp4 video/webm audio/mpeg audio/ogg audio/mp4

  5. addTextTrack() 向音频/视频添加新的文本轨道.目前浏览器尚不支持该方法

video/audio 属性以及事件

属性

  • paused 设置或返回音频/视频是否暂停 属性值 true|false。true 指示音频/视频已暂停。否则为 false。
  • currentSrc 返回当前音频/视频的 URL
  • currentTime 设置或返回音频/视频中的当前播放位置(以秒计)
  • defaultMuted 设置或返回音频/视频默认是否静音 属性值为布尔值

    设置该属性仅会改变默认的静音状态,而不是当前的。要改变当前的静音状态,请使用 muted 属性

  • muted 设置或返回音频/视频是否静音 audio|video.muted=true|false
  • volume 属性设置或返回音频/视频的当前音量。规定音频/视频的当前音量。必须是介于 0.0 与 1.0 之间的数字。
  • controls 设置或返回音频/视频是否显示控件(比如播放/暂停等)
    • 设置 controls 属性:audio|video.controls=true|false
    • 返回 controls 属性:audio|video.controls
  • defaultPlaybackRate 属性设置或返回音频/视频的默认播放速度。

    设置该属性仅会改变默认的播放速度,而不是当前的。要改变当前的播放速度,请使用 playbackRate 属性。
    属性值为数值:1为正常速度,大于1则速度加快,小于1则速度减慢。

  • playbackRate 设置或返回音频/视频播放的速度
  • duration 返回当前音频/视频的长度(以秒计)
  • ended 属性返回音频/视频是否已结束。true|false。如果播放已结束,则返回 true。否则返回 false。
  • 错误状态error error 属性返回一个 MediaError 对象。(不是所有浏览器都支持该属性)

    MediaError 对象的 code 属性包含了音频/视频的错误状态。

    正常的状态下,code 的属性值为null;
    有错误时会返回 四个错误的状态值 1.用户终止 2.网络错误 3.解码错误 4.URL无效(格式不被支持)

  • loop 属性设置或返回音频/视频是否应该在结束时再次播放。audio|video.loop=true|false
  • mediaGroup 属性设置或返回音频/视频所属的媒体组合的名称。audio|video.mediaGroup="group"
  • networkState 返回音频/视频的当前网络状态

    0.此元素未初始化 1.正常但没有使用网络 2.正在下载数据 3.没有找到资源

  • played 返回表示音频/视频已播放部分的 TimeRanges 对象

    TimeRanges 对象表示用户已经播放或看到的音频/视频范围。
    已播范围指的是被播放音频/视频的时间范围。如果用户在音频/视频中跳跃,则会获得多个播放范围。

        TimeRanges 对象的属性:

    首段已播范围的下标是 0

    • length - 获得音频/视频中已播范围的数量
    • start(index) - 获得某个已播范围的开始位置
    • end(index) - 获得某个已播范围的结束位置
  • preload 属性设置或返回是否在页面加载后立即加载音频/视频。audio|video.preload="auto|metadata|none"
    • auto 指示一旦页面加载,则开始加载音频/视频。
    • metadata 指示当页面加载后仅加载音频/视频的元数据。
    • none 指示页面加载后不应加载音频/视
  • seekable 返回表示音频/视频可寻址部分的 TimeRanges 对象
  • seeking 返回用户是否正在音频/视频中进行查找
  • readyState 属性返回音频/视频的当前就绪状态。
  • videoTracks 返回表示可用视频轨道的 VideoTrackList 对象
  • buffered 返回表示音频/视频已缓冲部分的 TimeRanges 对象
    TimeRanges对象表示用户的音视频缓冲范围 对象属性:
    1. length - 获得音视频中已缓冲范围的数量
    2. start(index) - 获得某个已缓冲范围的开始位置
    3. end(index) - 获得某个已缓冲范围的结束位置
  • 事件

    • timeupdate 当目前的播放位置已更改时
    • abort 当音频/视频的加载已放弃时
    • canplay 当浏览器可以播放音频/视频时
    • canplaythrough 当浏览器可在不因缓冲而停顿的情况下进行播放时
    • durationchange 当音频/视频的时长已更改时
    • emptied 当目前的播放列表为空时
    • ended 当目前的播放列表已结束时
    • error 当在音频/视频加载期间发生错误时
    • loadeddata 当浏览器已加载音频/视频的当前帧时
    • loadedmetadata 当浏览器已加载音频/视频的元数据时
    • loadstart 当浏览器开始查找音频/视频时
    • pause 当音频/视频已暂停时
    • play 当音频/视频已开始或不再暂停时
    • playing 当音频/视频在已因缓冲而暂停或停止后已就绪时
    • progress 当浏览器正在下载音频/视频时
    • ratechange 当音频/视频的播放速度已更改时
    • seeked 当用户已移动/跳跃到音频/视频中的新位置时
    • seeking 当用户开始移动/跳跃到音频/视频中的新位置时
    • stalled 当浏览器尝试获取媒体数据,但数据不可用时
    • suspend 当浏览器刻意不获取媒体数据时
    • volumechange 当音量已更改时
    • waiting 当视频由于需要缓冲下一帧而停止

实例

html5音频视频专题的更多相关文章

  1. HTML5 音频视频

    HTML5 视频和音频的 DOM 参考手册 HTML5 DOM 为 <audio> 和 <video> 元素提供了方法.属性和事件. 这些方法.属性和事件允许您使用 JavaS ...

  2. [html5] 学习笔记-html5音频视频

    HTML5 最大的新特色之一就是支持音频和视频.在 HTML5 之前,我们必须使用插件如 Silverlight  或 Flash 来实现这些功能.在 HTML5 中,可以直接使用新标签< au ...

  3. HTML5音频视频-视频播放

  4. html5音频和视频标签

    在html5之前的版本中如果想要在网页中插入音频和视频必须要安装插件才可以,比如最常见的flash插件.很多人在刚安装一款浏览器的时候都会遇到浏览器建议安装flash插件,在移动端也是如此.如果想要在 ...

  5. 前端笔记之HTML5&CSS3(上)新特性&音频视频&本地存储&自定义属性

    一.HTML5简介 HTML 5 的第一份正式草案已于2008年1月22日公布.HTML5 仍处于完善之中.然而,大部分现代浏览器已经具备了某些 HTML5 支持. 2014年10月29日,万维网联盟 ...

  6. HTML5媒体(音频/视频)

    摘要: 在HTML5出现之前,web媒体大部分通过Flash来实现.这种方式造成了文件大加载慢,影响网站性能,开发难度高,维护麻烦,不易扩展等.这就导致HTML5自己开始支持媒体功能.HTML5 DO ...

  7. HTML5(二)音频视频画布

    HTML5 Audio(音频) 定义和用法 <audio src="someaudio.wav" controls="controls"> 您的浏览 ...

  8. 移动端HTML5音频与视频问题及解决方案

    最近在研究用视频代替动画,用视频代替精灵动画,我们称这种视频叫做交互视频. 传统的精灵动画: 磁盘空间大,下载慢,尤其是在线播放,会更慢 文件太多,在线播放的时候,太多http请求,会导致响应慢,或者 ...

  9. HTML5笔记2——HTML5音/视频标签详解

    音视频的发展史 早期:<embed>+<object>+文件 问题:不是所有浏览器都支持,而且embed不是标准. 现状:Realplay.window media.Quick ...

随机推荐

  1. MySql (二)入门语句和基本操作

    mysql的入门语句:查看服务器下的库 show databases; 创建库(数据库被创建后它的名字是不可以更改的) create database 数据库名; 2.1.插看当前所在的库 selec ...

  2. MFC_2.4 组合框和图片控件

    组合框和图片控件 1.拖控件 图片属性更改Type 为Bitmap 名字也要改,不能为IDC_STATIC 绑定变量控件,重命名. 2.初始化 // 设置一个定时器,用于更新图片 SetTimer(0 ...

  3. react 导航切换

    <ul class="nav"> <li onClick={() => this.changeFontColor(0)} className={`${0 = ...

  4. 解决移动端 手机号input 属性为 number,maxlength无效情况

    <input type="number" oninput="if(value.length>11)value=value.slice(0,11)" ...

  5. Python学习-算术运算符,赋值运算符和复合运算符

    算术运算符 常见的算术运算符有 : +     加法运算符 print(1 + 2); // 3 print('1' + '2'); //12 不仅可以进行2个数字的相加,还可以连接2个字符串 -   ...

  6. SVN A C D M G U R I 的含义

    A:add,新增 C:conflict,冲突 D:delete,删除 M:modify,本地已经修改 G:modify and merGed,本地文件修改并且和服务器的进行合并 U:update,从服 ...

  7. Linux:DHCP服务配置

    DHCP服务程序能够使局域网内的主机自动且动态的获取IP地址.子网掩码.网关地址以及DNS服务器地址等信息.    说明:先安装DHCP服务     yum install dhcp -y       ...

  8. linux ifstat-统计网络接口流量状态

    推荐:更多linux 性能监测与优化 关注:linux命令大全 ifstat命令就像iostat/vmstat描述其它的系统状况一样,是一个统计网络接口活动状态的工具.ifstat工具系统中并不默认安 ...

  9. buf.writeUInt16BE()

    buf.writeUInt16BE(value, offset[, noAssert]) buf.writeUInt16LE(value, offset[, noAssert]) value {Num ...

  10. Django-利用paginator模块实现分页

    Django专门提供了一个paginator模块,实现分页很easy. 下面的例子引用了django官方文档:https://docs.djangoproject.com/en/1.11/topics ...