[Webkit-unassigned] [Bug 218762] Stuttering audio from WebRTC in iOS 14.2

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Nov 12 12:05:42 PST 2020


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

--- Comment #14 from youenn fablet <youennf at gmail.com> ---
Fix is in https://github.com/WebKit/webkit/commit/d2beea459699aef7b58ed59cd6b435ee9d6a1b72.

The reduced fix is as follows:

diff --git a/Source/WebCore/platform/audio/cocoa/AudioSampleDataSource.mm b/Source/WebCore/platform/audio/cocoa/AudioSampleDataSource.mm
index ef7fd04391c5..9e6d5452571d 100644
--- a/Source/WebCore/platform/audio/cocoa/AudioSampleDataSource.mm
+++ b/Source/WebCore/platform/audio/cocoa/AudioSampleDataSource.mm
@@ -260,9 +260,8 @@ bool AudioSampleDataSource::pullSamplesInternal(AudioBufferList& buffer, size_t&
             if (timeStamp >= endFrame)
                 m_endFrameWhenNotEnoughData = endFrame;
         } else {
-            // We are too close from endFrame, let's back up a little bit.
-            uint64_t framesAvailable = endFrame - timeStamp;
-            m_outputSampleOffset -= sampleCount - framesAvailable;
+            // We are too close from endFrame, let's wait for more data to be pushed.
+            m_outputSampleOffset -= sampleCount;
             dispatch_async(dispatch_get_main_queue(), [logIdentifier = LOGIDENTIFIER, outputSampleOffset = m_outputSampleOffset, this, protectedThis = makeRefPtr(*this)] {
                 ALWAYS_LOG(logIdentifier, "updating offset to ", outputSampleOffset);
             });

-- 
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/20201112/62c6aa81/attachment.htm>


More information about the webkit-unassigned mailing list