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

Issue 2326003002: Moved codec-specific audio packet splitting into decoders. (Closed)

Created:
4 years, 3 months ago by ossu
Modified:
4 years, 3 months ago
CC:
webrtc-reviews_webrtc.org, tlegrand-webrtc, tterriberry_mozilla.com, audio-team_agora.io, hlundin-webrtc, peah-webrtc, minyue-webrtc
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Moved codec-specific audio packet splitting into decoders. There's still some code run specifically for Opus w/ FEC. It will be addressed in a separate CL. BUG=webrtc:5805 Committed: https://crrev.com/0d526d558b0f7b677c43f83e64e67ad65a9639c0 Cr-Commit-Position: refs/heads/master@{#14319}

Patch Set 1 #

Total comments: 68

Patch Set 2 : Reworked packet splitting. Renamed SplitBySamples and AudioCodingUtils. #

Total comments: 42

Patch Set 3 : Cleanups. rtc::Buffer passing changes. #

Total comments: 13

Patch Set 4 : A couple of consts and a period. #

Patch Set 5 : Rebase #

Patch Set 6 : Fixed types in packet splitting (size_t vs. uint32_t) #

Unified diffs Side-by-side diffs Delta from patch set Stats (+571 lines, -685 lines) Patch
M webrtc/modules/BUILD.gn View 1 2 3 4 2 chunks +4 lines, -1 line 0 comments Download
M webrtc/modules/audio_coding/BUILD.gn View 1 2 3 4 4 chunks +10 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/audio_coding.gypi View 1 2 3 4 1 chunk +20 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/audio_decoder.h View 1 2 3 4 1 chunk +2 lines, -1 line 0 comments Download
M webrtc/modules/audio_coding/codecs/audio_decoder.cc View 1 2 3 4 3 chunks +4 lines, -48 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/g711/audio_decoder_pcm.h View 1 2 2 chunks +6 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/g711/audio_decoder_pcm.cc View 1 2 2 chunks +17 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/g711/g711.gypi View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/g722/audio_decoder_g722.h View 1 2 2 chunks +6 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/g722/audio_decoder_g722.cc View 1 2 3 chunks +17 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/g722/g722.gypi View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc View 1 2 3 4 5 2 chunks +49 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/ilbc/ilbc_unittest.cc View 1 2 3 2 chunks +82 lines, -0 lines 0 comments Download
A webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.h View 1 2 1 chunk +52 lines, -0 lines 0 comments Download
A webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc View 1 2 3 4 5 1 chunk +105 lines, -0 lines 0 comments Download
A webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame_unittest.cc View 1 2 3 1 chunk +169 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/pcm16b/audio_decoder_pcm16b.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/pcm16b/audio_decoder_pcm16b.cc View 1 2 2 chunks +11 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/codecs/pcm16b/pcm16b.gypi View 1 1 chunk +2 lines, -0 lines 0 comments Download
M webrtc/modules/audio_coding/neteq/mock/mock_payload_splitter.h View 1 chunk +0 lines, -8 lines 0 comments Download
M webrtc/modules/audio_coding/neteq/neteq_impl.cc View 1 2 3 4 2 chunks +1 line, -16 lines 0 comments Download
M webrtc/modules/audio_coding/neteq/neteq_impl_unittest.cc View 1 chunk +0 lines, -3 lines 0 comments Download
M webrtc/modules/audio_coding/neteq/payload_splitter.h View 2 chunks +3 lines, -27 lines 0 comments Download
M webrtc/modules/audio_coding/neteq/payload_splitter.cc View 1 chunk +0 lines, -210 lines 0 comments Download
M webrtc/modules/audio_coding/neteq/payload_splitter_unittest.cc View 2 chunks +1 line, -371 lines 0 comments Download

Depends on Patchset:

Dependent Patchsets:

Messages

