diff options
author | Mirko Bonadei <mbonadei@webrtc.org> | 2018-04-24 20:26:08 +0000 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2018-04-24 20:26:22 +0000 |
commit | 2ff7b6adf0b13c54ad0e40a1654154ed12b705e6 (patch) | |
tree | a8736491efa786416ee557b80705dc0f726e055d /video | |
parent | c5a131a5fbdbda8394af409235882b22ca6f5b81 (diff) | |
download | webrtc-2ff7b6adf0b13c54ad0e40a1654154ed12b705e6.tar.gz |
Revert "Make VideoStreamEncoder::ReconfigureEncoder always call ConfigureQualityScaler."
This reverts commit f394f65b7195a5f9f71c9f0dec3bb68300590b5b.
Reason for revert: Breaks downstream project.
Original change's description:
> Make VideoStreamEncoder::ReconfigureEncoder always call ConfigureQualityScaler.
>
> In addition restore call to ConfigureQualityScaler in SetSource, which
> is needed if degradation preferences change mid-stream.
>
> Fixes a regressions from https://webrtc-review.googlesource.com/70740,
> The encoder's GetScalingSettings may depend on arguments to
> InitEncode, so configuring the quality scaler only at encoder creation
> time isn't enough.
>
> Bug: webrtc:8830
> Change-Id: I48f66cde219c56272f44441fdb26ec64c6002068
> Reviewed-on: https://webrtc-review.googlesource.com/72000
> Reviewed-by: Åsa Persson <asapersson@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22993}
TBR=nisse@webrtc.org,asapersson@webrtc.org
Change-Id: I8c1c12fb53a1bfd6d03c54b93dac6033b7cce081
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8830
Reviewed-on: https://webrtc-review.googlesource.com/72220
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23011}
Diffstat (limited to 'video')
-rw-r--r-- | video/video_stream_encoder.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/video/video_stream_encoder.cc b/video/video_stream_encoder.cc index 02f16a9258..9b5dc1600f 100644 --- a/video/video_stream_encoder.cc +++ b/video/video_stream_encoder.cc @@ -418,8 +418,8 @@ void VideoStreamEncoder::SetSource( bool allow_scaling = IsResolutionScalingEnabled(degradation_preference_); initial_rampup_ = allow_scaling ? 0 : kMaxInitialFramedrop; - if (encoder_) - ConfigureQualityScaler(); + stats_proxy_->SetAdaptationStats(GetActiveCounts(kCpu), + GetActiveCounts(kQuality)); if (!IsFramerateScalingEnabled(degradation_preference) && max_framerate_ != -1) { @@ -542,6 +542,8 @@ void VideoStreamEncoder::ReconfigureEncoder() { // or just discard incoming frames? RTC_CHECK(encoder_); + ConfigureQualityScaler(); + const webrtc::VideoEncoderFactory::CodecInfo info = settings_.encoder_factory->QueryVideoEncoder( encoder_config_.video_format); @@ -590,8 +592,6 @@ void VideoStreamEncoder::ReconfigureEncoder() { int target_framerate = std::min( max_framerate_, source_proxy_->GetActiveSinkWants().max_framerate_fps); overuse_detector_->OnTargetFramerateUpdated(target_framerate); - - ConfigureQualityScaler(); } void VideoStreamEncoder::ConfigureQualityScaler() { @@ -616,6 +616,8 @@ void VideoStreamEncoder::ConfigureQualityScaler() { initial_rampup_ = kMaxInitialFramedrop; } + // TODO(nisse): Is this still the right place to do this? This is + // now called when the encoder is created. stats_proxy_->SetAdaptationStats(GetActiveCounts(kCpu), GetActiveCounts(kQuality)); } |