Some Interesting links on Video Streaming and Java.

I'm really disappointed by the lack of support and large amount of frustration with JMF.  This was Sun's initial stab at implementation or standards of implementation.  No one appeared to use it, and now it seems to have lost all support or future development.

Now, on the opposite end of the spectrum.  The incredibly powerful and wonderfully open source FFMPEG is making great progress keeping up with the latest video/audio streaming technologies.

FMJ (Freedom for Media in Java) - notice the opposite acronym of JMF ?  Looks to be maintaining (jna?) binding to Java for FFMPEG

Now there is Googles WEBM (w) - Don't know anything about HTML5

VP8 apparently is the video container and Vorbis the audio container.

FFMPEG can now decode VP8 with a libvpx library.

So theoretically Java should be able to stream video and audio using Google's VP8 and Vorbis through FMP's hooks into FFMPEG.

Whew !

Wait there's more:

Note : FFMPEG-Java is not the same thing as Jffmpeg. FFMPEG-Java is a sub-project of Freedom for Media in Java, FMJ in short.

Plays movie

 

java -cp ./ffmpeg-java.jar:./lib/jna.jar net.sf.ffmpeg_java.example.PlayerExample http://www.javasaver.com/testjs/jmf/anim/2005-11-26.mov

I have not done much with ffmpeg yet.  Today, I did this to generate an audio video mp4 from my webcam - worked great

ffmpeg -f video4linux2 -s 320x240 -i /dev/video0 -f oss -ac 2 -i /dev/dsp1 -r 25 -f  mp4 Filename.mp4

 

Possible example where streaming mp4 with Java is done http://code.google.com/p/streambaby/

 

 

Container: WebM
Video Codec: VP8
Audio Codec: Vorbis
Bitrate: 464 kbps
 
Commercial implementation http://www.flumotion.com/demosite/webm/
 
OGG is an open source container
Vorbis is an open source encoder audio encoder
Theora is an open source video encoder