I wonder if anyone can possibly help.

I am trying to teach myself how to integrate a Java video into a Java GUI / Swing Application. I am pretty competent with building Java graphical user interfaces and the background Java application code, however I am puzzled with how difficult it seems to be to integrate local video.

I am attempting to build a graphical single screen application which has an array of buttons etc on, but also 5 different videos (which are controlled from the same control buttons (play, pause, rewind etc)). The video format can be AVI, MPEG, WMV etc - pretty much anything Java is able to handle, and do not need to be dynamic - they are delcared within the code as static files and packaged with the code etc.

I have spent most of the past two days looking online for code and tutorials to help teach myself this but have run into so many different options which I have been unable to get working. I have tried the JMF with extensions from FFMpeg (as with this I could get a frame and audio but no video to load), VLCJ where I kept running into architecture errors, and a number of others.

Can anyone recomend any good tutorials, basic code snippets or examples to help me with this please? I am currently using a 64bit Mac, but also have installed Windows 8 64bit and can switch between. I need any tutorials or code to work on Windows more than anything but as any programmer i'm really hoping to be cross-comparable friendly if possible.

I would really appreciate any help you could offer,

Thank you very much,

Hi Tango,

JMF has a very bad reputation, because it just supports MPEG and runs into errors very often.
I had great expereances with xuggle, witch is based on ffmpeg and support a lot of formats.
It's also easy to process videos frame by frame with xuggle.
No installtion is nessessary and it supports Win/Linux/Mac, both 32 and 64 bit.
You can download it for free from http://www.xuggle.com/downloads
I think this post's source code will help you get startet with xuggle.


This article has been dead for over six months. Start a new discussion instead.