Remove dependency from RtpRtcp on the Module interface.
The 'Module' part of the implementation must not be called via the RtpRtcp interface, but is rather a part of the contract with ProcessThread. That in turn is an implementation detail for how timers are currently implemented in the default implementation. Along the way I'm deprecating away the factory function which was inside the interface and tied it to one specific implementation. Instead, I'm moving that to the implementation itself and down the line, we don't have to go through it if we just want to create an instance of the class. The key change is in rtp_rtcp.h and the new rtp_rtcp_interface.h header file (things moved from rtp_rtcp.h), the rest falls from that. Change-Id: I294f13e947b9e3e4e649400ee94a11a81e8071ce Bug: webrtc:11581 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176419 Reviewed-by: Magnus Flodman <mflodman@webrtc.org> Commit-Queue: Tommi <tommi@webrtc.org> Cr-Commit-Position: refs/heads/master@{#31440}
This commit is contained in:
committed by
Commit Bot
parent
4d75d9c04c
commit
f25761d798
@ -45,7 +45,8 @@ struct RTPVideoHeader;
|
||||
// DEPRECATED.
|
||||
class ModuleRtpRtcpImpl : public RtpRtcp, public RTCPReceiver::ModuleRtpRtcp {
|
||||
public:
|
||||
explicit ModuleRtpRtcpImpl(const RtpRtcp::Configuration& configuration);
|
||||
explicit ModuleRtpRtcpImpl(
|
||||
const RtpRtcpInterface::Configuration& configuration);
|
||||
~ModuleRtpRtcpImpl() override;
|
||||
|
||||
// Returns the number of milliseconds until the module want a worker thread to
|
||||
@ -304,7 +305,7 @@ class ModuleRtpRtcpImpl : public RtpRtcp, public RTCPReceiver::ModuleRtpRtcp {
|
||||
FRIEND_TEST_ALL_PREFIXES(RtpRtcpImplTest, RttForReceiverOnly);
|
||||
|
||||
struct RtpSenderContext {
|
||||
explicit RtpSenderContext(const RtpRtcp::Configuration& config);
|
||||
explicit RtpSenderContext(const RtpRtcpInterface::Configuration& config);
|
||||
// Storage of packets, for retransmissions and padding, if applicable.
|
||||
RtpPacketHistory packet_history;
|
||||
// Handles final time timestamping/stats/etc and handover to Transport.
|
||||
|
||||
Reference in New Issue
Block a user