Make |rtcp_send_transport| mandatory in FlexfecReceiveStream::Config.
That object will be used when we enable RTCP reporting from FlexfecReceiveStream.
Other related changes:
- Stop using FlexfecConfig (from config.h) at receive side in WebRtcVideoEngine2.
- Add a IsCompleteAndEnabled() method to FlexfecReceiveStream::Config, to be
used in WebRtcVideoEngine2.
- Centralize the construction of the FlexfecReceiveStream::Config in unit tests.
This will make future additions to the unit tests cleaner.
- Simplify setup for receiving FlexFEC in VideoQualityTest.
BUG=webrtc:5654
Review-Url: https://codereview.webrtc.org/2589713003
Cr-Original-Commit-Position: refs/heads/master@{#16059}
Cr-Mirrored-From: https://chromium.googlesource.com/external/webrtc
Cr-Mirrored-Commit: 8313a6fa8f78d18e0f5e2bff31086da01d0db4bf
diff --git a/call/flexfec_receive_stream.h b/call/flexfec_receive_stream.h
index fe57643..babeee0 100644
--- a/call/flexfec_receive_stream.h
+++ b/call/flexfec_receive_stream.h
@@ -31,8 +31,17 @@
};
struct Config {
+ explicit Config(Transport* rtcp_send_transport)
+ : rtcp_send_transport(rtcp_send_transport) {
+ RTC_DCHECK(rtcp_send_transport);
+ }
+
std::string ToString() const;
+ // Returns true if all RTP information is available in order to
+ // enable receiving FlexFEC.
+ bool IsCompleteAndEnabled() const;
+
// Payload type for FlexFEC.
int payload_type = -1;