Chrome扩展程序:通过增加缓冲区大小来防止chrome.tabCapture.capture断断续续的声音?

问题描述 投票:2回答:1

看起来像使用chrome.tabCapture.capture的音频捕获会产生一些不稳定的声音。

这已经有一个bug report了。

是否可以增加接收捕获流的缓冲区以防止断续,或者tabCapture方法是否已经定义了缓冲区?

基本捕获:

chrome.tabCapture.capture({
        audio: true,
        video: false
    }, function (stream) {
        var ctx = new AudioContext();
        var output = ctx.createMediaStreamSource(stream);
        output.connect(ctx.destination)
    });
javascript google-chrome-extension web-audio web-audio-api
1个回答
3
投票

我有同样的问题,但如果用AudioContext参数创建LatencyHint,波动的声音似乎消失了:

new AudioContext({LatencyHint: 'playback'});

在这里你可以阅读更多关于它:MDN AudioContext.AudioContext()

latencyHint:此值标识播放类型,这会影响音频输出延迟和功耗之间的权衡。首选值是“平衡”,“交互式”和“回放”,默认值为“交互式”。这些值意味着“平衡音频输出延迟和功耗”,“尽可能提供最低音频输出延迟而不会出现故障”,并“优先考虑持续播放,而不会中断音频输出延迟”。您还可以为延迟秒数指定double值,以实现更精细的控制。

© www.soinside.com 2019 - 2024. All rights reserved.