首页 > 解决方案 > 尝试使用增益节点增加视频音量,而是静音

问题描述

我有一个 html5 视频元素,我正在尝试提高音量。

我正在使用我在这个答案中找到的代码

但是,扬声器没有声音。如果我禁用它,声音很好。

    videoEl.muted = true //tried with this disabled or enabled

    if(!window.audio)
        window.audio = amplify(vol)
    else
        window.audio.amplify(vol) 

...

export function amplify(multiplier) {
    const media = document.getElementById('videoEl')
    //@ts-ignore
    var context = new(window.AudioContext || window.webkitAudioContext),
      result = {
        context: context,
        source: context.createMediaElementSource(media),
        gain: context.createGain(),
        media,
        amplify: function(multiplier) {
          result.gain.gain.value = multiplier;
        },
        getAmpLevel: function() {
          return result.gain.gain.value;
        }
      };
    result.source.connect(result.gain)
    result.gain.connect(context.destination)
    result.amplify(multiplier)
    return result;
  }

该值设置为 3 以进行测试。

知道为什么我没有声音吗?

我还为其他音频文件运行了咆哮,它会阻止网络音频 API 吗?

标签: javascripthtml5-videohtml5-audioweb-audio-api

解决方案


推荐阅读