From Gentoo Wiki
Jump to: navigation, search
This page contains changes which are not marked for translation.

VLC media player is a wildly popular, cross platform video player and streamer. VLC media player has been quickly achieving its goal[1] of world domination since its initial release in February of 2001.


USE flags

USE flags for media-video/vlc Media player and framework with support for most multimedia files and streaming

X Enable support for e.g. fullscreen mode via X and the X C-language binding. It does not build a graphical interface local
a52 Enable support for decoding ATSC A/52 streams used in DVD global
altivec Add support for optimizations for G4 and G5/ppc970 processors global
aom Enable experimental support for AV1 codec local
archive Enable support for libarchive stream extractor local
aribsub Enable support for decoding ARIB STD-B24 subtitles local
bidi Enable bidirectional language support global
bluray Enable libbluray for Blu-ray disc support local
cddb Access cddb servers to retrieve and submit information about compact disks global
chromaprint Enable libchromaprint for Chromaprint based audio fingerprinter support local
chromecast Enable experimental support for Google Chromecast local
dbus Enable dbus support for anything that needs it (gpsd, gnomemeeting, etc) global
dc1394 Enable IIDC cameras support local
directx Enable Win32 DirectX, D3D11va and DxVA2 support local
dts Enable DTS Coherent Acoustics decoder support global
dvbpsi Enable support for Mpeg-TS files (.ts, .m2ts, .mts) via media-libs/libdvbpsi local
encode Enable streaming-output support and videolan manager to control multiple streams from within one instance local
faad Enable AAC audio decoding library support via media-libs/faad2 local
fdk Enable the Fraunhofer AAC codec library local
fluidsynth Enable Fluidsynth MIDI software synthesis (with external sound fonts) local
fontconfig Support for configuring and customizing font access via media-libs/fontconfig global
gcrypt Enable cryptography support via libgcrypt local
gme Enable support for media-libs/game-music-emu for playing various video game music formats local
gstreamer Enable GStreamer based decoding support (currently supports only video decoding) local
ieee1394 Enable FireWire/iLink IEEE1394 support (dv, camera, ...) global
kate Adds support for Ogg Kate subtitles via libkate local
kms Enable kernel mode setting video output plugin via x11-libs/libdrm local
libass SRT/SSA/ASS (SubRip / SubStation Alpha) subtitle support global
libav Prefer libav over ffmpeg whenever both are supported global
libcaca Add support for colored ASCII-art graphics global
libnotify Enable desktop notification support global
libtar Uses libtar instead of the built-in tar reader for reading custom skins local
libtiger Enable Ogg Kate subtitles rendering using libtiger local
linsys Enable support for Linux Linear Systems Ltd. SDI and HD-SDI input cards local
lirc Add support for lirc (Linux's Infra-Red Remote Control) global
live Enable live555 streaming media support (client support for rtsp) local
lua Enable Lua scripting support, needed for including support for Jamendo (online music platform) and similar things local
macosx-notifications Enable Mac OS X notifications module (formerly growl) local
macosx-qtkit Enable Mac OS X qtkit module: qtcapture (video) and qtsound (audio) module local
matroska Enable matroska support using reference libraries (fallback on other existing matroska support if disabled, i.e., matroska enabled FFmpeg) local
modplug Add libmodplug support for playing SoundTracker-style music files global
mpeg Add libmpeg2 support for mpeg-1 and mpeg-2 video streams local
mtp Enable support for Media Transfer Protocol global
musepack Enable support for the musepack audio codec global
neon Enable optimization support for ARM NEON processors global
nfs Enable support for nfs protocol via net-fs/libnfs local
omxil Enable OpenMAX Integration Layer codec module local
opencv Enable OpenCV (computer vision) filter module local
optimisememory Enable optimisation for memory rather than performance local
opus Support opus decoding via libopus local
postproc Enable image post-processing via libpostproc (part of FFmpeg) local
projectm Enable the projectM visualization plugin local
run-as-root Allows vlc to start for root. Don't enable this unless you have a very specific (e.g. embedded) need for it! local
schroedinger Enable Dirac video support (an advanced royalty-free video compression format) via libschroedinger (high-speed implementation in C of the Dirac codec) local
sdl-image Enable sdl image video decoder (depends on sdl) local
sftp Enable libssh2 to support SFTP file transfer local
shout Enable libshout output local
sid Adds support for playing C64 SID files through media-libs/libsidplay:2 local
skins Enable support for the skins2 interface local
soxr Enable SoX Resampler support via media-libs/soxr local
srt Enable support for Secure Reliable Transport (SRT) via net-libs/srt local
svg Add support for SVG (Scalable Vector Graphics) global
taglib Enable tagging support with taglib global
theora Add support for the Theora Video Compression Codec global
tremor Enable tremor, a fixed-point version of the Ogg Vorbis decoder local
twolame Enable twolame support (MPEG Audio Layer 2 encoder) local
upnp Enable support for the Intel SDK stack based UPnP discovery module instead of CyberLink local
v4l Enable support for video4linux (using linux-headers or userspace libv4l libraries) global
vaapi Enable Video Acceleration API for hardware decoding global
vnc Enable VNC (remote desktop viewer) support global
vpx Enable the decoder(s) from the WebM VP8 / VP9 Codec SDK local
wayland Enable dev-libs/wayland backend global
wma-fixed Enable fixed point WMA decoder local
x264 Enable h264 encoding using x264 global
x265 Support X265 Encoder local
zeroconf Enable support for zero-configuration networking via avahi local
zvbi Enable support for teletext subtitles via the zvbi library local

According to VideoLAN some certain USE flags need to be set in order to not get a very bare bones version of VLC.[2] Many of them might be obsolete or be set by the selected profile. For the standard desktop profile one might add to /etc/portage/package.use like

media-video/vlc qt5 gnutls live lua matroska rtsp theora upnp vcdx

Streaming online multimedia

VLC provides users with the option to stream multimedia objects (YouTube, Vimeo, music, and more) to enable this functionality simply enable the lua USE flag, if you have app-portage/gentoolkit installed, it is a highly recommended package to have, simply issue:

root #euse -E lua -p media-video/vlc

After proper configuration and installation to stream multimedia in VLC you will find the option under File --> Open Network Stream in it you will be able to input URLs to popular multimedia websites such as YouTube along with other websites as well.

Webm support

Webm is a popular video format. To have it work the vorbis, vpx and matroska USE flags must be enabled.


After setting desired USE flags for the initial installation, emerge VLC:

root #emerge --ask media-video/vlc


VLC is an extremely powerful program capable of playing almost any media file. It can even "play" binary files, although it is really not worth trying since there is really no point in "playing" most binaries.


Alternate interfaces

VLC provides multiple interfaces in addition to the default GUI interface. There is an ncurses-based interface, and a HTTP interface that can be used for streaming or as a remote control. The VLC wiki has a section dedicated to explaining the alternative interfaces.

Users may become confused when using VLC via Portage because, by default, the ebuild does not include the USE flags needed in order to include the dependencies needed for the alternative interfaces. Search the USE flag section above for interface related flags.

Once the flags have been set recompile VLC by using the following command:

root #emerge --changed-use media-video/vlc


When connecting to the HTTP interface, make sure a password is set.

Leave the user name field blank when entering credentials on the web page leave the user name blank.


VLC supports a host of hotkeys[3] for more efficient operation. There is an article on the VLC wiki detailing all available hotkeys for the Qt interface.

See also

  • MPlayer - An older, once powerful command-line media player.
  • Mpv - A much improved fork of MPlayer.

External resources