Frank,

You may need to use the IMGENC APIs rather than the IMGENC1 APIs for this 
release of the JPEG codec.  Last I checked the JPEG encoder for DM6446 used the 
xDM 0.9 APIs.

If you can you may want to upgrade to DVSDK 2.00 which contains DMAI.  The DMAI 
package includes sample applications for JPEG encode and decode for DM6446.  At 
the very least this might help you see how to use the image encoder.


Sincerely,
Chase Maupin
Software Applications
Catalog DSP Products
e-mail: [email protected]
phone: (281) 274-3285

For support:
Forums - http://community.ti.com/forums/
Wiki - http://wiki.davincidsp.com/

________________________________
From: [email protected] 
[mailto:[email protected]] On Behalf Of 
Frank Bhattacharyya
Sent: Thursday, August 13, 2009 7:27 AM
To: [email protected]
Subject: (no subject)

Dear group,

I want to integrate the DM6446 JPEG encoder 
(xdc.useModule('ti.sdo.codecs.jpegenc.ce.JPEGENC')) into a codec server to run 
on DSP side and create a matching ceapp on gpp side.

We're using DVSDK 1.30.01.41 (BIOS 5.31.08, CMEM 2.00.01, CE 2.00.01, FC 
2.00.01, XDAIS 6.00.01, XDC 3.00.02). Our test environment is a dvevm board 
plus our self designed DM6446 based boards (both using 256MB).

I've used the video_copy example to setup both sides. I modified the all.tcf 
file from the all_codecs dir to use 32kb L1 Cache again, plus some 
modifications on heap/stack sizes. I have attached the server tcf & cfg files 
(I hope attaching works)

I'm currently facing following problem:

Whenever I call IMGENC1_create on the engine the function returns an error (if 
I pass NULL as params it succeeds but I can't do any control/process calls on 
the encoder).

I activated DSKT2 tracing and I receive the following output:

[DSP] @2,399,765tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_init> Enter
[DSP] @2,399,839tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_init> Exit
[DSP] @2,399,883tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg> Enter 
(scratchId=1, fxns=0x8fb66a84, parentAlg=0x0, params=0x8fe05cc0)
[DSP] @2,399,970tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_init> Enter
[DSP] @2,400,016tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_init> Exit
[DSP] @2,400,060tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> Enter 
(scratchId=1, fxns=0x8fb66a84, parentAlg=0x0, params=0x8fe05cc0, 
extHeapId=-1881121600, singleHeap=0)
[DSP] @2,400,202tk: [+2 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> Num 
memory recs requested 8
[DSP] @2,400,276tk: [+2 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> Num 
memory recs requested 5
[DSP] @2,400,343tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Requested memTab[0]: size=0x260, align=0x8, space=IALG_EXTERNAL, 
attrs=IALG_PERSIST
[DSP] @2,400,434tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Requested memTab[1]: size=0xe00, align=0x8, space=IALG_EXTERNAL, 
attrs=IALG_SCRATCH
[DSP] @2,400,522tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Requested memTab[2]: size=0x253, align=0x8, space=IALG_EXTERNAL, 
attrs=IALG_PERSIST
[DSP] @2,400,611tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Requested memTab[3]: size=0x1400, align=0x8, space=IALG_EXTERNAL, 
attrs=IALG_SCRATCH
[DSP] @2,400,700tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Requested memTab[4]: size=0xe54, align=0x80, space=IALG_EXTERNAL, 
attrs=IALG_PERSIST
[DSP] @2,400,790tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_assignInstanceMemory> Enter (scratchId=1, numRecs=5, extHeapId=1)
[DSP] @2,400,868tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_usesInternalScratch> Enter (numRecs=5)
[DSP] @2,400,927tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_usesInternalScratch> Exit (returnVal=0)
[DSP] @2,400,994tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Enter (index=0, ialgSpace=IALG_EXTERNAL, 
extHeapId=1)
[DSP] @2,401,081tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Exit (returnVal=1)
[DSP] @2,401,145tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Enter (index=1, ialgSpace=IALG_EXTERNAL, 
extHeapId=1)
[DSP] @2,401,256tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Exit (returnVal=1)
[DSP] @2,401,318tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Enter (index=2, ialgSpace=IALG_EXTERNAL, 
extHeapId=1)
[DSP] @2,401,403tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Exit (returnVal=1)
[DSP] @2,401,466tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Enter (index=3, ialgSpace=IALG_EXTERNAL, 
extHeapId=1)
[DSP] @2,401,592tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Exit (returnVal=1)
[DSP] @2,401,655tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Enter (index=4, ialgSpace=IALG_EXTERNAL, 
extHeapId=1)
[DSP] @2,401,772tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_allocateInDesignatedSpace> Exit (returnVal=1)
[DSP] @2,401,834tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_usesInternalScratch> Enter (numRecs=5)
[DSP] @2,401,893tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_usesInternalScratch> Exit (returnVal=0)
[DSP] @2,401,952tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_assignInstanceMemory> Exit (returnVal=1)
[DSP] @2,402,013tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Allocated memTab[0]: base=0x88000250, size=0x260, align=0x8, 
space=IALG_EXTERNAL, attrs=IALG_PERSIST
[DSP] @2,402,114tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Allocated memTab[1]: base=0x880004b0, size=0xe00, align=0x8, 
space=IALG_EXTERNAL, attrs=IALG_PERSIST
[DSP] @2,402,214tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Allocated memTab[2]: base=0x880012b0, size=0x253, align=0x8, 
space=IALG_EXTERNAL, attrs=IALG_PERSIST
[DSP] @2,402,314tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Allocated memTab[3]: base=0x88001508, size=0x1400, align=0x8, 
space=IALG_EXTERNAL, attrs=IALG_PERSIST
[DSP] @2,402,415tk: [+4 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
Allocated memTab[4]: base=0x88002980, size=0xe54, align=0x80, 
space=IALG_EXTERNAL, attrs=IALG_PERSIST
[DSP] @2,402,525tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_enqueueMemTab> 
Enter (segId=0, memTabSize=160, numRecs=5, extHeapId=1)
[DSP] @2,402,609tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_enqueueMemTab> 
Exit (status=TRUE)
[DSP] @2,402,771tk: [+7 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> 
algInit call failed -1
[DSP] @2,402,828tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_freeAlg> Enter 
(scratchMutexId=1, alg=0x88000250)
[DSP] @2,402,897tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_dequeueMemTab> 
Enter (segId=0, alg=0x88000250)
[DSP] @2,402,969tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_dequeueMemTab> 
Exit (memTab=0x8fa0bfe8)
[DSP] @2,403,033tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_freeInstanceMemory> Enter (scratchMutexId=1, numRecs=5, extHeapId=1)
[DSP] @2,403,108tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_freeAllocatedMemory> Enter (scratchMutexId=1, number=5, extHeapId=1)
[DSP] @2,403,183tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_isSharedScratchAddr> Enter (scratchMutexId=1, addr=0x88000250)
[DSP] @2,403,259tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_isSharedScratch> 
Exit (status=0 )
[DSP] @2,403,317tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_isSharedScratchAddr> Enter (scratchMutexId=1, addr=0x880004b0)
[DSP] @2,403,390tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_isSharedScratch> 
Exit (status=0 )
[DSP] @2,403,448tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_isSharedScratchAddr> Enter (scratchMutexId=1, addr=0x880012b0)
[DSP] @2,403,521tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_isSharedScratch> 
Exit (status=0 )
[DSP] @2,403,579tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_isSharedScratchAddr> Enter (scratchMutexId=1, addr=0x88001508)
[DSP] @2,403,652tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_isSharedScratch> 
Exit (status=0 )
[DSP] @2,403,711tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_isSharedScratchAddr> Enter (scratchMutexId=1, addr=0x88002980)
[DSP] @2,403,784tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - _DSKT2_isSharedScratch> 
Exit (status=0 )
[DSP] @2,403,843tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_freeAllocatedMemory> Exit (returnVal=1)
[DSP] @2,403,902tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_usesInternalScratch> Enter (numRecs=5)
[DSP] @2,403,961tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_usesInternalScratch> Exit (returnVal=0)
[DSP] @2,404,019tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - 
_DSKT2_freeInstanceMemory> Exit (returnVal=1)
[DSP] @2,404,078tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_freeAlg> Exit
[DSP] @2,404,123tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg3> Exit 
(algHandle=NULL)
[DSP] @2,404,178tk: [+0 T:0x8fa0348c] ti.sdo.fc.dskt2 - DSKT2_createAlg> Exit 
(algHandle=0x0)
[DSP] @2,404,233tk: [+7 T:0x8fa0348c] ti.sdo.ce.alg.Algorithm - 
Algorithm_create> Algorithm creation FAILED; make sure that 1) alg params are 
correct/appropriate, 2) there is enough internal and external algorithm memory 
available -- check DSKT2 settings for heap assignments and scratch allocation
[DSP] @2,404,388tk: [+0 T:0x8fa0348c] ti.sdo.ce.alg.Algorithm - 
Algorithm_delete> Enter(handle=0x8fa0bc68)

Replacing the used encoder in the server configuration file with the simple 
Img1enc_copy encoder 
(xdc.useModule('ti.sdo.ce.examples.codecs.imgenc1_copy.IMGENC1_COPY')) all 
further processing is working w/o any problem.

Some questions:

Is there a generic tcf file for using the TI JPEG encoder?
Since I assume it's a very simple thing that I'm currently doing wrong: Has 
anyone else faced the same problem and found the simple solution?

Any comment/hint is appreciated.

Regards & thanks in advance

Frank


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to