【问题标题】:How can i increase/decrease the decibel values of an audio file in html5?如何增加/减少 html5 中音频文件的分贝值?
【发布时间】:2014-02-25 04:17:08
【问题描述】:

您好,我正在尝试一个网络应用程序,我将在其中运行音频文件。我想保留一个具有分贝 (db) 刻度的滑杆。上下移动滑动条时,db 值会发生变化,音频文件必须根据该 db 值运行。

目前我正在使用 html5 中的标签通过媒体播放器在浏览器中运行音频文件。是否有任何默认函数或 API 可以满足我的目的,或者我需要读取声音文件并编写逻辑来更改 db 值。

我想在 IE、chrome、safari 和 firefox 上运行此功能。

请有人建议我实现这一目标的正确方法是什么。

感谢和问候, 湿婆。

【问题讨论】:

    标签: javascript html audio cross-browser media-player


    【解决方案1】:

    请参阅下面的编辑!

    根据 W3 - http://www.w3.org/html/wg/drafts/html/master/single-page.html#effective-media-volume - 很容易做到这一点。

    使用音频标签,如:

    <audio id="myAudio">
        <source src="audio.ogg" type="audio/ogg">
    </audio>
    

    使用 JavaScript,您可以:

    audio = document.getElementById("myAudio");
    audio.volume = 0.5; //half of original value
    //0 = nothing
    //0.5 = half of maximum
    //1 = full volume.
    

    由于你想添加一个滑块,使用 jQueryUI,你可以添加一个带有一些 slideStart/slideEnd 事件的滑块,然后相应地设置音量。

    我希望这会有所帮助;)

    编辑:

    再读一遍你想要分贝不是音量,我意识到你想要的是不可能的。在 HTML5 中更改音频文件的分贝非常困难(如果不是不可能的话)。这是因为:

    1. 原始文件的音量总是有不同的分贝,无法分辨文件中的分贝数。
    2. 硬件总是有限制的,总有一点不能提高分贝。

    【讨论】:

    • 嗨 Riftes,感谢您的 cmets。我的网络应用程序必须在不同的平台上运行,如 Android、Windows 和 IOS。根据您的输入,我决定在每个操作系统中采用本机编码方式。再次感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 2014-07-22
    • 2015-01-29
    • 2017-09-08
    相关资源
    最近更新 更多