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

Issue 2052233002: Enable passing receive stream ID to the decoder factory. (Closed)

Created:
4 years, 6 months ago by sakal
Modified:
4 years, 6 months ago
CC:
webrtc-reviews_webrtc.org, interface-changes_webrtc.org, yujie_mao (webrtc), tterriberry_mozilla.com, qiang.lu, niklas.enbom, peah-webrtc, the sun
Base URL:
https://chromium.googlesource.com/external/webrtc.git@master
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Pass VideoDecoderParams to VideoDecoderFactory and add SSRC to RtpEncodingParameters. VideoDecoderParams contains the id of the receive video stream. Motivation behind this change is to enable down stream apps easier map raw non-decoded data to incoming streams. BUG=b/28636393 Committed: https://crrev.com/1fd959593677a3b2978c488bd796e966f8025b42 Cr-Commit-Position: refs/heads/master@{#13250}

Patch Set 1 #

Patch Set 2 : Formatting #

Total comments: 5

Patch Set 3 : Remove ssrc method from VideoDecoder interface for now #

Patch Set 4 : Changes according to perkj's comments #

Total comments: 9

Patch Set 5 : pthatcher1's solution implemented #

Total comments: 9

Patch Set 6 : Changes according to pthatcher1's comments #

Total comments: 8

Patch Set 7 : Changes according to perkj's comments #2 && git cl format #

Total comments: 3

Patch Set 8 : Changes according to pthatcher1's comments #2 #

Patch Set 9 : Add tests. #

Total comments: 1

Patch Set 10 : Nit fixes. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+77 lines, -8 lines) Patch
M webrtc/api/rtpparameters.h View 1 2 3 4 5 6 7 1 chunk +5 lines, -1 line 0 comments Download
M webrtc/media/engine/fakewebrtcvideoengine.h View 1 2 3 4 5 6 7 8 2 chunks +10 lines, -0 lines 0 comments Download
M webrtc/media/engine/webrtcvideodecoderfactory.h View 1 2 3 4 5 6 1 chunk +9 lines, -0 lines 0 comments Download
M webrtc/media/engine/webrtcvideoengine2.h View 1 2 3 4 5 6 7 2 chunks +2 lines, -2 lines 0 comments Download
M webrtc/media/engine/webrtcvideoengine2.cc View 1 2 3 4 5 6 7 5 chunks +19 lines, -5 lines 0 comments Download
M webrtc/media/engine/webrtcvideoengine2_unittest.cc View 1 2 3 4 5 6 7 8 9 2 chunks +32 lines, -0 lines 0 comments Download

Messages

