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

Issue 2420913002: Move audio frame memory handling inside AudioMixer. (Closed)

Created:
4 years, 2 months ago by aleloi
Modified:
4 years, 2 months ago
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com, hlundin-webrtc
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Move audio frame memory handling inside AudioMixer. Simplify the AudioMixer::Source interface and update the mixer implementation to the new interface. Instead of asking a mixer source to provide a pointer to an AudioFrame during each mixing iteration, a mixer should supply a pointer to its own AudioFrame. This simplifies lifetime issues as sources do not give away an internal pointer. Implementation: when an audio source is added, the mixer allocates a new AudioFrame. The audio frame is kept together in the internal class SourceStatus together with the audio source pointer until the source is removed. NOTRY=True BUG=webrtc:6346 Committed: https://crrev.com/6c278491adae678cdd95c71c444a02103012df56 Cr-Commit-Position: refs/heads/master@{#14713}

Patch Set 1 : . #

Total comments: 6

Patch Set 2 : Rebase. #

Total comments: 17

Patch Set 3 : Responses to reviewer comments: renamings and updated comments. #

Total comments: 8

Patch Set 4 : Removed confusing local varibale name. #

Patch Set 5 : Removed superflous member initializer. #

Total comments: 3

Patch Set 6 : Specified what fields should be updated by the mixer and sources. #

Patch Set 7 : Rebase. #

Patch Set 8 : Updated interface usages (I landed another CL in the wrong order...). #

Unified diffs Side-by-side diffs Delta from patch set Stats (+75 lines, -79 lines) Patch
M webrtc/api/audio/audio_mixer.h View 1 2 3 4 5 2 chunks +14 lines, -23 lines 0 comments Download
M webrtc/audio/audio_receive_stream.h View 1 2 3 4 5 6 7 1 chunk +2 lines, -1 line 0 comments Download
M webrtc/audio/audio_receive_stream.cc View 1 2 3 4 5 6 7 1 chunk +4 lines, -3 lines 0 comments Download
M webrtc/modules/audio_mixer/audio_mixer_impl.h View 1 2 3 4 1 chunk +4 lines, -1 line 0 comments Download
M webrtc/modules/audio_mixer/audio_mixer_impl.cc View 1 2 3 4 chunks +19 lines, -21 lines 0 comments Download
M webrtc/modules/audio_mixer/audio_mixer_impl_unittest.cc View 1 2 10 chunks +16 lines, -17 lines 0 comments Download
M webrtc/voice_engine/channel.h View 1 2 3 4 5 6 7 2 chunks +3 lines, -3 lines 0 comments Download
M webrtc/voice_engine/channel.cc View 1 2 3 4 5 6 7 2 chunks +6 lines, -5 lines 0 comments Download
M webrtc/voice_engine/channel_proxy.h View 1 2 3 4 5 6 7 1 chunk +3 lines, -2 lines 0 comments Download
M webrtc/voice_engine/channel_proxy.cc View 1 2 3 4 5 6 7 1 chunk +4 lines, -3 lines 0 comments Download

Messages

