I figured that it's left to the vendor to implement in however way
they wish to. Looking @ the Bellagio & LIM sources helped me. Now,
OMX_Init(), OMX_GetComponentENum() & OMX_GetRolesOfComponent() calls
are successfully passing within my new core, but I don't get any
further calls. I see that the software components also go thru a
similar sequence (for all the decoders & encoders) but no more entry
into any of the other functions (was expecting the next call into
OMX_GetHandle). Any clues? I've attached the last part of the log &
would really appreciate some tips:

***********************************************************************************************************************
E/PV      (  828):
PVLOG:TID(0xca240):Time=595:PVMIDataStreamSyncInterfaceRefImpl::GetCurrentContentPosition
returning 0
E/PV      (  828):
PVLOG:TID(0xca240):Time=597:PVMIDataStreamSyncInterfaceRefImpl::GetCurrentContentPosition
returning 0
E/PV      (  828):
PVLOG:TID(0xca240):Time=598:PVMIDataStreamSyncInterfaceRefImpl::GetCurrentContentPosition
returning 0
E/PV      (  828):
PVLOG:TID(0xca240):Time=603:PVMIDataStreamSyncInterfaceRefImpl::ReadAndUnlockContent
returning 8
E/PV      (  828):
PVLOG:TID(0xca240):Time=604:PVMIDataStreamSyncInterfaceRefImpl::CloseSession
returning 0
E/PV      (  828):
PVLOG:TID(0xca240):Time=606:PVMIDataStreamSyncInterfaceRefImpl::~PVMIDataStreamSyncInterfaceRefImpl
E/PV      (  828):
PVLOG:TID(0xca240):Time=608:PVMFRecognizerRegistryImpl::DoRecognize
Out of recognizer i=0  result=4, time=33
E/PV      (  828):
PVLOG:TID(0xca240):Time=609:PVPlayerRecognizerRegistry::RecognizerCommandCompleted()
IN
E/PV      (  828):
PVLOG:TID(0xca240):Time=610:PVPlayerRecognizerRegistry::RecognizeCommandCompleted()
- Recognize returned Success
E/PV      (  828):
PVLOG:TID(0xca240):Time=612:PVPlayerRecognizerRegistry::RecognizerCommandCompleted()
OUT
E/PV      (  828):
PVLOG:TID(0xca240):Time=621:PVPlayerEngine::DoSetupSourceNode()
Tick=621
E/PV      (  828):
PVLOG:TID(0xca240):Time=622:PVPlayerEngine::DoSetupSourceNode() In
E/PV      (  828):
PVLOG:TID(0xca240):Time=623:PVPlayerNodeRegistry::QueryRegistry() IN
E/PV      (  828):
PVLOG:TID(0xca240):Time=625:PVPlayerNodeRegistry::QueryRegistry() OUT
E/PV      (  828):
PVLOG:TID(0xca240):Time=626:PVPlayerNodeRegistry::CreateNode() IN
E/MediaMetadataRetrieverJNI(  926): captureFrame: videoFrame is a NULL
pointer
W/MediaThumbRequest(  926): can't create bitmap for thumbnail.
I/ServiceManager(  824): service 'media.audio_flinger' died
I/ServiceManager(  824): service 'media.player' died
I/ServiceManager(  824): service 'media.camera' died
I/ServiceManager(  824): service 'media.audio_policy' died
W/MediaMetadataRetriever(  926): MediaMetadataRetriever server died!
W/AudioSystem(  845): AudioPolicyService server died!
W/MediaPlayer(  845): MediaPlayer server died!
D/dalvikvm(  926): GREF has increased to 201
V/MediaStore(  953): We probably run out of space, so create the
thumbnail in memory.
I/ServiceManager(  953): Waiting for sevice media.player...
I/        (  962): ServiceManager: 0x82d08
I/CameraService(  962): CameraService started: pid=962
D/AudioHardwareALSA(  962): openOutputStream called for devices:
0x00000002
D/ALSAModule(  962): open called for devices 00000002 in mode 0...

***********************************************************************************************************************

On May 5, 4:47 pm, HV <harishv.athr...@gmail.com> wrote:
> Hi All,
>
>  Now that I have my custom decoder/core being recognized by the
> system, I've started implementing the 9 core methods, but hit a road
> block with the OMX_Init function. Are there any vendor specific
> samples?
>
>  Here is what I have (based on the template in _OMX_Init( ) under
> pv_omxcore.cpp):
>
> OSCL_EXPORT_REF OMX_ERRORTYPE OMXHV_Init()
> {
>         OMX_ERRORTYPE status = OMX_ErrorNone;
>         int32 error;
>
>         LOGE("HV: OMXHV_Init\n");
>
>         //get global data structure
>         OMXGlobalData* data =
> (OMXGlobalData*)OsclSingletonRegistry::lockAndGetInstance(OSCL_SINGLETON_ID 
> _HV,
> error);
>         if (error) // can't access registry
>         {
>                 LOGE("HV: OMXHV_Init, ERROR-1\n");
>                 return OMX_ErrorInsufficientResources;
>         }
>
>         else if (!data) // singleton object has been destroyed
>         {
>                 OsclSingletonRegistry::registerInstanceAndUnlock(data,
> OSCL_SINGLETON_ID_HV, error);
>                 LOGE("HV: OMXHV_Init, ERROR-2\n");
>                 return OMX_ErrorInsufficientResources;
>         }
>
>         LOGE("HV: OMXHV_Init, status = %d\n", status);
>         return status;
>
> }
>
> I do get called into this function, but it errors [ERROR-2 above] out.
> Any idea what I'm missing here?
>
> Thanks in advance
> HV
>
> --
> unsubscribe: android-porting+unsubscr...@googlegroups.com
> website:http://groups.google.com/group/android-porting

-- 
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting

Reply via email to