zoukankan      html  css  js  c++  java
  • HTML5音/视频标签详解

    一、发展历:

    早期:<embed>+<object>+文件
       问题:不是所有浏览器都支持,而且embed不是标准。
     
    现状:Realplaywindow mediaQuick Time Flash
      问题:每个厂商每个标准,网站编码和格式也都不相同,flash的出现解决了面的问题,但是apple在07年决定任何设备将不再支持flash。
     
    HTML5认为浏览器应该原生支持音视频,因为他们现在也是web中的一等公民了!
     
     
    二、视频格式的简单介绍
     
    1、常见的视频格式
     
    视频的组成部分:画面、音频、编码格式
    视频编码:H.264、Theora、VP8(google开源)
     
    常见的音频格式
    音频编码:ACC、MP3、Vorbis
     
    2、HTML5支持的格式
    HTML5能在完全脱离插件的情况下播放音视频但是不是所有格式都支持。HTML5支持的视频格式:
      Ogg =带有Theora视频编码+Vorbis音频编码的Ogg文件      支持的浏览器:F、C、O   
     
      MEPG4=带有H.264视频编码+AAC音频编码的MPEG4文件    支持的浏览器: S、C    
     
      WebM=带有VP8视频编码+Vorbis音频编码的WebM格式      支持的浏览器: I、F、C、O
     
     
     
    三、<Video>
    1.标签的使用:
    <video src="文件地址" controls="controls"></video>

    IE9以上才支持HTML5,对于不支持的浏览器应该有友好的提示:

    <video src="文件地址" controls="controls">
            您的浏览器暂不支持video标签。播放视频
    </ video >

    再优化:让video标签载入多种不同的音频格式,让浏览器选择他支持的格式,第一个找到了播放第一条,没找到找第二天,以此类推,最后还没找到给出提示不支持

        <video  controls="controls"  width="600">
            <source src="movie.ogg" type="video/ogg" >
            <source src="move.mp4" type="video/mp4" >
            您的浏览器暂不支持video标签。播放视频
        </ video >
     
    2.Video标签的常见属性
    <video src="movie.ogg" controls="controls" Loop="Loop" poster="PLMM.jpg" id="video">
                您的破浏览器都是古董早该换了,不然休想看我们的激情小电影。
    </video>

    3.Video的API方法

     
     
    4.Video的API属性
    复制代码
    <body>
        
        <video src="movie.webm" controls="controls" id="video">
                您的破浏览器都是古董早该换了,不然休想看我们的激情小电影。
        </video>
        <br />
        <button onClick="bofang()">播放</button>
        <button onClick="zanting()">暂停</button>
         <button onClick="kuaijin()">快进</button>
         <button onClick="kuaitui()">快退</button>
         <button onClick="jingyin(this)">静音</button>
         <button onClick="jiansu()">减速</button>
         <button onClick="jiasu()">加速</button>
         <button onClick="normal()">正常播放</button>
          <button onClick="up()">增大音量</button>
           <button onClick="down()">减小音量</button>
        <script>
            //获取对应的video标签
            var video = document.getElementById('video');
            
            //播放方法
            function bofang(){
                video.play();
            }
            
            //暂停方法
            function zanting(){
                video.pause();
            }
            
            //快进按钮
            function kuaijin(){
                video.currentTime+=10;//currentTime该属性是获取当前播放的时间,加加上10就快进10秒
            }
            //快退
            function kuaitui(){
                video.currentTime-=10;
            }
            
            //静音
            function jingyin(obj){
                if(video.muted){
                    obj.innerHTML='静音';
                    video.muted=false;
                }else{
                    obj.innerHTML='关闭静音';
                    video.muted=true;
                }
            }
            
            //加速播放(快3倍) //要想慢3倍,应该是3分之1,因为当前是1
            function jiansu(){
                video.playbackRate = 1/3; 
            }
            //减速播放(慢3倍)
            function jiasu(){
                video.playbackRate=3;
            }
            //正常播放
            function normal(){
                video.playbackRate=1;
            }
            
            //调大音量,音量值的范围是0到1
            function up(){
                video.volume+=0.2;
            }
            //调小声音
            function down(){
                video.volume-=0.2;
            }
        </script>
    
    </body>
    </html>
    复制代码
    5.Video的常用事件
     
     1、获取视频时间长度

    当视频载入video后,使用 onloadedmetadata 事件获取视频的时间长度。
    video.onloadedmetadata = function () { 
    var vLength = video.duration; 
    console.log(vLength); 
    } 

    2、当前视频的播放进度

    当视频开始播放时,可以使用 ontimeupdate 事件获取视频当前播放的进度。当video对象的 currentTime 属性发生改变时触发 ontimeupdate 事件。currentTime 属性是浮点小数,可取到 12 位数的小数位数。

     video.ontimeupdate = function () { 
    var vTime = video.currentTime; 
    console.log(vTime); 
    }; 
    四、HTML5支持的音频格式
    HTML5在不使用插件的情况下也可以原生的支持音频格式文件的播放,当然支持格式是有限的
     
    HTML5支持的音频格式:
      Ogg    免费 支持的浏览器:C、F、O
      MP3    收费 支持的浏览器: I、C、S
      Wav    收费 支持的浏览器: F、O、S
     
     
     
    五、<audio>
    1.标签的使用
    <audio  src="文件地址" controls="controls"></audio>
    IE9以上才支持HTML5,对于不支持的浏览器应该有友好的提示:
    <audio src="文件地址" controls="controls">
        您的浏览器暂不支持audio标签。播放视频
    </ audio >

    再优化:让video标签载入多种不同的音频格式,让浏览器选择他支持的格式,第一个找到了播放第一条,没找到找第二天,以此类推,最后还没找到给出提示不支持

    < audio controls="controls"  >
        <source src="happy.MP3" type="video/mp3" >
        <source src="happy.ogg" type="video/ogg" >
        您的浏览器暂不支持audio标签。播放视频
    </ audio>
     
    audio的常见属性
    该标签除了一些属性不同外,其他API方法都是一样
  • 相关阅读:
    python gevent(协程模块)
    python基础之socket与socketserver
    python 使用 with open() as 读写文件
    Python logger模块
    python二维码操作:QRCode和MyQR入门
    常见的端口号及其用途
    python中hasattr()、getattr()、setattr()函数的使用
    mysql数据库自带数据库介绍
    关于BeautifulSoup4 解析器的说明
    学习opencv(1)
  • 原文地址:https://www.cnblogs.com/webpon/p/13461120.html
Copyright © 2011-2022 走看看