Frank, To eliminate param setting issue, I would suggest trying the following parameters while creating the JPEG encoder instance? IMGENC1_Params.maxHeight = 480 IMGENC1_Params.maxWidth = 720 IMGENC1_Params.maxScans = 0 IMGENC1_Params.dataEndianness = 1 IMGENC1_Params.forceChromaFormat = 2
Also, for H.264 encoder, can you try setting the following parameters while creating the instance? VIDENC1_Params.encodingPreset = 0 VIDENC1_Params.rateControlPreset = 1 VIDENC1_Params.maxHeight = 480 VIDENC1_Params.maxWidth = 720 VIDENC1_Params.maxFrameRate = 30000 VIDENC1_Params.maxBitRate = 2000000 VIDENC1_Params.dataEndianness = 1 VIDENC1_Params.maxInterFrameInterval = 0 VIDENC1_Params.inputChromaFormat = 1 VIDENC1_Params.inputContentType = 0 VIDENC1_Params.reconChromaFormat = 1 Regards, Prem ________________________________ From: davinci-linux-open-source-bounces+premkumar.j=ti....@linux.davincidsp.com [mailto:davinci-linux-open-source-bounces+premkumar.j=ti....@linux.davincidsp.com] On Behalf Of Frank Bhattacharyya Sent: Thursday, August 20, 2009 9:01 PM To: Ring, Chris; davinci-linux-open-source@linux.davincidsp.com Subject: AW: TI JPEGENC 2.00.00.2 unable to call IMGENC1_create 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:cr...@ti.com] Gesendet: Mittwoch, 19. August 2009 18:48 An: Frank Bhattacharyya; davinci-linux-open-source@linux.davincidsp.com 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: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