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.

how to build the JPEGDEC demo on C6678L(CCS5.0.3)

hi,

I want to know how to organize the project about JPEGDEC on C6678L in CCS5.0.3.

I download the DEMO at http://software-dl.ti.com/dsps/dsps_public_sw/codecs/C6678_Video_Codecs/01_00_001/index_FDS.html (windows version), but the user guide in extract folder says that the project is built in CCS4, I want to konw how to port it to CCS5.

I do ti for long time, but it seems does work, even I can't let it build successful. I think it must be something wrong when I organize the project.

could you tell me sth on how to port the jpec_demo project to CCS5? Any user guide or detail steps will be OK.

Thanks.

  • Hi Shiqiang,

    I've downloaded and imported the project into CCSv5 (5.0.3) and you are right it does look like the 'build variables' and 'include options' JPEG decoder project properties and source file paths are hard-coded to specific CCSv4 paths on the developer's computer. Essentially for this to work you'll have to modify these and make them generic. I'm in the process of trying this and will get back to you with specific steps for a successful port to CCSv5. 

  • Hi Shiqiang

    I have imported the JPEGDEC TestAppDecoder project to CCSv5.0.3, resolved the main issues in porting and have created an interim zip package for you so you can move on with your project. Please note that this is only an interim quick zip for your purpose and all formal releases are made by the Codecs team through the main download page for these Codecs.

    Please click on the link here 0830.TestAppDecoder_zip.txt to download the zip.

    I had to change the extension so it can be shared here. Once you have the file please change the name to TestAppDecoder.zip and unzip in the folder "Codecs\C66x_jpegdec_03_01_00_01_ELF\packages\ti\sdo\codecs\jpegdec\App\Client\Build." Next, import the project into CCSv5. After this, It should be a simple clean, build, load and run.

    For your reference, I had to make the following changes to the project properties:

    • Replaced user-defined environment variables for FC, BIOS, etc.with generic RTSC-based variables (eg: FRAMEWORK_COMPONENTS_CG_ROOT instead of a user-defined FRMWRK_ROOT). 
    • Modified “Include Options” in project properties to reflect above changes
    • Modified Linker “File Search Path” to reflect above changes
    • Modified RTSC “Other Repositories” to reflect above changes
    • Modified XDC Tools -> Package Repositories to reflect above changes
    • Modified C6000 Compiler -> Directory Specifier. Changed Mode to Automatic and removed all manual references.
    • Changed path to source files to a generic one
    • Included a macros.ini for project root directory references
    • Selected required RTSC components. Note that these are the same as the user guide points out, i.e. DSP/BIOS version 6.31.00.18, Bios IPC version 1.22.04.25, XDC Tools version 3.20.08.88 & Framework Component (FC) version 3.20.02.29.

    Note that at this point the project only has the Debug mode. You are welcome to try and create a Release mode build configuration too using the Debug mode as a reference and add the necessary optimizations. 

    Regards,
    Uday 

  • Hi, 

    Thanks very much for your detail instructions. I have downed the file your provided and imported to CCS5.0.3, then built successful. I will load it to EVM6678L through JTAG at night and to see if it will work.

    I have two more questions when I change the project properties as you said below:

    1. where are the environment  variables FRAMEWORK_COMPONENTS_CG_ROOT and  BIOS_CG_ROOT defined? I have checked Properties-> C/C++ Build -> Build variables -> Show system variables, and seen variables such as CG_TOOL_ROOT, but haven't seen the two.

    2. When I change the project properties, it says that "Could not write file:Could not write file: E:\TI\TMS320C66x\Codecs\packages\ti\sdo\codecs\jpegdec\App\Client\Build\TestAppDecoder\.project." and the details says "E:\TI\TMS320C66x\Codecs\packages\ti\sdo\codecs\jpegdec\App\Client\Build\TestAppDecoder\.project (access denied.)". I am sure that although I change the authority of all files in the project, the error is always on.

    could give some advise on the previous two problems?

    Regards,
    Shiqiang 

  • Hi Shiqiang,

    The variables FRAMEWORK_COMPONENTS_CG_ROOT and BIOS_CG_ROOT get automatically defined when the relevant RTSC packages are selected (which is already done in the project I sent you). You do not need to make any changes to the project properties. The project once imported should build successfully as provided. From your post, it looks like you were able to successfully do that.

  • Hi Gurnani,

    It's right that after I import the project, I build it successfully.

    But i just want to learn more to specify CCSv5 settings, so I just do the steps as you listed.

    In the steps, I don't understand "• Changed path to source files to a generic one", could you show more details to me?

    Thanks anyway.

    Regards,
    Shiqiang 

  • Hi Shiqiang,

    The "Changed path to source files to a generic one" refers to the following:

    In the zip I've provided, if you right click on any source file, for example, alg_create.c, you'll see that the file location now points to "JPEGDEC_ROOT\Client\Test\Src\alg_create.c," where JPEGDEC_ROOT is defined as JPEGDEC_ROOT=./../../../ in macros.ini. It is generic in the sense that it isn't dependent on an absolute path on any computer. This way when you received the project, you could import and build without making any changes to any paths / environment variables.

  • hi Gurnani,

    I have got it. Thanks.

    but when I load the program to EVM6678L and run it, it still have some problems. I posted a new post at http://e2e.ti.com/support/embedded/multimedia_software_codecs/f/356/t/166901.aspx#608513, It may be the problem of the version of CCS, and I'll try more.

    Regards, 
    Shiqiang 

  • Hi, Gurnani,

    Thanks for your porting work of c6678 jpeg at ccs5.

    And I encounter the same problems about H264 TestAppEncoder demo.

    Could you help? 

  • Hi,

    I've followed the steps to import the adapted project. There is no variable errors and such.

    However, the linker crashes, and I can't figure out why. I'm using CCS 5.1.1.00031

    There is the linker output error:

    'Building target: TestAppDecoder.out'
    'Invoking: C6000 Linker'
    "C:/CCs_v5/ccsv5/tools/compiler/c6000/bin/cl6x" -mv6600 -g --define="XDM1" --diag_warning=225 --gen_func_subsections=on --no_bad_aliases --abi=eabi --auto_inline=256 --output_all_syms --strip_coff_underscore -z -m"TestAppDecoder.map" --warn_sections -i"C:/CCs_v5/ccsv5/tools/compiler/c6000/lib" -i"C:/CCs_v5/ccsv5/tools/compiler/c6000/include" -i"C:/multicore/TestAppDecoder" -i"C:/multicore/TestAppDecoder/../../../Build" -i"C:/CCSTUD~1.3/C6000/csl/lib" -i"C:/multicore/TestAppDecoder/../../../../Lib" -i"C:/Program Files (x86)/Texas Instruments/bios_6_33_02_31/packages/ti/bios/lib" --reread_libs --rom_model -o "TestAppDecoder.out" -l"./configPkg/linker.cmd" "./tsc_h.obj" "./ijpegdec.obj" "./alg_malloc.obj" "./alg_create.obj" "./TestAppDecoder.obj" "./TestAppConfigParser.obj" -l"C:\Program Files (x86)\Texas Instruments\C66x_jpegdec_03_01_00_01_ELF\packages\ti\sdo\codecs\jpegdec\lib\jpegdec_ti.le66" -l"libc.a" "../JPEGDecApp.cmd"
    <Linking>

    This application has requested the Runtime to terminate it in an unusual way.
    Please contact the application's support team for more information.
    user_msg_api.c:211:internal fatal error #99926: (ofile_error_handler():
    TestAppDecoder.out: illegal operation: writing 0x1fffffbc bytes to offset
    0x0 in section ".text:JPEGIDEC_TI_cSect" exceeds its formatted size
    (0x227a0))

    INTERNAL ERROR: C:\CCs_v5\ccsv5\tools\compiler\c6000\bin\lnk6x.exe aborted


    This is a serious problem. Please contact Customer
    Support with this message and a copy of the input file
    and help us to continue to make the tools more robust.

    Can someone please help. The error output itself says to ask for support.

    Weber

  • I don't know the answer to this. Please do not reply to answered posts with new questions. Please write a new post in the Codecs forum. That way your question won't get lost in previous posts, and more experts from the Codec forum will be able to look at this and comment.

    Thanks!