JMF and JOGL Issues

I am currently trying to get JMF and JOGL to play nice for a demo I am writing. The demo consists of two parts. The first is JMF code to display a USB webcam stream to the screen. The second is a set of JOGL shapes on a transparent GLJPanel.

Separately the code works perfectly. But when I try to display both components on the same frame, the JMF code is always painted on top of the JOGL code. I have tried several different approaches including a JLayeredPane, custom repaint manager, etc. to no avail. I am wondering if anyone has a suggestion as to how to get the two to work correctly.

I thought the custom repaint manager would be the ticket (just repaint the JOGL every time JMF wants to update the webcam feed), except for whatever reason setIgnoreRepaint does absolutely nothing for a JMF object. It sill happily updates as if nothing was set. Any pointers?

I haven’t used JMF personally, but are it’s components heavy-weight? Also, were you using a GLCanvas or GLJPanel?

I haven’t used JMF either, though I suspect the way you’d need to implement this to play well with JOGL would be to decompress to an in-memory buffer and repeatedly use glTexSubImage2D to update an OpenGL texture to draw the video into your 3D scene.