V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Dive into HTML5
http://diveintohtml5.org/
metalbug
V2EX  ›  HTML

是否能判断 HTML5 视频里有没有音频?

  •  
  •   metalbug · 2017-08-01 09:39:56 +08:00 · 3479 次点击
    这是一个创建于 2701 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一段没有音频的视频,怎么判断它有没有音频?

    a570295535
        1
    a570295535  
       2017-08-01 09:48:19 +08:00
    我的耳朵是出气的。。。
    Tonni
        2
    Tonni  
       2017-08-01 09:55:33 +08:00   ❤️ 2
    方案: https://stackoverflow.com/a/23399773/4480674
    缺点:浏览器兼容性不够好
    metalbug
        3
    metalbug  
    OP
       2017-08-01 09:59:40 +08:00
    @Tonni 谢啦
    metalbug
        4
    metalbug  
    OP
       2017-08-01 15:16:09 +08:00
    <!DOCTYPE html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="https://code.jquery.com/jquery-1.11.3.js"></script>
    </head>
    <body>
    <video autoplay loop id="myVideo">
    <source src="http://www.leoog.com/wp-content/uploads/2017/07/leoog_13934734.mp4" type="video/mp4">
    </video>
    <video autoplay loop id="myVideo">
    <source src="http://www.runoob.com/try/demo_source/mov_bbb.mp4" type="video/mp4">
    </video>
    <script type="text/javascript">
    document.getElementById("myVideo").addEventListener("loadeddata", function() {
    if (typeof this.webkitAudioDecodedByteCount || this.mozHasAudio || this.audioTracks !== "undefined") {
    if (this.webkitAudioDecodedByteCount > 0 || this.mozHasAudio || this.audioTracks && this.audioTracks.length)
    this.after("有声");
    else
    this.after("没声");
    }
    });
    </script>
    </body>
    </html>

    @Tonni 这段 JS 可以,但是多个视频怎么写?新手求大神赐教。
    metalbug
        5
    metalbug  
    OP
       2017-08-01 18:46:03 +08:00
    搞好了可以关贴了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2641 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 15:19 · PVG 23:19 · LAX 07:19 · JFK 10:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.