Index: webrtc/video_engine/vie_channel.cc |
diff --git a/webrtc/video_engine/vie_channel.cc b/webrtc/video_engine/vie_channel.cc |
index 6befe1f88ee3f8bec68e35f5f230db475f727aef..681f72cc06bde2f4d5d2f487f76d2d96a0a30d4f 100644 |
--- a/webrtc/video_engine/vie_channel.cc |
+++ b/webrtc/video_engine/vie_channel.cc |
@@ -187,7 +187,8 @@ ViEChannel::~ViEChannel() { |
module_process_thread_->DeRegisterModule(rtp_rtcp); |
delete rtp_rtcp; |
} |
- StopDecodeThread(); |
+ if (!sender_) |
+ StopDecodeThread(); |
// Release modules. |
VideoCodingModule::Destroy(vcm_); |
} |
@@ -439,20 +440,6 @@ int32_t ViEChannel::RegisterExternalDecoder(const uint8_t pl_type, |
return vcm_->SetRenderDelay(render_delay); |
} |
-int32_t ViEChannel::DeRegisterExternalDecoder(const uint8_t pl_type) { |
- RTC_DCHECK(!sender_); |
- VideoCodec current_receive_codec; |
- int32_t result = 0; |
- result = vcm_->ReceiveCodec(¤t_receive_codec); |
- vcm_->RegisterExternalDecoder(NULL, pl_type, false); |
- |
- if (result == 0 && current_receive_codec.plType == pl_type) { |
- result = vcm_->RegisterReceiveCodec(¤t_receive_codec, |
- number_of_cores_, false); |
- } |
- return result; |
-} |
- |
int32_t ViEChannel::ReceiveCodecStatistics(uint32_t* num_key_frames, |
uint32_t* num_delta_frames) { |
CriticalSectionScoped cs(crit_.get()); |