Revert "FrameGeneratorCapturer: don't generate video before Start is called"
This reverts commit 00a8576a67c9e37de52a9d0c18042b4d4fd339a2. Reason for revert: Speculative rollback (performance metrics change) Original change's description: > FrameGeneratorCapturer: don't generate video before Start is called > > Bug: b/272350185 > Change-Id: I3c264df49e952c8f852feb08607b8d4e320b15fb > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/309860 > Reviewed-by: Jeremy Leconte <jleconte@google.com> > Reviewed-by: Danil Chapovalov <danilchap@webrtc.org> > Commit-Queue: Artem Titov <titovartem@webrtc.org> > Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> > Reviewed-by: Florent Castelli <orphis@webrtc.org> > Cr-Commit-Position: refs/heads/main@{#40336} Bug: b/272350185, b/288515909 Change-Id: I66fc61d5d4d1c17f46f1f5b4fc6ff64a9b2012f3 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/310681 Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org> Owners-Override: Mirko Bonadei <mbonadei@webrtc.org> Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Jeremy Leconte <jleconte@google.com> Cr-Commit-Position: refs/heads/main@{#40372}
This commit is contained in:
parent
7e4b2a5265
commit
2d7ccb4149
@ -186,7 +186,6 @@ class BitrateEstimatorTest : public test::CallTest {
|
||||
test::VideoTestConstants::kDefaultFramerate,
|
||||
*test->task_queue_factory_);
|
||||
frame_generator_capturer_->Init();
|
||||
frame_generator_capturer_->Start();
|
||||
send_stream_->SetSource(frame_generator_capturer_.get(),
|
||||
DegradationPreference::MAINTAIN_FRAMERATE);
|
||||
send_stream_->Start();
|
||||
|
||||
@ -237,7 +237,6 @@ TEST_F(PeerConnectionFieldTrialTest, ApplyFakeNetworkConfig) {
|
||||
auto video_track_source =
|
||||
rtc::make_ref_counted<FrameGeneratorCapturerVideoTrackSource>(
|
||||
config, clock_, /*is_screencast=*/false);
|
||||
video_track_source->Start();
|
||||
caller->AddTrack(pc_factory_->CreateVideoTrack(video_track_source, "v"));
|
||||
WrapperPtr callee = CreatePeerConnection();
|
||||
|
||||
|
||||
@ -64,15 +64,9 @@ class FrameGeneratorCapturerVideoTrackSource : public VideoTrackSource {
|
||||
|
||||
~FrameGeneratorCapturerVideoTrackSource() = default;
|
||||
|
||||
void Start() {
|
||||
SetState(kLive);
|
||||
video_capturer_->Start();
|
||||
}
|
||||
void Start() { SetState(kLive); }
|
||||
|
||||
void Stop() {
|
||||
SetState(kMuted);
|
||||
video_capturer_->Stop();
|
||||
}
|
||||
void Stop() { SetState(kMuted); }
|
||||
|
||||
bool is_screencast() const override { return is_screencast_; }
|
||||
|
||||
|
||||
@ -1260,7 +1260,6 @@ if (!build_with_chromium) {
|
||||
":run_loop",
|
||||
":scoped_key_value_config",
|
||||
":test_support",
|
||||
":test_video_capturer",
|
||||
":video_test_common",
|
||||
":video_test_constants",
|
||||
"../api:array_view",
|
||||
|
||||
@ -634,14 +634,7 @@ void CallTest::Start() {
|
||||
audio_recv_stream->Start();
|
||||
}
|
||||
|
||||
void CallTest::StartVideoSources() {
|
||||
for (size_t i = 0; i < video_sources_.size(); ++i) {
|
||||
video_sources_[i]->Start();
|
||||
}
|
||||
}
|
||||
|
||||
void CallTest::StartVideoStreams() {
|
||||
StartVideoSources();
|
||||
for (size_t i = 0; i < video_send_streams_.size(); ++i) {
|
||||
std::vector<bool> active_rtp_streams(
|
||||
video_send_configs_[i].rtp.ssrcs.size(), true);
|
||||
|
||||
@ -36,7 +36,6 @@
|
||||
#include "test/rtp_rtcp_observer.h"
|
||||
#include "test/run_loop.h"
|
||||
#include "test/scoped_key_value_config.h"
|
||||
#include "test/test_video_capturer.h"
|
||||
#include "test/video_test_constants.h"
|
||||
|
||||
namespace webrtc {
|
||||
@ -163,7 +162,6 @@ class CallTest : public ::testing::Test, public RtpPacketSinkInterface {
|
||||
void ConnectVideoSourcesToStreams();
|
||||
|
||||
void Start();
|
||||
void StartVideoSources();
|
||||
void StartVideoStreams();
|
||||
void Stop();
|
||||
void StopVideoStreams();
|
||||
@ -212,7 +210,8 @@ class CallTest : public ::testing::Test, public RtpPacketSinkInterface {
|
||||
std::vector<FlexfecReceiveStream*> flexfec_receive_streams_;
|
||||
|
||||
test::FrameGeneratorCapturer* frame_generator_capturer_;
|
||||
std::vector<std::unique_ptr<TestVideoCapturer>> video_sources_;
|
||||
std::vector<std::unique_ptr<rtc::VideoSourceInterface<VideoFrame>>>
|
||||
video_sources_;
|
||||
DegradationPreference degradation_preference_ =
|
||||
DegradationPreference::MAINTAIN_FRAMERATE;
|
||||
|
||||
|
||||
@ -43,7 +43,7 @@ FrameGeneratorCapturer::FrameGeneratorCapturer(
|
||||
int target_fps,
|
||||
TaskQueueFactory& task_queue_factory)
|
||||
: clock_(clock),
|
||||
sending_(false),
|
||||
sending_(true),
|
||||
sink_wants_observer_(nullptr),
|
||||
frame_generator_(std::move(frame_generator)),
|
||||
source_fps_(target_fps),
|
||||
|
||||
@ -129,7 +129,7 @@ TEST_F(PeerConnectionE2EQualityTestTest, OutputVideoIsDumpedWhenRequested) {
|
||||
|
||||
auto frame_reader = test::CreateY4mFrameReader(
|
||||
test::JoinFilename(test_directory_, "alice_video_bob_320x180_15.y4m"));
|
||||
EXPECT_THAT(frame_reader->num_frames(), Eq(30)); // 2 seconds 15 fps
|
||||
EXPECT_THAT(frame_reader->num_frames(), Eq(31)); // 2 seconds 15 fps + 1
|
||||
|
||||
ExpectOutputFilesCount(1);
|
||||
}
|
||||
|
||||
@ -338,7 +338,6 @@ PeerScenarioClient::VideoSendTrack PeerScenarioClient::CreateVideo(
|
||||
capturer->Init();
|
||||
res.source = rtc::make_ref_counted<FrameGeneratorCapturerVideoTrackSource>(
|
||||
std::move(capturer), config.screencast);
|
||||
res.source->Start();
|
||||
auto track = pc_factory_->CreateVideoTrack(res.source, track_id);
|
||||
res.track = track.get();
|
||||
res.sender =
|
||||
|
||||
@ -419,7 +419,6 @@ SendVideoStream::SendVideoStream(CallClient* sender,
|
||||
send_config.suspend_below_min_bitrate =
|
||||
config.encoder.suspend_below_min_bitrate;
|
||||
|
||||
video_capturer_->Start();
|
||||
sender_->SendTask([&] {
|
||||
if (config.stream.fec_controller_factory) {
|
||||
send_stream_ = sender_->call_->CreateVideoSendStream(
|
||||
|
||||
@ -254,7 +254,6 @@ void MultiCodecReceiveTest::RunTestWithCodecs(
|
||||
GetVideoSendStream()->Start();
|
||||
CreateFrameGeneratorCapturer(kFps, kWidth / 2, kHeight / 2);
|
||||
ConnectVideoSourcesToStreams();
|
||||
StartVideoSources();
|
||||
});
|
||||
EXPECT_TRUE(observer_.Wait()) << "Timed out waiting for frames.";
|
||||
}
|
||||
|
||||
@ -339,7 +339,6 @@ void RtpRtcpEndToEndTest::TestRtpStatePreservation(
|
||||
->SendRtcp(packet.data(), packet.size());
|
||||
}
|
||||
CreateFrameGeneratorCapturer(30, 1280, 720);
|
||||
StartVideoSources();
|
||||
});
|
||||
|
||||
observer.ResetExpectedSsrcs(1);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user