Yes and Yes. Your understanding is correct.

-Ravi

On Oct 26, 6:09 am, guru <guru.nav...@gmail.com> wrote:
> HI Ravi,
>
> Thanks for the valuable information.
>
> From above what I can deduce is:
>
> 1.) for the question:
>
> > 3. we can use existing parser node/ parser file. ( as mentioned by
> > group users )
> >      can we use this without any modification?
>
> Yes. It depends on what codec you are adding.
>
> OR
>
> > a) what other changes I need to do or which part of the opencore i
> > have to concentrate, apart from steps mentioned above?
>
> As mentioned above, it depends on the type of codec you are adding.
>
> *****************************************
> It means that for example ... since opencore contains AAC decoder
> implementation, if i want to add our own AAC decoder then it it enough
> that I replace existing AAC decoder shared library with my AAC shared
> decoder library and changing library reference whereever necessary?
>
> like change in AacRegister()
>
> #if USE_DYNAMIC_LOAD_OMX_COMPONENTS
>         pCRT->FunctionPtrCreateComponent =
> &OmxComponentFactoryDynamicCreate;
>         pCRT->FunctionPtrDestroyComponent =
> &OmxComponentFactoryDynamicDestructor;
>         pCRT->SharedLibraryName =
> (OMX_STRING)"libomx_aacdec_sharedlibrary.so";
> <------------------------
>
> 2.)  for the question> c) who will call OMX_init().
> >      from my understanding,  player will invoke this OMX_Init then
> > player will be created. is it right?
>
> The layer driving the player engine, i.e., playerdriver will call
> OMX_Init.
> **************************************************************
> it means that Initialization of all OMX core components will be done
> once when OMX_Init is called from playerdriver. is it right?
>
> Thanks
> Gururaja B O
> On Oct 26, 7:22 am, RaviY <yend...@pv.com> wrote:
>
> > On Oct 25, 1:23 am, guru <guru.nav...@gmail.com> wrote:> Hi ravi,
>
> > > whatever i told, it was my understanding.
>
> > > After going through the doc you refered, what i understood is
>
> > > 1. Initially we need to have shared library (OMX core + OMX core
> > > wrapper + configuration parser API).
>
> > Yes.
>
> > > 2. we have to record OMX core library in the configuration file in
> > > pvplayer.cfg ( or other file with .cfg extention).  Then
> > > pv_omxmastercore loads all omx cores registered in .cfg files while
> > > OMX_Init() is invoked. This pv_omxmastermore is wrapper layer which
> > > helps in loading all cores and their compoents.
> > Yes.
>
> > > 3. we can use existing parser node/ parser file. ( as mentioned by
> > > group users )
> > >      can we use this without any modification?
>
> > Yes. It depends on what codec you are adding.
>
> > > my question/ doubt are:
>
> > > a) what other changes I need to do or which part of the opencore i
> > > have to concentrate, apart from steps mentioned above?
>
> > As mentioned above, it depends on the type of codec you are adding.
>
> > > b) I was unable to understand who will invoke parser node?
>
> > The player engine will take care of invoking the appropriate parser
> > node.
>
> > > c) who will call OMX_init().
> > >      from my understanding,  player will invoke this OMX_Init then
> > > player will be created. is it right?
>
> > The layer driving the player engine, i.e., playerdriver will call
> > OMX_Init.
>
> > > Thanks
> > > Gururaja
>
> > > On Oct 23, 4:44 pm, RaviY <yend...@pv.com> wrote:
>
> > > > What am I supposed to guide you on? I did not find a question in your
> > > > post.
>
> > > > -Ravi
>
> > > > On Oct 23, 2:30 am, guru <guru.nav...@gmail.com> wrote:
>
> > > > > Hi RaviY,
>
> > > > > I  went through the document that you refered. Here is my
> > > > > understanding:
>
> > > > > 1. Initially we need to have shared library (OMX core + OMX core
> > > > > wrapper + configuration parser API).
> > > > > 2. we have to record OMX core library in the configuration file in
> > > > > pvplayer.cfg ( or other file with .cfg extention).  Then
> > > > > pv_omxmastercore loads all omx cores registered in .cfg files while
> > > > > OMX_Init() is invoked. This pv_omxmastermore is wrapper layer which
> > > > > helps in loading all cores and their compoents.
> > > > > when i googled, i got some points about integration:
> > > > > 3.  steps to integrate opencore codec
> > > > >    In general, the steps to add a new OMX codec would be:
> > > > >    (i) Add the required format, if not present, in pvmi/pvmf/include/
> > > > > pvmf_format_type.h.
> > > > >    (ii) Add the mime type in the capability of PVMFOMXAudioDecNode()or
> > > > > PVMFOMXVideoDecNode() [see the constructor].
>
> > > > > if you are going to use the OpenCORE OMX-core ...
> > > > >    (iii) Register the component in the omx registry - codecs_v2/omx/
> > > > > omx_common/src/pv_omxregistry.cpp. ---> [in this for each decoder he
> > > > > has one function ( example : AacRegister). Whether we have to write
> > > > > our own?]
> > > > >         or if you are going to provide your own OMX-core ...
> > > > >    (iii) Have your OMX-core register this new component. ---> [How to
> > > > > achieve this one?]
> > > > >    (iv) Have your OMX-core dynamically loadable. ---> [steps is
> > > > > provided in the OMX core integration Guide]
>
> > > > > apart from these steps whether I have follow any other steps. I read
> > > > > about parser node and file parser. one author told me that we can use
> > > > > these and no need to write again.
>
> > > > > Please guide me or give some reference to follow.
>
> > > > > Regards
> > > > > Gururaja
>
> > > > > On Oct 22, 4:46 pm, RaviY <yend...@pv.com> wrote:
>
> > > > > >http://android.git.kernel.org/?p=platform/external/opencore.git;a=blo...
>
> > > > > > On Oct 22, 5:49 am, guru <guru.nav...@gmail.com> wrote:
>
> > > > > > > HI All,
>
> > > > > > > I am trying to integrate decoder to OpenCORE. Below is my
> > > > > > > understanding after going through code base:
>
> > > > > > > OMX_Init() is called by player driver (Playerdriver.cpp)
>
> > > > > > > pv_omxmastercore.cpp --> OMX_Init()-->_OMX_Init()
> > > > > > >                                                         |
> > > > > > > pv_omxcore.cpp                                         --->   
> > > > > > > OMX_Init
> > > > > > > () _OMX_Init()--> AacRegister();
>
> > > > > > > pv_omxregistry.cpp             AacRegister() --> 
> > > > > > > ComponentRegister()
>
> > > > > > > from this what I observed is , in order to register our component 
> > > > > > > we
> > > > > > > have to write our own function and call ComponentRegister!
>
> > > > > > > Please let me know is that my understanding is correct. I will be 
> > > > > > > a
> > > > > > > great help.
>
> > > > > > > Thanks
> > > > > > > Gururaja B O- Hide quoted text -
>
> > > > > > - Show quoted text -- Hide quoted text -
>
> > > > - Show quoted text -- Hide quoted text -
>
> > - Show quoted text -
>
>
--~--~---------~--~----~------------~-------~--~----~
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting
-~----------~----~----~----~------~----~------~--~---

Reply via email to