Total messages: 46 (18 generated)
ossu
Step 2. More to come, probably on Monday!
4 years, 3 months ago (2016-09-09 11:11:20 UTC) #2
hlundin-webrtc
Three nits, then lgtm. https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/codecs/audio_decoder.cc File webrtc/modules/audio_coding/codecs/audio_decoder.cc (right): https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/codecs/audio_decoder.cc#newcode101 webrtc/modules/audio_coding/codecs/audio_decoder.cc:101: RTC_CHECK(split.byte_offset + split.num_bytes <= payload->size()); ...
4 years, 3 months ago (2016-09-09 12:52:53 UTC) #3
kwiberg-webrtc
https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/audio_coding.gypi File webrtc/modules/audio_coding/audio_coding.gypi (right): https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/audio_coding.gypi#newcode190 webrtc/modules/audio_coding/audio_coding.gypi:190: 'target_name': 'audio_coding_utils', Why not name this split_by_samples? https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/codecs/audio_decoder.cc File ...
4 years, 3 months ago (2016-09-12 02:11:02 UTC) #4
ossu
My biggest concern with this CL is whether it should use the SplitAudio interface from ...
4 years, 3 months ago (2016-09-12 11:26:38 UTC) #5
kwiberg-webrtc
https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/codecs/audio_decoder.cc File webrtc/modules/audio_coding/codecs/audio_decoder.cc (right): https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/codecs/audio_decoder.cc#newcode109 webrtc/modules/audio_coding/codecs/audio_decoder.cc:109: } On 2016/09/12 11:26:37, ossu wrote: > On 2016/09/12 ...
4 years, 3 months ago (2016-09-13 12:23:37 UTC) #6
kwiberg-webrtc
On 2016/09/12 11:26:38, ossu wrote: > My biggest concern with this CL is whether it ...
4 years, 3 months ago (2016-09-13 12:29:03 UTC) #7
ossu
I've reworked packet splitting quite a bit to get rid of the extra step through ...
4 years, 3 months ago (2016-09-13 14:25:56 UTC) #8
ossu
On 2016/09/13 12:29:03, kwiberg-webrtc wrote: > What would be the alternative to requiring each decoder ...
4 years, 3 months ago (2016-09-13 14:27:01 UTC) #9
ossu
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.h File webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.h (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.h#newcode28 webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.h:28: static std::vector<AudioDecoder::ParseResult> SplitBySamples( I've kept this as SplitBySamples for ...
4 years, 3 months ago (2016-09-13 14:28:30 UTC) #10
hlundin-webrtc
https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc File webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc (right): https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc#newcode78 webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc:78: } On 2016/09/13 12:23:37, kwiberg-webrtc wrote: > On 2016/09/12 ...
4 years, 3 months ago (2016-09-15 08:49:14 UTC) #11
ossu
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc File webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc#newcode78 webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc:78: RTC_DCHECK(payload->size() % bytes_per_frame == 0); On 2016/09/15 08:49:14, hlundin-webrtc ...
4 years, 3 months ago (2016-09-15 08:58:11 UTC) #12
kwiberg-webrtc
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc File webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc#newcode20 webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc:20: rtc::Buffer* payload, On 2016/09/15 08:58:11, ossu wrote: > On ...
4 years, 3 months ago (2016-09-15 09:03:43 UTC) #13
ossu
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc File webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc#newcode20 webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc:20: rtc::Buffer* payload, On 2016/09/15 09:03:43, kwiberg-webrtc wrote: > On ...
4 years, 3 months ago (2016-09-15 09:15:13 UTC) #14
kwiberg-webrtc
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc File webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc#newcode20 webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc:20: rtc::Buffer* payload, On 2016/09/15 09:15:13, ossu wrote: > On ...
4 years, 3 months ago (2016-09-15 09:29:53 UTC) #15
hlundin-webrtc
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc File webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc#newcode78 webrtc/modules/audio_coding/codecs/ilbc/audio_decoder_ilbc.cc:78: RTC_DCHECK(payload->size() % bytes_per_frame == 0); On 2016/09/15 08:58:11, ossu ...
4 years, 3 months ago (2016-09-15 09:43:38 UTC) #16
ossu
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc File webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc#newcode20 webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc:20: rtc::Buffer* payload, On 2016/09/15 09:43:38, hlundin-webrtc wrote: > On ...
4 years, 3 months ago (2016-09-15 11:56:22 UTC) #17
kwiberg-webrtc
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc File webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc#newcode20 webrtc/modules/audio_coding/codecs/legacy_encoded_audio_frame.cc:20: rtc::Buffer* payload, On 2016/09/15 11:56:21, ossu wrote: > On ...
4 years, 3 months ago (2016-09-15 12:06:44 UTC) #18
kwiberg-webrtc
https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/audio_coding.gypi File webrtc/modules/audio_coding/audio_coding.gypi (right): https://codereview.webrtc.org/2326003002/diff/1/webrtc/modules/audio_coding/audio_coding.gypi#newcode190 webrtc/modules/audio_coding/audio_coding.gypi:190: 'target_name': 'audio_coding_utils', On 2016/09/12 11:26:37, ossu wrote: > On ...
4 years, 3 months ago (2016-09-15 13:01:25 UTC) #19
ossu
https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/BUILD.gn File webrtc/modules/BUILD.gn (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/BUILD.gn#newcode244 webrtc/modules/BUILD.gn:244: "audio_coding/:legacy_encoded_audio_frame", On 2016/09/15 13:01:24, kwiberg-webrtc wrote: > Just curious: ...
4 years, 3 months ago (2016-09-15 14:41:06 UTC) #20
kwiberg-webrtc
lgtm https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/BUILD.gn File webrtc/modules/BUILD.gn (right): https://codereview.webrtc.org/2326003002/diff/20001/webrtc/modules/BUILD.gn#newcode244 webrtc/modules/BUILD.gn:244: "audio_coding/:legacy_encoded_audio_frame", On 2016/09/15 14:41:05, ossu wrote: > On ...
4 years, 3 months ago (2016-09-16 00:48:08 UTC) #21
hlundin-webrtc
LGTM % kwiberg's comments. https://codereview.webrtc.org/2326003002/diff/40001/webrtc/modules/audio_coding/codecs/audio_decoder.h File webrtc/modules/audio_coding/codecs/audio_decoder.h (right): https://codereview.webrtc.org/2326003002/diff/40001/webrtc/modules/audio_coding/codecs/audio_decoder.h#newcode54 webrtc/modules/audio_coding/codecs/audio_decoder.h:54: // |decoded| will be large ...
4 years, 3 months ago (2016-09-16 07:35:20 UTC) #22
kwiberg-webrtc
https://codereview.webrtc.org/2326003002/diff/40001/webrtc/modules/audio_coding/codecs/audio_decoder.h File webrtc/modules/audio_coding/codecs/audio_decoder.h (right): https://codereview.webrtc.org/2326003002/diff/40001/webrtc/modules/audio_coding/codecs/audio_decoder.h#newcode54 webrtc/modules/audio_coding/codecs/audio_decoder.h:54: // |decoded| will be large enough for 120 ms ...
4 years, 3 months ago (2016-09-16 07:56:33 UTC) #23
ossu
https://codereview.webrtc.org/2326003002/diff/40001/webrtc/modules/audio_coding/codecs/audio_decoder.h File webrtc/modules/audio_coding/codecs/audio_decoder.h (right): https://codereview.webrtc.org/2326003002/diff/40001/webrtc/modules/audio_coding/codecs/audio_decoder.h#newcode54 webrtc/modules/audio_coding/codecs/audio_decoder.h:54: // |decoded| will be large enough for 120 ms ...
4 years, 3 months ago (2016-09-16 11:46:00 UTC) #24
kwiberg-webrtc
lgtm https://codereview.webrtc.org/2326003002/diff/40001/webrtc/modules/audio_coding/codecs/audio_decoder.h File webrtc/modules/audio_coding/codecs/audio_decoder.h (right): https://codereview.webrtc.org/2326003002/diff/40001/webrtc/modules/audio_coding/codecs/audio_decoder.h#newcode54 webrtc/modules/audio_coding/codecs/audio_decoder.h:54: // |decoded| will be large enough for 120 ...
4 years, 3 months ago (2016-09-16 12:07:40 UTC) #29
hlundin-webrtc
Still LGTM.
4 years, 3 months ago (2016-09-19 12:06:28 UTC) #30
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/2326003002/100001
4 years, 3 months ago (2016-09-21 08:43:30 UTC) #42
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 3 months ago (2016-09-21 08:57:35 UTC) #44
commit-bot: I haz the power
4 years, 3 months ago (2016-09-21 08:57:40 UTC) #46
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/0d526d558b0f7b677c43f83e64e67ad65a9639c0
Cr-Commit-Position: refs/heads/master@{#14319}

Powered by Google App Engine
This is Rietveld 408576698