Launch external ref control for vp9 encoder

Change field trial condition to killswitch instead.

Finch trial is going to 100% public today.

Bug: chromium:1027108,webrtc:11319
Change-Id: I29494a7c8515a454706983dd15ae444d3f85271f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/173752
Reviewed-by: Sergey Silkin <ssilkin@webrtc.org>
Commit-Queue: Ilya Nikolaevskiy <ilnik@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31122}
This commit is contained in:
Ilya Nikolaevskiy
2020-04-22 13:02:11 +02:00
committed by Commit Bot
parent f4ee036871
commit 9427b51d6f

View File

@ -582,10 +582,11 @@ int VP9EncoderImpl::InitEncode(const VideoCodec* inst,
// External reference control is required for different frame rate on spatial // External reference control is required for different frame rate on spatial
// layers because libvpx generates rtp incompatible references in this case. // layers because libvpx generates rtp incompatible references in this case.
external_ref_control_ = field_trial::IsEnabled("WebRTC-Vp9ExternalRefCtrl") || external_ref_control_ =
(num_spatial_layers_ > 1 && !field_trial::IsDisabled("WebRTC-Vp9ExternalRefCtrl") ||
codec_.mode == VideoCodecMode::kScreensharing) || (num_spatial_layers_ > 1 &&
inter_layer_pred_ == InterLayerPredMode::kOn; codec_.mode == VideoCodecMode::kScreensharing) ||
inter_layer_pred_ == InterLayerPredMode::kOn;
if (num_temporal_layers_ == 1) { if (num_temporal_layers_ == 1) {
gof_.SetGofInfoVP9(kTemporalStructureMode1); gof_.SetGofInfoVP9(kTemporalStructureMode1);