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

Issue 2441613002: Add FlexfecSender. (Closed)

Created:
4 years, 2 months ago by brandtr
Modified:
4 years, 1 month ago
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com, zhuangzesen_agora.io, danilchap, stefan-webrtc, mflodman
Target Ref:
refs/pending/heads/master
Project:
webrtc
Visibility:
Public.

Description

Add FlexfecSender. This class will interface RTPSenderVideo with the underlying erasure code. It is functionally similar to ProducerFec (to be renamed UlpfecGenerator). In fact, the FlexfecSender is a friend of ProducerFec, and reuses most of its implementation. Besides the fact that FlexfecSender outputs FlexFEC packets, the main difference with ProducerFec is that FlexfecSender allocates RTP sequence numbers, whereas ProducerFec does not do this for the RED-encapsulated ULPFEC packets. This class is split as interface/implementation, since it will be owned by VideoSendStream initially. Further along, it may be owned by PacedSender. BUG=webrtc:5654 Committed: https://crrev.com/c295e00fa0a9774acbadf5d54389b46b1c17965e Cr-Commit-Position: refs/heads/master@{#14922}

Patch Set 1 #

Total comments: 38

Patch Set 2 : Feedback response 1. #

Total comments: 4

Patch Set 3 : Feedback response 2. #

Total comments: 18

Patch Set 4 : Feedback response 3. #

Patch Set 5 : Rename ulpfec_sender_ -> ulpfec_generator_. #

Patch Set 6 : DCHECK on unprotected media SSRC added instead. #

Total comments: 6

Patch Set 7 : Feedback response 4. #

Patch Set 8 : Rebase. #

Patch Set 9 : Rebase + fixes. #

Total comments: 10

Patch Set 10 : Feedback response 5. #

Patch Set 11 : Remove interface. #

Patch Set 12 : Fix GYP file. #

