Are there any good libraries for streaming live video using Java? Ideally both ends of the pipe should be written in Java but I am mostly concerned about the video player. What software would you recommend?
UPDATE: It seems that VLC introduces a 1-2 second delay. I need video streaming that is truly live. The record-to-playback delay must be under 300ms.
The best video playback/encoding library I have ever seen is ffmpeg. It plays everything you throw at it. (It is used by MPlayer.) It is written in C but I found some Java wrappers.
- FFMPEG-Java: A Java wrapper around ffmpeg using JNA.
- jffmpeg: This one integrates to JMF.
You can do this today in Java with the Red5 media server from Flash. If you want to also decode and encode video in Java, you can use the Xuggler project.
You could always check out JMF (Java Media Framework). It is pretty old and abandoned, but it works and I've used it for apps before. Looks like it handles what you're asking for.
JMF was abandoned. VLC is more up to date and it reads everything.
https://stackoverflow.com/a/5160010
I think vlc beats every other software out there yet, or at least the ones that I know...
Yes if you want to stream live video you can use RTSP protoco
this will allow you to create a video file, which can be play while creating, both operation will work simultaneously. RTSP-Client-Server
Hi not an expert in streaming but my understanding is that it is included in th Java Media Framework JMF http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/support-rtsp.html