Index: webrtc/modules/video_coding/main/source/video_sender.cc |
diff --git a/webrtc/modules/video_coding/main/source/video_sender.cc b/webrtc/modules/video_coding/main/source/video_sender.cc |
index c5317ec412bb61f4455ec656a2435e85160df1aa..1abf20b48d3ded44a056e0cebec2e3cf73e8a737 100644 |
--- a/webrtc/modules/video_coding/main/source/video_sender.cc |
+++ b/webrtc/modules/video_coding/main/source/video_sender.cc |
@@ -19,6 +19,7 @@ |
#include "webrtc/modules/video_coding/main/source/video_coding_impl.h" |
#include "webrtc/modules/video_coding/utility/include/quality_scaler.h" |
#include "webrtc/system_wrappers/interface/clock.h" |
+#include "webrtc/system_wrappers/interface/field_trial.h" |
#include "webrtc/system_wrappers/interface/logging.h" |
namespace webrtc { |
@@ -106,12 +107,20 @@ int32_t VideoSender::RegisterSendCodec(const VideoCodec* sendCodec, |
return VCM_CODEC_ERROR; |
} |
- int numLayers = (sendCodec->codecType != kVideoCodecVP8) |
- ? 1 |
- : sendCodec->codecSpecific.VP8.numberOfTemporalLayers; |
+ int numLayers; |
+ if (sendCodec->codecType == kVideoCodecVP8) { |
+ numLayers = sendCodec->codecSpecific.VP8.numberOfTemporalLayers; |
+ } else if (sendCodec->codecType == kVideoCodecVP9) { |
+ numLayers = sendCodec->codecSpecific.VP9.numberOfTemporalLayers; |
+ } else { |
+ numLayers = 1; |
+ } |
+ |
// If we have screensharing and we have layers, we disable frame dropper. |
bool disable_frame_dropper = |
- numLayers > 1 && sendCodec->mode == kScreensharing; |
+ (numLayers > 1 && sendCodec->mode == kScreensharing) || |
+ (field_trial::FindFullName("WebRTC-DisableGenericBitrateFrameDropper") |
pbos-webrtc
2015/10/07 11:27:55
Can we call this WebRTC-Test- or so? I'd like to d
ivica
2015/10/07 11:32:52
Now when it's so simple, I'm not sure if it's nece
|
+ == "Enabled"); |
if (disable_frame_dropper) { |
_mediaOpt.EnableFrameDropper(false); |
} else if (frame_dropper_enabled_) { |