| Index: media/renderers/video_renderer_impl.cc
|
| diff --git a/media/renderers/video_renderer_impl.cc b/media/renderers/video_renderer_impl.cc
|
| index 1160b65dae5773ddcbd7bba5226c319f218543b2..01dfe37da1a344105b08146757eb9174dd44989e 100644
|
| --- a/media/renderers/video_renderer_impl.cc
|
| +++ b/media/renderers/video_renderer_impl.cc
|
| @@ -490,6 +490,16 @@ void VideoRendererImpl::FrameReady(VideoFrameStream::Status status,
|
| return;
|
| }
|
|
|
| + // In low delay mode, don't accumulate frames that's earlier than the start
|
| + // time. Otherwise we could declare HAVE_ENOUGH_DATA and start playback
|
| + // prematurely.
|
| + if (low_delay_ &&
|
| + !frame->metadata()->IsTrue(VideoFrameMetadata::END_OF_STREAM) &&
|
| + frame->timestamp() < start_timestamp_) {
|
| + AttemptRead_Locked();
|
| + return;
|
| + }
|
| +
|
| if (frame->metadata()->IsTrue(VideoFrameMetadata::END_OF_STREAM)) {
|
| DCHECK(!received_end_of_stream_);
|
| received_end_of_stream_ = true;
|
|
|