[MPlayer-dev-eng] Question regarding MPlayer's OpenGL output

Mostapha El-Shafey mostapha at viionsystems.com
Wed Oct 19 17:32:40 CEST 2011


Hi,

Anyone can explain to me how mplayer's OpenGL output is this fast? What
exactly is it doing in terms of OpenGL? I've read through the vo_gl.c file
and while I understand some of what's happening, I don't get the big
picture. I've compared it to vlc OpenGL output, and on my machine mplayer
with OpenGL takes less than 5% CPU, while vlc playing the same stream with
OpenGL output will take anywhere from 15 to 20%. I'm using the "gl" option
for mplayer.

The reason I'm asking is because I'm developing an application (in Qt) that
displays many (up to 20) video streams at once and it is required for the
video display to take up as little CPU time as possible. By my simple tests
it looks like MPlayer is doing something right, OpenGL-wise. I went through
the vlc code and what it seems to do is just create a quad with a texture,
while it looks to me that MPlayer is using pixel buffers, glMapBuffer() and
glUnmapBuffer(). Problem is I tried using pixel buffers in my application
but it doesn't make a difference in terms of performance so I must be
missing something MPlayer is doing.

Thanks.


More information about the MPlayer-dev-eng mailing list