Introduction to VLC
VLC is a media player, streamer,
and encoder. It can play from many inputs, such as files, network
streams, capture devices, desktops, or DVD, SVCD, VCD, and audio
CD. It can use most audio and video codecs (MPEG 1/2/4, H264, VC-1,
DivX, WMV, Vorbis, AC3, AAC, etc.), and it can also convert to
different formats and/or send streams through the network.
Note
This package is known to build and work
properly using an LFS 13.0 platform.
Package Information
VLC Dependencies
Recommended
alsa-lib-1.2.15.3, desktop-file-utils-0.28, FFmpeg-8.0.1,
liba52-0.8.0, libgcrypt-1.12.0 libmad-0.15.1b, Lua-5.4.8,
Qt-6.10.2, and a graphical
environment
Optional features and packages
dbus-1.16.2, libidn-1.43, and
libssh2-1.11.1
Optional input plugins
libarchive-3.8.5, libcddb-1.3.2, libdv-1.0.0,
libdvdcss-1.5.0, libdvdread-7.0.1,
libdvdnav-7.0.0, libproxy-0.5.12, Samba-4.23.5,
v4l-utils-1.32.0, libbluray,
libdc1394,
libnfs, libraw1394,
Live555, and
VCDImager (requires
libcdio-2.1.0)
Optional mux/demux plugins
libogg-1.3.6, Game Music Emu,
libdvbpsi,
libshout,
libmatroska
(requires libebml),
libmodplug,
Musepack, and
sidplay-libs
Optional codec plugins
dav1d-1.5.3, FAAD2-2.11.2, FLAC-1.5.0, libaom-3.13.1,
libass-0.17.4, libmpeg2-0.5.1,
libpng-1.6.55, libva-2.23.0, libvorbis-1.3.7,
Opus-1.6.1,
Speex-1.2.1, libvpx-1.16.0, x264-20250815, aribb24,
Dirac, FluidLite,
FluidSynth,
libdca,
libkate, libtheora, OpenMAX,
Schroedinger,
Shine,
SoX, Tremor, Twolame, and Zapping
VBI
Optional video plugins
AAlib-1.4rc5, Fontconfig-2.17.1, FreeType-2.14.1, FriBidi-1.0.16, gst-plugins-base-1.28.1, libplacebo-7.360.0 (currently broken),
librsvg-2.61.4, libcaca, libmfx, and
SDL1
Optional audio plugins
PulseAudio-17.0, libsamplerate-0.2.2, spatialaudio,
and JACK
Optional interface plugins
FreeRDP-3.22.0, libtar, libvncclient, and LIRC
Optional visualisations and video filter plugins
Goom, libvsxu, and projectM
Optional service discovery plugins
Avahi-0.8, libmtp and libupnp
Miscellaneous options
GnuTLS-3.8.12, libnotify-0.8.8,
libxml2-2.15.1, Protobuf-33.5,
taglib-2.2, xdg-utils-1.2.1 (runtime),
AtmoLight, libmicrodns, and
Srt
Installation of VLC
First, fix a build failure introduced by the latest version of
gst-plugins-base:
sed -i 's/gstvideopool.h/video.h/' modules/codec/gstreamer/gstvlcvideopool.h
Install VLC by running the
following commands:
BUILDCC=gcc ./configure --prefix=/usr &&
make
To test the results, issue: make
check. One test will fail if you are not in a
graphical environment.
Now, as the root user:
make docdir=/usr/share/doc/vlc-3.0.23 install
Note
This package installs icon files into the /usr/share/icons/hicolor hierarchy and desktop
files into the /usr/share/applications hierarchy. You can
improve system performance and memory usage by updating
/usr/share/icons/hicolor/index.theme and
/usr/share/applications/mimeinfo.cache. To
perform the update you must have GTK-3.24.51 installed
(for the icon cache) and desktop-file-utils-0.28 (for the
desktop cache) and issue the following commands as the
root user:
gtk-update-icon-cache -qtf /usr/share/icons/hicolor &&
update-desktop-database -q
Using VLC
For a while, Qt-5 was the only way
to get a graphical interface that this package is known for. It now
supports Qt-6, but comes with a
lot of downsides as it is a fresh port of the previous interface.
Several bits of functionality are broken. For example, pausing and
other navigation features are broken, video positioning is
incorrect, among other issues.
Another issue is that video playback, despite audio playback with
image metadata being fine, is broken on Wayland without the use of
the QT_QPA_PLATFORM variable. The exact
issue is that the video never plays, and the window moves all over
the screen. If you're on Wayland, you should run QT_QPA_PLATFORM=xcb vlc -I "qt"
to use the Qt interface. This forces the xcb window interface to be used instead of
wayland, since video playback will try
to use xcb anyway and fail. On
X11, this should not be an issue.
However, many issues will still persist. It is recommended to still
use VLC through other means until
these issues get fixed.
Command Explanations
--disable-vpx: Use this switch if you
don't have libvpx installed.
--disable-mad: Use this switch if you
don't have libmad installed.
--disable-avcodec --disable-swscale:
Use these switches if you don't have FFmpeg installed.
--disable-a52: Use this switch if you
don't have liba52 installed.
--disable-xcb: Use this switch if you
don't have X Window System
installed.
--disable-alsa: Use this switch if you
don't have ALSA installed.
--disable-libgcrypt: Use this switch if
you don't have libgcrypt
installed.
--disable-sftp: The default is to build
the sftp module if libssh2-1.11.1 is installed. Use this
switch if you do not want to build this module.
Note
There are many options to VLC's
configure command.
Check the configure
--help output for a complete list.
Contents
Installed Programs:
cvlc, nvlc, qvlc, rvlc, vlc and
vlc-wrapper
Installed Libraries:
libvlccore.so, libvlc.so, and many
plugins in /usr/lib/vlc/plugins
Installed Directories:
/usr/{include,lib,share}/vlc,
/usr/share/kde4, and /usr/share/doc/vlc-3.0.23
Short Descriptions
|
cvlc
|
is a script to run VLC with the dummy interface
|
|
nvlc
|
is a script to run VLC with the ncurses interface
|
|
qvlc
|
is a script to run VLC
with the Qt interface
|
|
rvlc
|
is a script to run VLC
with a command line interface
|
|
vlc
|
is the VLC media player
|
|
vlc-wrapper
|
is a wrapper to drop privileges with VLC
|