VLCJ is a Java binding for VLC engine (libVLC). It supersedes the old (and now dead) JVLC project.
Like VLC media player from VideoLAN.org, VLCJ, made by Mark Lee of Caprica Software, Inc., binds to the VLC engine (VLC libraries and plugins) that is native to a given OS platform via Java Native Access (JNA). For it to work, it requires at least Java 1.5. It is currently licensed under GPLv3.
VLCJ features everything VLC media player can do: transcoding, streaming and playback of a media in many formats of media containers and media codecs. It supports media input coming from a file, a media disc, a URL, a capture device or even the desktop! It also able to play from a playlist of media stored locally or remotely.
Currently, various major versions are released for VLCJ, depending on which VLC engine version it binds to. All versions works well under Windows and Linux but some versions are reported to work fine under MacOSX.