Total messages: 28 (11 generated)
aleloi
Here is the AudioMixer audio frame memory handling API change. https://codereview.webrtc.org/2420913002/diff/20001/webrtc/api/audio/audio_mixer.h File webrtc/api/audio/audio_mixer.h (right): https://codereview.webrtc.org/2420913002/diff/20001/webrtc/api/audio/audio_mixer.h#newcode49 ...
4 years, 2 months ago (2016-10-14 15:34:44 UTC) #4
kwiberg-webrtc
https://codereview.webrtc.org/2420913002/diff/20001/webrtc/api/audio/audio_mixer.h File webrtc/api/audio/audio_mixer.h (right): https://codereview.webrtc.org/2420913002/diff/20001/webrtc/api/audio/audio_mixer.h#newcode49 webrtc/api/audio/audio_mixer.h:49: virtual ~Source() {} On 2016/10/14 15:34:44, aleloi wrote: > ...
4 years, 2 months ago (2016-10-14 19:59:33 UTC) #5
aleloi
https://codereview.webrtc.org/2420913002/diff/20001/webrtc/api/audio/audio_mixer.h File webrtc/api/audio/audio_mixer.h (right): https://codereview.webrtc.org/2420913002/diff/20001/webrtc/api/audio/audio_mixer.h#newcode49 webrtc/api/audio/audio_mixer.h:49: virtual ~Source() {} On 2016/10/14 19:59:32, kwiberg-webrtc wrote: > ...
4 years, 2 months ago (2016-10-17 11:06:40 UTC) #7
kwiberg-webrtc
lgtm https://codereview.webrtc.org/2420913002/diff/20001/webrtc/api/audio/audio_mixer.h File webrtc/api/audio/audio_mixer.h (right): https://codereview.webrtc.org/2420913002/diff/20001/webrtc/api/audio/audio_mixer.h#newcode49 webrtc/api/audio/audio_mixer.h:49: virtual ~Source() {} On 2016/10/17 11:06:39, aleloi wrote: ...
4 years, 2 months ago (2016-10-17 12:08:32 UTC) #8
the sun
lgtm % comments https://codereview.webrtc.org/2420913002/diff/80001/webrtc/modules/audio_mixer/audio_mixer_impl.cc File webrtc/modules/audio_mixer/audio_mixer_impl.cc (right): https://codereview.webrtc.org/2420913002/diff/80001/webrtc/modules/audio_mixer/audio_mixer_impl.cc#newcode275 webrtc/modules/audio_mixer/audio_mixer_impl.cc:275: OutputFrequency(), audio_source_audio_frame); Strange and long name. ...
4 years, 2 months ago (2016-10-18 14:06:17 UTC) #9
aleloi
https://codereview.webrtc.org/2420913002/diff/80001/webrtc/modules/audio_mixer/audio_mixer_impl.cc File webrtc/modules/audio_mixer/audio_mixer_impl.cc (right): https://codereview.webrtc.org/2420913002/diff/80001/webrtc/modules/audio_mixer/audio_mixer_impl.cc#newcode275 webrtc/modules/audio_mixer/audio_mixer_impl.cc:275: OutputFrequency(), audio_source_audio_frame); On 2016/10/18 14:06:17, the sun wrote: > ...
4 years, 2 months ago (2016-10-18 14:17:48 UTC) #10
the sun
https://codereview.webrtc.org/2420913002/diff/80001/webrtc/modules/audio_mixer/audio_mixer_impl.h File webrtc/modules/audio_mixer/audio_mixer_impl.h (right): https://codereview.webrtc.org/2420913002/diff/80001/webrtc/modules/audio_mixer/audio_mixer_impl.h#newcode40 webrtc/modules/audio_mixer/audio_mixer_impl.h:40: AudioFrame audio_frame{}; On 2016/10/18 14:17:48, aleloi wrote: > On ...
4 years, 2 months ago (2016-10-18 14:21:45 UTC) #11
aleloi
https://codereview.webrtc.org/2420913002/diff/80001/webrtc/modules/audio_mixer/audio_mixer_impl.h File webrtc/modules/audio_mixer/audio_mixer_impl.h (right): https://codereview.webrtc.org/2420913002/diff/80001/webrtc/modules/audio_mixer/audio_mixer_impl.h#newcode40 webrtc/modules/audio_mixer/audio_mixer_impl.h:40: AudioFrame audio_frame{}; On 2016/10/18 14:21:45, the sun wrote: > ...
4 years, 2 months ago (2016-10-18 14:30:42 UTC) #12
hlundin-webrtc
LGTM with one comment. https://codereview.webrtc.org/2420913002/diff/120001/webrtc/api/audio/audio_mixer.h File webrtc/api/audio/audio_mixer.h (right): https://codereview.webrtc.org/2420913002/diff/120001/webrtc/api/audio/audio_mixer.h#newcode38 webrtc/api/audio/audio_mixer.h:38: // Overwrites |audio_frame|. The data_ ...
4 years, 2 months ago (2016-10-18 22:16:13 UTC) #13
aleloi
https://codereview.webrtc.org/2420913002/diff/120001/webrtc/api/audio/audio_mixer.h File webrtc/api/audio/audio_mixer.h (right): https://codereview.webrtc.org/2420913002/diff/120001/webrtc/api/audio/audio_mixer.h#newcode38 webrtc/api/audio/audio_mixer.h:38: // Overwrites |audio_frame|. The data_ field is overwritten with ...
4 years, 2 months ago (2016-10-19 09:56:47 UTC) #14
the sun
On 2016/10/19 09:56:47, aleloi wrote: > https://codereview.webrtc.org/2420913002/diff/120001/webrtc/api/audio/audio_mixer.h > File webrtc/api/audio/audio_mixer.h (right): > > https://codereview.webrtc.org/2420913002/diff/120001/webrtc/api/audio/audio_mixer.h#newcode38 > ...
4 years, 2 months ago (2016-10-19 10:21:20 UTC) #15
aleloi
I seached for it with "git grep '[-].id_'" and "[.]id_". It seems that the only ...
4 years, 2 months ago (2016-10-19 11:33:40 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2420913002/180001
4 years, 2 months ago (2016-10-20 16:03:15 UTC) #19
commit-bot: I haz the power
Try jobs failed on following builders: android_clang_dbg on master.tryserver.webrtc (JOB_TIMED_OUT, no build URL) android_compile_x64_dbg on ...
4 years, 2 months ago (2016-10-20 17:22:04 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2420913002/180001
4 years, 2 months ago (2016-10-20 20:47:58 UTC) #24
commit-bot: I haz the power
Committed patchset #8 (id:180001)
4 years, 2 months ago (2016-10-20 21:24:42 UTC) #26
commit-bot: I haz the power
4 years, 2 months ago (2016-10-20 21:24:53 UTC) #28
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/6c278491adae678cdd95c71c444a02103012df56
Cr-Commit-Position: refs/heads/master@{#14713}

Powered by Google App Engine
This is Rietveld 408576698