[Webkit-unassigned] [Bug 222098] Regression: Raw AudioBufferSourceNode playback causes repeated crackling sound

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri May 28 10:01:10 PDT 2021


https://bugs.webkit.org/show_bug.cgi?id=222098

--- Comment #20 from Chris Dumez <cdumez at apple.com> ---
(In reply to Chris Dumez from comment #19)
> (In reply to kris from comment #14)
> > And to clarify, the crackling only happens when using PannerNodes.
> 
> Actually, you can actually replace the PannerNode in your demo with a
> DelayNode and the same issue will happen. I think it is about the
> AudioBufferSourceNode not being connected directly to the listenerGain
> somehow.

Ok, some progress, if I make PannerNode::requiresTailProcessing() return false then the issue no longer reproduces. So the issue likely only reproduces if the AudioBufferSource is connected to a node that requires tail processing (Both Delay and Panner nodes) require tail processing.

I think it is related to this code in AudioNode::disableOutputsIfNecessary():
```
    if (m_connectionRefCount <= 1 && !m_isDisabled) {
        if (!requiresTailProcessing())
            disableOutputs();
    }
```

disableOutputs() is not getting called because requiresTailProcessing() returns true.
disableOutputsIfNecessary() gets called when the AudioNode loses its last connection.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20210528/fcd66c06/attachment.htm>


More information about the webkit-unassigned mailing list