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.

Using OpenMax and C6Run with DM8168

I am wondering if it is possible to use c6run and OpenMax in the same Arm application.

For example, I have an OpenMax application that uses the H.264 encoder component to encode video that is read from a sata device. This video is converted from a raw 8-bit Bayer-encoded format to YUV422sp for the H.264 encoder. Currently, this conversion is done using an algorithm that runs on the Arm processor. I would like to be able to use C6Run to migrate this algorithm to the DSP to hopefully get a performance improvement and to allow it to run in parallel with other Arm code.

I am wondering if it is possible to run this algorithm on the DSP at the same time that the H.264 OpenMax component is busy encoding video?

  • Steve,

    If the OpenMax framework does not make use of the DSP (that is, if it does not enable and load an application to the DSP), then the answer should be yes.  Unfortunately, I don't know much about the OpenMax framework, so I'm not sure if it does use the DSP or not.

    Regards, Daniel

  • In the 5.2 SDK there is a example DSP OMX component which does a receives an input buffer and copies it to another memory location.  You could extend the DSP OMX component to perform addition processing before passing back to the application.  The source for this component can be found under <ezsdk-root>component-sources/omx_x_x_x_x/packages/ti/omx/demos/C6xtest

  • Hello Marcus,

    Can you please tell me where in the ezsdk 5.2 can I find the file  which on the DSP side receives an input buffer and copies it to another memory location? What's the file's name?

    Thanks.

  • Alla,

    The OMX component mentioned above passes a input buffer from the ARM to the DSP and the DSP OMX component will copy it to another memory location and notify the ARM.  If you want to accomplish the same without the ARM, but rather perform the copy on the DSP then see ti-ezsdk_dm816x-evm_5_02_01_59/component-sources/omx_05_02_00_15/packages/ti/omx/comp/vlpb/src/omx_vlpb.c  function OMX_TI_VLPB_DataNotify() and look at how TIMM_OSAL_Memcpy() is used.

  • Thank you, it was very helpful.