Total messages: 45 (16 generated)
sakal
Per, take a look please.
4 years, 6 months ago (2016-06-10 12:49:54 UTC) #3
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2052233002/20001
4 years, 6 months ago (2016-06-10 13:20:42 UTC) #5
perkj_webrtc
https://codereview.webrtc.org/2052233002/diff/20001/webrtc/video_decoder.h File webrtc/video_decoder.h (right): https://codereview.webrtc.org/2052233002/diff/20001/webrtc/video_decoder.h#newcode87 webrtc/video_decoder.h:87: virtual uint32_t ssrc() const { return 0; } please ...
4 years, 6 months ago (2016-06-10 13:22:20 UTC) #6
perkj_webrtc
Peter, Noah, can you please take a look? Is this what you need? https://codereview.webrtc.org/2052233002/diff/20001/webrtc/media/engine/webrtcvideodecoderfactory.h File ...
4 years, 6 months ago (2016-06-10 13:46:39 UTC) #9
sakal
https://codereview.webrtc.org/2052233002/diff/20001/webrtc/media/engine/webrtcvideodecoderfactory.h File webrtc/media/engine/webrtcvideodecoderfactory.h (right): https://codereview.webrtc.org/2052233002/diff/20001/webrtc/media/engine/webrtcvideodecoderfactory.h#newcode27 webrtc/media/engine/webrtcvideodecoderfactory.h:27: virtual webrtc::VideoDecoder* CreateVideoDecoderForSsrc( On 2016/06/10 13:46:39, perkj_webrtc wrote: > ...
4 years, 6 months ago (2016-06-14 13:28:44 UTC) #10
noahric
https://codereview.webrtc.org/2052233002/diff/20001/webrtc/video_decoder.h File webrtc/video_decoder.h (right): https://codereview.webrtc.org/2052233002/diff/20001/webrtc/video_decoder.h#newcode87 webrtc/video_decoder.h:87: virtual uint32_t ssrc() const { return 0; } On ...
4 years, 6 months ago (2016-06-14 17:51:10 UTC) #11
pthatcher1
https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideodecoderfactory.h File webrtc/media/engine/webrtcvideodecoderfactory.h (right): https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideodecoderfactory.h#newcode29 webrtc/media/engine/webrtcvideodecoderfactory.h:29: virtual webrtc::VideoDecoder* CreateVideoDecoderForSsrc( This doesn't seem right to me. ...
4 years, 6 months ago (2016-06-14 18:06:32 UTC) #12
noahric
https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideodecoderfactory.h File webrtc/media/engine/webrtcvideodecoderfactory.h (right): https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideodecoderfactory.h#newcode29 webrtc/media/engine/webrtcvideodecoderfactory.h:29: virtual webrtc::VideoDecoder* CreateVideoDecoderForSsrc( On 2016/06/14 18:06:32, pthatcher1 wrote: > ...
4 years, 6 months ago (2016-06-14 18:26:21 UTC) #13
pthatcher1
https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideodecoderfactory.h File webrtc/media/engine/webrtcvideodecoderfactory.h (right): https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideodecoderfactory.h#newcode29 webrtc/media/engine/webrtcvideodecoderfactory.h:29: virtual webrtc::VideoDecoder* CreateVideoDecoderForSsrc( On 2016/06/14 18:26:21, noahric wrote: > ...
4 years, 6 months ago (2016-06-14 18:59:16 UTC) #14
pthatcher1
https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideoengine2.cc File webrtc/media/engine/webrtcvideoengine2.cc (right): https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideoengine2.cc#newcode2271 webrtc/media/engine/webrtcvideoengine2.cc:2271: external_decoder_factory_->CreateVideoDecoderForSsrc(ssrc, type); Here's a possible solution: 1. The WebRtcVideoChannel2::WebRtcVideoReceiveStream ...
4 years, 6 months ago (2016-06-14 21:12:04 UTC) #15
perkj_webrtc
On 2016/06/14 21:12:04, pthatcher1 wrote: > https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideoengine2.cc > File webrtc/media/engine/webrtcvideoengine2.cc (right): > > https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideoengine2.cc#newcode2271 > ...
4 years, 6 months ago (2016-06-15 07:41:11 UTC) #16
sakal
On 2016/06/14 21:12:04, pthatcher1 wrote: > https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideoengine2.cc > File webrtc/media/engine/webrtcvideoengine2.cc (right): > > https://codereview.webrtc.org/2052233002/diff/60001/webrtc/media/engine/webrtcvideoengine2.cc#newcode2271 > ...
4 years, 6 months ago (2016-06-15 12:35:44 UTC) #17
pthatcher1
With a little tweaking, I think this will work. https://codereview.webrtc.org/2052233002/diff/80001/webrtc/api/rtpparameters.h File webrtc/api/rtpparameters.h (right): https://codereview.webrtc.org/2052233002/diff/80001/webrtc/api/rtpparameters.h#newcode50 webrtc/api/rtpparameters.h:50: ...
4 years, 6 months ago (2016-06-15 19:40:00 UTC) #18
perkj_webrtc
https://codereview.webrtc.org/2052233002/diff/80001/webrtc/api/rtpparameters.h File webrtc/api/rtpparameters.h (right): https://codereview.webrtc.org/2052233002/diff/80001/webrtc/api/rtpparameters.h#newcode50 webrtc/api/rtpparameters.h:50: std::vector<uint32_t> ssrcs; Why is this needed? https://codereview.webrtc.org/2052233002/diff/80001/webrtc/media/engine/webrtcvideoengine2.cc File webrtc/media/engine/webrtcvideoengine2.cc ...
4 years, 6 months ago (2016-06-15 20:25:52 UTC) #19
pthatcher1
https://codereview.webrtc.org/2052233002/diff/80001/webrtc/api/rtpparameters.h File webrtc/api/rtpparameters.h (right): https://codereview.webrtc.org/2052233002/diff/80001/webrtc/api/rtpparameters.h#newcode50 webrtc/api/rtpparameters.h:50: std::vector<uint32_t> ssrcs; On 2016/06/15 20:25:52, perkj_webrtc wrote: > Why ...
4 years, 6 months ago (2016-06-15 21:08:17 UTC) #20
pthatcher1
Oh, and this needs a new title and some unit tests.
4 years, 6 months ago (2016-06-15 21:08:42 UTC) #21
sakal
PTYAL. Let's implement the tests once we are settled on the implementation. https://codereview.webrtc.org/2052233002/diff/100001/webrtc/media/engine/webrtcvideodecoderfactory.h File webrtc/media/engine/webrtcvideodecoderfactory.h ...
4 years, 6 months ago (2016-06-16 09:33:59 UTC) #22
perkj_webrtc
We will have to come up with a unittest as well. https://codereview.webrtc.org/2052233002/diff/100001/webrtc/api/rtpparameters.h File webrtc/api/rtpparameters.h (right): ...
4 years, 6 months ago (2016-06-16 13:28:28 UTC) #23
sakal
https://codereview.webrtc.org/2052233002/diff/100001/webrtc/api/rtpparameters.h File webrtc/api/rtpparameters.h (right): https://codereview.webrtc.org/2052233002/diff/100001/webrtc/api/rtpparameters.h#newcode27 webrtc/api/rtpparameters.h:27: return active == o.active && max_bitrate_bps == o.max_bitrate_bps; On ...
4 years, 6 months ago (2016-06-16 14:29:08 UTC) #24
pthatcher1
A few minor issues, mostly that we shouldn't set the SSRC to 0 when it's ...
4 years, 6 months ago (2016-06-16 19:34:38 UTC) #25
sakal
PTYAL. noahric, can you comment if this looks like a good solution? Does it solve ...
4 years, 6 months ago (2016-06-17 11:45:29 UTC) #27
pthatcher1
lgtm
4 years, 6 months ago (2016-06-21 07:30:07 UTC) #28
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2052233002/170001
4 years, 6 months ago (2016-06-21 10:08:39 UTC) #30
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 6 months ago (2016-06-21 11:40:40 UTC) #33
sakal
I added some tests. pthatcher1, could you please verify they are well implemented?
4 years, 6 months ago (2016-06-21 14:34:42 UTC) #36
pthatcher1
Tests look good (with one small nit) https://codereview.webrtc.org/2052233002/diff/210001/webrtc/media/engine/webrtcvideoengine2_unittest.cc File webrtc/media/engine/webrtcvideoengine2_unittest.cc (right): https://codereview.webrtc.org/2052233002/diff/210001/webrtc/media/engine/webrtcvideoengine2_unittest.cc#newcode842 webrtc/media/engine/webrtcvideoengine2_unittest.cc:842: EXPECT_EQ("FakeStreamParamsId", params[0].receive_stream_id); ...
4 years, 6 months ago (2016-06-22 05:59:01 UTC) #37
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2052233002/230001
4 years, 6 months ago (2016-06-22 07:15:03 UTC) #40
commit-bot: I haz the power
Committed patchset #10 (id:230001)
4 years, 6 months ago (2016-06-22 07:46:21 UTC) #43
commit-bot: I haz the power
4 years, 6 months ago (2016-06-22 07:46:24 UTC) #45
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/1fd959593677a3b2978c488bd796e966f8025b42
Cr-Commit-Position: refs/heads/master@{#13250}

Powered by Google App Engine
This is Rietveld 408576698