Skip to content

Commit

Permalink
Add some logging in AudioSampleDataConverter::updateBufferedAmount
Browse files Browse the repository at this point in the history
https://bugs.webkit.org/show_bug.cgi?id=240632

Patch by Youenn Fablet <youennf@gmail.com> on 2022-05-19
Reviewed by Eric Carlson.

This can help debugging audio related issues like echo cancellation.
No change of behavior.

* Source/WebCore/platform/audio/cocoa/AudioSampleDataConverter.mm:
(WebCore::AudioSampleDataConverter::updateBufferedAmount):

Canonical link: https://commits.webkit.org/250736@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294477 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
youennf authored and webkit-commit-queue committed May 19, 2022
1 parent 847c698 commit bdb8c16
Showing 1 changed file with 20 additions and 4 deletions.
24 changes: 20 additions & 4 deletions Source/WebCore/platform/audio/cocoa/AudioSampleDataConverter.mm
Expand Up @@ -27,6 +27,7 @@
#import "AudioSampleDataConverter.h"

#import "AudioSampleBufferList.h"
#import "Logging.h"
#import <AudioToolbox/AudioConverter.h>
#import <pal/cf/AudioToolboxSoftLink.h>

Expand Down Expand Up @@ -76,15 +77,30 @@
{
if (currentBufferedAmount) {
if (m_selectedConverter == m_regularConverter) {
if (currentBufferedAmount <= m_lowBufferSize)
if (currentBufferedAmount <= m_lowBufferSize) {
m_selectedConverter = m_lowConverter;
else if (currentBufferedAmount >= m_highBufferSize && currentBufferedAmount >= 4 * pushedSampleSize)
callOnMainThread([] {
RELEASE_LOG(WebRTC, "AudioSampleDataConverter::updateBufferedAmount low buffer");
});
} else if (currentBufferedAmount >= m_highBufferSize && currentBufferedAmount >= 4 * pushedSampleSize) {
m_selectedConverter = m_highConverter;
callOnMainThread([] {
RELEASE_LOG(WebRTC, "AudioSampleDataConverter::updateBufferedAmount high buffer");
});
}
} else if (m_selectedConverter == m_highConverter) {
if (currentBufferedAmount < m_regularLowBufferSize)
if (currentBufferedAmount < m_regularLowBufferSize) {
m_selectedConverter = m_regularConverter;
} else if (currentBufferedAmount > m_regularHighBufferSize)
callOnMainThread([] {
RELEASE_LOG(WebRTC, "AudioSampleDataConverter::updateBufferedAmount going down to regular buffer");
});
}
} else if (currentBufferedAmount > m_regularHighBufferSize) {
m_selectedConverter = m_regularConverter;
callOnMainThread([] {
RELEASE_LOG(WebRTC, "AudioSampleDataConverter::updateBufferedAmount going up to regular buffer");
});
}
}
return !!m_selectedConverter;
}
Expand Down

0 comments on commit bdb8c16

Please sign in to comment.