使用HTML5在网页中嵌入音频和视频播放的基本方法

使用HTML5在网页中嵌入音频和视频播放的基本方法,第1张

使用HTML5在网页中嵌入音频和视频播放的基本方法

HTML5 特性,包括原生音频和视频支持而无需 Flash。


HTML5 <audio> 和 <video> 标签让我们给站点添加媒体变得简单。


我们只需要设置 src 属性来识别媒体资源,包含 controls 属性让用户可以播放和暂停媒体。


嵌入视频
下面是在 Web 页面中嵌入视频文件最简单的形式:

XML/HTML Code复制内容到剪贴板
  1. <video src="foo.mp4"  width="300" height="200" controls>  
  2.     Your browser does not support the <video> element.      
  3. </video>  

目前的 HTML5 规范草案还没有指定浏览器应该在 video 标签中支持哪种视频格式。


但是最常用的视频格式是:

Ogg:带有 Thedora 视频编码器和 Vorbis 音频编码器的 Ogg 文件。



mpeg4:带有 H.264 视频编码器和 AAC 音频编码器的 MPEG4 文件。



我们可以使用带有媒体类型和其他属性的 <source> 标签指定媒体文件。


video 元素允许使用多个 source 元素,浏览器会使用第一个认可的格式:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE HTML>  
  2. <html>  
  3. <body>  
  4.    <video  width="300" height="200" controls autoplay>  
  5.        <source src="/html5/foo.ogg" type="video/ogg" />  
  6.        <source src="/html5/foo.mp4" type="video/mp4" />  
  7.        Your browser does not support the <video> element.   
  8.    </video>  
  9. </body>  
  10. </html>  

Video 属性规范
HTML5 video 标签可以使用多个属性控制外观和感觉以及各种控制功能:

属性 描述 autoplay 如果指定这个布尔值属性,只要没有停止加载数据,视频就会立刻开始自动播放。


autobuffer 如果指定这个布尔值属性,即使没有设置自动播放,视频也会自动开始缓冲。


controls 如果指定这个属性,就允许用户控制视频播放,包括音量控制,快进,暂停或者恢复播放。


height 这个属性以 CSS 像素的形式指定视频显示区域的高度。


loop 如果指定这个布尔值属性,表示允许播放结束后自动回放。


preload 指定这个属性,视频会在载入页面时加载并准备就绪。


如果指定自动播放则忽略。


poster 这是一个图像 URL,显示到用户播放或快进。


src 要嵌入的视频 URL。


可选,可以在 video 块中使用 <source> 元素替代来指定要嵌入的视频。


width 这个属性以 CSS 像素的形式指定视频显示区域的宽度。



嵌入音频
HTML5 支持的 <audio> 标签用于在如下所示的 HTML 或 XHTML 文档中嵌入语音内容。


XML/HTML Code复制内容到剪贴板
  1. <audio src="foo.wav" controls autoplay>  
  2.     Your browser does not support the <audio> element.      
  3. </audio>  

当前的 HTML 草案规范还没有指定浏览器应该在 audio 标签中支持哪种音频格式。


但是最常用的音频格式是 ogg,mp3 和 wav。


我们可以使用带媒体类型以及其他属性的的 <source> 标签指定媒体。


Audio 元素允许使用多个 source 元素,并且浏览器会使用第一个认可的格式:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE HTML>  
  2. <html>  
  3. <body>  
  4.    <audio controls autoplay>  
  5.        <source src="/html5/audio.ogg" type="audio/ogg" />  
  6.        <source src="/html5/audio.wav" type="audio/wav" />  
  7.        Your browser does not support the <audio> element.   
  8.    </audio>  
  9. </body>  
  10. </html>  

Audio 属性规范

HTML5 audio 标签可以使用多个属性来控制外观,感受以及各种控制功能:

属性 描述 autoplay 如果指定这个布尔值属性,只要没停止加载数据,音频就会立刻自动开始播放。


autobuffer 如果指定这个布尔值属性,即使没有设置自动播放,音频也会自动开始缓冲。


controls 如果指定这个属性,表示允许用户控制音频播放,包括音量控制,快进以及暂停/恢复播放。


loop 如果指定这个布尔值属性,表示允许音频播放结束后自动回放。


preload 这个属性指定加载页面时加载音频并准备就绪。


如果指定自动播放则忽略。


src 要嵌入的音频 URL。


可选,可以在音频块里面使用 <source> 元素指定要嵌入的音频来替代。



处理媒体事件
HTML5 audio 和 video 标签可以用多个属性利用 JavaScript 控制各种控制功能:
事件 描述 abort 播放中止时生成这个事件。


canplay 足够的数据可用并且媒体可以播放时生成这个事件。


ended 播放完成时生成这个事件。


error 发生错误时生成这个事件。


loadeddata 媒体第一帧载入完成时生成这个事件。


loadstart 开始加载媒体时生成这个事件。


pause 播放暂停时生成这个事件。


play 播放开始或者恢复时生成这个事件。


progress 定期通知媒体下载进度时生成这个事件。


ratechange 播放速度改变时生成这个事件。


seeked 快进 *** 作完成时生成这个事件。


seeking 快进 *** 作开始时生成这个事件。


suspend 媒体加载被暂停时生成这个事件。


volumechange 音频音量变化时生成这个事件。


waiting 请求 *** 作(比如播放)被延迟,等待另一个 *** 作完成(比如快进)时生成这个事件。



下面是一个允许播放给定视频的示例:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE HTML>  
  2. <head>  
  3. <script type="text/javascript">  
  4. function PlayVideo(){   
  5.    var v = document.getElementsByTagName("video")[0];     
  6.    v.play();    
  7. }   
  8. </script>  
  9. </head>  
  10. <html>  
  11. <body>  
  12.    <form>  
  13.    <video  width="300" height="200" src="/html5/foo.mp4">  
  14.        Your browser does not support the <video> element.   
  15.    </video>  
  16.    <input type="button" onclick="PlayVideo();"  value="Play"/>  
  17.    </form>  
  18. </body>  
  19. </html>  

配置服务器媒体类型
大多数服务器默认都没使用正确的 MIME 类型提供 Ogg 或 mp4 媒体,因此我们可能需要添加适当的配置。



复制代码代码如下:AddType audio/ogg .oga
AddType audio/wav .wav
AddType video/ogg .ogv .ogg
AddType video/mp4 .mp4

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/613570.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-14
下一篇 2022-04-14

发表评论

登录后才能评论

评论列表(0条)

保存