Difference between revisions of "Documentation:Advanced Use of VLC"

From VideoLAN Wiki
Jump to navigation Jump to search
(note only local)
Line 1: Line 1:
{{RightMenu|documentation play howto toc}}
+
{{RightMenu|documentation play howto toc}}  
  
==Use the command line==
+
== Use the command line ==
  
'''TODO: completely outdated'''
+
'''TODO: completely outdated'''  
  
All standard operations of VLC should be available from the GUI. However, some complex operations can only be done from the command line and there are situations in which you don't need or want a GUI. Here is the complete description of VLC's command line and how to use it.
+
All standard operations of VLC should be available from the GUI. However, some complex operations can only be done from the command line and there are situations in which you don't need or want a GUI. Here is the complete description of VLC's command line and how to use it.  
  
You need to be quite comfortable with command line usage to use this.
+
You need to be quite comfortable with command line usage to use this.  
  
 
  Note: Windows users have to use the ''--option-name="value"'' syntax instead of the ''--option-name value'' syntax.
 
  Note: Windows users have to use the ''--option-name="value"'' syntax instead of the ''--option-name value'' syntax.
  
===Getting help===
+
=== Getting help ===
  
VLC uses a modular structure. The core mainly manages communication between modules. All the multimedia processing is done by modules. There are input modules, demultiplexers, decoders, video output modules, ...
+
VLC uses a modular structure. The core mainly manages communication between modules. All the multimedia processing is done by modules. There are input modules, demultiplexers, decoders, video output modules, ...  
  
This chapter will only describe the "general" options, i.e. the core options. Each module adds new options. For example, the HTTP input module will add options for caching, proxy, authentication, ...
+
This chapter will only describe the "general" options, i.e. the core options. Each module adds new options. For example, the HTTP input module will add options for caching, proxy, authentication, ...  
  
By using '''vlc --help''', you will get the basic core options. '''vlc --longhelp''' will give all the basic options (core + modules). Adding '''--advanced''' will give the "advanced options" (for advanced users). So '''vlc --longhelp --advanced''' will give you all options. You can also append '''--help-verbose''' if you want more detailed help.
+
By using '''vlc --help''', you will get the basic core options. '''vlc --longhelp''' will give all the basic options (core + modules). Adding '''--advanced''' will give the "advanced options" (for advanced users). So '''vlc --longhelp --advanced''' will give you all options. You can also append '''--help-verbose''' if you want more detailed help.  
  
Also, you might want to get debug informations. To do this, use '''-v''' or '''-vv''' (this will show lower severity messages). If your console supports it, you can add '''--color to get messages in color.
+
Also, you might want to get debug informations. To do this, use '''-v''' or '''-vv''' (this will show lower severity messages). If your console supports it, you can add '''--color to get messages in color.'''
  
===Opening streams===
+
=== Opening streams ===
  
The following commands start VLC and start reading the given element(s)
+
The following commands start VLC and start reading the given element(s):
  
====Opening a file====
+
==== Opening a file ====
  
Start VLC with:
+
Start VLC with:  
  
 
  % '''vlc my_file'''
 
  % '''vlc my_file'''
  
VLC should be able to recognize the file type. If it does not, you can force demultiplexer and decoder (see below).
+
VLC should be able to recognize the file type. If it does not, you can force demultiplexer and decoder (see below).  
  
A list of all video and audio codecs supported by VLC is available on the [http://www.videolan.org/vlc/features.html VLC features list].
+
A list of all video and audio codecs supported by VLC is available on the [http://www.videolan.org/vlc/features.html VLC features list].  
  
====Opening a DVD or VCD, or an audio CD====
+
==== Opening a DVD or VCD, or an audio CD ====
  
Start VLC with:
+
Start VLC with:
 +
 
 +
For a DVD with menus:  
  
For a DVD with menus:
 
 
  % '''vlc dvd://[device][@raw_device][@[title][:[chapter][:angle]]]'''
 
  % '''vlc dvd://[device][@raw_device][@[title][:[chapter][:angle]]]'''
  
In most cases, '''vlc dvd://''' or '''vlc dvd://[device]''' will do. [device] is for example '''/dev/dvd''' on GNU/Linux or '''D:''' on Windows (complete path to your DVD drive).
+
In most cases, '''vlc dvd://''' or '''vlc dvd://[device]''' will do. [device] is for example '''/dev/dvd''' on GNU/Linux or '''D:''' on Windows (complete path to your DVD drive).  
  
or
+
or  
  
(DVD without menus):
+
(DVD without menus):  
  
 
  % '''vlc dvdsimple://[device][@raw_device][@[title][:[chapter][:angle]]]'''
 
  % '''vlc dvdsimple://[device][@raw_device][@[title][:[chapter][:angle]]]'''
  
or
+
or  
  
(VCD):
+
(VCD):  
  
 
  % '''vlc vcd://[device][@{E|P|E|T|S}[number]]'''
 
  % '''vlc vcd://[device][@{E|P|E|T|S}[number]]'''
  
or
+
or  
  
(Audio CD):
+
(Audio CD):  
  
 
  % '''vlc cdda://[device][@[track]]'''
 
  % '''vlc cdda://[device][@[track]]'''
  
====Receiving a network stream====
+
==== Receiving a network stream ====
  
