Index: webrtc/test/direct_transport.h |
diff --git a/webrtc/test/direct_transport.h b/webrtc/test/direct_transport.h |
index 20a6857182b71d545b0d742df3aea61aa31138df..adf1405818549b4de4e7c0ca59aa9f6d988eb9e7 100644 |
--- a/webrtc/test/direct_transport.h |
+++ b/webrtc/test/direct_transport.h |
@@ -30,9 +30,26 @@ namespace test { |
class DirectTransport : public Transport { |
public: |
- DirectTransport(Call* send_call, MediaType media_type); |
- DirectTransport(const FakeNetworkPipe::Config& config, Call* send_call, |
- MediaType media_type); |
+ DirectTransport(Call* send_call, |
+ const std::map<uint8_t, MediaType>& payload_type_map); |
+ DirectTransport(const FakeNetworkPipe::Config& config, |
+ Call* send_call, |
+ const std::map<uint8_t, MediaType>& payload_type_map); |
+ DirectTransport(const FakeNetworkPipe::Config& config, |
+ Call* send_call, |
+ std::unique_ptr<Demuxer> demuxer); |
+ |
+ // These deprecated variants always use ForceDemuxer. |
+ RTC_DEPRECATED DirectTransport(Call* send_call, MediaType media_type) |
+ : DirectTransport(FakeNetworkPipe::Config(), send_call, media_type) {} |
+ RTC_DEPRECATED DirectTransport(const FakeNetworkPipe::Config& config, |
+ Call* send_call, |
+ MediaType media_type) |
+ : DirectTransport( |
+ config, |
+ send_call, |
+ std::unique_ptr<Demuxer>(new ForceDemuxer(media_type))) {} |
+ |
// These deprecated variants always use MediaType::VIDEO. |
RTC_DEPRECATED explicit DirectTransport(Call* send_call) |
: DirectTransport(send_call, MediaType::VIDEO) {} |
@@ -57,6 +74,20 @@ class DirectTransport : public Transport { |
int GetAverageDelayMs(); |
private: |
+ // TODO(minyue): remove when the deprecate ctors are removed. |
stefan-webrtc
2017/04/10 07:45:26
deprecated
minyue-webrtc
2017/04/10 09:56:10
Done. and since there are several deprecated ctors
|
+ class ForceDemuxer : public Demuxer { |
+ public: |
+ explicit ForceDemuxer(MediaType media_type); |
+ void SetReceiver(PacketReceiver* receiver) override; |
+ void DeliverPacket(const NetworkPacket* packet, |
+ const PacketTime& packet_time) override; |
+ |
+ private: |
+ const MediaType media_type_; |
+ PacketReceiver* packet_receiver_; |
+ RTC_DISALLOW_COPY_AND_ASSIGN(ForceDemuxer); |
+ }; |
+ |
static bool NetworkProcess(void* transport); |
bool SendPackets(); |