diff options
author | scherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-25 00:24:01 +0000 |
---|---|---|
committer | scherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-25 00:24:01 +0000 |
commit | ae84de4fd565c6efb2ffdea7c97a47697d50845f (patch) | |
tree | 77050fca7b5a2e7715939540151fad40895406cb /media | |
parent | 3c4e3015463fd407ccd932e5da17e3c4bc8e3c5c (diff) | |
download | chromium_src-ae84de4fd565c6efb2ffdea7c97a47697d50845f.zip chromium_src-ae84de4fd565c6efb2ffdea7c97a47697d50845f.tar.gz chromium_src-ae84de4fd565c6efb2ffdea7c97a47697d50845f.tar.bz2 |
Implement method stubs for OpenMAX IL instead of relying on -lOmxCore.
You can switch to using -lOmxCore by setting the gyp variable use_system_openmax=1.
Also fixed type-punning warnings in omx_video_decoder.cc
BUG=28663
TEST=building omx_test should have no linker errors
Review URL: http://codereview.chromium.org/431041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33012 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/media.gyp | 15 | ||||
-rw-r--r-- | media/omx/omx_test.cc | 3 | ||||
-rw-r--r-- | media/omx/omx_test.gyp | 30 | ||||
-rw-r--r-- | media/omx/omx_video_decoder.cc | 8 |
4 files changed, 21 insertions, 35 deletions
diff --git a/media/media.gyp b/media/media.gyp index 4b5c13f..14c41b9 100644 --- a/media/media.gyp +++ b/media/media.gyp @@ -238,6 +238,21 @@ 'tools/qt_faststart.c' ], }, + { + 'target_name': 'omx_test', + 'type': 'executable', + 'dependencies': [ + '../base/base.gyp:base', + '../third_party/openmax/openmax.gyp:il', + ], + 'sources': [ + 'omx/input_buffer.cc', + 'omx/input_buffer.h', + 'omx/omx_test.cc', + 'omx/omx_video_decoder.cc', + 'omx/omx_video_decoder.h', + ], + }, ], 'conditions': [ ['OS=="win"', { diff --git a/media/omx/omx_test.cc b/media/omx/omx_test.cc index 306a2fd..bb4ffd2 100644 --- a/media/omx/omx_test.cc +++ b/media/omx/omx_test.cc @@ -12,6 +12,7 @@ #include "base/at_exit.h" #include "base/command_line.h" +#include "base/file_util.h" #include "base/message_loop.h" #include "base/scoped_ptr.h" #include "media/omx/input_buffer.h" @@ -89,7 +90,7 @@ class TestApp { void Run() { // Open the input file. - file_ = fopen(filename_, "rb"); + file_ = file_util::OpenFile(filename_, "rb"); if (!file_) { printf("Error - can't open file %s\n", filename_); return; diff --git a/media/omx/omx_test.gyp b/media/omx/omx_test.gyp deleted file mode 100644 index 0e2fcaa..0000000 --- a/media/omx/omx_test.gyp +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright (c) 2009 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -{ - 'variables': { - 'chromium_code': 1, - }, - 'conditions': [ - ['OS=="linux"', { - 'targets' : [ - { - 'target_name': 'omx_test', - 'type': 'executable', - 'dependencies': [ - '../../base/base.gyp:base', - '../../third_party/openmax/openmax.gyp:il', - ], - 'sources': [ - 'input_buffer.cc', - 'input_buffer.h', - 'omx_test.cc', - 'omx_video_decoder.cc', - 'omx_video_decoder.h', - ], - }, - ], - }], - ], -} diff --git a/media/omx/omx_video_decoder.cc b/media/omx/omx_video_decoder.cc index b5857ed..cdf0d5d 100644 --- a/media/omx/omx_video_decoder.cc +++ b/media/omx/omx_video_decoder.cc @@ -271,7 +271,6 @@ void OmxVideoDecoder::Transition_EmptyToLoaded() { DCHECK_EQ(message_loop_, MessageLoop::current()); DCHECK_EQ(kEmpty, GetState()); - const char* component; OMX_CALLBACKTYPE callback = { &EventHandler, &EmptyBufferCallback, &FillBufferCallback }; @@ -288,9 +287,10 @@ void OmxVideoDecoder::Transition_EmptyToLoaded() { // 2. Get the handle to the component. After OMX_GetHandle(), // the component is in loaded state. // TODO(hclam): We should have a list of componant names instead. - component = component_; - omxresult = OMX_GetHandle((OMX_HANDLETYPE*)(&decoder_handle_), - (OMX_STRING)component, this, &callback); + OMX_STRING component = const_cast<OMX_STRING>(component_); + OMX_HANDLETYPE handle = reinterpret_cast<OMX_HANDLETYPE>(decoder_handle_); + omxresult = OMX_GetHandle(&handle, component, this, &callback); + decoder_handle_ = reinterpret_cast<OMX_COMPONENTTYPE*>(handle); if (omxresult != OMX_ErrorNone) { LOG(ERROR) << "Failed to Load the component: " << component; StateTransitionTask(kError); |