FWIW, I dug into the trace logs a little from a framework POV and nothing 
jumped out at me.  The framework is providing the memory which the codec is 
asking for, but ultimately, as you point out in #3, the codec is just returning 
error when the framework says "hey, codec, time to create yourself... and 
here's the memory you asked for".  Typically this happens b/c the specific 
create params aren't supported(?).

Regarding #4, that's a great data point - does the codec example app use the 
same create params you're using?  If not, can you change the create params to 
what you want and successfully create the codec?

Chris


________________________________
From: davinci-linux-open-source-bounces+cring=ti....@linux.davincidsp.com 
[mailto:davinci-linux-open-source-bounces+cring=ti....@linux.davincidsp.com] On 
Behalf Of Frank Bhattacharyya
Sent: Wednesday, August 19, 2009 8:32 AM
To: davinci-linux-open-source@linux.davincidsp.com
Subject: TI JPEGENC 2.00.00.2 unable to call IMGENC1_create

Dear group,

I'm still searching why the TI JPEG encoder fails in IMGENC1_create. The 
general problem is:

Calling
      // setup
imgenc_params.size                       = sizeof(IIMGENC1_Params);
      imgenc_params.maxHeight                  = 480;
      imgenc_params.maxWidth                   = 720;
      imgenc_params.maxScans                   = 3;
      imgenc_params.dataEndianness             = XDM_BYTE;
      imgenc_params.forceChromaFormat          = XDM_YUV_422ILE;
      // call
iencHandle = IMGENC1_create(codecengine, encoderName, &imgenc_params );
always fails (returns NULL), if I use
iencHandle = IMGENC1_create(codecengine, encoderName, NULL );
a non null ptr is returned but I can't do any IMGENC1_control/process calls 
(all fail).
I have attached a trace log of a sample run (CE_DEBUG=2, DSKT2 trace enabled)).

So some basic questions/comments:


1.       Has anyone ever managed to successfully integrate the JPEGENC 
2.00.00.2 encoder on an DM6446 (DVEVM)board using DVSDK 1.30 into a CE 
application?


2.       I've also tried the DVSDK 2.00 but it still fails to create the 
encoder instance.


3.       Is there a way to get some more trace/debugging information out of the 
encoder (algorithm) instance? My current trace mask is:
export CE_TRACE="*=01234567"
export TRACEUTIL_DSP0TRACEMASK="*+01;*=01234567"
There is no output from the encoder itself. The last trace message is from 
DSKT2_createAlg3:
[DSP] @2,402,771tk: [+7 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
algInit call failed -1


4.       I have compiled the JPEG encode example with CCS and tested it as a 
DSP only app. Everything works as expected. So the encoder library seems to be 
healthy


5.       I have double checked the dsplink memory segments with the TCF memory 
segments and they do match.


6.       If I use the (very simple) imgenc1_copy "encoder" (replace the 
algorithm in the server cfg file) everything is working.


7.       A self built video_copy server/app runs w/o problems, so the build 
environment seems to be healthy.

Any hint/comment is appreciated.

Regards

Frank

_______________________________________________
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to