Hi Ravi, In order to understand code flow better, I thought to get logs and I tried with emulator. here are the steps I followed:
1. Installed eclips and installed Android. 2. Built the Android Code by making ENABLE_PV_LOGGING=1. (Below I got from Groups itself) 1. cd <android_root> 2. touch external/opencore/oscl/oscl/osclbase/src/pvlogger.h 3. make ENABLE_PV_LOGGING=1 Then after replacing the new system image in device or emulator, use adb shell to telnet it # echo 8 >/sdcard/pvlogger.txt I am not getting where to replace new system image?. Before replacing,media player application will be displayed in emulator and i was able to play media files. after replacing those images system.img in ../android-sdk-windows-1.6_r1\platforms\android-1.6\images media player is not showing in emulator. Please direct me where I am going wrong! Regards Gururaja B O On Nov 2, 10:09 am, guru <guru.nav...@gmail.com> wrote: > Hi Ravi, > > My goal is to add an additional AAC decoder to the build. I am trying > to understand the integration process while doing this assignment. If > I am successful in integrating AAC decoder, then I am planning to go > ahead of doing more open source projects on Android and contribute > them back. > > Currently I started Integration process with my current > understanding. > > Thanks > Gururaja > > On Oct 29, 8:39 am, RaviY <yend...@pv.com> wrote: > > > > > I am still not clear as to what your goal is. Are you interested to > > replace the AAC decoder with your own version, or do you want to add > > an additional AAC decoder to the build? > > > If the latter, why? > > > If the former, then I think your understanding in the previous post is > > correct. > > > -Ravi > > > On Oct 27, 9:04 am, guru <guru.nav...@gmail.com> wrote: > > > > HI Ravi, > > > > In this like you have answered about having multiple codecs of same > > > format.http://www.mail-archive.com/android-porting@googlegroups.com/msg06551... > > > > from above link, it is said that we can have multiple codecs of same > > > format. If multiple codecs exist then we have to write > > > AacRegister() function for each of the codec with different name or we > > > can reuse same function by just changing the > > > libomx_aacdec_sharedlibrary.so shared library name to our shared > > > library name to reuse it. > > > > Hope my understanding is correct! > > > > Thanks > > > Gururaja > > > > On Oct 26, 4:09 pm, 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 -- 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