Index: webrtc/modules/video_coding/main/source/video_receiver.cc |
diff --git a/webrtc/modules/video_coding/main/source/video_receiver.cc b/webrtc/modules/video_coding/main/source/video_receiver.cc |
index b728e9b380659bbfdee17b01a23044892691f939..8b0509eb1eec33b963cc1d7b636d029e036d0f66 100644 |
--- a/webrtc/modules/video_coding/main/source/video_receiver.cc |
+++ b/webrtc/modules/video_coding/main/source/video_receiver.cc |
@@ -42,7 +42,6 @@ VideoReceiver::VideoReceiver(Clock* clock, EventFactory* event_factory) |
_bitStreamBeforeDecoder(NULL), |
#endif |
_frameFromFile(), |
- _keyRequestMode(kKeyOnError), |
_scheduleKeyRequest(false), |
max_nack_list_size_(0), |
pre_decode_image_callback_(NULL), |
@@ -194,31 +193,6 @@ int32_t VideoReceiver::SetVideoProtection(VCMVideoProtection videoProtection, |
break; |
} |
- case kProtectionKeyOnLoss: { |
- CriticalSectionScoped cs(_receiveCritSect); |
- if (enable) { |
- _keyRequestMode = kKeyOnLoss; |
- _receiver.SetDecodeErrorMode(kWithErrors); |
- } else if (_keyRequestMode == kKeyOnLoss) { |
- _keyRequestMode = kKeyOnError; // default mode |
- } else { |
- return VCM_PARAMETER_ERROR; |
- } |
- break; |
- } |
- |
- case kProtectionKeyOnKeyLoss: { |
- CriticalSectionScoped cs(_receiveCritSect); |
- if (enable) { |
- _keyRequestMode = kKeyOnKeyLoss; |
- } else if (_keyRequestMode == kKeyOnKeyLoss) { |
- _keyRequestMode = kKeyOnError; // default mode |
- } else { |
- return VCM_PARAMETER_ERROR; |
- } |
- break; |
- } |
- |
case kProtectionNackFEC: { |
CriticalSectionScoped cs(_receiveCritSect); |
DCHECK(enable); |
@@ -419,22 +393,8 @@ int32_t VideoReceiver::Decode(const VCMEncodedFrame& frame) { |
_decodedFrameCallback.LastReceivedPictureID() + 1); |
} |
if (!frame.Complete() || frame.MissingFrame()) { |
- switch (_keyRequestMode) { |
- case kKeyOnKeyLoss: { |
- if (frame.FrameType() == kVideoFrameKey) { |
- request_key_frame = true; |
- ret = VCM_OK; |
- } |
- break; |
- } |
- case kKeyOnLoss: { |
- request_key_frame = true; |
- ret = VCM_OK; |
- break; |
- } |
- default: |
- break; |
- } |
+ request_key_frame = true; |
stefan-webrtc
2015/07/27 13:01:08
Not sure about this change. I think I'd prefer for
pbos-webrtc
2015/07/27 13:05:11
Right now it's a no-op since this mode was always
|
+ ret = VCM_OK; |
} |
if (request_key_frame) { |
CriticalSectionScoped cs(process_crit_sect_.get()); |
@@ -552,16 +512,10 @@ int VideoReceiver::SetReceiverRobustnessMode( |
switch (robustnessMode) { |
case VideoCodingModule::kNone: |
_receiver.SetNackMode(kNoNack, -1, -1); |
- if (decode_error_mode == kNoErrors) { |
- _keyRequestMode = kKeyOnLoss; |
- } else { |
- _keyRequestMode = kKeyOnError; |
- } |
break; |
case VideoCodingModule::kHardNack: |
// Always wait for retransmissions (except when decoding with errors). |
_receiver.SetNackMode(kNack, -1, -1); |
- _keyRequestMode = kKeyOnError; // TODO(hlundin): On long NACK list? |
break; |
case VideoCodingModule::kSoftNack: |
#if 1 |
@@ -571,7 +525,6 @@ int VideoReceiver::SetReceiverRobustnessMode( |
// Enable hybrid NACK/FEC. Always wait for retransmissions and don't add |
// extra delay when RTT is above kLowRttNackMs. |
_receiver.SetNackMode(kNack, media_optimization::kLowRttNackMs, -1); |
- _keyRequestMode = kKeyOnError; |
break; |
#endif |
case VideoCodingModule::kReferenceSelection: |