Thank you  very much

On 4月16日, 上午3时24分, Dave Sparks <[email protected]> wrote:
> If you want to use Cupcake video recorder, you need an OMX hardware
> encoder component. You are not going to find this code in the open
> source tree because it is specific to your hardware. This means you
> have write your own OMX hardware encoder component. That's why you are
> seeing unresolved symbols, you don't have that library in your tree.
>
> On Apr 15, 5:18 am, Alex <[email protected]> wrote:
>
>
>
> > Thank you for your reply!
>
> > but I do not know what your mean.
>
> > Today I defined HARDWARE_OMX = 1
>
> > so  the statement  pWrapper[0] = QC_OMX_Wrapper::New();   will be
> > called.
>
> > but the android project also can not be compiled successful and the
> > error is :
> > OMX_Init 
> > ,OMX_Deinit,OMX_ComponentNameEnum,OMX_GetHandle,OMX_FreeHandle,OMX_GetCompo-nentsOfRole,OMX_GetRolesOfComponent,OMX_SetupTunnel,OMX_GetContentPipe
> > in QC_OMX_Wrapper class can not be declared!
> >     It seems that those function can not be solved in author! from the
> > source code that all of functions except OMX_Init  are defined in
> > "omx_core.h" , I donot know why the author can not find those
> > function.  can you tell me how to resolve it?
>
> >    another question: From mediaplayer, the audio and video decoder omx
> > should be registered in OMX_Init , but there are no encoder omx plugin
> > in opencore, it seems that the developer should implement the encoder
> > omx plugin by himself and register it. So  from this opinion, one
> > should  code the encoder omx_init() . but also if  the encoder omx_init
> > () has been implemented, the other functions
> > (OMX_Deinit,OMX_ComponentNameEnum,OMX_GetHandle and so on) also can
> > not be found by compiler. So what can I do to make the compiler
> > recoginize those functions?
>
> >   How others make the mediarecorder worked successfully? can sb give
> > me a hint?
>
> > Thank you!
>
> >         pOMX_Init = OMX_Init;
> >         pOMX_Deinit = OMX_Deinit;
> >         pOMX_ComponentNameEnum= OMX_ComponentNameEnum;
> >         pOMX_GetHandle = OMX_GetHandle;
> >         pOMX_FreeHandle = OMX_FreeHandle;
> >         pOMX_GetComponentsOfRole= OMX_GetComponentsOfRole;
> >         pOMX_GetRolesOfComponent= OMX_GetRolesOfComponent;
> >         pOMX_SetupTunnel = OMX_SetupTunnel;
> >         pOMX_GetContentPipe= OMX_GetContentPipe;
>
> > On 4月15日, 上午5时48分, Dave Sparks <[email protected]> wrote:
>
> > > The Cupcake code assumes you have an OpenMAX H.263 hardware encoder.
>
> > > On Apr 14, 6:01 am, Alex <[email protected]> wrote:
>
> > > >  Hi
> > > >    From cupcake sourcecode, camrecorder can be implemented with
> > > > mediarecorder API, and the camrecorder has implemented in package/app/
> > > > Camera.  but when I open the camera App, and click "swtich to
> > > > video" ,the application crashed.
> > > >    From the debug trace, can see that the MediaRecorder can  not be
> > > > newed(new MediaRecorder() ) successful.
> > > >    and the following function can not be called successful:
> > > >     MediaRecorderClient::MediaRecorderClient(pid_t pid)
> > > >    {
> > > >         LOGV("Client constructor");
> > > >        mPid = pid;
> > > >        mRecorder = new PVMediaRecorder();   // the statement break
> > > > with a Exception
> > > >   }
>
> > > >  and PVMediaRecorder() is defined as:
>
> > > > PVMediaRecorder::PVMediaRecorder()
> > > > {
> > > >     LOGV("constructor");
> > > >     mAuthorDriverWrapper = new AuthorDriverWrapper();
>
> > > > }
>
> > > > and
> > > >  AuthorDriverWrapper::AuthorDriverWrapper()
> > > > {
> > > >     mAuthorDriver = new AuthorDriver();
>
> > > > }
>
> > > >  From the opencore, the  PV_MasterOMX_Init() (in
> > > > pv_encomxmastercore.cpp) will be called, and please look at the
> > > > following source code in this function:
> > > > OMX_ERRORTYPE OMX_APIENTRY  PV_MasterOMX_Init()
>
> > > > {
>
> > > >     ...............
>
> > > >    #if HARDWARE_OMX
> > > >         pWrapper[0] = QC_OMX_Wrapper::New();
> > > >   #endif
> > > >    //Holmes temp remove this {
> > > >         //pWrapper[NUMBER_OF_OMX_CORES-1] = PV_OMX_Wrapper::New(); //
> > > > initialize pointers to omx methods
> > > >         //Holmes temp remove this {
>
> > > >         // loop over all cores
> > > >         master_index = 0;
> > > >         OMX_STRING ComponentName = (OMX_STRING) malloc
> > > > (PV_OMX_MAX_COMPONENT_NAME_LENGTH*sizeof(OMX_U8));
>
> > > >         for (jj = 0; jj < NUMBER_OF_OMX_CORES; jj++)
> > > >         {
> > > >             // first call OMX_Init
> > > >             Status = (*(pWrapper[jj]->GetpOMX_Init()))();
>
> > > >          ...............
>
> > > >         }
>
> > > >  ...................
>
> > > > }
>
> > > >     I don't know why the statement  "pWrapper[NUMBER_OF_OMX_CORES-1] =
> > > > PV_OMX_Wrapper::New();" was deleted. and if this statement is deleted,
> > > > the pWrapper is empty, so when " Status = (*(pWrapper[jj]->GetpOMX_Init
> > > > ()))();" is called, a exception  will happened , and this can be
> > > > caused the camrecorder crashed!
>
> > > >   but if I make the "pWrapper[NUMBER_OF_OMX_CORES-1] =
> > > > PV_OMX_Wrapper::New(); " usable, the author can not be complied
> > > > successful! and the error info is:
> > > >               PV_OMX_Wrapper::New() was not be declared
>
> > > > Can sb help me?
>
> > > >  Thanks !- 隐藏被引用文字 -
>
> > > - 显示引用的文字 -- 隐藏被引用文字 -
>
> - 显示引用的文字 -
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"android-framework" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/android-framework?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to