Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Issue 2146513002: More tracing for audio rendering (Closed)

Created:
4 years, 5 months ago by o1ka
Modified:
4 years, 4 months ago
CC:
chromium-reviews, darin-cc_chromium.org, feature-media-reviews_chromium.org, jam, mcasas+watch+vc_chromium.org, miu+watch_chromium.org, mlamouri+watch-content_chromium.org, posciak+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

In case AudioOutputDevice buffer size is not the same as hardware buffer size, AudioOutputResampler on browser side does rebuffering (fifo-based). Each time fifo edge is reached, fifo will initiate two reads one by one. It means that AudioOuputDevice::Render() calles are NOT issued with a constant interval based on output buffer size duration. For example, for WebRTC it means Voice Engine can receive 2 calls one by one without 10 ms interval. It may result in a missed deadline on Browser/Renderer edge, which causes audio glitch. We want to trace these events to collect the relevant data in cases of crackling/distorted audio. Also, a bit of tracing for mixing to see how it affects rendering performance. BUG= Committed: https://crrev.com/8ec171e0559a846b1c5261631914726134ec2555 Cr-Commit-Position: refs/heads/master@{#413684}

Patch Set 1 : draft version for research #

Patch Set 2 : actual code #

Total comments: 5
Unified diffs Side-by-side diffs Delta from patch set Stats (+21 lines, -2 lines) Patch
M content/browser/renderer_host/media/audio_sync_reader.cc View 1 3 chunks +4 lines, -1 line 2 comments Download
M content/renderer/media/webrtc_audio_device_impl.cc View 1 2 chunks +4 lines, -0 lines 1 comment Download
M media/audio/audio_output_resampler.cc View 1 3 chunks +9 lines, -1 line 2 comments Download
M media/base/audio_renderer_mixer.cc View 1 2 chunks +2 lines, -0 lines 0 comments Download
M media/base/audio_renderer_mixer_input.cc View 2 chunks +2 lines, -0 lines 0 comments Download

Messages

Total messages: 29 (12 generated)
o1ka
PTAL
4 years, 4 months ago (2016-08-19 13:15:00 UTC) #4
o1ka
https://codereview.chromium.org/2146513002/diff/20001/media/audio/audio_output_resampler.cc File media/audio/audio_output_resampler.cc (right): https://codereview.chromium.org/2146513002/diff/20001/media/audio/audio_output_resampler.cc#newcode385 media/audio/audio_output_resampler.cc:385: TRACE_EVENT2("audio", "OnMoreDataConverter::OnMoreData", "input buffer size", Passing buffer sizes on ...
4 years, 4 months ago (2016-08-19 13:20:47 UTC) #5
henrika (OOO until Aug 14)
LGTM
4 years, 4 months ago (2016-08-19 13:32:38 UTC) #6
DaleCurtis
lgtm https://codereview.chromium.org/2146513002/diff/20001/content/browser/renderer_host/media/audio_sync_reader.cc File content/browser/renderer_host/media/audio_sync_reader.cc (right): https://codereview.chromium.org/2146513002/diff/20001/content/browser/renderer_host/media/audio_sync_reader.cc#newcode206 content/browser/renderer_host/media/audio_sync_reader.cc:206: TRACE_EVENT_INSTANT0("audio", "AudioSyncReader::Read timed out", Be neat if we ...
4 years, 4 months ago (2016-08-19 16:49:00 UTC) #7
Henrik Grunell
lgtm with one nit. You can decide how you want to do with it. https://codereview.chromium.org/2146513002/diff/20001/content/renderer/media/webrtc_audio_device_impl.cc ...
4 years, 4 months ago (2016-08-22 08:29:06 UTC) #8
Henrik Grunell
Also, add bug number or remove "BUG=". Preferably the former. :)
4 years, 4 months ago (2016-08-22 08:30:05 UTC) #9
o1ka
> Also is it useful to have this information? Isn't it displayed in > chrome://media-internals ...
4 years, 4 months ago (2016-08-22 08:44:31 UTC) #10
o1ka
On 2016/08/22 08:29:06, Henrik Grunell wrote: > lgtm with one nit. You can decide how ...
4 years, 4 months ago (2016-08-22 08:55:22 UTC) #11
o1ka
perkj@chromium.org: Could you RS changes in content/?
4 years, 4 months ago (2016-08-22 08:56:57 UTC) #13
DaleCurtis
lgtm; I've mentioned this issue in the past; to avoid this it's recommended you choose ...
4 years, 4 months ago (2016-08-22 17:34:09 UTC) #18
Henrik Grunell
On 2016/08/22 08:56:57, o1ka wrote: > mailto:perkj@chromium.org: Could you RS changes in content/? Olga, the ...
4 years, 4 months ago (2016-08-23 07:05:31 UTC) #19
o1ka
On 2016/08/23 07:05:31, Henrik Grunell wrote: > On 2016/08/22 08:56:57, o1ka wrote: > > mailto:perkj@chromium.org: ...
4 years, 4 months ago (2016-08-23 07:10:37 UTC) #20
o1ka
On 2016/08/23 07:10:37, o1ka wrote: > On 2016/08/23 07:05:31, Henrik Grunell wrote: > > On ...
4 years, 4 months ago (2016-08-23 07:11:50 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2146513002/20001
4 years, 4 months ago (2016-08-23 07:12:19 UTC) #24
o1ka
https://codereview.chromium.org/2146513002/diff/20001/content/browser/renderer_host/media/audio_sync_reader.cc File content/browser/renderer_host/media/audio_sync_reader.cc (right): https://codereview.chromium.org/2146513002/diff/20001/content/browser/renderer_host/media/audio_sync_reader.cc#newcode206 content/browser/renderer_host/media/audio_sync_reader.cc:206: TRACE_EVENT_INSTANT0("audio", "AudioSyncReader::Read timed out", On 2016/08/19 16:49:00, DaleCurtis wrote: ...
4 years, 4 months ago (2016-08-23 07:16:00 UTC) #25
commit-bot: I haz the power
Committed patchset #2 (id:20001)
4 years, 4 months ago (2016-08-23 07:16:26 UTC) #27
commit-bot: I haz the power
4 years, 4 months ago (2016-08-23 07:17:55 UTC) #29
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/8ec171e0559a846b1c5261631914726134ec2555
Cr-Commit-Position: refs/heads/master@{#413684}

Powered by Google App Engine
This is Rietveld 408576698