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

Unified Diff: webrtc/test/direct_transport.h

Issue 2794243002: Making FakeNetworkPipe demux audio and video packets. (Closed)
Patch Set: fixing android Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/test/call_test.cc ('k') | webrtc/test/direct_transport.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/test/direct_transport.h
diff --git a/webrtc/test/direct_transport.h b/webrtc/test/direct_transport.h
index 20a6857182b71d545b0d742df3aea61aa31138df..a865c83150c5dfed2a256316293157b60ccd00df 100644
--- a/webrtc/test/direct_transport.h
+++ b/webrtc/test/direct_transport.h
@@ -30,16 +30,42 @@ 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(
minyue-webrtc 2017/04/10 21:36:37 android bots do not allow a deprecated ctor calls
+ FakeNetworkPipe::Config(),
+ send_call,
+ std::unique_ptr<Demuxer>(new ForceDemuxer(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) {}
+ : DirectTransport(
+ FakeNetworkPipe::Config(),
+ send_call,
+ std::unique_ptr<Demuxer>(new ForceDemuxer(MediaType::VIDEO))) {}
RTC_DEPRECATED DirectTransport(const FakeNetworkPipe::Config& config,
Call* send_call)
- : DirectTransport(config, send_call, MediaType::VIDEO) {}
+ : DirectTransport(
+ config,
+ send_call,
+ std::unique_ptr<Demuxer>(new ForceDemuxer(MediaType::VIDEO))) {}
~DirectTransport();
@@ -57,6 +83,21 @@ class DirectTransport : public Transport {
int GetAverageDelayMs();
private:
+ // TODO(minyue): remove when the deprecated ctors of DirectTransport that
+ // create ForceDemuxer are removed.
+ 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();
« no previous file with comments | « webrtc/test/call_test.cc ('k') | webrtc/test/direct_transport.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698