| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This class interacts with OmxCodec and the VideoDecoderImpl | 5 // This class interacts with OmxCodec and the VideoDecoderImpl |
| 6 // in the media pipeline. | 6 // in the media pipeline. |
| 7 // | 7 // |
| 8 // THREADING SEMANTICS | 8 // THREADING SEMANTICS |
| 9 // | 9 // |
| 10 // This class is created by OmxVideoDecoder and lives on the thread | 10 // This class is created by OmxVideoDecoder and lives on the thread |
| (...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 269 | 269 |
| 270 if (client_state_ == kClientFlushing) { | 270 if (client_state_ == kClientFlushing) { |
| 271 InitialReadBuffer(); | 271 InitialReadBuffer(); |
| 272 OnStateSetEventFunc = &OmxVideoDecodeEngine::DoneSetStateExecuting; | 272 OnStateSetEventFunc = &OmxVideoDecodeEngine::DoneSetStateExecuting; |
| 273 TransitionToState(OMX_StateExecuting); | 273 TransitionToState(OMX_StateExecuting); |
| 274 } | 274 } |
| 275 | 275 |
| 276 event_handler_->OnSeekComplete(); | 276 event_handler_->OnSeekComplete(); |
| 277 } | 277 } |
| 278 | 278 |
| 279 int OmxVideoDecodeEngine::current_omx_spec_version() const { |
| 280 return 0x00000101; |
| 281 } |
| 282 |
| 279 VideoFrame::Format OmxVideoDecodeEngine::GetSurfaceFormat() const { | 283 VideoFrame::Format OmxVideoDecodeEngine::GetSurfaceFormat() const { |
| 280 // TODO(jiesun): Both OmxHeaderType and EGLImage surface type could have | 284 // TODO(jiesun): Both OmxHeaderType and EGLImage surface type could have |
| 281 // different surface formats. | 285 // different surface formats. |
| 282 return uses_egl_image_ ? VideoFrame::RGBA : VideoFrame::YV12; | 286 return uses_egl_image_ ? VideoFrame::RGBA : VideoFrame::YV12; |
| 283 } | 287 } |
| 284 | 288 |
| 285 void OmxVideoDecodeEngine::Uninitialize() { | 289 void OmxVideoDecodeEngine::Uninitialize() { |
| 286 DCHECK_EQ(message_loop_, MessageLoop::current()); | 290 DCHECK_EQ(message_loop_, MessageLoop::current()); |
| 287 | 291 |
| 288 if (client_state_ == kClientError) { | 292 if (client_state_ == kClientError) { |
| (...skipping 1044 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1333 NewRunnableMethod(decoder, | 1337 NewRunnableMethod(decoder, |
| 1334 &OmxVideoDecodeEngine::FillBufferDoneTask, buffer)); | 1338 &OmxVideoDecodeEngine::FillBufferDoneTask, buffer)); |
| 1335 return OMX_ErrorNone; | 1339 return OMX_ErrorNone; |
| 1336 } | 1340 } |
| 1337 | 1341 |
| 1338 } // namespace media | 1342 } // namespace media |
| 1339 | 1343 |
| 1340 // Disable refcounting for this object because this object only lives | 1344 // Disable refcounting for this object because this object only lives |
| 1341 // on the video decoder thread and there's no need to refcount it. | 1345 // on the video decoder thread and there's no need to refcount it. |
| 1342 DISABLE_RUNNABLE_METHOD_REFCOUNT(media::OmxVideoDecodeEngine); | 1346 DISABLE_RUNNABLE_METHOD_REFCOUNT(media::OmxVideoDecodeEngine); |
| OLD | NEW |