Revert "Partial frame capture API part 5"
This reverts commit 1f0a84a2ecea59f86adc1af70eed974a3c6d59ac.
Reason for revert: Partial Capture API is not needed, according to new info from the Chrome team.
Original change's description:
> Partial frame capture API part 5
>
> Wire up partial video frames in video quality tests
>
> Bug: webrtc:10152
> Change-Id: Ifa13bb308258c8d3930a6cfbcc97c95b132cecf3
> Reviewed-on: https://webrtc-review.googlesource.com/c/120410
> Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#26549}
TBR=ilnik@webrtc.org,sprang@webrtc.org,stefan@webrtc.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: webrtc:10152
Change-Id: I32017b1a7109a3615598a976f4b0e61edf4e8757
Reviewed-on: https://webrtc-review.googlesource.com/c/122088
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26628}
diff --git a/api/test/video_quality_test_fixture.h b/api/test/video_quality_test_fixture.h
index ff92a20..79b6d67 100644
--- a/api/test/video_quality_test_fixture.h
+++ b/api/test/video_quality_test_fixture.h
@@ -60,7 +60,6 @@
std::string clip_name; // "Generator" to generate frames instead.
size_t capture_device_index;
SdpVideoFormat::Parameters sdp_params;
- bool partial_updates;
} video[2];
struct Audio {
bool enabled;
diff --git a/video/screenshare_loopback.cc b/video/screenshare_loopback.cc
index e552878..5e781e4 100644
--- a/video/screenshare_loopback.cc
+++ b/video/screenshare_loopback.cc
@@ -299,11 +299,6 @@
WEBRTC_DEFINE_bool(help, false, "prints this message");
-WEBRTC_DEFINE_bool(partial_updates,
- false,
- "Pass only changed regions from the "
- "capturer");
-
} // namespace flags
void Loopback() {
@@ -340,8 +335,7 @@
false, // Automatic scaling disabled.
"",
0, // capture_device_index.
- SdpVideoFormat::Parameters(),
- flags::FLAG_partial_updates};
+ SdpVideoFormat::Parameters()};
params.screenshare[0] = {true, flags::GenerateSlides(),
flags::SlideChangeInterval(),
flags::ScrollDuration(), flags::Slides()};
diff --git a/video/video_analyzer.cc b/video/video_analyzer.cc
index 2d02d9b..6535133 100644
--- a/video/video_analyzer.cc
+++ b/video/video_analyzer.cc
@@ -62,15 +62,14 @@
int selected_tl,
bool is_quick_test_enabled,
Clock* clock,
- std::string rtp_dump_name,
- bool partial_updates)
+ std::string rtp_dump_name)
: transport_(transport),
receiver_(nullptr),
call_(nullptr),
send_stream_(nullptr),
receive_stream_(nullptr),
audio_receive_stream_(nullptr),
- captured_frame_forwarder_(this, clock, duration_frames, partial_updates),
+ captured_frame_forwarder_(this, clock, duration_frames),
test_label_(test_label),
graph_data_output_file_(graph_data_output_file),
graph_title_(graph_title),
@@ -874,17 +873,13 @@
VideoAnalyzer::CapturedFrameForwarder::CapturedFrameForwarder(
VideoAnalyzer* analyzer,
Clock* clock,
- int frames_to_process,
- bool partial_updates)
+ int frames_to_process)
: analyzer_(analyzer),
send_stream_input_(nullptr),
video_source_(nullptr),
clock_(clock),
captured_frames_(0),
- frames_to_process_(frames_to_process) {
- if (partial_updates)
- frame_change_extractor_.reset(new FrameChangeExtractor);
-}
+ frames_to_process_(frames_to_process) {}
void VideoAnalyzer::CapturedFrameForwarder::SetSource(
VideoSourceInterface<VideoFrame>* video_source) {
@@ -903,13 +898,8 @@
analyzer_->AddCapturedFrameForComparison(copy);
rtc::CritScope lock(&crit_);
++captured_frames_;
- if (captured_frames_ > frames_to_process_)
- return;
- if (frame_change_extractor_) {
- frame_change_extractor_->OnFrame(copy);
- } else if (send_stream_input_) {
+ if (send_stream_input_ && captured_frames_ <= frames_to_process_)
send_stream_input_->OnFrame(copy);
- }
}
void VideoAnalyzer::CapturedFrameForwarder::AddOrUpdateSink(
@@ -920,9 +910,6 @@
RTC_DCHECK(!send_stream_input_ || send_stream_input_ == sink);
send_stream_input_ = sink;
}
- if (frame_change_extractor_) {
- frame_change_extractor_->AddOrUpdateSink(sink, wants);
- }
if (video_source_) {
video_source_->AddOrUpdateSink(this, wants);
}
@@ -933,9 +920,6 @@
rtc::CritScope lock(&crit_);
RTC_DCHECK(sink == send_stream_input_);
send_stream_input_ = nullptr;
- if (frame_change_extractor_) {
- frame_change_extractor_->RemoveSink(sink);
- }
}
} // namespace webrtc
diff --git a/video/video_analyzer.h b/video/video_analyzer.h
index 759b4e9..8caaf14 100644
--- a/video/video_analyzer.h
+++ b/video/video_analyzer.h
@@ -18,7 +18,6 @@
#include "api/video/video_source_interface.h"
#include "rtc_base/time_utils.h"
-#include "test/frame_change_extractor.h"
#include "test/layer_filtering_transport.h"
#include "test/rtp_file_writer.h"
#include "test/statistics.h"
@@ -43,8 +42,7 @@
int selected_tl,
bool is_quick_test_enabled,
Clock* clock,
- std::string rtp_dump_name,
- bool partial_updates);
+ std::string rtp_dump_name);
~VideoAnalyzer();
virtual void SetReceiver(PacketReceiver* receiver);
@@ -140,8 +138,7 @@
public:
CapturedFrameForwarder(VideoAnalyzer* analyzer,
Clock* clock,
- int frames_to_process,
- bool partial_updates);
+ int frames_to_process);
void SetSource(rtc::VideoSourceInterface<VideoFrame>* video_source);
private:
@@ -162,7 +159,6 @@
Clock* clock_;
int captured_frames_ RTC_GUARDED_BY(crit_);
int frames_to_process_ RTC_GUARDED_BY(crit_);
- std::unique_ptr<FrameChangeExtractor> frame_change_extractor_;
};
struct FrameWithPsnr {
diff --git a/video/video_quality_test.cc b/video/video_quality_test.cc
index 8349566..1b2f9d6 100644
--- a/video/video_quality_test.cc
+++ b/video/video_quality_test.cc
@@ -1091,8 +1091,7 @@
kSendRtxSsrcs[params_.ss[0].selected_stream],
static_cast<size_t>(params_.ss[0].selected_stream),
params.ss[0].selected_sl, params_.video[0].selected_tl,
- is_quick_test_enabled, clock_, params_.logging.rtp_dump_name,
- params_.video[0].partial_updates);
+ is_quick_test_enabled, clock_, params_.logging.rtp_dump_name);
task_queue_.SendTask([&]() {
analyzer_->SetCall(sender_call_.get());
@@ -1358,15 +1357,6 @@
rtc::VideoSinkWants());
}
ConnectVideoSourcesToStreams();
- if (params_.video[0].partial_updates) {
- frame_change_extractor_.reset(new FrameChangeExtractor());
- frame_change_extractor_->SetSource(video_sources_[0].get());
- video_send_streams_[0]->SetSource(frame_change_extractor_.get(),
- degradation_preference_);
- } else {
- video_send_streams_[0]->SetSource(video_sources_[0].get(),
- degradation_preference_);
- }
}
if (params_.audio.enabled) {
diff --git a/video/video_quality_test.h b/video/video_quality_test.h
index e41d6f2..028dddf 100644
--- a/video/video_quality_test.h
+++ b/video/video_quality_test.h
@@ -22,7 +22,6 @@
#include "media/engine/internal_decoder_factory.h"
#include "media/engine/internal_encoder_factory.h"
#include "test/call_test.h"
-#include "test/frame_change_extractor.h"
#include "test/frame_generator.h"
#include "test/layer_filtering_transport.h"
#include "video/video_analyzer.h"
@@ -115,8 +114,6 @@
std::vector<VideoReceiveStream::Config> thumbnail_receive_configs_;
std::vector<VideoReceiveStream*> thumbnail_receive_streams_;
- std::unique_ptr<FrameChangeExtractor> frame_change_extractor_;
-
int receive_logs_;
int send_logs_;