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.

MPEG-4 encoder issues

Hi,

I was hoping that the latest EZSDK 5.04 would provide a more stable MPEG-4 encoder on the DM8168, but that is unfortunately not the case.  Our application needs to stream two video channels over Ethernet using RTP.  We use GStreamer for that with the OpenMAX library provided in the EZSDK. So basically, we use the OMX VFCC to capture, the OMX DEI-M to perform cropping and scaling, and OMX VENC to compress it using either H.264 or MPEG-4.  It works great using the DM8168 H.264 encoder, but our client do require us to support MPEG4 as well.

Here is a short list of most important issues with MPEG4 encoder:

- On fast moving movies, we can see macroblock squares appearing on moving lines.

- On some frame size, the MPEG-4 encoder seems to get stuck after a while.  We have no problem at 1024x768, but it stuck after 20 seconds if size is 320x240.

- It seems that resources are not properly released in MPEG4 encoder. I have no problem alocating two MPEG4 instances and made them stream, but if I free one of them or both, then the next time I re-allocate one, it freezes.

Again I don't get those issues if I use the H.264 encoder.  At this point, I need to inform my client on what to expect in the near future with the MPEG4 encoder support.

Is the MPEG4 encoder still under development in the EZSDK OMX VENC?  What is the time frame where we can expect having an MPEG-4 encoder solution as solid as your H.264 encoder solution is in OMX VENC?

Thanks for your support,

Claude

  • 1. Regarding macroblaock square - Can you please share details of the configuration ? What is the resolution, framerate, bitrate , Ratecontrol and other encoding parameters used ?

    For other question, we will get back.

    Is the 2nd and 3rd problem seen even in single stream encoding ? 

    regards

    Yashwant

  • Yashwant,

    Thanks for your answer.

    1. I was using 1024x768, 20Mbps, VBR, 30fps. But I just tested it again and the problem doesn't seem to show up.  I guess I had maybe a network congestion problem when I was RTP streaming, and maybe some packets where missing at the receiving end. So we may forget about this issue. But other two issues are still there.

    2. Yes it is seen in single stream encoding.  At 320x240, it is happening in matter of seconds, something between 2 to 20 seconds.  At 1024x768 with same settings as above, it does occur but usually after minutes.

    3. Also seen in single stream encoding. It seems that when all the OMX resources are released, no error occur at this point, but the next time I try to re-start streaming, the call to the OMX_GetHandle() on the VENC component is getting stuck never returning. This behavior doesn't occur if I stop/start an H.264 stream. Also this problem was not occurring on previous EZSDK 5.03.01.15.

    Regards,

    Claude