Hi Chris,

 

thank you for your quick reply.

 

Since we're quite desperate regarding this issue, we've tried a lot of
different setups within the CE application and of course the one used
within the JPEGENC DPS side example (that does work). But it's all the
same. We didn't try to change the setup for the DSP only app, but thanks
for the tip. We'll try that and look if the encoder "freaks out" at some
point.

 

We've also tried to trace into the DSP side code using the CE
application and the XDM560 JTAG debugger to look "behind the scenes" but
we haven't been "enlighted".

 

Additionally we've also tried to integrate the h264 encoder (as VIDENC1
encoder of course) using the DVSDK2.00 (since the ,
H264ENC.version.2.00.004 can't be linked with the CGT 6.0.16 of SDK1.30)
and that encoder ALSO fails during creation for the SAME reason. 

 

Since both encoders fail at the same point I assume it's not the
encoders but something else, may be something very simple we just forgot
to set/change within the SDK build chain/tcf,cfg,... files.

 

Since we're using one DVEVM and several of our self designed PCB (DM6446
based), that all act the same, I don't assume that it's hardware
related.

 

We also did a clean setup of the DVSDK 2.0 and used the stock
dsplink/cmem drivers using a stock kernel (defaultconfig) & filesystem
but all the same.

 

BTW: We had some trouble to integrate the h264 encoder into the codec
server and the TI coded ref ( http://wiki.davincidsp.com/index.php/FAQ )

indicates that 

H264ENC.alg.dataSection = "DDR";

H264ENC.alg.udataSection = "DDR";

should be set in the server cfg file, but IMO it should be

H264ENC.alg.dataSection = "DDR";
H264ENC.alg.udataSection = "DDR";
H264ENC.alg.codeSection = "DDR";

and more than that: Shouldn't it be DDR2? I think my knowledge is far
too little in that huge TI universe ;) .

 

To come back to the TI universe: Maybe there's a little sample
application sitting in a space that I didn't find until now and
you/someone else knows of?

 

Thank you very much for your help and best regards

 

Frank

 

Von: Ring, Chris [mailto:[email protected]] 
Gesendet: Mittwoch, 19. August 2009 18:48
An: Frank Bhattacharyya; [email protected]
Betreff: RE: TI JPEGENC 2.00.00.2 unable to call IMGENC1_create

 

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:[email protected].
com] On Behalf Of Frank Bhattacharyya
        Sent: Wednesday, August 19, 2009 8:32 AM
        To: [email protected]
        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
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to