The default distribution of VLC includes many free decoding and encoding libraries, avoiding the need for finding/calibrating proprietary plugins. Thelibavcodec library from theFFmpeg project provides many of VLC's codecs, but the player mainly[14] uses its ownmuxers and demuxers. It also has its own protocol implementations. It also gained distinction as the first player to support playback ofencrypted DVDs onLinux andmacOS by using thelibdvdcss DVD decryption library; however, this library is legally controversial and is not included in manysoftware repositories ofLinux distributions as a result.[15][16]
The VideoLAN software originated as a French academic project in 1996. VLC used to stand for "VideoLAN Client" when VLC was a client of the VideoLAN project. Since VLC is no longer merely a client, thatinitialism no longer applies.[17][18] It was intended to consist of a client and server[19] to stream videos from satellite dishes across a campus network. Originally developed by students at theÉcole Centrale Paris, it is now developed by contributors worldwide and is coordinated byVideoLAN, anon-profit organization. Rewritten from scratch in 1998, it was released underGNU General Public License on February 1, 2001, with authorization from the headmaster of theÉcole Centrale Paris. The functionality of the server-program,VideoLan Server (VLS), has mostly been subsumed into VLC and has been deprecated.[20] The project name has been changed toVLC media player because there is no longer a client/server infrastructure.
The cone icon used in VLC is a reference to thetraffic cones collected by École Centrale's Networking Students' Association.[21] The cone icon design was changed from a hand drawn low resolution icon to a higher resolutionCGI-rendered version in 2005, illustrated by Richard Øiestad.[22]
In 2007 the VLC project decided, forlicense compatibility reasons, not to upgrade to the just-releasedGPLv3.[23] After 13 years of development, version 1.0.0 of VLC media player was released on July 7, 2009.[24] Work began on VLC forAndroid in 2010 and it has been available for Android devices on theGoogle Play store since 2011.[25][26] In September 2010, a company named "Applidium" developed a VLC port foriOS under GPLv2 with the endorsement of the VLC project, which was accepted by Apple for their App Store.[27][28] In January 2011, after VLC developer Rémi Denis-Courmont's complaint to Apple about thelicensing conflict between the VLC's GPLv2 and the App store's policies,[29] the VLC had been withdrawn from theApple App Store by Apple.[30] Subsequently, in October 2011 the VLC authors began torelicense the engine parts of VLC from theGPL-2.0-or-later to theLGPL-2.1-or-later to achieve betterlicense compatibility, for instance with the Apple App Store.[31][32][33][34] In July 2013 the VLC application could be resubmitted to theiOS App Store under theMPL-2.0.[35] Version 2.0.0 of VLC media player was released on February 18, 2012.[36][37] The version for theWindows Store was released on March 13, 2014. Support forWindows RT,Windows Phone andXbox One were added later.[38] As of 2016[update] VLC was the third in theSourceForge overall download count.[39]
Version 3.0 was in development for Windows, Linux and macOS since June 2016[40] and released in February 2018.[41] It contains many new features includingChromecast output support (except subtitles[42]),hardware-accelerated decoding enabled by default,4K and8K playback, 10-bit andHDR playback,360° video and 3D audio, audio passthrough for HD audio codecs,BD-J menu support, and local network drive browsing.
In January 2025, the VLC project revealed a demonstration atCES 2025 displaying offlineAI-poweredtranslation andsubtitling in the software and announced that it had reached more than 6 billion downloads.[44][45][46]
Starting with version 1.1.0, VLC release codenames refer to characters fromTerry Pratchett'sDiscworld novels; an exception is release 2.2.1, which came out shortly after Pratchett's death on March 12, 2015, and which was codenamedTerry Pratchett in honor of the author himself.
VLC, like mostmultimedia frameworks, has a verymodular design which makes it easier to include modules/plugins for new file formats, codecs, interfaces, or streaming methods. VLC 1.0.0 has more than 380 modules.[49] The VLC core creates its own graph of modules dynamically, depending on the situation: input protocol, input file format, input codec, video card capabilities and other parameters. In VLC, almost everything is a module, like interfaces, video and audio outputs, controls, scalers, codecs, and audio/video filters.
The defaultGUI is based onBe API onBeOS,Cocoa for macOS, andQt 5 for Linux and Windows, but all give a similar standard interface. The old defaultGUI was based onwxWidgets on Linux and Windows.[50] VLC supports highly customizableskins through the skins2 interface,[51] and also supportsWinamp 2 andXMMS skins.[52] Skins are not supported in the macOS version.[53] VLC hasncurses,[54] remote control,[55] andtelnet[56]console interfaces. There is also anHTTP[57] interface, as well as interfaces for mouse gestures and keyboardhotkeys.[58]
The desktop version of VLC media player has some filters that can distort, rotate, split,deinterlace, and mirror videos as well as create display walls or add a logo overlay during playback. It can also output video asASCII art.
An interactive zoom feature allows magnifying into video during playback.[59] Still images can be extracted from video at original resolution,[60] and individual frames can be stepped through, although only in forward direction.[61]
Playback can be gamified by splitting the picture inside the viewport into draggablepuzzle pieces, where the row and column count can be set as desired.[62]
For audio playback, this feature includes an equalizer and other filters that help customize sound quality.
Because VLC is apacket-based media player it plays almost all video content. Even some damaged, incomplete, or unfinished files can be played, such as those still downloading via apeer-to-peer (P2P) network. It also plays m2tMPEG transport streams (.TS) files while they are still being digitized from anHDV camera via aFireWire cable, making it possible to monitor the video as it is being recorded. The player can also use libcdio to access.iso files so that users can play files on adisk image, even if the user's operating system cannot work directly with .iso images.
VLC supports all audio and video formats supported bylibavcodec and libavformat. This means that VLC can play backH.264 orMPEG-4 Part 2 video as well as supportFLV orMXF file formats "out of the box" using FFmpeg's libraries. Alternatively, VLC has modules for codecs that are not based on FFmpeg's libraries. VLC is one of thefree software DVD players that ignoreDVD region coding onRPC-1 firmware drives, making it aregion-free player. However, it does not do the same onRPC-2 firmware drives, as in these cases the region coding is enforced by the drive itself, however, it can stillbrute-force theCSS encryption to play a foreign-region DVD on an RPC-2 drive.
VLC media player can playhigh-definition recordings ofD-VHS tapes duplicated to a computer usingCapDVHS.exe. This offers another way to archive all D-VHS tapes with the DRM copy freely tag. Using aFireWire 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 thedesktop wallpaper, likeWindows DreamScene, by usingDirectX, only available on Windows operating systems. VLC media player can record the desktop and save the stream as a file, allowing the user to createscreencasts.[63][64][65] On Microsoft Windows, VLC also supports the Direct Media Object (DMO) framework and can thus make use of some third-partyDLLs (Dynamic-link library). On most platforms, VLC can tune into and view DVB-C, DVB-T, and DVB-S channels. On macOS the separate EyeTV plugin is required, on Windows it requires the card's BDA Drivers.
VLC can be installed or run directly from aUSB flash drive or other external drive. VLC can be extended through scripting; it uses theLua scripting language.[66][67] VLC can play videos in theAVCHD format, a highly compressed format used in recentHD camcorders. VLC can generate a number ofmusic visualization displays. The program is able to convert media files into various supported formats.[68]
A redSanta hat appears on top of VLC's traffic-cone logo during Christmas seasons.[70] There is an option in the settings menu to disable the icon changes.
The keyboard shortcuts are described in the VLC media player "Preferences".On a Microsoft Windows PC open the Preferences by pressing Ctrl + p. Then click on the "Hotkeys" menu (top right of the screen).
There are single-button shortcuts in VLC that don't require Ctrl or Alt button.
For example, pressing keys F and G while a video file is running in VLC shifts the file's audio/video sync for 50 millisecond per adjustment.[71] This is useful to fix an issue with the sound being ahead or lagging behind the video.
The VLC port forWindows 8 andWindows 10 is backed by acrowdfunding campaign onKickstarter to add support for a new GUI based on Microsoft'sMetro design language, that will run on theWindows Runtime. All the existing features including video filters, subtitle support, and an equalizer are present in Windows 8.[76] A beta version of VLC for Windows 8 was released to theMicrosoft Store on March 13, 2014.[77] Auniversal app was created for Windows 8, 8.1, 10, Windows Phone 8, 8.1 and Windows 10 Mobile.
In May 2012, the VLC team stated that a version of VLC forAndroid was being developed.[78] The stable release version 1.0 was made available onGoogle Play on December 8, 2014.[79]
Free Pascal bindings and anOOP wrapper component, via the libvlc.pp and vlc.pp units. This comes standard with the Free Pascal Compiler as of November 6, 2012.[91]
ThePhonon multimedia API forQt andKDE applications can optionally use VLC as a backend.[92]
VLC can handle some incomplete files and in some cases can be used to preview files being downloaded. Several programs make use of this, including eMule andKCeasy. The free/open-source Internet television applicationMiro also uses VLC code.HandBrake, an open-source video encoder, used to loadlibdvdcss from VLC Media Player.[93] Easy Subtitles Synchronizer, afreeware subtitle editing program for Windows, uses VLC to preview the video with the edited subtitles.[94]
The VLC media player software installers for the macOS platform and the Windows platform include thelibdvdcss DVD decryption library, even though this library may be legally restricted in certain jurisdictions.[98][99]
In May 2022, it was reported byMediaNama that VLC was banned in India and its website was inaccessible from India under the provisions of theInformation Technology Act, 2000.[100] Neither the developers nor the Indian government offered any explanation to the ban, according toIndia Today. The official VideoLAN Twitter account stated in August that the website was blocked in India from 13 February 2022.[101] A report byHindustan Times indicated that the ban could be due to links with China.[102] India had in 2020 banned over 200 Chinese apps following the2020–2022 China–India skirmishes.
Another Hindustan Times report from April quotingSymantec said that Chinese hackers were depending on VLC to launch malware they had previously installed on Windows machines.[103] The technique they used is called DLL side-loading, in which an external library that a legitimate program loads at runtime is substituted with a modified version containing the malware.[104]
VideoLan president and lead developerJean-Baptiste Kempf said that the block was most likely a result of a misunderstanding of the Chinese security issue.[105] In October 2022, VideoLan, with assistance from the Indian digital rights organizationInternet Freedom Foundation sent a legal notice to the Indian government asking for an explanation for the block order, following which the Ministry of Electronics and Information Technology removed the ban in November 2022[106] without the Indian Government providing any reason as to why it was blocked in the first place.[107]
The VLC media player software is able to read audio and video data from DVDs that incorporateContent Scramble System (CSS) encryption, even though the VLC media player software lacks a CSS decryption license.[108] The unauthorized decryption of CSS-encrypted DVD content or unauthorized distribution of CSS decryption tools may violate the USDigital Millennium Copyright Act.[108]
Decryption of CSS-encrypted DVD content has been temporarily authorized for certain purposes (such asdocumentary filmmaking that uses short portions of DVD content for criticism or commentary) under the Digital Millennium Copyright Actanticircumvention exemptions that were issued by theUS Copyright Office in 2010.[109] However, these exemptions do not change the DMCA's ban on the distribution of CSS decryption tools; including those distributed with VLC.[110]
^abUntil VLC 1.1.0, to use AMR as audio codec, VLC and FFmpeg had to be compiled with AMR support. This is because the AMR license is not compatible with the VLC license.
^This feature needssound fonts and might not work on every OS.
^RealAudio playback is provided through the FFmpeg library which only supports the Cook (RealAudio G2 / RealAudio 8) decoder at the moment.[when?]
^As of 2010[update], only supported in mono and stereo, so no multichannel support.
^Denis-Courmont, Rémi."VLC media player to remain under GNU GPL version 2".VideoLAN. RetrievedApril 15, 2017.In 2001, VLC was released under the OSI-approved GNU General Public version 2, with the commonly-offered option to use "any later version" thereof (though there was not any such later version at the time). Following the release by the Free Software Foundation (FSF) of the new version 3 of its GNU General Public License (GPL) on the 29th of June 2007, contributors to the VLC media player, and other software projects hosted at videolan.org, debated the possibility of updating the licensing terms for future version of the VLC media player and other hosted projects, to version 3 of the GPL. [...] There is strong concern that these new additional requirements might not match the industrial and economic reality of our time, especially in the market of consumer electronics. It is our belief that changing our licensing terms to GPL version 3 would currently not be in the best interest of our community as a whole. Consequently, we plan to keep distributing future versions of VLC media player under the terms of the GPL version 2. [...]we will continue to distribute the VLC media player source code under GPL "version 2 or any later version" until further notice.
^Jean-Baptiste Kempf (February 10, 2007)."Qt4 Interface".Yet another blog for JBKempf. RetrievedJanuary 13, 2013.
^"Skins".VideoLAN Wiki. VideoLAN. February 21, 2015. Archived fromthe original on July 9, 2016. RetrievedJuly 9, 2016.
^Popov, Dmitri (March 22, 2007)."VLC beyond the basics".Linux.com. The Linux Foundation. Archived fromthe original on July 9, 2016. RetrievedJuly 9, 2016.
^"Skins".VideoLAN. Archived fromthe original on July 9, 2016. RetrievedJuly 9, 2016.