| Index: webrtc/modules/video_coding/frame_buffer2.cc | 
| diff --git a/webrtc/modules/video_coding/frame_buffer2.cc b/webrtc/modules/video_coding/frame_buffer2.cc | 
| index 4dcea53f6a6b4a0e993e5da827ea6a24fb531c9b..8d86a6412a076f295f22b4546b84d21d3189651c 100644 | 
| --- a/webrtc/modules/video_coding/frame_buffer2.cc | 
| +++ b/webrtc/modules/video_coding/frame_buffer2.cc | 
| @@ -43,6 +43,7 @@ FrameBuffer::FrameBuffer(Clock* clock, | 
| jitter_estimator_(jitter_estimator), | 
| timing_(timing), | 
| inter_frame_delay_(clock_->TimeInMilliseconds()), | 
| +      last_decoded_frame_timestamp_(0), | 
| last_decoded_frame_it_(frames_.end()), | 
| last_continuous_frame_it_(frames_.end()), | 
| num_frames_history_(0), | 
| @@ -207,6 +208,16 @@ void FrameBuffer::Stop() { | 
| new_continuous_frame_event_.Set(); | 
| } | 
|  | 
| +void FrameBuffer::UpdatePlayoutDelays(const FrameObject& frame) { | 
| +  TRACE_EVENT0("webrtc", "FrameBuffer::UpdatePlayoutDelays"); | 
| +  PlayoutDelay playout_delay = frame.EncodedImage().playout_delay_; | 
| +  if (playout_delay.min_ms >= 0) | 
| +    timing_->set_min_playout_delay(playout_delay.min_ms); | 
| + | 
| +  if (playout_delay.max_ms >= 0) | 
| +    timing_->set_max_playout_delay(playout_delay.max_ms); | 
| +} | 
| + | 
| int FrameBuffer::InsertFrame(std::unique_ptr<FrameObject> frame) { | 
| TRACE_EVENT0("webrtc", "FrameBuffer::InsertFrame"); | 
| RTC_DCHECK(frame); | 
| @@ -283,7 +294,7 @@ int FrameBuffer::InsertFrame(std::unique_ptr<FrameObject> frame) { | 
|  | 
| if (!UpdateFrameInfoWithIncomingFrame(*frame, info)) | 
| return last_continuous_picture_id; | 
| - | 
| +  UpdatePlayoutDelays(*frame); | 
| info->second.frame = std::move(frame); | 
| ++num_frames_buffered_; | 
|  | 
|  |