Delete Start and Stop methods from TestVideoCapturer.

Preparation for replacing use of TestVideoCapturer as an interface,
instead using VideoSourceInterface.

Methods kept as non-virtual on the subclass FrameGeneratorCapturer,
but it's changed to be started on creation.

Bug: webrtc:6353
Change-Id: Iae1c9a0ee55d730d4992204f62227ef2f057d58e
Reviewed-on: https://webrtc-review.googlesource.com/c/114425
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Per Kjellander <perkj@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26037}
This commit is contained in:
Niels Möller 2018-12-14 13:35:32 +01:00 committed by Commit Bot
parent 41f3a43c74
commit 8eeccbe6a6
16 changed files with 5 additions and 66 deletions

View File

@ -183,7 +183,6 @@ class BitrateEstimatorTest : public test::CallTest {
send_stream_->SetSource(frame_generator_capturer_.get(), send_stream_->SetSource(frame_generator_capturer_.get(),
DegradationPreference::MAINTAIN_FRAMERATE); DegradationPreference::MAINTAIN_FRAMERATE);
send_stream_->Start(); send_stream_->Start();
frame_generator_capturer_->Start();
VideoReceiveStream::Decoder decoder; VideoReceiveStream::Decoder decoder;
decoder.decoder_factory = &decoder_factory_; decoder.decoder_factory = &decoder_factory_;
@ -215,7 +214,6 @@ class BitrateEstimatorTest : public test::CallTest {
void StopSending() { void StopSending() {
if (is_sending_receiving_) { if (is_sending_receiving_) {
frame_generator_capturer_->Stop();
send_stream_->Stop(); send_stream_->Stop();
if (video_receive_stream_) { if (video_receive_stream_) {
video_receive_stream_->Stop(); video_receive_stream_->Stop();

View File

@ -49,12 +49,10 @@ class FrameGeneratorCapturerVideoTrackSource : public VideoTrackSource {
~FrameGeneratorCapturerVideoTrackSource() = default; ~FrameGeneratorCapturerVideoTrackSource() = default;
void Start() { void Start() {
video_capturer_->Start();
SetState(kLive); SetState(kLive);
} }
void Stop() { void Stop() {
video_capturer_->Stop();
SetState(kMuted); SetState(kMuted);
} }

View File

@ -588,7 +588,6 @@ void CallTest::Start() {
} }
for (AudioReceiveStream* audio_recv_stream : audio_receive_streams_) for (AudioReceiveStream* audio_recv_stream : audio_receive_streams_)
audio_recv_stream->Start(); audio_recv_stream->Start();
StartVideoCapture();
} }
void CallTest::StartVideoStreams() { void CallTest::StartVideoStreams() {
@ -598,13 +597,7 @@ void CallTest::StartVideoStreams() {
video_recv_stream->Start(); video_recv_stream->Start();
} }
void CallTest::StartVideoCapture() {
for (auto& capturer : video_capturers_)
capturer->Start();
}
void CallTest::Stop() { void CallTest::Stop() {
StopVideoCapture();
for (AudioReceiveStream* audio_recv_stream : audio_receive_streams_) for (AudioReceiveStream* audio_recv_stream : audio_receive_streams_)
audio_recv_stream->Stop(); audio_recv_stream->Stop();
if (audio_send_stream_) { if (audio_send_stream_) {
@ -613,11 +606,6 @@ void CallTest::Stop() {
StopVideoStreams(); StopVideoStreams();
} }
void CallTest::StopVideoCapture() {
for (auto& capturer : video_capturers_)
capturer->Stop();
}
void CallTest::StopVideoStreams() { void CallTest::StopVideoStreams() {
for (VideoSendStream* video_send_stream : video_send_streams_) for (VideoSendStream* video_send_stream : video_send_streams_)
video_send_stream->Stop(); video_send_stream->Stop();

View File

@ -154,9 +154,7 @@ class CallTest : public ::testing::Test {
void Start(); void Start();
void StartVideoStreams(); void StartVideoStreams();
void StartVideoCapture();
void Stop(); void Stop();
void StopVideoCapture();
void StopVideoStreams(); void StopVideoStreams();
void DestroyStreams(); void DestroyStreams();
void DestroyVideoSendStreams(); void DestroyVideoSendStreams();

View File

@ -126,7 +126,7 @@ FrameGeneratorCapturer::FrameGeneratorCapturer(
std::unique_ptr<FrameGenerator> frame_generator, std::unique_ptr<FrameGenerator> frame_generator,
int target_fps) int target_fps)
: clock_(clock), : clock_(clock),
sending_(false), sending_(true),
sink_(nullptr), sink_(nullptr),
sink_wants_observer_(nullptr), sink_wants_observer_(nullptr),
frame_generator_(std::move(frame_generator)), frame_generator_(std::move(frame_generator)),

View File

@ -61,8 +61,8 @@ class FrameGeneratorCapturer : public TestVideoCapturer {
Clock* clock); Clock* clock);
virtual ~FrameGeneratorCapturer(); virtual ~FrameGeneratorCapturer();
void Start() override; void Start();
void Stop() override; void Stop();
void ChangeResolution(size_t width, size_t height); void ChangeResolution(size_t width, size_t height);
void ChangeFramerate(int target_framerate); void ChangeFramerate(int target_framerate);

View File

@ -375,7 +375,6 @@ void Scenario::Start() {
void Scenario::Stop() { void Scenario::Stop() {
RTC_DCHECK(start_time_.IsFinite()); RTC_DCHECK(start_time_.IsFinite());
for (auto& stream_pair : video_streams_) { for (auto& stream_pair : video_streams_) {
stream_pair->send()->video_capturer_->Stop();
stream_pair->send()->send_stream_->Stop(); stream_pair->send()->send_stream_->Stop();
} }
for (auto& stream_pair : audio_streams_) for (auto& stream_pair : audio_streams_)

View File

@ -255,7 +255,6 @@ SendVideoStream::~SendVideoStream() {
void SendVideoStream::Start() { void SendVideoStream::Start() {
send_stream_->Start(); send_stream_->Start();
video_capturer_->Start();
sender_->call_->SignalChannelNetworkState(MediaType::VIDEO, kNetworkUp); sender_->call_->SignalChannelNetworkState(MediaType::VIDEO, kNetworkUp);
} }

View File

@ -34,9 +34,6 @@ class TestVideoCapturer : public rtc::VideoSourceInterface<VideoFrame> {
TestVideoCapturer(); TestVideoCapturer();
virtual ~TestVideoCapturer(); virtual ~TestVideoCapturer();
virtual void Start() = 0;
virtual void Stop() = 0;
void AddOrUpdateSink(rtc::VideoSinkInterface<VideoFrame>* sink, void AddOrUpdateSink(rtc::VideoSinkInterface<VideoFrame>* sink,
const rtc::VideoSinkWants& wants) override; const rtc::VideoSinkWants& wants) override;

View File

@ -22,7 +22,7 @@
namespace webrtc { namespace webrtc {
namespace test { namespace test {
VcmCapturer::VcmCapturer() : started_(false), sink_(nullptr), vcm_(nullptr) {} VcmCapturer::VcmCapturer() : sink_(nullptr), vcm_(nullptr) {}
bool VcmCapturer::Init(size_t width, bool VcmCapturer::Init(size_t width,
size_t height, size_t height,
@ -74,16 +74,6 @@ VcmCapturer* VcmCapturer::Create(size_t width,
return vcm_capturer.release(); return vcm_capturer.release();
} }
void VcmCapturer::Start() {
rtc::CritScope lock(&crit_);
started_ = true;
}
void VcmCapturer::Stop() {
rtc::CritScope lock(&crit_);
started_ = false;
}
void VcmCapturer::AddOrUpdateSink(rtc::VideoSinkInterface<VideoFrame>* sink, void VcmCapturer::AddOrUpdateSink(rtc::VideoSinkInterface<VideoFrame>* sink,
const rtc::VideoSinkWants& wants) { const rtc::VideoSinkWants& wants) {
rtc::CritScope lock(&crit_); rtc::CritScope lock(&crit_);
@ -114,7 +104,7 @@ VcmCapturer::~VcmCapturer() {
void VcmCapturer::OnFrame(const VideoFrame& frame) { void VcmCapturer::OnFrame(const VideoFrame& frame) {
rtc::CritScope lock(&crit_); rtc::CritScope lock(&crit_);
if (started_ && sink_) { if (sink_) {
absl::optional<VideoFrame> out_frame = AdaptFrame(frame); absl::optional<VideoFrame> out_frame = AdaptFrame(frame);
if (out_frame) if (out_frame)
sink_->OnFrame(*out_frame); sink_->OnFrame(*out_frame);

View File

@ -30,8 +30,6 @@ class VcmCapturer : public TestVideoCapturer,
size_t capture_device_index); size_t capture_device_index);
virtual ~VcmCapturer(); virtual ~VcmCapturer();
void Start() override;
void Stop() override;
void AddOrUpdateSink(rtc::VideoSinkInterface<VideoFrame>* sink, void AddOrUpdateSink(rtc::VideoSinkInterface<VideoFrame>* sink,
const rtc::VideoSinkWants& wants) override; const rtc::VideoSinkWants& wants) override;
void RemoveSink(rtc::VideoSinkInterface<VideoFrame>* sink) override; void RemoveSink(rtc::VideoSinkInterface<VideoFrame>* sink) override;
@ -47,7 +45,6 @@ class VcmCapturer : public TestVideoCapturer,
void Destroy(); void Destroy();
rtc::CriticalSection crit_; rtc::CriticalSection crit_;
bool started_ RTC_GUARDED_BY(crit_);
rtc::VideoSinkInterface<VideoFrame>* sink_ RTC_GUARDED_BY(crit_); rtc::VideoSinkInterface<VideoFrame>* sink_ RTC_GUARDED_BY(crit_);
rtc::scoped_refptr<VideoCaptureModule> vcm_; rtc::scoped_refptr<VideoCaptureModule> vcm_;
VideoCaptureCapability capability_; VideoCaptureCapability capability_;

View File

@ -219,7 +219,6 @@ void MultiCodecReceiveTest::RunTestWithCodecs(
for (size_t i = 1; i < configs.size(); ++i) { for (size_t i = 1; i < configs.size(); ++i) {
// Recreate VideoSendStream with new config (codec, temporal layers). // Recreate VideoSendStream with new config (codec, temporal layers).
task_queue_.SendTask([this, i, &configs]() { task_queue_.SendTask([this, i, &configs]() {
frame_generator_capturer_->Stop();
DestroyVideoSendStreams(); DestroyVideoSendStreams();
observer_.Reset(); observer_.Reset();
@ -228,7 +227,6 @@ void MultiCodecReceiveTest::RunTestWithCodecs(
GetVideoSendStream()->Start(); GetVideoSendStream()->Start();
CreateFrameGeneratorCapturer(kFps, kWidth / 2, kHeight / 2); CreateFrameGeneratorCapturer(kFps, kWidth / 2, kHeight / 2);
ConnectVideoSourcesToStreams(); ConnectVideoSourcesToStreams();
frame_generator_capturer_->Start();
}); });
EXPECT_TRUE(observer_.Wait()) << "Timed out waiting for frames."; EXPECT_TRUE(observer_.Wait()) << "Timed out waiting for frames.";
} }

View File

@ -323,7 +323,6 @@ void RtpRtcpEndToEndTest::TestRtpStatePreservation(
// get set once (this could be due to using std::map::insert for instance). // get set once (this could be due to using std::map::insert for instance).
for (size_t i = 0; i < 3; ++i) { for (size_t i = 0; i < 3; ++i) {
task_queue_.SendTask([&]() { task_queue_.SendTask([&]() {
frame_generator_capturer_->Stop();
DestroyVideoSendStreams(); DestroyVideoSendStreams();
// Re-create VideoSendStream with only one stream. // Re-create VideoSendStream with only one stream.
@ -339,7 +338,6 @@ void RtpRtcpEndToEndTest::TestRtpStatePreservation(
->SendRtcp(packet.data(), packet.size()); ->SendRtcp(packet.data(), packet.size());
} }
CreateFrameGeneratorCapturer(30, 1280, 720); CreateFrameGeneratorCapturer(30, 1280, 720);
frame_generator_capturer_->Start();
}); });
observer.ResetExpectedSsrcs(1); observer.ResetExpectedSsrcs(1);
@ -560,13 +558,11 @@ TEST_F(RtpRtcpEndToEndTest, DISABLED_TestFlexfecRtpStatePreservation) {
task_queue_.SendTask([this, &observer]() { task_queue_.SendTask([this, &observer]() {
// Ensure monotonicity when the VideoSendStream is recreated. // Ensure monotonicity when the VideoSendStream is recreated.
frame_generator_capturer_->Stop();
DestroyVideoSendStreams(); DestroyVideoSendStreams();
observer.ResetPacketCount(); observer.ResetPacketCount();
CreateVideoSendStreams(); CreateVideoSendStreams();
GetVideoSendStream()->Start(); GetVideoSendStream()->Start();
CreateFrameGeneratorCapturer(kFrameRate, kFrameMaxWidth, kFrameMaxHeight); CreateFrameGeneratorCapturer(kFrameRate, kFrameMaxWidth, kFrameMaxHeight);
frame_generator_capturer_->Start();
}); });
EXPECT_TRUE(observer.Wait()) << "Timed out waiting for packets."; EXPECT_TRUE(observer.Wait()) << "Timed out waiting for packets.";

View File

@ -363,7 +363,6 @@ void PictureIdTest::TestPictureIdIncreaseAfterRecreateStreams(
observer_->SetMaxExpectedPictureIdGap(kMaxFramesLost); observer_->SetMaxExpectedPictureIdGap(kMaxFramesLost);
for (int ssrc_count : ssrc_counts) { for (int ssrc_count : ssrc_counts) {
task_queue_.SendTask([this, &ssrc_count]() { task_queue_.SendTask([this, &ssrc_count]() {
frame_generator_capturer_->Stop();
DestroyVideoSendStreams(); DestroyVideoSendStreams();
GetVideoEncoderConfig()->number_of_streams = ssrc_count; GetVideoEncoderConfig()->number_of_streams = ssrc_count;
@ -373,7 +372,6 @@ void PictureIdTest::TestPictureIdIncreaseAfterRecreateStreams(
CreateVideoSendStreams(); CreateVideoSendStreams();
GetVideoSendStream()->Start(); GetVideoSendStream()->Start();
CreateFrameGeneratorCapturer(kFrameRate, kFrameMaxWidth, kFrameMaxHeight); CreateFrameGeneratorCapturer(kFrameRate, kFrameMaxWidth, kFrameMaxHeight);
frame_generator_capturer_->Start();
}); });
EXPECT_TRUE(observer_->Wait()) << "Timed out waiting for packets."; EXPECT_TRUE(observer_->Wait()) << "Timed out waiting for packets.";

View File

@ -953,18 +953,6 @@ void VideoQualityTest::StartAudioStreams() {
audio_recv_stream->Start(); audio_recv_stream->Start();
} }
void VideoQualityTest::StartThumbnailCapture() {
for (std::unique_ptr<test::TestVideoCapturer>& capturer :
thumbnail_capturers_)
capturer->Start();
}
void VideoQualityTest::StopThumbnailCapture() {
for (std::unique_ptr<test::TestVideoCapturer>& capturer :
thumbnail_capturers_)
capturer->Stop();
}
void VideoQualityTest::StartThumbnails() { void VideoQualityTest::StartThumbnails() {
for (VideoSendStream* send_stream : thumbnail_send_streams_) for (VideoSendStream* send_stream : thumbnail_send_streams_)
send_stream->Start(); send_stream->Start();
@ -1130,14 +1118,11 @@ void VideoQualityTest::RunWithAnalyzer(const Params& params) {
StartVideoStreams(); StartVideoStreams();
StartThumbnails(); StartThumbnails();
analyzer_->StartMeasuringCpuProcessTime(); analyzer_->StartMeasuringCpuProcessTime();
StartVideoCapture();
StartThumbnailCapture();
}); });
analyzer_->Wait(); analyzer_->Wait();
task_queue_.SendTask([&]() { task_queue_.SendTask([&]() {
StopThumbnailCapture();
StopThumbnails(); StopThumbnails();
Stop(); Stop();

View File

@ -82,8 +82,6 @@ class VideoQualityTest :
void SetupVideo(Transport* send_transport, Transport* recv_transport); void SetupVideo(Transport* send_transport, Transport* recv_transport);
void SetupThumbnails(Transport* send_transport, Transport* recv_transport); void SetupThumbnails(Transport* send_transport, Transport* recv_transport);
void StartAudioStreams(); void StartAudioStreams();
void StartThumbnailCapture();
void StopThumbnailCapture();
void StartThumbnails(); void StartThumbnails();
void StopThumbnails(); void StopThumbnails();
void DestroyThumbnailStreams(); void DestroyThumbnailStreams();