X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fthird_party%2Fwebrtc%2Fmodules%2Fvideo_coding%2Fmain%2Fsource%2Fvideo_receiver.cc;h=a8de28bb72d6dcea1c9e5e72a4243b1588cab451;hb=1afa4dd80ef85af7c90efaea6959db1d92330844;hp=0b56124927879cd4a225000b6ae52dd70483c520;hpb=90762837333c13ccf56f2ad88e4481fc71e8d281;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/third_party/webrtc/modules/video_coding/main/source/video_receiver.cc b/src/third_party/webrtc/modules/video_coding/main/source/video_receiver.cc index 0b56124..a8de28b 100644 --- a/src/third_party/webrtc/modules/video_coding/main/source/video_receiver.cc +++ b/src/third_party/webrtc/modules/video_coding/main/source/video_receiver.cc @@ -280,11 +280,11 @@ int32_t VideoReceiver::InitializeReceiver() { if (ret < 0) { return ret; } - _codecDataBase.ResetReceiver(); - _timing.Reset(); { CriticalSectionScoped receive_cs(_receiveCritSect); + _codecDataBase.ResetReceiver(); + _timing.Reset(); _receiverInited = true; } @@ -369,6 +369,7 @@ int VideoReceiver::RegisterRenderBufferSizeCallback( // Should be called as often as possible to get the most out of the decoder. int32_t VideoReceiver::Decode(uint16_t maxWaitTimeMs) { int64_t nextRenderTimeMs; + bool supports_render_scheduling; { CriticalSectionScoped cs(_receiveCritSect); if (!_receiverInited) { @@ -377,6 +378,7 @@ int32_t VideoReceiver::Decode(uint16_t maxWaitTimeMs) { if (!_codecDataBase.DecoderRegistered()) { return VCM_NO_CODEC_REGISTERED; } + supports_render_scheduling = _codecDataBase.SupportsRenderScheduling(); } const bool dualReceiverEnabledNotReceiving = ( @@ -385,7 +387,7 @@ int32_t VideoReceiver::Decode(uint16_t maxWaitTimeMs) { VCMEncodedFrame* frame = _receiver.FrameForDecoding(maxWaitTimeMs, nextRenderTimeMs, - _codecDataBase.SupportsRenderScheduling(), + supports_render_scheduling, &_dualReceiver); if (dualReceiverEnabledNotReceiving && _dualReceiver.State() == kReceiving) {