JMC - Java Media...COOL! ;)

I thought this was quite interesting and something we should look into utilizing in jME if at all possible as media playback is an area where I think we can definitely have some improvement.  However, the big question is whether JMC will offer the ability to stream through to OpenGL or not.



http://weblogs.java.net/blog/chet/archive/2007/05/media_frenzy.html

Hmpf, I think it's a crappy approach really… wrap native players? directshow? Windows f***ing media player? I don't even have that installed on my Windows machine…



FOBS + JMF has already shown that you can do fine building a consistent crossplatform approach to video, with FFMPEG (like any other cross platform media player) for the native decoding, and something on the Java side for rendering. It'd require a bit of work to make it all a bit more java-like (add support to FFMPEG for Java InputStreams for example), and if JMF would be used perhaps a simplified API on top of JMF could help too, but this approach is 10 times better than what Sun is suggesting here. (and certainly so if we want to use it to render straight into OpenGL like we can currently do with JMF/jME).



Of course it requires Sun to swallow a bit of their pride (other people's LGPL code?!! Without them signing the "all your source also belongs to Sun" waiver??)… and I guess the laywers won't be very happy.

I was meaning to mention this before, in another thread about JMF, but has anyone looked at this:



http://www.fluendo.com/products.php?product=applet


In our effort to help promote the use of the royalty-free Theora Video codec we ported Ogg Theora to Java and combined it with Jorbis, the port of the Ogg Vorbis audio codec to Java, to create our applet. Fluendo's Cortado streaming applet is released under the GPL and currently available for download from the Flumotion website.


I don't know what the speed is like, but it seems like it would be a good cross platform option without JMF weirdness.

Very nice too… I wonder how pluggable it is on the rendering part. (both video and audio).



It's also very cool for another reason… in the future Opera and probably Firefox too will support the proposes <video> element in HTML5, and the proposed codec/containter-of-choice is Ogg/Theora.



http://my.opera.com/ResearchWizard/blog/experimental-opera-video-build-with-native-ogg-theora-support



An applet like that could be used as an easy fallback for browser that don't support it yet (or never will…).

in my sense, the best thng to code is a jni wrapper to libavcodec and libavformat (form ffmpeg) and forget about jmf. i did that but i interfaced just the encoding functions, no reading. that would be the fastest, but fobs is a really nice alternative for playing.