Chromium Code Reviews| Index: media/filters/omx_video_decode_engine.cc |
| diff --git a/media/filters/omx_video_decode_engine.cc b/media/filters/omx_video_decode_engine.cc |
| index 5af29e652bdf97954c0cdfa54485d9339f6923ec..7f64a505fcb9b53cd436a539aced837b5f6733f1 100644 |
| --- a/media/filters/omx_video_decode_engine.cc |
| +++ b/media/filters/omx_video_decode_engine.cc |
| @@ -224,6 +224,10 @@ void OmxVideoDecodeEngine::OnReadComplete(OMX_BUFFERHEADERTYPE* buffer) { |
| buffer->pBuffer + pixels + pixels /4, |
| pixels / 4); |
| + frame->SetTimestamp(base::TimeDelta::FromMilliseconds(buffer->nTimeStamp)); |
| + frame->SetDuration(frame->GetTimestamp() - last_pts_); |
| + last_pts_ = frame->GetTimestamp(); |
| + |
|
wjia(left Chromium)
2010/06/02 21:44:38
The boundary condition is not clear. The duration
|
| fill_this_buffer_callback_->Run(frame); |
| } |
| @@ -633,6 +637,7 @@ void OmxVideoDecodeEngine::OnPortEnableEventRun(int port) { |
| DCHECK_EQ(port, output_port_); |
| output_port_state_ = kPortEnabled; |
| + last_pts_ = base::TimeDelta::FromMilliseconds(0); |
| OnPortEnableEventFunc = NULL; |
| InitialFillBuffer(); |
| if (kClientError == client_state_) { |