This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

JPEG codec example OMAPL138/C6748

Other Parts Discussed in Thread: OMAPL138

Hi everyone,

 

I'm looking for a jpeg code example for OMAPL138 and C6748.

I already tried the C64x+ jpeg baseline example but it did'nt work on C6748.

 

Any help would be greatly appreciated. Thanks.

  • Nicolas,

    Do you have any details on why the example did not work?  The C674x core should be code compatible with both C64x and C67x.

    -Tommy

  • I work on C6748 EVM.

    I added these files in Inc folder Project :
    _alg.h
    alg.h
    imgenc1.h
    ialg.h
    xdas.h
    xdm.!h

    Next I modified the JPEGEncApp.cmd file with C6748 configuration :

    -stack 0x20000
    -heap  0x240000

    MEMORY
    {
        CACHE_L2RAM    : origin = 0x11800000,  len = 0x40000
           CACHE_L1P    : origin = 0x11e00000,  len = 0x8000
        CACHE_L1D    : origin = 0x11f00000,  len = 0x8000
           L3RAM        : origin = 0x80000000,  len = 0x20000
            DSPDATA        : origin = 0xC0000000,  len = 0x8000000

    }

    All Sections in DSPDATA.

     

    In TestAppEncoder.c, the program crashes at "bytesRead = fread (inputBufDesc[i].buf, 1, InputBuffSize[i], finFile)" (line 755)  in function TestApp_ReadInputData.

    I checked all parameters and I find some error in memory.

        finFile : fd = 5
              buf Trouble reading memory at 0x00000000
              pos Trouble reading memory at 0x00000000
              bufend Trouble reading memory at 0x00000000
              buff_stop Trouble reading memory at 0x00000000
              flag = 272

    I think the problem may come from memory.

  • Can you post the link of where you downloaded the example?

  • link : http://software-dl.ti.com/dsps/dsps_public_sw/codecs/C64XPlus_Video//C64XPlus_Video_latest/c64xplus_jpegenc_02_00_01_00_production.exe

  • Hi Nicolas

    I just downloaded this and re-compiled with the latest version of the bios/codegen/framework components etc. Seems to work fine for me.

    Do you get any thing on the STDOUT window (partial start-end snapshot of what I get).

    Is the external memory (mDDR) working fine on your c6748 board (any way to confirm this?).

    FYI

    The only change I made in the .cmd file was the following (highlighted in red)

    MEMORY
    {
        DSPDATA        org = 0xC0000000  len= 0x09600000
    }

    SECTIONS
    {  
        
         .text     : >  DSPDATA     
         .far     : >  DSPDATA    
         .stack      : >  DSPDATA
         .sysmem     : >  DSPDATA
         .data       : >  DSPDATA
         .bss        : >  DSPDATA
         .cinit      : >  DSPDATA
         .cio        : >  DSPDATA
         .pinit      : >  DSPDATA
         .const      : >  DSPDATA
         .switch     : >  DSPDATA
         .bios       : >  DSPDATA
         .alignconst: >  DSPDATA
         .ccdData    : >  DSPDATA
         .bitsData    : >  DSPDATA
         .ref_buffer: >  DSPDATA
          
     
    }

     

     

     

    ---

     

    *******************************************
    Read Configuration Set 1
    *******************************************
    Running in Compliance Mode
     Input file...  ..\..\Test\TestVecs\Input\remi003_422.yuv 
    Test File... ..\..\Test\TestVecs\Reference\remi003_422.jpg
    Creating Algorithm Instance...
    Algorithm Instance Creation Done...

     Encoder compliance test passed
       ...

        ...



     End of execution

     

  • hi,

    On the .cmd file I already modified the DSPDATA origin like you did.

    On the STDOUT window, I see a part of the message from "Read configuration 1" to "Algorithm Instance Creation Done" but not after.

     

    The example crashes at line 755 (TestAppEncoder.c). bytesRead = fread(InputBufDecs ... finFile).

     

  • Hi Nicolas

    Please note that I see that it takes a noticeable couple of seconds after "Algorithm Instance Creation Done" messages, so I hope you are waiting long enough.

    What is the "crash" message?

    Do you have access to CCS Simulators, if compiled properly this test should run just fine on the CCS functional simulators? If it runs fine on the simulator, then it would point to a board issue in your set up?

    Regards

    Mukul

  • Hi Nicolas

    Were you able to resolve this issue? The only other thing that I could think was to ensure that the header files required to recompile the project should be taken from the right framework component folder etc. I hope when you pulled in the various .h files (manually) you picked them from the right folder etc.

    Regards

    Mukul

  • Finally, the example work fine, it just take too many time. One hour for each configuration so 2 hours in total.

    The download of the image input from the computer to the DSP is very long through the emulator.

    Regards

    Nicolas

  • Nicolas

    Thanks for the update. I am not sure if it should take this long, just for the out of the box example.

    What emulator are you using? Are you also making sure that the device is configured to run at speed (300 MHz) and that you are not running the DSP at power on default frequency i.e bypass frequency (24MHz CLKIN/ 12 MHz DSP speed)?

    Regards

    Mukul

  • The DSP works at 300MHz and I use the emulator on the OMAP L138 EVM : XDS100 USB emulator.

    Regards

    Nicolas

  • Hello !!

    I look for doing the same thing could you please attach the project that work for you

    Think you very much