Patch Set 13 : Rebase. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+515 lines, -2 lines) Patch
M webrtc/modules/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
M webrtc/modules/rtp_rtcp/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +2 lines, -0 lines 0 comments Download
A webrtc/modules/rtp_rtcp/include/flexfec_sender.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +82 lines, -0 lines 0 comments Download
M webrtc/modules/rtp_rtcp/rtp_rtcp.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +2 lines, -0 lines 0 comments Download
A webrtc/modules/rtp_rtcp/source/flexfec_sender.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +165 lines, -0 lines 0 comments Download
A webrtc/modules/rtp_rtcp/source/flexfec_sender_unittest.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +252 lines, -0 lines 0 comments Download
M webrtc/modules/rtp_rtcp/source/ulpfec_generator.h View 1 2 3 4 5 6 7 8 9 10 3 chunks +6 lines, -0 lines 0 comments Download
M webrtc/modules/rtp_rtcp/source/ulpfec_generator.cc View 1 2 3 4 5 6 7 8 2 chunks +5 lines, -2 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 37 (12 generated)
brandtr
Please have a look :) https://codereview.webrtc.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.webrtc.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode20 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:20: #include "webrtc/modules/rtp_rtcp/source/rtp_packet_to_send.h" I guess ...
4 years, 2 months ago (2016-10-20 13:19:42 UTC) #2
danilchap
https://codereview.webrtc.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.webrtc.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode20 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:20: #include "webrtc/modules/rtp_rtcp/source/rtp_packet_to_send.h" On 2016/10/20 13:19:42, brandtr wrote: > I ...
4 years, 2 months ago (2016-10-20 15:12:58 UTC) #3
brandtr
Rebase.
4 years, 2 months ago (2016-10-24 06:40:13 UTC) #4
brandtr
Addressed comments from danilchap. https://codereview.chromium.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.chromium.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode20 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:20: #include "webrtc/modules/rtp_rtcp/source/rtp_packet_to_send.h" On 2016/10/20 15:12:57, ...
4 years, 1 month ago (2016-10-24 12:52:08 UTC) #7
danilchap
https://codereview.chromium.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.chromium.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode20 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:20: #include "webrtc/modules/rtp_rtcp/source/rtp_packet_to_send.h" On 2016/10/24 12:52:07, brandtr wrote: > On ...
4 years, 1 month ago (2016-10-24 13:40:31 UTC) #8
brandtr
Feedback response 2.
4 years, 1 month ago (2016-10-24 14:15:35 UTC) #9
brandtr
https://codereview.chromium.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.chromium.org/2441613002/diff/1/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode20 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:20: #include "webrtc/modules/rtp_rtcp/source/rtp_packet_to_send.h" On 2016/10/24 13:40:31, danilchap wrote: > On ...
4 years, 1 month ago (2016-10-24 14:16:30 UTC) #10
danilchap
lgtm (with bunch of suggestions) https://codereview.chromium.org/2441613002/diff/80001/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.chromium.org/2441613002/diff/80001/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode44 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:44: // Returns 0 on ...
4 years, 1 month ago (2016-10-24 15:29:13 UTC) #11
brandtr
https://codereview.webrtc.org/2441613002/diff/80001/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.webrtc.org/2441613002/diff/80001/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode44 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:44: // Returns 0 on success, and a negative value ...
4 years, 1 month ago (2016-10-25 06:39:54 UTC) #14
brandtr
holmer, any thoughts?
4 years, 1 month ago (2016-10-26 10:39:06 UTC) #15
danilchap
lgtm % nits https://codereview.webrtc.org/2441613002/diff/160001/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.webrtc.org/2441613002/diff/160001/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode17 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:17: #include "webrtc/config.h" alphabetical order https://codereview.webrtc.org/2441613002/diff/160001/webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.cc File ...
4 years, 1 month ago (2016-10-26 12:08:41 UTC) #16
brandtr
Thanks! Done. https://codereview.webrtc.org/2441613002/diff/160001/webrtc/modules/rtp_rtcp/include/flexfec_sender.h File webrtc/modules/rtp_rtcp/include/flexfec_sender.h (right): https://codereview.webrtc.org/2441613002/diff/160001/webrtc/modules/rtp_rtcp/include/flexfec_sender.h#newcode17 webrtc/modules/rtp_rtcp/include/flexfec_sender.h:17: #include "webrtc/config.h" On 2016/10/26 12:08:41, danilchap wrote: ...
4 years, 1 month ago (2016-10-26 12:20:53 UTC) #17
brandtr
Rebase.
4 years, 1 month ago (2016-10-28 07:38:11 UTC) #18
brandtr
Rebase + fixes.
4 years, 1 month ago (2016-11-02 10:22:46 UTC) #19
stefan-webrtc
lg https://codereview.webrtc.org/2441613002/diff/60001/webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.h File webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.h (right): https://codereview.webrtc.org/2441613002/diff/60001/webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.h#newcode27 webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.h:27: class FlexfecSenderImpl : public FlexfecSender { I'm thinking ...
4 years, 1 month ago (2016-11-02 13:02:42 UTC) #20
brandtr
https://codereview.webrtc.org/2441613002/diff/60001/webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.h File webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.h (right): https://codereview.webrtc.org/2441613002/diff/60001/webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.h#newcode27 webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.h:27: class FlexfecSenderImpl : public FlexfecSender { On 2016/11/02 13:02:42, ...
4 years, 1 month ago (2016-11-02 14:04:37 UTC) #21
brandtr
Removed interface.
4 years, 1 month ago (2016-11-02 16:07:16 UTC) #22
stefan-webrtc
lgtm https://codereview.webrtc.org/2441613002/diff/220001/webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.cc File webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.cc (right): https://codereview.webrtc.org/2441613002/diff/220001/webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.cc#newcode166 webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.cc:166: } On 2016/11/02 14:04:37, brandtr wrote: > On ...
4 years, 1 month ago (2016-11-03 13:42:40 UTC) #23
brandtr
On 2016/11/03 13:42:40, stefan-webrtc (holmer) wrote: > lgtm > > https://codereview.webrtc.org/2441613002/diff/220001/webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.cc > File webrtc/modules/rtp_rtcp/source/flexfec_sender_impl.cc (right): ...
4 years, 1 month ago (2016-11-03 13:52:40 UTC) #24
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/2441613002/280001
4 years, 1 month ago (2016-11-03 14:43:02 UTC) #27
commit-bot: I haz the power
Try jobs failed on following builders: win_x64_dbg on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/win_x64_dbg/builds/2805)
4 years, 1 month ago (2016-11-03 15:27:04 UTC) #29
brandtr
Rebase.
4 years, 1 month ago (2016-11-03 15:29:49 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/2441613002/300001
4 years, 1 month ago (2016-11-03 15:31:35 UTC) #33
commit-bot: I haz the power
Committed patchset #13 (id:300001)
4 years, 1 month ago (2016-11-03 16:22:37 UTC) #35
commit-bot: I haz the power
4 years, 1 month ago (2016-11-03 16:22:47 UTC) #37
Message was sent while issue was closed.
Patchset 13 (id:??) landed as
https://crrev.com/c295e00fa0a9774acbadf5d54389b46b1c17965e
Cr-Commit-Position: refs/heads/master@{#14922}

Powered by Google App Engine
This is Rietveld 408576698