Revert of Add experimental simulcast screen content mode (patchset #5 id:80001 of https://codereview.webrtc.org/2636443002/ )
Reason for revert:
Breaks chromium.
Original issue's description:
> Add experimental simulcast screen content mode
>
> BUG=webrtc:4172
>
> Review-Url: https://codereview.webrtc.org/2636443002
> Cr-Commit-Position: refs/heads/master@{#16135}
> Committed: https://chromium.googlesource.com/external/webrtc/+/a28e971e3bc8a06f366f0ef82cc7168b05a83b59
TBR=perkj@webrtc.org,asapersson@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4172
Review-Url: https://codereview.webrtc.org/2643763002
Cr-Commit-Position: refs/heads/master@{#16145}
diff --git a/webrtc/modules/video_coding/codecs/vp8/screenshare_layers.cc b/webrtc/modules/video_coding/codecs/vp8/screenshare_layers.cc
index aca4514..feb8da9 100644
--- a/webrtc/modules/video_coding/codecs/vp8/screenshare_layers.cc
+++ b/webrtc/modules/video_coding/codecs/vp8/screenshare_layers.cc
@@ -30,8 +30,6 @@
const double ScreenshareLayers::kMaxTL0FpsReduction = 2.5;
const double ScreenshareLayers::kAcceptableTargetOvershoot = 2.0;
-constexpr int ScreenshareLayers::kMaxNumTemporalLayers;
-
// Since this is TL0 we only allow updating and predicting from the LAST
// reference frame.
const int ScreenshareLayers::kTl0Flags =
@@ -57,14 +55,8 @@
int simulcast_id,
int num_temporal_layers,
uint8_t initial_tl0_pic_idx) const {
- webrtc::TemporalLayers* tl;
- if (simulcast_id == 0) {
- tl = new webrtc::ScreenshareLayers(num_temporal_layers, rand(),
- webrtc::Clock::GetRealTimeClock());
- } else {
- RealTimeTemporalLayersFactory rt_tl_factory;
- tl = rt_tl_factory.Create(simulcast_id, num_temporal_layers, rand());
- }
+ webrtc::TemporalLayers* tl = new webrtc::ScreenshareLayers(
+ num_temporal_layers, rand(), webrtc::Clock::GetRealTimeClock());
if (listener_)
listener_->OnTemporalLayersCreated(simulcast_id, tl);
return tl;
@@ -74,8 +66,7 @@
uint8_t initial_tl0_pic_idx,
Clock* clock)
: clock_(clock),
- number_of_temporal_layers_(
- std::min(kMaxNumTemporalLayers, num_temporal_layers)),
+ number_of_temporal_layers_(num_temporal_layers),
last_base_layer_sync_(false),
tl0_pic_idx_(initial_tl0_pic_idx),
active_layer_(-1),
@@ -87,8 +78,8 @@
max_debt_bytes_(0),
encode_framerate_(1000.0f, 1000.0f), // 1 second window, second scale.
bitrate_updated_(false) {
- RTC_CHECK_GT(number_of_temporal_layers_, 0);
- RTC_CHECK_LE(number_of_temporal_layers_, kMaxNumTemporalLayers);
+ RTC_CHECK_GT(num_temporal_layers, 0);
+ RTC_CHECK_LE(num_temporal_layers, 2);
}
ScreenshareLayers::~ScreenshareLayers() {
diff --git a/webrtc/modules/video_coding/codecs/vp8/screenshare_layers.h b/webrtc/modules/video_coding/codecs/vp8/screenshare_layers.h
index 53818a2..de7665c 100644
--- a/webrtc/modules/video_coding/codecs/vp8/screenshare_layers.h
+++ b/webrtc/modules/video_coding/codecs/vp8/screenshare_layers.h
@@ -84,7 +84,7 @@
RateStatistics encode_framerate_;
bool bitrate_updated_;
- static constexpr int kMaxNumTemporalLayers = 2;
+ static const int kMaxNumTemporalLayers = 2;
struct TemporalLayer {
TemporalLayer()
: state(State::kNormal),
diff --git a/webrtc/modules/video_coding/video_codec_initializer.cc b/webrtc/modules/video_coding/video_codec_initializer.cc
index 9d15952..dbdede0 100644
--- a/webrtc/modules/video_coding/video_codec_initializer.cc
+++ b/webrtc/modules/video_coding/video_codec_initializer.cc
@@ -38,8 +38,8 @@
case kVideoCodecVP8: {
if (!codec->VP8()->tl_factory) {
if (codec->mode == kScreensharing &&
- codec->numberOfSimulcastStreams >= 1 &&
- codec->VP8()->numberOfTemporalLayers >= 1) {
+ codec->numberOfSimulcastStreams == 1 &&
+ codec->VP8()->numberOfTemporalLayers == 2) {
// Conference mode temporal layering for screen content.
tl_factory.reset(new ScreenshareTemporalLayersFactory());
} else {