To receive an unicast RTP/UDP stream (sent by VLC's stream output), start VLC with:
+
To receive an unicast RTP/UDP stream (sent by VLC's stream output), start VLC with:  
  
 
  % '''vlc  rtp://@:5004'''
 
  % '''vlc  rtp://@:5004'''
  
If 5004 is the port to which packets are sent. 1234 is another commonly used port number. you use the default port (1234), '''vlc rtp://''' will do.
+
If 5004 is the port to which packets are sent. 1234 is another commonly used port number. you use the default port (1234), '''vlc rtp://''' will do. For more information, look at the Streaming Howto.  
For more information, look at the Streaming Howto.
 
  
To receive an multicast UDP/RTP stream (sent by VLC's stream output), start VLC with:
+
To receive an multicast UDP/RTP stream (sent by VLC's stream output), start VLC with:  
  
 
  % '''vlc rtp://@multicast_address:port'''
 
  % '''vlc rtp://@multicast_address:port'''
  
To receive a SSM (source specific multicast) stream, you can use:
+
To receive a SSM (source specific multicast) stream, you can use:  
  
 
  % '''vlc rtp://server_address@multicast_address:port'''
 
  % '''vlc rtp://server_address@multicast_address:port'''
  
This only works on OSs that support SSM (Windows XP and Linux).
+
This only works on OSs that support SSM (Windows XP and Linux).  
  
To receive a HTTP stream, start VLC with:
+
To receive a HTTP stream, start VLC with:  
  
 
  % '''vlc http://www.example.org/your_file.mpg'''
 
  % '''vlc http://www.example.org/your_file.mpg'''
  
To receive a RTSP stream, start VLC with:</para>
+
To receive a RTSP stream, start VLC with:&lt;/para&gt;
  
 
  % '''vlc rtsp://www.example.org/your_stream'''
 
  % '''vlc rtsp://www.example.org/your_stream'''
  
===Modules selection===
+
=== Modules selection ===
  
VLC always tries to select the most appropriate interface, input and output modules, among the ones available on the system, according to the stream it is given to read. However, you may wish to force the use of a specific module with the following options.
+
VLC always tries to select the most appropriate interface, input and output modules, among the ones available on the system, according to the stream it is given to read. However, you may wish to force the use of a specific module with the following options.  
  
*'''--intf <module>''' allows you to select the interface module.
+
*'''--intf &lt;module&gt;''' allows you to select the interface module.  
*'''--extraintf <module>''' allows you to select extra interface modules that will be launched in addition to the main one. This is mainly useful for special ''control'' interfaces, like HTTP, RC (Remote Control), ... (see below)
+
*'''--extraintf &lt;module&gt;''' allows you to select extra interface modules that will be launched in addition to the main one. This is mainly useful for special ''control'' interfaces, like HTTP, RC (Remote Control), ... (see below)  
*'''--aout <module>''' allows you to select the audio output module.
+
*'''--aout &lt;module&gt;''' allows you to select the audio output module.  
*'''--vout <module>''' allows you to select the video output module.
+
*'''--vout &lt;module&gt;''' allows you to select the video output module.  
*'''--memcpy <module>''' allows you to choose a memory copy module. You should probably never touch that.
+
*'''--memcpy &lt;module&gt;''' allows you to choose a memory copy module. You should probably never touch that.
  
You can get a listing of the available modules by using '''vlc -l'''
+
You can get a listing of the available modules by using '''vlc -l'''  
  
===Stream Output===
+
=== Stream Output ===
  
The Stream output system allows vlc to become a streaming server.
+
The Stream output system allows vlc to become a streaming server.  
  
For more details on the stream output system, please have a look at the [[Documentation:Streaming HowTo|Streaming HowTo]].
+
For more details on the stream output system, please have a look at the [[Documentation:Streaming HowTo|Streaming HowTo]].  
  
 +
<br>
  
===Other Options===
+
=== Other Options ===
  
====Audio options====
+
==== Audio options ====
  
*'''--noaudio''' disables audio output. Note that if you are streaming (ex: to a file) this has no effect (streaming copies the audio verbatim). Use --sout-xxx instead (ex: --no-sout-audio)
+
*'''--noaudio''' disables audio output. Note that if you are streaming (ex: to a file) this has no effect (streaming copies the audio verbatim). Use --sout-xxx instead (ex: --no-sout-audio)  
*'''--mono''' forces VLC to treat the stream in mono audio.
+
*'''--mono''' forces VLC to treat the stream in mono audio.  
*'''--volume <integer>''' sets the level of audio output (between 0 and 1024). Also only applies to local playback (like --noaudio).
+
*'''--volume &lt;integer&gt;''' sets the level of audio output (between 0 and 1024). Also only applies to local playback (like --noaudio).  
*'''--aout-rate <integer>''' sets the audio output frequency (Hz). By default, VLC will try to autodetect this.
+
*'''--aout-rate &lt;integer&gt;''' sets the audio output frequency (Hz). By default, VLC will try to autodetect this.  
*'''--desync <integer>''' compensates desynchronization of audio (ms). (If audio and video streams are not synchronized, use this setting to delay the audio stream)
+
*'''--desync &lt;integer&gt;''' compensates desynchronization of audio (ms). (If audio and video streams are not synchronized, use this setting to delay the audio stream)  
*'''--audio-filter <string>''' adds audio filters to the processing chain. Available filters are visual (visualizer with spectrum analyzer and oscilloscope), headphone (virtual headphone patialization) and normalizer (volume normalizer)
+
*'''--audio-filter &lt;string&gt;''' adds audio filters to the processing chain. Available filters are visual (visualizer with spectrum analyzer and oscilloscope), headphone (virtual headphone patialization) and normalizer (volume normalizer)
  
====Video options====
+
==== Video options ====
  
*'''--novideo''' disables video output.
+
*'''--novideo''' disables video output.  
*'''--grayscale''' turns video output into grayscale mode.
+
*'''--grayscale''' turns video output into grayscale mode.  
*'''--fullscreen''' ( or '''-f''') sets fullscreen video.
+
*'''--fullscreen''' ( or '''-f''') sets fullscreen video.  
*'''--nooverlay''' disables hardware acceleration for the video output.
+
*'''--nooverlay''' disables hardware acceleration for the video output.  
*'''--width, --height <integer>''' sets the video window dimensions. By default, the video window size will be adjusted to match the video dimensions.
+
*'''--width, --height &lt;integer&gt;''' sets the video window dimensions. By default, the video window size will be adjusted to match the video dimensions.  
*'''--start-time <integer>''' starts the video here; the integer is the number of seconds from the beginning (e.g. 1:30 is written as 90)
+
*'''--start-time &lt;integer&gt;''' starts the video here; the integer is the number of seconds from the beginning (e.g. 1:30 is written as 90)  
*'''--stop-time <integer>''' stops the video here; the integer is the number of seconds from the beginning (e.g. 1:30 is written as 90)
+
*'''--stop-time &lt;integer&gt;''' stops the video here; the integer is the number of seconds from the beginning (e.g. 1:30 is written as 90)  
*'''--zoom <float>''' adds a zoom factor.
+
*'''--zoom &lt;float&gt;''' adds a zoom factor.  
*'''--aspect-ratio <mode>''' forces source aspect ratio. Modes are 4x3, 16x9, ...
+
*'''--aspect-ratio &lt;mode&gt;''' forces source aspect ratio. Modes are 4x3, 16x9, ...  
*'''--spumargin <integer>''' forces SPU subtitles postion.
+
*'''--spumargin &lt;integer&gt;''' forces SPU subtitles postion.  
*'''--video-filter <string>''' adds video filters to the processing chain. You can add several filters, separated by commas
+
*'''--video-filter &lt;string&gt;''' adds video filters to the processing chain. You can add several filters, separated by commas  
*'''--sub-filter <string>''' adds video subpictures filter to the processing chain.
+
*'''--sub-filter &lt;string&gt;''' adds video subpictures filter to the processing chain.
  
====Desktop/Screen grab options====
+
==== Desktop/Screen grab options ====
  
You can see the various options for "grabbing the desktop" (VLC's built-in screen grabber capture device) by using the GUI. See http://forum.videolan.org/viewtopic.php?f=4&t=46971
+
You can see the various options for "grabbing the desktop" (VLC's built-in screen grabber capture device) by using the GUI. See http://forum.videolan.org/viewtopic.php?f=4&amp;t=46971  
  
====Playlist options====
+
==== Playlist options ====
  
*'''--random''' plays files randomly forever.
+
*'''--random''' plays files randomly forever.  
*'''--loop''' loops playlist on end.
+
*'''--loop''' loops playlist on end.  
*'''--repeat''' repeats current item until another item is forced
+
*'''--repeat''' repeats current item until another item is forced  
 
*'''--play-and-stop''' stops the playlist after each played item.
 
*'''--play-and-stop''' stops the playlist after each played item.
  
====Network options====
+
==== Network options ====
  
*'''--server-port <integer>''' sets server port.
+
*'''--server-port &lt;integer&gt;''' sets server port.  
*'''--iface <string>''' specifies the network interface to use.
+
*'''--iface &lt;string&gt;''' specifies the network interface to use.  
*'''--iface-addr <string>''' specifies your network interface IP address.
+
*'''--iface-addr &lt;string&gt;''' specifies your network interface IP address.  
*'''--mtu <integer>''' specifies the MTU of the network interface.
+
*'''--mtu &lt;integer&gt;''' specifies the MTU of the network interface.  
*'''--ipv6''' forces IPv6.
+
*'''--ipv6''' forces IPv6.  
 
*'''--ipv4''' forces IPv4.
 
*'''--ipv4''' forces IPv4.
  
====CPU options====
+
==== CPU options ====
  
You should probably not touch these options unless you know what you are doing.
+
You should probably not touch these options unless you know what you are doing.  
  
*'''--nommx''' disables the use of MMX CPU extensions.
+
*'''--nommx''' disables the use of MMX CPU extensions.  
*'''--no3dn''' disables the use of 3D Now! CPU extensions.
+
*'''--no3dn''' disables the use of 3D Now! CPU extensions.  
*'''--nommxext''' disables the use of MMX Ext CPU extensions.
+
*'''--nommxext''' disables the use of MMX Ext CPU extensions.  
*'''--nosse''' disables the use of SSE CPU extensions.
+
*'''--nosse''' disables the use of SSE CPU extensions.  
 
*'''--noaltivec''' disables the use of Altivec CPU extensions.
 
*'''--noaltivec''' disables the use of Altivec CPU extensions.
  
====Miscellaneous options====
+
==== Miscellaneous options ====
  
*'''--quiet''' deactivates all console messages.
+
*'''--quiet''' deactivates all console messages.  
*'''--color''' displays color messages.
+
*'''--color''' displays color messages.  
*'''--search-path <string>''' specifies interface default search path.
+
*'''--search-path &lt;string&gt;''' specifies interface default search path.  
*'''--plugin-path <string>''' specifies plugin search path.
+
*'''--plugin-path &lt;string&gt;''' specifies plugin search path.  
*'''--no-plugins-cache''' disables the plugin cache (plugins cache speeds up startup)
+
*'''--no-plugins-cache''' disables the plugin cache (plugins cache speeds up startup)  
*'''--dvd <string>''' specifies the default DVD device.
+
*'''--dvd &lt;string&gt;''' specifies the default DVD device.  
*'''--vcd <string>''' specifies the default VCD device.
+
*'''--vcd &lt;string&gt;''' specifies the default VCD device.  
*'''--program <integer>''' specifies program (SID) (for streams with several programs, like satellite ones).
+
*'''--program &lt;integer&gt;''' specifies program (SID) (for streams with several programs, like satellite ones).  
*'''--audio-type <integer>''' specifies the default audio type to use with dvds.
+
*'''--audio-type &lt;integer&gt;''' specifies the default audio type to use with dvds.  
*'''--audio-channel <integer>''' specifies the default audio channel to use with dvds.
+
*'''--audio-channel &lt;integer&gt;''' specifies the default audio channel to use with dvds.  
*'''--spu-channel <integer>''' specifies the default subtitle channel to use with dvds.
+
*'''--spu-channel &lt;integer&gt;''' specifies the default subtitle channel to use with dvds.  
*'''--version''' gives you information about the current VLC version.
+
*'''--version''' gives you information about the current VLC version.  
*'''--module <module> ''' displays help about specified module. (Shortcut: '''-p''')
+
*'''--module &lt;module&gt; ''' displays help about specified module. (Shortcut: '''-p''')
  
===Item-specific options===
+
=== Item-specific options ===
  
There are many options that are related to items (like '''--novideo''', '''--codec''', '''--fullscreen''').
+
There are many options that are related to items (like '''--novideo''', '''--codec''', '''--fullscreen''').  
  
For all of these, you have the possibility to make them item-specific, using ":" instead of "--" and putting the option just after the concerned item.
+
For all of these, you have the possibility to make them item-specific, using ":" instead of "--" and putting the option just after the concerned item.  
  
Examples:
+
Examples:  
 +
 
 +
% '''vlc file1.mpg&nbsp;:fullscreen file2.mpg'''
 +
 
 +
will play file1.mpg in fullscreen mode and file2.mpg in the default mode (which is generally no fullscreen), whereas
  
% '''vlc file1.mpg :fullscreen file2.mpg'''
 
will play file1.mpg in fullscreen mode and file2.mpg in the default mode (which is generally no fullscreen), whereas
 
 
  % '''vlc --fullscreen file1.mpg file2.mpg'''
 
  % '''vlc --fullscreen file1.mpg file2.mpg'''
will play both files in fullscreen mode
 
  
% '''vlc --fullscreen file1.mpg :sub-file=file1.srt :no-fullscreen file2.mpg :filter=distort'''
+
will play both files in fullscreen mode  
will play file1.mpg in windowed (no-fullscreen) mode with the subtitles file file1.srt and will play file2.mpg with video filter distort enabled in fullscreen mode (item-specific options override global options)
 
  
==Advanced use of filters==
+
% '''vlc --fullscreen file1.mpg&nbsp;:sub-file=file1.srt&nbsp;:no-fullscreen file2.mpg&nbsp;:filter=distort'''
  
===Filters===
+
will play file1.mpg in windowed (no-fullscreen) mode with the subtitles file file1.srt and will play file2.mpg with video filter distort enabled in fullscreen mode (item-specific options override global options).
  
These are the old style VLC filters. They only apply to on screen display and thus cannot be streamed.
+
== Advanced use of filters ==
  
====Deinterlacing video filter====
+
=== Filters ===
  
Module name: '''deinterlace'''
+
These are the old style VLC filters. They only apply to on screen display and thus cannot be streamed.
 +
 
 +
==== Deinterlacing video filter ====
 +
 
 +
Module name: '''deinterlace'''  
  
 
*'''--deinterlace-mode {discard,blend,mean,bob,linear}''' choose a deinterlacing mode.
 
*'''--deinterlace-mode {discard,blend,mean,bob,linear}''' choose a deinterlacing mode.
  
====Invert video filter====
+
==== Invert video filter ====
  
Module name: '''invert'''
+
Module name: '''invert'''  
  
====Image properties filter====
+
==== Image properties filter ====
  
Module name: '''adjust'''
+
Module name: '''adjust'''  
  
*'''--contrast <float>''' Image contrast in the 0-2 range.
+
*'''--contrast &lt;float&gt;''' Image contrast in the 0-2 range.  
*'''--brightness <float>''' Image brightness in the 0-2 range.
+
*'''--brightness &lt;float&gt;''' Image brightness in the 0-2 range.  
*'''--hue <integer>''' Image hue in the 0-360 range.
+
*'''--hue &lt;integer&gt;''' Image hue in the 0-360 range.  
*'''--saturation <float>''' Image saturation in the 0-3 range.
+
*'''--saturation &lt;float&gt;''' Image saturation in the 0-3 range.  
*'''-gamma <float>''' Image gamma in the 0-10 range.
+
*'''-gamma &lt;float&gt;''' Image gamma in the 0-10 range.
  
====Wall video filter====
+
==== Wall video filter ====
  
Module name: '''wall'''
+
Module name: '''wall'''  
  
This filter splits the output in several windows.
+
This filter splits the output in several windows.  
  
*'''--wall-cols <integer>''' Number of columns.
+
*'''--wall-cols &lt;integer&gt;''' Number of columns.  
*'''--wall-rows <integer>''' Number of rows.
+
*'''--wall-rows &lt;integer&gt;''' Number of rows.  
*'''--wall-active <string>''' Select the windows you want to display. To select windows 2 and 4 you would write '''--wall-active 2,4'''. When this option isn't specified, all windows are displayed.
+
*'''--wall-active &lt;string&gt;''' Select the windows you want to display. To select windows 2 and 4 you would write '''--wall-active 2,4'''. When this option isn't specified, all windows are displayed.
  
====Video transformation filter====
+
==== Video transformation filter ====
  
Module name: '''transform'''
+
Module name: '''transform'''  
  
 
*'''--transform-type {90,180,270,hflip,vflip}''' Select rotation angle or symmetry.
 
*'''--transform-type {90,180,270,hflip,vflip}''' Select rotation angle or symmetry.
  
====Distort video filter====
+
==== Distort video filter ====
  
Module name: '''distort'''
+
Module name: '''distort'''  
  
====Clone video filter====
+
==== Clone video filter ====
  
This filter clones the output window.
+
This filter clones the output window.  
  
Module name: '''clone'''
+
Module name: '''clone'''  
  
*'''--clone-count <integer>''' Number of clones.
+
*'''--clone-count &lt;integer&gt;''' Number of clones.  
*'''--clone-vout-list <string>''' Comma separated string of video output modules.
+
*'''--clone-vout-list &lt;string&gt;''' Comma separated string of video output modules.
  
====Crop video filter====
+
==== Crop video filter ====
  
Module name: '''crop'''
+
Module name: '''crop'''  
  
*'''--crop-geometry <string>''' Set the geometry of the zone to crop. This is set as <width> x <height> + <left offset> + <top offset>.
+
*'''--crop-geometry &lt;string&gt;''' Set the geometry of the zone to crop. This is set as &lt;width&gt; x &lt;height&gt; + &lt;left offset&gt; + &lt;top offset&gt;.  
 
*'''--autocrop''' Enable automatic black border cropping.
 
*'''--autocrop''' Enable automatic black border cropping.
  
====Motion blur filter====
+
==== Motion blur filter ====
  
Module name: '''motionblur'''
+
Module name: '''motionblur'''  
  
*'''blur-factor <integer>''' Blur factor in the 1-127 range.
+
*'''blur-factor &lt;integer&gt;''' Blur factor in the 1-127 range.
  
====Video pictures blending====
+
==== Video pictures blending ====
  
Module name: '''blend'''
+
Module name: '''blend'''  
  
====Video scaling filter====
+
==== Video scaling filter ====
  
Module name: '''scale'''
+
Module name: '''scale'''  
  
 +
<br>
  
===Subpictures Filters===
+
=== Subpictures Filters ===
  
These are the new VLC filters. They can be streamed.
+
These are the new VLC filters. They can be streamed.  
  
====Time display sub filter====
+
==== Time display sub filter ====
  
Module name: '''time'''
+
Module name: '''time'''  
  
*'''--time-format <string>''' Time format string. You can use the following special characters %Y = year, %m = month, %d = day, %H = hour, %M = minute, %S = second.
+
*'''--time-format &lt;string&gt;''' Time format string. You can use the following special characters&nbsp;%Y = year,&nbsp;%m = month,&nbsp;%d = day,&nbsp;%H = hour,&nbsp;%M = minute,&nbsp;%S = second.  
*'''--time-x <integer>''' X offset from the left in pixels.
+
*'''--time-x &lt;integer&gt;''' X offset from the left in pixels.  
*'''--time-y <integer>''' Y offset from the top in pixels.
+
*'''--time-y &lt;integer&gt;''' Y offset from the top in pixels.
  
====Marquee display sub filter====
+
==== Marquee display sub filter ====
  
Module name: '''marq'''
+
Module name: '''marq'''  
  
*'''--marq-marquee <string>''' Marquee text to display.
+
*'''--marq-marquee &lt;string&gt;''' Marquee text to display.  
*'''--marq-x <integer>''' X offset from the left in pixels.
+
*'''--marq-x &lt;integer&gt;''' X offset from the left in pixels.  
*'''--marq-y <integer>''' Y offset from the top in pixels.
+
*'''--marq-y &lt;integer&gt;''' Y offset from the top in pixels.  
*'''--marq-timeout <timeout>''' Defines the time the marquee must remain displayed in milliseconds. Default value is 0 (remain forever).
+
*'''--marq-timeout &lt;timeout&gt;''' Defines the time the marquee must remain displayed in milliseconds. Default value is 0 (remain forever).
  
====Logo video filter====
+
==== Logo video filter ====
  
Module name: '''logo'''
+
Module name: '''logo'''  
  
This filter can be used both as an old style filter or a subpictures filter.
+
This filter can be used both as an old style filter or a subpictures filter.  
  
*'''--logo-file <string>''' Full path of the PNG file to use.
+
*'''--logo-file &lt;string&gt;''' Full path of the PNG file to use.  
*'''--logo-x <integer>''' X offset from the left in pixels.
+
*'''--logo-x &lt;integer&gt;''' X offset from the left in pixels.  
*'''--logo-y <integer>''' Y offset from the top in pixels.
+
*'''--logo-y &lt;integer&gt;''' Y offset from the top in pixels.  
*'''--logo-transparency <integer>''' You can set the logo transparency value here (from 0 for full transparency to 255 for full opacity).
+
*'''--logo-transparency &lt;integer&gt;''' You can set the logo transparency value here (from 0 for full transparency to 255 for full opacity).
  
Note: You can move the logo by left-clicking on it.
+
Note: You can move the logo by left-clicking on it.  
  
 +
<br>
  
 +
== The HTTP interface ==
  
==The HTTP interface==
+
VLC ships with a little HTTP server integrated. It is used both to stream using HTTP, and for the HTTP remote control interface.
  
VLC ships with a little HTTP server integrated. It is used both to stream using HTTP, and for the HTTP remote control interface.
+
To start VLC with the HTTP interface, use:
  
To start VLC with the HTTP interface, use:
 
 
  % '''vlc -I http [--http-src /directory/] [--http-host host:port]'''
 
  % '''vlc -I http [--http-src /directory/] [--http-host host:port]'''
  
If you want to have both the "normal" interface and the HTTP interface, use '''vlc --extraintf http'''.
+
If you want to have both the "normal" interface and the HTTP interface, use '''vlc --extraintf http'''.  
  
The HTTP interface will start listening at host:port (<all interfaces>:8080 if omitted), and will reproduce the structure of /directory at http://host:port/ ( vlc_source_path/share/http if omitted ).
+
The HTTP interface will start listening at host:port (&lt;all interfaces&gt;:8080 if omitted), and will reproduce the structure of /directory at http://host:port/ ( vlc_source_path/share/http if omitted ).  
  
Use a browser to go to http://your_host_machine:port. You should be taken to the main page.
+
Use a browser to go to http://your_host_machine:port. You should be taken to the main page.  
  
VLC is shipped with a set of files that should be enough for generic needs. It is also possible to customize pages. See [[Documentation:Play_HowTo/Building_Pages_for_the_HTTP_Interface]].
+
VLC is shipped with a set of files that should be enough for generic needs. It is also possible to customize pages. See [[Documentation:Play HowTo/Building Pages for the HTTP Interface]].  
  
Available pages for 1.0.3 :
+
Available pages for 1.0.3&nbsp;:  
  
* http://host:port - Main Interface
+
*http://host:port - Main Interface  
* http://host:port/vlm.html - VLM Interface
+
*http://host:port/vlm.html - VLM Interface  
* http://host:port/mosaic.html - Mosaic Wizard
+
*http://host:port/mosaic.html - Mosaic Wizard  
* http://host:port/flash.html - Flash based remote playback
+
*http://host:port/flash.html - Flash based remote playback
  
==Other control interfaces==
+
== Other control interfaces ==
  
VLC includes a number of so-called interfaces that are not really interfaces, but means of controlling VLC. Nevertheless, they are enabled by setting them as interface or extra interface, either in the Preferences, in General/Interface, or using '''-I''' or '''--extraintf''' on the command line.
+
VLC includes a number of so-called interfaces that are not really interfaces, but means of controlling VLC. Nevertheless, they are enabled by setting them as interface or extra interface, either in the Preferences, in General/Interface, or using '''-I''' or '''--extraintf''' on the command line.  
  
===Hotkeys===
+
=== Hotkeys ===
  
This module allows you to control VLC and playback via hotkeys. It is always enabled by default. You can use hotkeys in the video output window, you can't in the audio dummy interface.
+
This module allows you to control VLC and playback via hotkeys. It is always enabled by default. You can use hotkeys in the video output window, you can't in the audio dummy interface.  
  
Hotkeys can be hacked by:
+
Hotkeys can be hacked by:  
  % '''vlc --key-<function> &lt;code&gt;'''
+
 
 +
  % '''vlc --key-&lt;function&gt; &lt;code&gt;'''
 +
 
 +
Code is composed by modifiers keys (Alt, Shift, Ctrl, Meta,Command) separated by a dash (-) and terminated by a key (a...z, +, =, -, ',', +, &lt;, &gt;, `, /,&nbsp;;, ', \, [, ], *, Left, Right, Up, Down, Space, Enter, F1...F12, Home, End, Menu, Esc, Page Up, Page Down, Tab, Backspace, Mouse Wheel Up and Mouse Wheel Down). Main controls are available from hotkeys, such as&nbsp;: fullscreen, play-pause, faster, slower, next, prev, stop, quit, vol-up, etc. (use the '''--longhelp''' option for full list of functions). For example, for binding fullscreen to Ctrl-f, run:
  
Code is composed by modifiers keys (Alt, Shift, Ctrl, Meta,Command) separated by a dash (-) and terminated by a key (a...z, +, =, -, ',', +, &lt;, &gt;, `, /, ;, ', \, [, ], *, Left, Right, Up, Down, Space, Enter, F1...F12, Home, End, Menu, Esc, Page Up, Page Down, Tab, Backspace, Mouse Wheel Up and Mouse Wheel Down). Main controls are available from hotkeys, such as : fullscreen, play-pause, faster, slower, next, prev, stop, quit, vol-up, etc. (use the '''--longhelp''' option for full list of functions).
 
For example, for binding fullscreen to Ctrl-f, run:
 
 
  % '''vlc --key-fullscreen 'Ctrl-f' '''
 
  % '''vlc --key-fullscreen 'Ctrl-f' '''
  
The list of the default hotkeys is available [[HotKeys|here]].
+
The list of the default hotkeys is available [[HotKeys|here]].  
  
===RC and RTCI===
+
=== RC and RTCI ===
  
These two interfaces allow you to control VLC from a command shell (possibly using a remote connexion or a Unix socket).
+
These two interfaces allow you to control VLC from a command shell (possibly using a remote connexion or a Unix socket).  
  
Start VLC with '''-I rc''' or '''--extraintf rc'''. When you get the '''Remote control interface initialized, `h' for help''' message, press h and Enter to get help about available commands.
+
Start VLC with '''-I rc''' or '''--extraintf rc'''. When you get the '''Remote control interface initialized, `h' for help''' message, press h and Enter to get help about available commands.  
  
To be able to remote connect to your VLC using a TCP socket (telnet-like connexion), use '''--rc-host your_host:port'''. Then, by connecting (using telnet or netcat) to the host on the given port, you will get the command shell.
+
To be able to remote connect to your VLC using a TCP socket (telnet-like connexion), use '''--rc-host your_host:port'''. Then, by connecting (using telnet or netcat) to the host on the given port, you will get the command shell.  
  
To use a UNIX socket (local socket, this does not work for Windows), use '''--rc-unix /path/to/socket'''. Commands can then be passed using this UNIX socket.
+
To use a UNIX socket (local socket, this does not work for Windows), use '''--rc-unix /path/to/socket'''. Commands can then be passed using this UNIX socket.  
  
The RTCI interface gives you more advanced options, such as marquee control for the marquee subpicture filter (See filter section).
+
The RTCI interface gives you more advanced options, such as marquee control for the marquee subpicture filter (See filter section).  
  
 +
<br>
  
===Ncurses===
+
=== Ncurses ===
  
This is a text interface, using ncurses library.
+
This is a text interface, using ncurses library.  
  
Start VLC with '''-I ncurses''' or '''--extraintf ncurses'''. You will then get something like that:
+
Start VLC with '''-I ncurses''' or '''--extraintf ncurses'''. You will then get something like that:  
  
http://www.videolan.org/doc/play-howto/en/images/play-howto/intf-ncurses-playlist.jpg The ncurses interface
+
http://www.videolan.org/doc/play-howto/en/images/play-howto/intf-ncurses-playlist.jpg The ncurses interface  
  
Press h to get the list of all available commands, with a short description.
+
Press h to get the list of all available commands, with a short description.  
  
There is also a filebrowser available for the ncurses interface in order to add playlist items. Press 'B' to use it.
+
There is also a filebrowser available for the ncurses interface in order to add playlist items. Press 'B' to use it.  
  
http://www.videolan.org/doc/play-howto/en/images/play-howto/intf-ncurses-filebrowser.jpg The ncurses filebrowser
+
http://www.videolan.org/doc/play-howto/en/images/play-howto/intf-ncurses-filebrowser.jpg The ncurses filebrowser  
  
You can set the filebrowser starting point by launching vlc with the '''--browse-dir''' option:
+
You can set the filebrowser starting point by launching vlc with the '''--browse-dir''' option:  
  
 
  % '''vlc -I ncurses --browse-dir /filebrowser/starting/point/'''
 
  % '''vlc -I ncurses --browse-dir /filebrowser/starting/point/'''
  
 +
<br>
  
===Gestures===
+
=== Gestures ===
 
 
Gestures provide a simple mouse gestures control. TODO
 
  
 +
Gestures provide a simple mouse gestures control. TODO
  
 +
<br>
  
==The Mozilla plugin==
+
== The Mozilla plugin ==
  
VLC can also be embedded in a web browser! The following browsers are supported [http://www.mozilla.org/ Mozilla], [http://www.mozilla.org/products/firefox/ Firefox] and [http://www.apple.com/macosx/features/safari Safari].
+
VLC can also be embedded in a web browser! The following browsers are supported [http://www.mozilla.org/ Mozilla], [http://www.mozilla.org/products/firefox/ Firefox] and [http://www.apple.com/macosx/features/safari Safari].  
  
===Install the plugin===
+
=== Install the plugin ===
  
====GNU/Linux Debian====
+
==== GNU/Linux Debian ====
  
Install the ''mozilla-plugin-vlc'' package:
+
Install the ''mozilla-plugin-vlc'' package:  
  
 
  # '''apt-get update'''
 
  # '''apt-get update'''
 
  # '''apt-get install mozilla-plugin-vlc'''
 
  # '''apt-get install mozilla-plugin-vlc'''
  
====Windows====
+
==== Windows ====
  
Quit Firefox or Mozilla.
+
Quit Firefox or Mozilla.  
  
 
Select the Mozilla Plugin option when installing VLC Media Player. The installer will then automatically detect your browser and install the plugin.  
 
Select the Mozilla Plugin option when installing VLC Media Player. The installer will then automatically detect your browser and install the plugin.  
  
Restart Firefox or Mozilla.
+
Restart Firefox or Mozilla.  
 +
 
 +
==== MacOS X ====
  
====MacOS X====
+
''The Mozilla/Safari plugin for MacOS X is only available from vlc version 0.8.5.1 and onwards.''
  
''The Mozilla/Safari plugin for MacOS X is only available from vlc version 0.8.5.1 and onwards.''
+
Quit Safari browser.  
  
Quit Safari browser.
+
Download the Mozilla/safari plugin package from [http://www.videolan.org/vlc/download-macosx.html MacOS X download page].  
  
Download the Mozilla/safari plugin package from [http://www.videolan.org/vlc/download-macosx.html MacOS X download page].
+
Run the installer from the dmg image.  
  
Run the installer from the dmg image.
+
<br>
  
 +
==== Compile the sources yourself ====
  
====Compile the sources yourself====
+
Please look at the [http://developers.videolan.org developers page] for information on how to do this.
  
Please look at the [http://developers.videolan.org developers page] for information on how to do this.
+
<br>
  
 +
=== Use the mozilla plugin ===
  
===Use the mozilla plugin===
+
If you open a link to a video file handled by the VLC plugin (To get the list of handled types, browse to '''about:plugins''') or a page with an embedded video, the plugin should open and read the video.
  
If you open a link to a video file handled by the VLC plugin (To get the list of handled types, browse to '''about:plugins''') or a page with an embedded video, the plugin should open and read the
+
See the [[Documentation:WebPlugin|documentation]] for building page for this plugin.  
video.
 
  
See the [[Documentation:WebPlugin|documentation]] for building page for this plugin.
+
{{Documentation}}
  
{{Documentation}}
+
= Snapshot Tool =
  
=Snapshot Tool=
 
 
Did you know you can use special codes to automatically generate filenames in the [[SnapshotTool|Snaphot Tool]]?
 
Did you know you can use special codes to automatically generate filenames in the [[SnapshotTool|Snaphot Tool]]?

Revision as of 04:01, 16 December 2010

VLC User Guide

Quick Start Guide
Installing VLC
History
Usage
Interface
Open Media
Audio
Video
Playback
Playlist
Subtitles
Video and Audio Filters
Snapshots
Hotkeys
Uninstalling VLC
Troubleshooting
Advanced usage
Using VLC inside a webpage
Command line
Alternative Interfaces
Misc

Appendix
Building Pages for the HTTP Interface
Format String
Building Lua Playlist Scripts
View this alone

Use the command line

TODO: completely outdated

All standard operations of VLC should be available from the GUI. However, some complex operations can only be done from the command line and there are situations in which you don't need or want a GUI. Here is the complete description of VLC's command line and how to use it.

You need to be quite comfortable with command line usage to use this.

Note: Windows users have to use the --option-name="value" syntax instead of the --option-name value syntax.

Getting help

VLC uses a modular structure. The core mainly manages communication between modules. All the multimedia processing is done by modules. There are input modules, demultiplexers, decoders, video output modules, ...

This chapter will only describe the "general" options, i.e. the core options. Each module adds new options. For example, the HTTP input module will add options for caching, proxy, authentication, ...

By using vlc --help, you will get the basic core options. vlc --longhelp will give all the basic options (core + modules). Adding --advanced will give the "advanced options" (for advanced users). So vlc --longhelp --advanced will give you all options. You can also append --help-verbose if you want more detailed help.

Also, you might want to get debug informations. To do this, use -v or -vv (this will show lower severity messages). If your console supports it, you can add --color to get messages in color.

Opening streams

The following commands start VLC and start reading the given element(s):

Opening a file

Start VLC with:

% vlc my_file

VLC should be able to recognize the file type. If it does not, you can force demultiplexer and decoder (see below).

A list of all video and audio codecs supported by VLC is available on the VLC features list.

Opening a DVD or VCD, or an audio CD

Start VLC with:

For a DVD with menus:

% vlc dvd://[device][@raw_device][@[title][:[chapter][:angle]]]

In most cases, vlc dvd:// or vlc dvd://[device] will do. [device] is for example /dev/dvd on GNU/Linux or D: on Windows (complete path to your DVD drive).

or

(DVD without menus):

% vlc dvdsimple://[device][@raw_device][@[title][:[chapter][:angle]]]

or

(VCD):

% vlc vcd://[device][@{E|P|E|T|S}[number]]

or

(Audio CD):

% vlc cdda://[device][@[track]]

Receiving a network stream

To receive an unicast RTP/UDP stream (sent by VLC's stream output), start VLC with:

% vlc  rtp://@:5004

If 5004 is the port to which packets are sent. 1234 is another commonly used port number. you use the default port (1234), vlc rtp:// will do. For more information, look at the Streaming Howto.

To receive an multicast UDP/RTP stream (sent by VLC's stream output), start VLC with:

% vlc rtp://@multicast_address:port

To receive a SSM (source specific multicast) stream, you can use:

% vlc rtp://server_address@multicast_address:port

This only works on OSs that support SSM (Windows XP and Linux).

To receive a HTTP stream, start VLC with:

% vlc http://www.example.org/your_file.mpg

To receive a RTSP stream, start VLC with:</para>

% vlc rtsp://www.example.org/your_stream

Modules selection

VLC always tries to select the most appropriate interface, input and output modules, among the ones available on the system, according to the stream it is given to read. However, you may wish to force the use of a specific module with the following options.

  • --intf <module> allows you to select the interface module.
  • --extraintf <module> allows you to select extra interface modules that will be launched in addition to the main one. This is mainly useful for special control interfaces, like HTTP, RC (Remote Control), ... (see below)
  • --aout <module> allows you to select the audio output module.
  • --vout <module> allows you to select the video output module.
  • --memcpy <module> allows you to choose a memory copy module. You should probably never touch that.

You can get a listing of the available modules by using vlc -l

Stream Output

The Stream output system allows vlc to become a streaming server.

For more details on the stream output system, please have a look at the Streaming HowTo.


Other Options

Audio options

  • --noaudio disables audio output. Note that if you are streaming (ex: to a file) this has no effect (streaming copies the audio verbatim). Use --sout-xxx instead (ex: --no-sout-audio)
  • --mono forces VLC to treat the stream in mono audio.
  • --volume <integer> sets the level of audio output (between 0 and 1024). Also only applies to local playback (like --noaudio).
  • --aout-rate <integer> sets the audio output frequency (Hz). By default, VLC will try to autodetect this.
  • --desync <integer> compensates desynchronization of audio (ms). (If audio and video streams are not synchronized, use this setting to delay the audio stream)
  • --audio-filter <string> adds audio filters to the processing chain. Available filters are visual (visualizer with spectrum analyzer and oscilloscope), headphone (virtual headphone patialization) and normalizer (volume normalizer)

Video options

  • --novideo disables video output.
  • --grayscale turns video output into grayscale mode.
  • --fullscreen ( or -f) sets fullscreen video.
  • --nooverlay disables hardware acceleration for the video output.
  • --width, --height <integer> sets the video window dimensions. By default, the video window size will be adjusted to match the video dimensions.
  • --start-time <integer> starts the video here; the integer is the number of seconds from the beginning (e.g. 1:30 is written as 90)
  • --stop-time <integer> stops the video here; the integer is the number of seconds from the beginning (e.g. 1:30 is written as 90)
  • --zoom <float> adds a zoom factor.
  • --aspect-ratio <mode> forces source aspect ratio. Modes are 4x3, 16x9, ...
  • --spumargin <integer> forces SPU subtitles postion.
  • --video-filter <string> adds video filters to the processing chain. You can add several filters, separated by commas
  • --sub-filter <string> adds video subpictures filter to the processing chain.

Desktop/Screen grab options

You can see the various options for "grabbing the desktop" (VLC's built-in screen grabber capture device) by using the GUI. See http://forum.videolan.org/viewtopic.php?f=4&t=46971

Playlist options

  • --random plays files randomly forever.
  • --loop loops playlist on end.
  • --repeat repeats current item until another item is forced
  • --play-and-stop stops the playlist after each played item.

Network options

  • --server-port <integer> sets server port.
  • --iface <string> specifies the network interface to use.
  • --iface-addr <string> specifies your network interface IP address.
  • --mtu <integer> specifies the MTU of the network interface.
  • --ipv6 forces IPv6.
  • --ipv4 forces IPv4.

CPU options

You should probably not touch these options unless you know what you are doing.

  • --nommx disables the use of MMX CPU extensions.
  • --no3dn disables the use of 3D Now! CPU extensions.
  • --nommxext disables the use of MMX Ext CPU extensions.
  • --nosse disables the use of SSE CPU extensions.
  • --noaltivec disables the use of Altivec CPU extensions.

Miscellaneous options

  • --quiet deactivates all console messages.
  • --color displays color messages.
  • --search-path <string> specifies interface default search path.
  • --plugin-path <string> specifies plugin search path.
  • --no-plugins-cache disables the plugin cache (plugins cache speeds up startup)
  • --dvd <string> specifies the default DVD device.
  • --vcd <string> specifies the default VCD device.
  • --program <integer> specifies program (SID) (for streams with several programs, like satellite ones).
  • --audio-type <integer> specifies the default audio type to use with dvds.
  • --audio-channel <integer> specifies the default audio channel to use with dvds.
  • --spu-channel <integer> specifies the default subtitle channel to use with dvds.
  • --version gives you information about the current VLC version.
  • --module <module> displays help about specified module. (Shortcut: -p)

Item-specific options

There are many options that are related to items (like --novideo, --codec, --fullscreen).

For all of these, you have the possibility to make them item-specific, using ":" instead of "--" and putting the option just after the concerned item.

Examples:

% vlc file1.mpg :fullscreen file2.mpg

will play file1.mpg in fullscreen mode and file2.mpg in the default mode (which is generally no fullscreen), whereas

% vlc --fullscreen file1.mpg file2.mpg

will play both files in fullscreen mode

% vlc --fullscreen file1.mpg :sub-file=file1.srt :no-fullscreen file2.mpg :filter=distort

will play file1.mpg in windowed (no-fullscreen) mode with the subtitles file file1.srt and will play file2.mpg with video filter distort enabled in fullscreen mode (item-specific options override global options).

Advanced use of filters

Filters

These are the old style VLC filters. They only apply to on screen display and thus cannot be streamed.

Deinterlacing video filter

Module name: deinterlace

  • --deinterlace-mode {discard,blend,mean,bob,linear} choose a deinterlacing mode.

Invert video filter

Module name: invert

Image properties filter

Module name: adjust

  • --contrast <float> Image contrast in the 0-2 range.
  • --brightness <float> Image brightness in the 0-2 range.
  • --hue <integer> Image hue in the 0-360 range.
  • --saturation <float> Image saturation in the 0-3 range.
  • -gamma <float> Image gamma in the 0-10 range.

Wall video filter

Module name: wall

This filter splits the output in several windows.

  • --wall-cols <integer> Number of columns.
  • --wall-rows <integer> Number of rows.
  • --wall-active <string> Select the windows you want to display. To select windows 2 and 4 you would write --wall-active 2,4. When this option isn't specified, all windows are displayed.

Video transformation filter

Module name: transform

  • --transform-type {90,180,270,hflip,vflip} Select rotation angle or symmetry.

Distort video filter

Module name: distort

Clone video filter

This filter clones the output window.

Module name: clone

  • --clone-count <integer> Number of clones.
  • --clone-vout-list <string> Comma separated string of video output modules.

Crop video filter

Module name: crop

  • --crop-geometry <string> Set the geometry of the zone to crop. This is set as <width> x <height> + <left offset> + <top offset>.
  • --autocrop Enable automatic black border cropping.

Motion blur filter

Module name: motionblur

  • blur-factor <integer> Blur factor in the 1-127 range.

Video pictures blending

Module name: blend

Video scaling filter

Module name: scale


Subpictures Filters

These are the new VLC filters. They can be streamed.

Time display sub filter

Module name: time

  • --time-format <string> Time format string. You can use the following special characters %Y = year, %m = month, %d = day, %H = hour, %M = minute, %S = second.
  • --time-x <integer> X offset from the left in pixels.
  • --time-y <integer> Y offset from the top in pixels.

Marquee display sub filter

Module name: marq

  • --marq-marquee <string> Marquee text to display.
  • --marq-x <integer> X offset from the left in pixels.
  • --marq-y <integer> Y offset from the top in pixels.
  • --marq-timeout <timeout> Defines the time the marquee must remain displayed in milliseconds. Default value is 0 (remain forever).

Logo video filter

Module name: logo

This filter can be used both as an old style filter or a subpictures filter.

  • --logo-file <string> Full path of the PNG file to use.
  • --logo-x <integer> X offset from the left in pixels.
  • --logo-y <integer> Y offset from the top in pixels.
  • --logo-transparency <integer> You can set the logo transparency value here (from 0 for full transparency to 255 for full opacity).

Note: You can move the logo by left-clicking on it.


The HTTP interface

VLC ships with a little HTTP server integrated. It is used both to stream using HTTP, and for the HTTP remote control interface.

To start VLC with the HTTP interface, use:

% vlc -I http [--http-src /directory/] [--http-host host:port]

If you want to have both the "normal" interface and the HTTP interface, use vlc --extraintf http.

The HTTP interface will start listening at host:port (<all interfaces>:8080 if omitted), and will reproduce the structure of /directory at http://host:port/ ( vlc_source_path/share/http if omitted ).

Use a browser to go to http://your_host_machine:port. You should be taken to the main page.

VLC is shipped with a set of files that should be enough for generic needs. It is also possible to customize pages. See Documentation:Play HowTo/Building Pages for the HTTP Interface.

Available pages for 1.0.3 :

Other control interfaces

VLC includes a number of so-called interfaces that are not really interfaces, but means of controlling VLC. Nevertheless, they are enabled by setting them as interface or extra interface, either in the Preferences, in General/Interface, or using -I or --extraintf on the command line.

Hotkeys

This module allows you to control VLC and playback via hotkeys. It is always enabled by default. You can use hotkeys in the video output window, you can't in the audio dummy interface.

Hotkeys can be hacked by:

% vlc --key-<function> <code>

Code is composed by modifiers keys (Alt, Shift, Ctrl, Meta,Command) separated by a dash (-) and terminated by a key (a...z, +, =, -, ',', +, <, >, `, /, ;, ', \, [, ], *, Left, Right, Up, Down, Space, Enter, F1...F12, Home, End, Menu, Esc, Page Up, Page Down, Tab, Backspace, Mouse Wheel Up and Mouse Wheel Down). Main controls are available from hotkeys, such as : fullscreen, play-pause, faster, slower, next, prev, stop, quit, vol-up, etc. (use the --longhelp option for full list of functions). For example, for binding fullscreen to Ctrl-f, run:

% vlc --key-fullscreen 'Ctrl-f' 

The list of the default hotkeys is available here.

RC and RTCI

These two interfaces allow you to control VLC from a command shell (possibly using a remote connexion or a Unix socket).

Start VLC with -I rc or --extraintf rc. When you get the Remote control interface initialized, `h' for help message, press h and Enter to get help about available commands.

To be able to remote connect to your VLC using a TCP socket (telnet-like connexion), use --rc-host your_host:port. Then, by connecting (using telnet or netcat) to the host on the given port, you will get the command shell.

To use a UNIX socket (local socket, this does not work for Windows), use --rc-unix /path/to/socket. Commands can then be passed using this UNIX socket.

The RTCI interface gives you more advanced options, such as marquee control for the marquee subpicture filter (See filter section).


Ncurses

This is a text interface, using ncurses library.

Start VLC with -I ncurses or --extraintf ncurses. You will then get something like that:

intf-ncurses-playlist.jpg The ncurses interface

Press h to get the list of all available commands, with a short description.

There is also a filebrowser available for the ncurses interface in order to add playlist items. Press 'B' to use it.

intf-ncurses-filebrowser.jpg The ncurses filebrowser

You can set the filebrowser starting point by launching vlc with the --browse-dir option:

% vlc -I ncurses --browse-dir /filebrowser/starting/point/


Gestures

Gestures provide a simple mouse gestures control. TODO


The Mozilla plugin

VLC can also be embedded in a web browser! The following browsers are supported Mozilla, Firefox and Safari.

Install the plugin

GNU/Linux Debian

Install the mozilla-plugin-vlc package:

# apt-get update
# apt-get install mozilla-plugin-vlc

Windows

Quit Firefox or Mozilla.

Select the Mozilla Plugin option when installing VLC Media Player. The installer will then automatically detect your browser and install the plugin.

Restart Firefox or Mozilla.

MacOS X

The Mozilla/Safari plugin for MacOS X is only available from vlc version 0.8.5.1 and onwards.

Quit Safari browser.

Download the Mozilla/safari plugin package from MacOS X download page.

Run the installer from the dmg image.


Compile the sources yourself

Please look at the developers page for information on how to do this.


Use the mozilla plugin

If you open a link to a video file handled by the VLC plugin (To get the list of handled types, browse to about:plugins) or a page with an embedded video, the plugin should open and read the video.

See the documentation for building page for this plugin.

This page is part of official VLC media player Documentation (User GuideStreaming HowToHacker GuideModules)
Please read the Documentation Editing Guidelines before you edit the documentation
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.


Snapshot Tool

Did you know you can use special codes to automatically generate filenames in the Snaphot Tool?