Thank you very much for the response. I have tried mlt_image_rgb24a, mlt_image_opengl and mlt_image_rgb24 without success, all of them produce the same output for me, which is a strange vertically striped image.

I use the following OpenGL code to initialize the texture:

glTexImage2D(GL_TEXTURE_2D, /* target */
                      0, /* level */
                      GL_RGB, /* internal format */
                      TEXTURE_WIDTH, /* width */
                      TEXTURE_HEIGHT, /* height */
                      0, /* border */
                      GL_RGB, /* format */
                      GL_UNSIGNED_BYTE,/* type */
                      pBuffer); /* pixels */

When I use ffmpeg directly, without mlt the same OpenGL code produces a correct image (with PIX_FMT_RGBA or PIX_FMT_RGB565).

Don't know what the problem is with my MLT code, it seems that it should work perfectly.


On Thu, Jan 27, 2011 at 1:27 AM, Dan Dennedy <> wrote:
On Wed, Jan 26, 2011 at 1:49 PM, Ertan Deniz <> wrote:
> Hi,
> I'm trying to write a custom Consumer which will paint directly on OpenGL.
> I examined the SDL consumer and saw that in consumer_play_video method
> "mlt_image_yuv422" is used.
> I changed this to mlt_image_opengl in custom Consumer code. But it seems
> like I still get yuv422 image format?
> What can be the problem? Am I missing something here?

I do not really know much about mlt_image_opengl. It was added by a
previous developer, and I consider it deprecated since I have no
documentation on its purpose and no test cases. Please try using