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

Unified Diff: webrtc/voice_engine/test/auto_test/fakes/conference_transport.h

Issue 3008273002: Replace voe_conference_test. (Closed)
Patch Set: rebase Created 3 years, 3 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/voice_engine/BUILD.gn ('k') | webrtc/voice_engine/test/auto_test/fakes/conference_transport.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/voice_engine/test/auto_test/fakes/conference_transport.h
diff --git a/webrtc/voice_engine/test/auto_test/fakes/conference_transport.h b/webrtc/voice_engine/test/auto_test/fakes/conference_transport.h
deleted file mode 100644
index a0acd9e4524013d64e512e4a164eb33946dc1b41..0000000000000000000000000000000000000000
--- a/webrtc/voice_engine/test/auto_test/fakes/conference_transport.h
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-#ifndef WEBRTC_VOICE_ENGINE_TEST_AUTO_TEST_FAKES_CONFERENCE_TRANSPORT_H_
-#define WEBRTC_VOICE_ENGINE_TEST_AUTO_TEST_FAKES_CONFERENCE_TRANSPORT_H_
-
-#include <deque>
-#include <map>
-#include <memory>
-#include <utility>
-
-#include "webrtc/common_types.h"
-#include "webrtc/modules/rtp_rtcp/include/rtp_header_parser.h"
-#include "webrtc/rtc_base/basictypes.h"
-#include "webrtc/rtc_base/criticalsection.h"
-#include "webrtc/rtc_base/platform_thread.h"
-#include "webrtc/system_wrappers/include/event_wrapper.h"
-#include "webrtc/test/gtest.h"
-#include "webrtc/voice_engine/include/voe_base.h"
-#include "webrtc/voice_engine/include/voe_codec.h"
-#include "webrtc/voice_engine/include/voe_file.h"
-#include "webrtc/voice_engine/include/voe_network.h"
-#include "webrtc/voice_engine/include/voe_rtp_rtcp.h"
-#include "webrtc/voice_engine/test/auto_test/fakes/loudest_filter.h"
-
-namespace webrtc {
-namespace voetest {
-
-static const size_t kMaxPacketSizeByte = 1500;
-
-// This class is to simulate a conference call. There are two Voice Engines, one
-// for local channels and the other for remote channels. There is a simulated
-// reflector, which exchanges RTCP with local channels. For simplicity, it
-// also uses the Voice Engine for remote channels. One can add streams by
-// calling AddStream(), which creates a remote sender channel and a local
-// receive channel. The remote sender channel plays a file as microphone in a
-// looped fashion. Received streams are mixed and played.
-
-class ConferenceTransport: public webrtc::Transport {
- public:
- ConferenceTransport();
- virtual ~ConferenceTransport();
-
- /* SetRtt()
- * Set RTT between local channels and reflector.
- *
- * Input:
- * rtt_ms : RTT in milliseconds.
- */
- void SetRtt(unsigned int rtt_ms);
-
- /* AddStream()
- * Adds a stream in the conference.
- *
- * Input:
- * file_name : name of the file to be added as microphone input.
- * format : format of the input file.
- *
- * Returns stream id.
- */
- unsigned int AddStream(std::string file_name, webrtc::FileFormats format);
-
- /* RemoveStream()
- * Removes a stream with specified ID from the conference.
- *
- * Input:
- * id : stream id.
- *
- * Returns false if the specified stream does not exist, true if succeeds.
- */
- bool RemoveStream(unsigned int id);
-
- /* StartPlayout()
- * Starts playing out the stream with specified ID, using the default device.
- *
- * Input:
- * id : stream id.
- *
- * Returns false if the specified stream does not exist, true if succeeds.
- */
- bool StartPlayout(unsigned int id);
-
- /* GetReceiverStatistics()
- * Gets RTCP statistics of the stream with specified ID.
- *
- * Input:
- * id : stream id;
- * stats : pointer to a CallStatistics to store the result.
- *
- * Returns false if the specified stream does not exist, true if succeeds.
- */
- bool GetReceiverStatistics(unsigned int id, webrtc::CallStatistics* stats);
-
- // Inherit from class webrtc::Transport.
- bool SendRtp(const uint8_t* data,
- size_t len,
- const webrtc::PacketOptions& options) override;
- bool SendRtcp(const uint8_t *data, size_t len) override;
-
- private:
- struct Packet {
- enum Type { Rtp, Rtcp, } type_;
-
- Packet() : len_(0) {}
- Packet(Type type, const void* data, size_t len, int64_t time_ms)
- : type_(type), len_(len), send_time_ms_(time_ms) {
- EXPECT_LE(len_, kMaxPacketSizeByte);
- memcpy(data_, data, len_);
- }
-
- uint8_t data_[kMaxPacketSizeByte];
- size_t len_;
- int64_t send_time_ms_;
- };
-
- static bool Run(void* transport) {
- return static_cast<ConferenceTransport*>(transport)->DispatchPackets();
- }
-
- int GetReceiverChannelForSsrc(unsigned int sender_ssrc) const;
- void StorePacket(Packet::Type type, const void* data, size_t len);
- void SendPacket(const Packet& packet);
- bool DispatchPackets();
-
- rtc::CriticalSection pq_crit_;
- rtc::CriticalSection stream_crit_;
- const std::unique_ptr<webrtc::EventWrapper> packet_event_;
- rtc::PlatformThread thread_;
-
- unsigned int rtt_ms_;
- unsigned int stream_count_;
-
- std::map<unsigned int, std::pair<int, int>> streams_
- RTC_GUARDED_BY(stream_crit_);
- std::deque<Packet> packet_queue_ RTC_GUARDED_BY(pq_crit_);
-
- int local_sender_; // Channel Id of local sender
- int reflector_;
-
- webrtc::VoiceEngine* local_voe_;
- webrtc::VoEBase* local_base_;
- webrtc::VoERTP_RTCP* local_rtp_rtcp_;
- webrtc::VoENetwork* local_network_;
- rtc::scoped_refptr<webrtc::AudioProcessing> local_apm_;
-
- webrtc::VoiceEngine* remote_voe_;
- webrtc::VoEBase* remote_base_;
- webrtc::VoECodec* remote_codec_;
- webrtc::VoERTP_RTCP* remote_rtp_rtcp_;
- webrtc::VoENetwork* remote_network_;
- webrtc::VoEFile* remote_file_;
- rtc::scoped_refptr<webrtc::AudioProcessing> remote_apm_;
- LoudestFilter loudest_filter_;
-
- const std::unique_ptr<webrtc::RtpHeaderParser> rtp_header_parser_;
-};
-
-} // namespace voetest
-} // namespace webrtc
-
-#endif // WEBRTC_VOICE_ENGINE_TEST_AUTO_TEST_FAKES_CONFERENCE_TRANSPORT_H_
« no previous file with comments | « webrtc/voice_engine/BUILD.gn ('k') | webrtc/voice_engine/test/auto_test/fakes/conference_transport.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698