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.

codec support in AM5XX

hi Experts,

   As we know from  ( http://processors.wiki.ti.com/index.php/Processor_Training:_Multimedia#Rebuild_IPUMM_Firmware). lots of codec can be supported 

Q1. Does it support H263 encode/decode as well ??     Because Mpeg4 can be compatible to H263 in some condition (https://en.wikipedia.org/wiki/H.263)

         In our test, H263 encode can be used, but H263 decode.  To verify the H263 encode, we use ffmpeg and it looks well.

Q2.  if yes, is it implemented in HW or SW ??

Thanks

  • MPEG4 Encoder supports H263 also. Encoder needs to be configured to encode as h263 bitstream.
    If you have access to IPUMM software, refer MPEG4_Encoder_HDVICP2_UserGuide.pdf in
    ipumm_3_00_xx_xx/extrel/ti/ivahd_codecs/packages/ti/sdo/codecs/mpeg4enc/docs.

    Creation-time parameter "useShortVideoHeader" needs to be set to 1 to encode as H263. Default value is 0(MPEG4)

    MPEG4 Decoder supports H263 decoding also

    Ram
  • Refer videnc2test.c.
    It is already supporting H263 and MPEG4 encoding
  • hi Ram
    thanks for your reply.

    Here is viddec3test.c in omapdrmtest.
    Did you mean I should do as below

    else if (decoder->demux->cc->codec_id == CODEC_ID_MPEG4 || decoder->demux->cc->codec_id == CODEC_ID_H263 || decoder->demux->cc->codec_id == CODEC_ID_H263P) {
    first_in_buff = 1;
    decoder->codec = VIDDEC3_create(decoder->engine,
    "ivahd_mpeg4dec", decoder->params);
    }

    instead of the following

    else if (decoder->demux->cc->codec_id == CODEC_ID_MPEG4 ) {
    first_in_buff = 1;
    decoder->codec = VIDDEC3_create(decoder->engine,
    "ivahd_mpeg4dec", decoder->params);
    }
    else if (decoder->demux->cc->codec_id == CODEC_ID_H263 || decoder->demux->cc->codec_id == CODEC_ID_H263P ) {
    first_in_buff = 1;
    decoder->codec = VIDDEC3_create(decoder->engine,
    "ivahd_h263dec", decoder->params);
    }


    Thanks.

  • For decoder, you don't have to change anything in viddec3test.c. Decoder will identify if the stream is mpeg4 or h263.

    in omapdrmtest, you have videnc2test.c , a sample application to demonstrate h264/mpeg4/h263 encoding.