This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Which Mali packages are required for the best graphic performance of video playing on Direct FB?

Hi,

I have few basic questions about Mali packages.

Please understand my lack of understanding in this field.

My company designed a new board in purpose of playing HD videos on Linux DirectFB envionment.
And the video player would may be VLC player.

In my case which packages are required for the best graphic performance?

OpenGL ES can enhance the graphic performance?

Does it because fbdev uses 3D APIs?

If 3D APIs are not required, can I replace OpenGL ES with OpenCL?

Additionally do I need to port OpenCL to enable NEON? Or NEON can be utilized without OpenCL or OpenGL ES?

PLEASE please help me.

Project time schedule is quite desperating..

Thank you.

Parents
  • Hi Nari,

    No problem, it's what we're here for

    And I guess I may need OpenCL package to accelerate video decoding of VLC player.

    This article below says VLC player's decode performance can be reached up to 10x speeds when it use hardware acceleration.

    OpenCL Software Development Services GPGPU Acceleration

    They are not using OpenCL to perform the decoding of the video, they use OpenCL to accelerate some image filtering/processing (denoise, deshake, scaling) on the decoded video frames, and they observe a 10x speedup compared to doing this processing on the CPU. They are NOT decoding the video stream itself using OpenCL, this is still being done with some other API.

    And there is 'Use GPU accelerated decoding' check box in VLC player too.

    It can bewrong, so I'd better find some more information though..

    I can't say I know what this refers to, but I'd take a look at the code and see what it hooks up to. Best case it uses OpenCL to perform the video decode, but this almost certainly will be less performant than performing the video decode on MFC.

    My board has MFC hardware codec. And if I assume that I add gstreamer framework layer that linked to MFC hardware codec,

    Will this MFC with gstreamer have better graphical performance compared to GPU accelerated(by OpenCL) FFMPEG software codec and gstreamer framework layer added?

    Yes MFC is ultimately what you should be using to perform the video decode. From what I understand, the Android framework, gstreamer, and XBMC (possibly through gstreamer) make use of MFC to perform video decode. The odroid forums have some talk of XBMC using MFC so it's worth taking a look there.

    When you say "graphical performance", I assume you mean video decode performance, and not 3D rendering performance, in which case yes MFC will be much faster and more power efficient than decoding on the CPU, using FFMPEG software codec, OpenCL accelerated, or similar. I'm stressing the difference here between "graphics" and "video" as this seems to be the cause of much of the confusion

    Hope this helps,

    Chris

Reply
  • Hi Nari,

    No problem, it's what we're here for

    And I guess I may need OpenCL package to accelerate video decoding of VLC player.

    This article below says VLC player's decode performance can be reached up to 10x speeds when it use hardware acceleration.

    OpenCL Software Development Services GPGPU Acceleration

    They are not using OpenCL to perform the decoding of the video, they use OpenCL to accelerate some image filtering/processing (denoise, deshake, scaling) on the decoded video frames, and they observe a 10x speedup compared to doing this processing on the CPU. They are NOT decoding the video stream itself using OpenCL, this is still being done with some other API.

    And there is 'Use GPU accelerated decoding' check box in VLC player too.

    It can bewrong, so I'd better find some more information though..

    I can't say I know what this refers to, but I'd take a look at the code and see what it hooks up to. Best case it uses OpenCL to perform the video decode, but this almost certainly will be less performant than performing the video decode on MFC.

    My board has MFC hardware codec. And if I assume that I add gstreamer framework layer that linked to MFC hardware codec,

    Will this MFC with gstreamer have better graphical performance compared to GPU accelerated(by OpenCL) FFMPEG software codec and gstreamer framework layer added?

    Yes MFC is ultimately what you should be using to perform the video decode. From what I understand, the Android framework, gstreamer, and XBMC (possibly through gstreamer) make use of MFC to perform video decode. The odroid forums have some talk of XBMC using MFC so it's worth taking a look there.

    When you say "graphical performance", I assume you mean video decode performance, and not 3D rendering performance, in which case yes MFC will be much faster and more power efficient than decoding on the CPU, using FFMPEG software codec, OpenCL accelerated, or similar. I'm stressing the difference here between "graphics" and "video" as this seems to be the cause of much of the confusion

    Hope this helps,

    Chris

Children