source: multimedia/videoutils/vlc.xml

trunk
Last change on this file was fd51842, checked in by Douglas R. Reno <renodr@…>, 8 days ago

VLC: Make dependency on protobuf internal

  • Property mode set to 100644
File size: 15.9 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY vlc-download-http "https://download.videolan.org/vlc/&vlc-version;/vlc-&vlc-version;.tar.xz">
8 <!ENTITY vlc-download-ftp " ">
9 <!ENTITY vlc-md5sum "e8337fcd2df92f3901dad091fb85f545">
10 <!ENTITY vlc-size "24 MB">
11 <!ENTITY vlc-buildsize "726 MB">
12 <!ENTITY vlc-time "1.9 SBU (using parallelism=4; with tests)">
13]>
14
15<sect1 id="vlc" xreflabel="VLC-&vlc-version;">
16 <?dbhtml filename="vlc.html"?>
17
18
19 <title>VLC-&vlc-version;</title>
20
21 <indexterm zone="vlc">
22 <primary sortas="a-VLC">VLC</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to VLC</title>
27
28 <para>
29 <application>VLC</application> is a media player, streamer, and encoder.
30 It can play from many inputs, such as files, network streams, capture
31 devices, desktops, or DVD, SVCD, VCD, and audio CD. It can use most audio
32 and video codecs (MPEG 1/2/4, H264, VC-1, DivX, WMV, Vorbis, AC3, AAC,
33 etc.), and it can also convert to different formats and/or send streams
34 through the network.
35 </para>
36
37 &lfs121_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>
43 Download (HTTP): <ulink url="&vlc-download-http;"/>
44 </para>
45 </listitem>
46 <listitem>
47 <para>
48 Download (FTP): <ulink url="&vlc-download-ftp;"/>
49 </para>
50 </listitem>
51 <listitem>
52 <para>
53 Download MD5 sum: &vlc-md5sum;
54 </para>
55 </listitem>
56 <listitem>
57 <para>
58 Download size: &vlc-size;
59 </para>
60 </listitem>
61 <listitem>
62 <para>
63 Estimated disk space required: &vlc-buildsize;
64 </para>
65 </listitem>
66 <listitem>
67 <para>
68 Estimated build time: &vlc-time;
69 </para>
70 </listitem>
71 </itemizedlist>
72
73 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
74 <itemizedlist spacing='compact'>
75 <listitem>
76 <para>
77 Required patch:
78 <ulink url="&patch-root;/vlc-&vlc-version;-taglib-1.patch"/>
79 </para>
80 </listitem>
81 </itemizedlist>
82
83 <bridgehead renderas="sect3">VLC Dependencies</bridgehead>
84
85 <bridgehead renderas="sect4">Recommended</bridgehead>
86 <para role="recommended">
87 <xref linkend="alsa-lib"/>,
88 <xref linkend="desktop-file-utils"/>,
89 <xref linkend="ffmpeg"/>,
90 <xref linkend="liba52"/>,
91 <xref linkend="libgcrypt"/>
92 <xref linkend="libmad"/>,
93 <xref linkend="lua52"/>, and
94 <xref linkend="x-window-system"/>
95 </para>
96
97 <bridgehead renderas="sect4">Optional features and packages</bridgehead>
98 <para role="optional">
99 <xref linkend="dbus"/>,
100 <xref linkend="libidn"/>, and
101 <xref linkend="libssh2"/>
102 </para>
103
104 <bridgehead renderas="sect4">Optional input plugins</bridgehead>
105 <para role="optional">
106 <xref linkend="libarchive"/>,
107 <xref linkend="libcddb"/>,
108 <xref linkend="libdv"/>,
109 <xref linkend="libdvdcss"/>,
110 <xref linkend="libdvdread"/>,
111 <xref linkend="libdvdnav"/>,
112 <xref linkend="opencv"/>,
113 <xref linkend="samba"/>,
114 <xref linkend="v4l-utils"/>,
115 <ulink url="https://www.videolan.org/developers/libbluray.html">libbluray</ulink>,
116 <ulink url="https://sourceforge.net/projects/libdc1394/">libdc1394</ulink>,
117 <ulink url="https://github.com/sahlberg/libnfs">libnfs</ulink>,
118 <ulink url="https://github.com/libproxy/libproxy">libproxy</ulink>,
119 <ulink url="https://sourceforge.net/projects/libraw1394/">libraw1394</ulink>,
120 <ulink url="http://www.live555.com/">Live555</ulink>, and
121 <ulink url="https://www.gnu.org/software/vcdimager/">VCDImager</ulink>
122 (requires <xref linkend="libcdio"/>)
123 </para>
124
125 <bridgehead renderas="sect4">Optional mux/demux plugins</bridgehead>
126 <para role="optional">
127 <xref linkend="libogg"/>,
128 <ulink url="https://github.com/kode54/Game_Music_Emu">Game Music Emu</ulink>,
129 <ulink url="https://www.videolan.org/developers/libdvbpsi.html">libdvbpsi</ulink>,
130 <ulink url="https://downloads.xiph.org/releases/libshout/">libshout</ulink>,
131 <ulink url="https://dl.matroska.org/downloads/libmatroska/">libmatroska</ulink>
132 (requires <ulink url="https://dl.matroska.org/downloads/libebml/">libebml</ulink>),
133 <ulink url="https://sourceforge.net/projects/modplug-xmms/">libmodplug</ulink>,
134 <ulink url="https://www.musepack.net/">Musepack</ulink>, and
135 <ulink url="https://sourceforge.net/projects/sidplay2/">sidplay-libs</ulink>
136 </para>
137
138 <bridgehead renderas="sect4">Optional codec plugins</bridgehead>
139 <para role="optional">
140 <xref linkend="faad2"/>,
141 <xref linkend="flac"/>,
142 <xref linkend="libaom"/>,
143 <xref linkend="libass"/>,
144 <xref linkend="libmpeg2"/>,
145 <xref linkend="libpng"/>,
146 <!--<xref linkend="libtheora"/>,-->
147 <xref linkend="libva"/>,
148 <xref linkend="libvorbis"/>,
149 <xref linkend="opus"/>,
150 <xref linkend="speex"/>,
151 <xref linkend="libvpx"/>,
152 <xref linkend="x264"/>,
153 <!--<ulink url="https://aomedia.googlesource.com/aom/">aom</ulink>,-->
154 <ulink url="https://github.com/nkoriyama/aribb24">aribb24</ulink>,
155 <ulink url="https://code.videolan.org/videolan/dav1d">dav1d</ulink>,
156 <ulink url="https://sourceforge.net/projects/dirac/">Dirac</ulink>,
157 <ulink url="https://github.com/divideconcept/FluidLite">FluidLite</ulink>,
158 <ulink url="https://sourceforge.net/projects/fluidsynth/">FluidSynth</ulink>,
159 <ulink url="https://www.videolan.org/developers/libdca.html">libdca</ulink>,
160 <ulink url="https://wiki.xiph.org/index.php/OggKate">libkate</ulink>,
161 <ulink url="https://www.theora.org">libthora</ulink>,
162 <ulink url="https://www.khronos.org/openmax/">OpenMAX</ulink>,
163 <ulink url="https://sourceforge.net/projects/schrodinger/">Schroedinger</ulink>,
164 <ulink url="https://github.com/toots/shine">Shine</ulink>,
165 <ulink url="https://sourceforge.net/p/soxr/wiki/Home/">SoX</ulink>,
166 <ulink url="https://wiki.xiph.org/Tremor">Tremor</ulink>,
167 <ulink url="https://www.twolame.org/">Twolame</ulink>, and
168 <ulink url="https://sourceforge.net/projects/zapping/">Zapping VBI</ulink>
169 </para>
170
171 <bridgehead renderas="sect4">Optional video plugins</bridgehead>
172 <para role="optional">
173 <xref linkend="aalib"/>,
174 <xref linkend="fontconfig"/>,
175 <xref linkend="freetype2"/>,
176 <xref linkend="fribidi"/>,
177 <!-- Using libplacebo is broken due to many API changes. The patch Arch
178 has for this only works on a version of libplacebo from July. VLC has
179 fixed this problem, but only for the upcoming VLC4.
180 https://code.videolan.org/videolan/vlc/-/merge_requests/2233#top -->
181 <xref linkend="libplacebo"/> (currently broken),
182 <xref linkend="librsvg"/>,
183 <xref linkend="libvdpau"/>,
184 <xref linkend="sdl"/>,
185 <ulink url="https://github.com/cacalabs/libcaca">libcaca</ulink>,
186 <!--<ulink url="http://libplacebo.org/">libplacebo</ulink>, and-->
187 <ulink url="https://github.com/Intel-Media-SDK/MediaSDK">libmfx</ulink>
188 </para>
189
190 <bridgehead renderas="sect4">Optional audio plugins</bridgehead>
191 <para role="optional">
192 <xref linkend="pulseaudio"/>,
193 <xref linkend="libsamplerate"/>,
194 <ulink url="https://github.com/videolabs/libspatialaudio">spatialaudio</ulink>, and
195 <ulink url="https://jackaudio.org/">JACK</ulink>
196 </para>
197
198 <bridgehead renderas="sect4">Optional interface plugins</bridgehead>
199 <para role="optional">
200 &qt5-deps; (required for the graphical user interface),
201 <ulink url="https://repo.or.cz/w/libtar.git/">libtar</ulink>,
202 <ulink url="https://libvnc.github.io/">libvncclient</ulink>,
203 <ulink url="https://www.lirc.org/">LIRC</ulink>, and
204 <ulink url="https://www.freerdp.com/">freerdp</ulink>
205 </para>
206
207 <bridgehead renderas="sect4">Optional visualisations and video filter plugins</bridgehead>
208 <para role="optional">
209 <ulink url="https://sourceforge.net/projects/goom/">Goom</ulink>,
210 <ulink url="https://www.vsxu.com">libvsxu</ulink>, and
211 <ulink url="https://sourceforge.net/projects/projectm/">projectM</ulink>
212 </para>
213
214 <bridgehead renderas="sect4">Optional service discovery plugins</bridgehead>
215 <para role="optional">
216 <xref linkend="avahi"/>,
217 <ulink url="https://sourceforge.net/projects/libmtp/">libmtp</ulink> and
218 <ulink url="https://sourceforge.net/projects/pupnp/">libupnp</ulink>
219 </para>
220
221 <bridgehead renderas="sect4">Miscellaneous options</bridgehead>
222 <para role="optional">
223 <xref linkend="gnutls"/>,
224 <xref linkend="libnotify"/>,
225 <xref linkend="libxml2"/>,
226 <xref linkend="protobuf"/>,
227 <xref linkend="taglib"/>,
228 <xref role="runtime" linkend="xdg-utils"/> (runtime),
229 <ulink url="https://www.team-mediaportal.com/extensions/mp2-plugins/atmolight">AtmoLight</ulink>,
230 <ulink url="https://github.com/videolabs/libmicrodns">libmicrodns</ulink>, and
231 <!--<ulink url="https://developers.google.com/protocol-buffers/">protobuf</ulink>, and-->
232 <ulink url="https://github.com/Haivision/srt">Srt</ulink>
233 </para>
234
235 </sect2>
236
237 <sect2 role="installation">
238 <title>Installation of VLC</title>
239
240 <para>
241 First, add a correction for problems of taglib-2.0 and later:
242 </para>
243
244<screen><userinput>patch -Np1 -i ../vlc-&vlc-version;-taglib-1.patch</userinput></screen>
245
246 <para>
247 If you wish to add support for lua extensions, enforce the use of <application>lua52</application>:
248 </para>
249
250<screen><userinput>export LUAC=/usr/bin/luac5.2 &amp;&amp;
251export LUA_LIBS="$(pkg-config --libs lua52)" &amp;&amp;
252export CPPFLAGS="$(pkg-config --cflags lua52)"</userinput></screen>
253
254 <para>
255 Install <application>VLC</application> by running the following commands:
256 </para>
257
258<screen><userinput>BUILDCC=gcc ./configure --prefix=/usr --disable-libplacebo &amp;&amp;
259make</userinput></screen>
260
261 <para>
262 To test the results, issue: <command>make check</command>.
263 </para>
264
265 <para>
266 Now, as the <systemitem class="username">root</systemitem> user:
267 </para>
268
269<screen role="root"><userinput>make docdir=/usr/share/doc/vlc-&vlc-version; install</userinput></screen>
270
271 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
272 href="../../xincludes/update-icons-and-desktop.xml"/>
273
274 </sect2>
275
276 <sect2 role="commands">
277 <title>Command Explanations</title>
278
279 <para>
280 <parameter>--disable-libplacebo</parameter>: This switch is required to
281 disable support for using libplacebo as a rendering pipeline because VLC
282 is incompatible with the latest version of libplacebo.
283 </para>
284
285 <para>
286 <option>--disable-vpx</option>: Use this switch to disable
287 <application>libvpx</application>.
288 </para>
289
290 <!--<para>
291 <option>- -disable-lua</option>: Use this switch if you don't have
292 <application>Lua</application> installed.
293 </para>-->
294
295 <para>
296 <option>--disable-mad</option>: Use this switch if you don't
297 have <application>libmad</application> installed.
298 </para>
299
300 <para>
301 <option>--disable-avcodec --disable-swscale</option>: Use these switches
302 if you don't have <application>FFmpeg</application> installed.
303 </para>
304
305 <para>
306 <option>--disable-a52</option>: Use this switch if you don't have
307 <application>liba52</application> installed.
308 </para>
309
310 <para>
311 <option>--disable-xcb</option>: Use this switch if you don't have
312 <application>X Window System</application> installed.
313 </para>
314
315 <para>
316 <option>--disable-alsa</option>: Use this switch if you don't have
317 <application>ALSA</application> installed.
318 </para>
319
320 <para>
321 <option>--disable-libgcrypt</option>: Use this switch if you don't
322 have <application>libgcrypt</application> installed.
323 </para>
324
325 <para>
326 <option>--disable-sftp</option>: The default is to build the sftp
327 module if <xref linkend="libssh2"/> is installed. Use this switch
328 if you do not want to build this module.
329 </para>
330
331 <note>
332 <para>
333 There are many options to <application>VLC</application>'s
334 <command>configure</command> command. Check the
335 <command>configure --help</command> output for a complete list.
336 </para>
337 </note>
338
339 </sect2>
340
341 <sect2 role="content">
342 <title>Contents</title>
343
344 <segmentedlist>
345 <segtitle>Installed Programs</segtitle>
346 <segtitle>Installed Libraries</segtitle>
347 <segtitle>Installed Directories</segtitle>
348
349 <seglistitem>
350 <seg>
351 cvlc, nvlc, qvlc, rvlc, svlc, vlc and vlc-wrapper
352 </seg>
353 <seg>
354 libvlccore.so, libvlc.so, and many plugins in
355 /usr/lib/vlc/plugins
356 </seg>
357 <seg>
358 /usr/{include,lib,share}/vlc,
359 /usr/share/kde4, and
360 /usr/share/doc/vlc-&vlc-version;
361 </seg>
362 </seglistitem>
363 </segmentedlist>
364
365 <variablelist>
366 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
367 <?dbfo list-presentation="list"?>
368 <?dbhtml list-presentation="table"?>
369
370 <varlistentry id="cvlc">
371 <term><command>cvlc</command></term>
372 <listitem>
373 <para>
374 is a script to run VLC with the dummy interface
375 </para>
376 <indexterm zone="vlc cvlc">
377 <primary sortas="b-cvlc">cvlc</primary>
378 </indexterm>
379 </listitem>
380 </varlistentry>
381
382 <varlistentry id="nvlc">
383 <term><command>nvlc</command></term>
384 <listitem>
385 <para>
386 is a script to run VLC with the ncurses interface
387 </para>
388 <indexterm zone="vlc nvlc">
389 <primary sortas="b-nvlc">nvlc</primary>
390 </indexterm>
391 </listitem>
392 </varlistentry>
393
394 <varlistentry id="qvlc">
395 <term><command>qvlc</command></term>
396 <listitem>
397 <para>
398 is a script to run <application>VLC</application> with the
399 <application>Qt</application> interface
400 </para>
401 <indexterm zone="vlc qvlc">
402 <primary sortas="b-qvlc">qvlc</primary>
403 </indexterm>
404 </listitem>
405 </varlistentry>
406
407 <varlistentry id="rvlc">
408 <term><command>rvlc</command></term>
409 <listitem>
410 <para>
411 is a script to run <application>VLC</application> with a command
412 line interface
413 </para>
414 <indexterm zone="vlc rvlc">
415 <primary sortas="b-rvlc">rvlc</primary>
416 </indexterm>
417 </listitem>
418 </varlistentry>
419
420 <varlistentry id="svlc">
421 <term><command>svlc</command></term>
422 <listitem>
423 <para>
424 is a script to run <application>VLC</application> with the skins
425 interface
426 </para>
427 <indexterm zone="vlc svlc">
428 <primary sortas="b-svlc">svlc</primary>
429 </indexterm>
430 </listitem>
431 </varlistentry>
432
433 <varlistentry id="vlc-prog">
434 <term><command>vlc</command></term>
435 <listitem>
436 <para>
437 is the <application>VLC</application> media player
438 </para>
439 <indexterm zone="vlc vlc-prog">
440 <primary sortas="b-vlc">vlc</primary>
441 </indexterm>
442 </listitem>
443 </varlistentry>
444
445 <varlistentry id="vlc-wrapper">
446 <term><command>vlc-wrapper</command></term>
447 <listitem>
448 <para>
449 is a wrapper to drop privileges with <application>VLC</application>
450 </para>
451 <indexterm zone="vlc vlc-wrapper">
452 <primary sortas="b-vlc-wrapper">vlc-wrapper</primary>
453 </indexterm>
454 </listitem>
455 </varlistentry>
456
457 </variablelist>
458
459 </sect2>
460
461</sect1>
Note: See TracBrowser for help on using the repository browser.