VLC media player
From Wikipedia, the free encyclopedia
Screenshot of VLC 0.9.8a running under desktop KDE 4.2.1. |
|
Developed by | VideoLAN Project |
---|---|
Initial release | February 1, 2001 |
Stable release | 0.9.9 (2009-04-02[1]) [+/−] |
Preview release | 1.0.0-pre1 (2009-3-29[2]) [+/−] |
Written in | C/C++-Qt |
Operating system | Cross-platform |
Available in | multilingual |
Type | Media player |
License | GNU General Public License v2 or later |
Website | VideoLAN.org |
VLC media player is an open source, free software media player written by the VideoLAN project.
VLC is a portable multimedia player, encoder, and streamer supporting many audio and video codecs and file formats as well as DVDs, VCDs, and various streaming protocols. It is able to stream over networks and to transcode multimedia files and save them into various formats. VLC used to stand for VideoLAN Client, but that meaning is now deprecated.[3][4] It is licensed under the GNU General Public License.
It is one of the most platform-independent players available, with versions for Microsoft Windows, Mac OS X, Linux, BeOS, Syllable, BSD, MorphOS, Solaris and Zaurus, and is widely used with over 100 million downloads for version 0.8.6.[5]
VLC includes a large number of free decoding and encoding libraries; on the Windows platform, this greatly reduces the need for finding/calibrating proprietary plugins. Many of VLC's codecs are provided by the libavcodec library from the FFmpeg project, but it uses mainly its own muxer and demuxers. It also gained distinction as the first player to support playback of encrypted DVDs on Linux by using the libdvdcss DVD decryption library.
Contents |
[edit] History
Originally the VideoLAN project was intended to consist of a client and server to stream videos across a network. Originally developed by students at the École Centrale Paris, it is now developed by contributors worldwide. VLC was the client for the VideoLAN project, with VLC standing for VideoLAN Client. It was released under the GPL on February 1, 2001. The functionality of the server program, VideoLAN Server (VLS), has mostly been subsumed into VLC and has been deprecated.[6] The project name was changed to VLC media player since there is no longer a client/server infrastructure.
The cone icon used in VLC is a reference to the traffic cones collected by Ecole Centrale's Networking Students' Association.[7] The cone icon design was changed from a hand drawn low resolution icon[8] to a higher resolution CGI rendered version in 2006.[9]
[edit] Design principles
VLC has a very modular design which makes it easier to include modules for new file formats, codecs or streaming methods. This principle also stretches to other areas and there is a wide selection of interfaces, video and audio outputs, controls, and audio and video filter modules. There are more than 360 modules in VLC.[10]
[edit] Interfaces
The standard GUI is based on Qt 4 for Windows and Linux, Cocoa for Mac OS X, and Be API on BeOS; but all give a similar standard interface. The old standard GUI was based on wx on Windows and Linux.[11]
VLC supports highly customizable skins through the skins2 interface, also supporting Winamp 2 and XMMS skins. The customizable skins feature can malfunction depending on which version is being used.
For console users, VLC has an ncurses interface. As VLC can act as a streaming server, rather than a media player, it can be useful to control it from a remote location and there are interfaces allowing this. The Remote Control Interface is a text-based interface for doing this. There are also interfaces using telnet and HTTP (AJAX).
[edit] Control
In addition to these interfaces, it is possible to control VLC in different ways:
- configurable hotkeys
- mouse gestures
- LIRC and infrared controllers
[edit] Features
- VLC is popular for its ability to play the video content of incomplete, unfinished, or damaged video downloads before the files have been fully downloaded. (For example, files still downloading via BitTorrent, eMule, or Gnutella). It also plays m2t MPEG Transport Streams (.TS) files while they are still being digitized from an HDV camera via a FireWire cable, making it possible to monitor the video as it is being played. This is because it is a packet-based player.
- The player also has the ability to use libcdio to access .iso files so that the user can play files on a disk image, even if the user's operating system does not have the capability of working directly with .iso images.
- VLC supports all codecs and all file formats supported by FFmpeg. This means that DVD Video and MPEG-4 playback as well as support for Ogg and Matroska (MKV) file formats work "out of the box". However, this feature is not unique to VLC, as any player using the FFmpeg libraries, including MPlayer and xine-lib-based players, can play those formats without need for external codecs. VLC also supports codecs that are not included in FFmpeg.
- VLC is one of the free software and open source DVD players that ignores DVD region coding, making it a region free player, even on locked RPC-2 firmware.
- VLC media player has some filters that can distort, rotate, split, deinterlace, mirror videos, create display walls, or add a logo overlay. It can also produce video output as ASCII art.
- VLC media player can play high definition recordings of D-VHS tapes duplicated to a computer using CapDVHS.exe. This offers another way to archive all D-VHS tapes with the DRM copy freely tag.
- Using a FireWire connection from cable boxes to computers, VLC can stream live, unencrypted content to a monitor or HDTV.
- VLC media player can display the playing video as the desktop wallpaper, like Windows DreamScene, but this feature is not currently available on Linux.
- VLC media player can do screencasts and record the desktop.
- On Microsoft Windows, VLC also supports the Direct Media Object (DMO) framework and can therefore make use of some third-party DLLs.
- VLC can be installed and run directly from a flash or other external drive.
- VLC can be extended through scripting. It uses the Lua scripting language.
[edit] Use of VLC with other programs
[edit] API
Developed by | VideoLAN Project |
---|---|
Initial release | February 1, 2001 |
Written in | C |
Operating system | Cross-platform |
Platform | Native, .NET, Java, Python and Cocoa |
Available in | multilingual |
Type | Multimedia Library |
License | GNU General Public License |
Website | http://wiki.videolan.org/Libvlc (English) |
There are several APIs that can connect to VLC and use its functionality:
- libVLC API, which is the VLC Core, for C, C++ and C#
- JavaScript API, which is the evolution of ActiveX API and Firefox integration
- D-Bus Controls
- C# interface
- Python controls
- Java API[12]
- DirectShow filters[13]
[edit] Browser plugins
- On Windows, Linux, and some other platforms, VLC provides a NPAPI plugin,[14] which lets people view some QuickTime and Windows Media files embedded in websites without using Microsoft or Apple Inc. products. It supports Firefox, Mozilla Application Suite, Safari and Opera as well. This plugin was initially used by Google to build the Google Video web browser plugin,[15] which currently uses Adobe Flash.
- Starting with version 0.8.2, VLC also provides an ActiveX plugin, which lets people view some QuickTime (MOV) and Windows Media files embedded in websites when using Internet Explorer.
[edit] Applications which use the VLC plugin
- VLC can handle incomplete files and can be used to preview files being downloaded. Several programs make use of this, including eMule and KCeasy.
- The free/open-source Miro also uses VLC code.
[edit] Format support
[edit] Readable formats
VLC can read several formats, depending on the operating system VLC is running on.[16]
- Input
- UDP/RTP unicast or multicast, HTTP, FTP, MMS, RTSP, RTMP, DVDs, VCD, SVCD, CD Audio, DVB, Video acquisition (via V4l and DirectShow), RSS/Atom Feeds, and from files stored on the user's computer.
- Container formats
- 3GP,[17] ASF, AVI, FLV, MKV, Musical Instrument Digital Interface (.mid/.midi),[18] QuickTime, MP4, Ogg, OGM, WAV, MPEG-2 (ES, PS, TS, PVA, MP3), AIFF, Raw audio, Raw DV, MXF, VOB.
- Video formats
- Cinepak, Dirac, DV, H.263, H.264/MPEG-4 AVC, HuffYUV, Indeo 3,[19] MJPEG, MPEG-1, MPEG-2, MPEG-4 Part 2, RealVideo[20], Sorenson (thus enabling direct playback of the modified Sorenson H.263 encoded videos downloaded from YouTube), Theora, VC-1,[21] VP5,[21] VP6,[21] WMV.
- Subtitles
- DVD, SVCD, DVB, OGM, SubStation Alpha, SubRip, Advanced SubStation Alpha, MPEG-4 Timed Text, Text file, Vobsub, MPL2,[22] Teletext.[22]
- Audio formats
- AAC, AC3, ALAC, AMR,[17] DTS, DV Audio, XM, FLAC, MACE, MP3, PLS (file format), QDM2/QDMC, RealAudio,[23] Speex, Screamtracker 3/S3M, TTA, Vorbis, WavPack,[24] WMA.
[edit] Output formats for streaming/encoding
VLC can transcode into several formats depending on the operating system.
- Container formats
- ASF, AVI, FLV,[22] Fraps,[22] MP4, Ogg, Wav, MPEG-2 (ES, PS, TS, PVA, MP3), MPJPEG, FLAC, MOV
- Video formats
- H.263, H.264/MPEG-4 AVC, MJPEG, MPEG-1, MPEG-2, MPEG-4 Part 2, VP5,[21] VP6,[21] Theora, DV
- Audio formats
- AAC, AC3, DV Audio, FLAC, MP3,[25] Speex, Vorbis
- Streaming protocols
- UDP, HTTP, RTP, RTSP, MMS, File
[edit] See also
- List of media players
- Comparison of media players
- List of multimedia (audio/video) codecs
- xine, MPlayer
- MEncoder
[edit] References
- ^ "VLC media player source code". http://nightlies.videolan.org/. Retrieved on 2008-12-01.
- ^ "VLC media player nightly builds". http://nightlies.videolan.org. Retrieved on 2009-03-10.
- ^ Jean-Baptiste Kempf (November 23, 2006). "VLC Name". Yet another blog for JBKempf. http://www.jbkempf.com/blog/post/2006/11/23/VLC-Name. Retrieved on 2007-02-24.
- ^ VideoLAN Team. "Intellectual Properties". VideoLAN Wiki. http://wiki.videolan.org/Intellectual_Properties#Names_.2F_Trademark. Retrieved on 2007-07-30.
- ^ "Download Statistics". VideoLAN Project. http://www.videolan.org/stats/downloads.html. Retrieved on 2008-03-01.
- ^ "VideoLAN - The streaming solution". http://www.videolan.org/vlc/streaming.html. Retrieved on 2009-03-08.
- ^ Jon Lech Johansen (June 23, 2005). "VLC cone". So sue me: Jon Lech Johansen’s blog. http://www.nanocrew.net/2005/06/23/vlc-cone/. Retrieved on 2007-02-24.
- ^ "vlc48x48.png" (PNG). VideoLAN Project. http://trac.videolan.org/vlc/browser/share/vlc48x48.png?rev=85e4b3a17d6a107a0f73be40c52c080354b3ddd0. Retrieved on 2008-08-06.
- ^ "vlc48x48.png" (PNG). VideoLAN Project. http://trac.videolan.org/vlc/browser/share/vlc48x48.png?rev=9ef388cc16e200fa0a4571f9b006c0d58e9ba115. Retrieved on 2008-08-06.
- ^ "VLC media player List of modules". VLC media player trac system. http://trac.videolan.org/vlc/browser/modules/LIST.
- ^ Jean-Baptiste Kempf (February 10, 2007). "Qt4 Interface". Yet another blog for JBKempf. http://www.jbkempf.com/blog/post/2007/02/10/Qt4-Interface. Retrieved on 2007-03-07.
- ^ Java binding Project
- ^ Anderson, Dean; Lamberson, Jim (2007). "Using VideoLan VLC in DirectShow". An open source bridge from VLC to DirectShow. http://www.sensoray.com/support/videoLan.htm. Retrieved on 2008-02-15.
- ^ Chapter 4. Advanced use of VLC
- ^ Open Source Patches and Mirrored Packages - Google Code
- ^ "VLC features list". VideoLAN Project. http://www.videolan.org/vlc/features.html. Retrieved on 2007-02-24.
- ^ a b To use AMR as audio codec, VLC and FFmpeg need to be compiled with AMR support. This is because the AMR license is not compatible with the VLC license.
- ^ This feature needs sound fonts and might not work on every OS
- ^ Indeo 4 and 5 codecs are not supported
- ^ from 0.9.9 and over
- ^ a b c d e This is from the 0.8.6 version.
- ^ a b c d This is present in 0.9.0 and newer version.
- ^ Real Audio playback is provided through the FFmpeg library which only supports the Cook (RealAudio G2 / RealAudio 8) decoder at the moment.
- ^ Currently only supported in mono and stereo, so no multichannel support.
- ^ You need to compile VLC with mp3lame support
[edit] External links
Wikimedia Commons has media related to: VLC |
|