# include "config.h"
#endif
-#include <vlc/vlc.h>
+#include <vlc_common.h>
+#include <vlc_plugin.h>
#include "libvlc.h"
//#define Nothing here, this is just to prevent update-po from being stupid
#include "vlc_meta.h"
#if defined (WIN32) || defined (__APPLE__)
-static const char *ppsz_language[] =
+static const char *const ppsz_language[] =
{
"auto",
"en",
"ar",
"pt_BR",
"en_GB",
+ "bg",
"ca",
"zh_TW",
"cs",
"oc",
"fa",
"pl",
+ "pt_PT",
+ "pa",
"ro",
"ru",
"zh_CN",
+ "sr",
"sk",
"sl",
"es",
"tr"
};
-static const char *ppsz_language_text[] =
+static const char *const ppsz_language_text[] =
{
N_("Auto"),
N_("American English"),
N_("Arabic"),
N_("Brazilian Portuguese"),
N_("British English"),
+ N_("Bulgarian"),
N_("Catalan"),
N_("Chinese Traditional"),
N_("Czech"),
N_("Occitan"),
N_("Persian"),
N_("Polish"),
+ N_("Portuguese"),
+ N_("Punjabi"),
N_("Romanian"),
N_("Russian"),
N_("Simplified Chinese"),
+ N_("Serbian"),
N_("Slovak"),
N_("Slovenian"),
N_("Spanish"),
};
#endif
-static const char *ppsz_snap_formats[] =
+static const char *const ppsz_snap_formats[] =
{ "png", "jpg" };
/*****************************************************************************
"This is the verbosity level (0=only errors and " \
"standard messages, 1=warnings, 2=debug).")
+#define VERBOSE_OBJECTS_TEXT N_("Choose which objects should print debug " \
+ "message")
+#define VERBOSE_OBJECTS_LONGTEXT N_( \
+ "This is a ',' separated string, each objects should be prefixed by " \
+ "a '+' or a '-' to respectively enable or disable it. The keyword " \
+ "'all' refers to all objects. Objects can be refered to by their " \
+ "type or module name. Rules applying to named objects take precendence " \
+ "over rules applying to object types. Note that you still need to " \
+ "use -vvv to actually display debug message.")
+
#define QUIET_TEXT N_("Be quiet")
#define QUIET_LONGTEXT N_( \
"Turn off all warning and information messages.")
"You can completely disable the audio output. The audio " \
"decoding stage will not take place, thus saving some processing power.")
+#if 0
#define MONO_TEXT N_("Force mono audio")
#define MONO_LONGTEXT N_("This will force a mono audio output.")
+#endif
#define VOLUME_TEXT N_("Default audio volume")
#define VOLUME_LONGTEXT N_( \
"not actually encoded with Dolby Surround, turning on this option might "\
"enhance your experience, especially when combined with the Headphone "\
"Channel Mixer." )
-static int pi_force_dolby_values[] = { 0, 1, 2 };
-static const char *ppsz_force_dolby_descriptions[] = { N_("Auto"), N_("On"), N_("Off") };
+static const int pi_force_dolby_values[] = { 0, 1, 2 };
+static const char *const ppsz_force_dolby_descriptions[] = {
+ N_("Auto"), N_("On"), N_("Off") };
#define AUDIO_FILTER_TEXT N_("Audio filters")
#define AUDIO_REPLAY_GAIN_PEAK_PROTECTION_LONGTEXT N_( \
"Protect against sound clipping" )
-static const char *ppsz_replay_gain_mode[] = { "none", "track", "album" };
-static const char *ppsz_replay_gain_mode_text[] = { N_("None"), N_("Track"), N_("Album") };
+#define AUDIO_TIME_STRETCH_TEXT N_( \
+ "Enable time streching audio" )
+#define AUDIO_TIME_STRETCH_LONGTEXT N_( \
+ "This allows to play audio at lower or higher speed without" \
+ "affecting the audio pitch" )
+
+
+static const char *const ppsz_replay_gain_mode[] = {
+ "none", "track", "album" };
+static const char *const ppsz_replay_gain_mode_text[] = {
+ N_("None"), N_("Track"), N_("Album") };
/*****************************************************************************
* Video
"Enforce the alignment of the video in its window. By default (0) it " \
"will be centered (0=center, 1=left, 2=right, 4=top, 8=bottom, you can " \
"also use combinations of these values, like 6=4+2 meaning top-right).")
-static int pi_align_values[] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 };
-static const char *ppsz_align_descriptions[] =
+static const int pi_align_values[] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 };
+static const char *const ppsz_align_descriptions[] =
{ N_("Center"), N_("Left"), N_("Right"), N_("Top"), N_("Bottom"),
N_("Top-Left"), N_("Top-Right"), N_("Bottom-Left"), N_("Bottom-Right") };
#define VIDEO_ON_TOP_LONGTEXT N_( \
"Always place the video window on top of other windows." )
-#define VIDEO_TITLE_SHOW_TEXT N_("Show media title on video.")
+#define VIDEO_TITLE_SHOW_TEXT N_("Show media title on video")
#define VIDEO_TITLE_SHOW_LONGTEXT N_( \
"Display the title of the video on top of the movie.")
-#define VIDEO_TITLE_TIMEOUT_TEXT N_("Show video title for x miliseconds.")
+#define VIDEO_TITLE_TIMEOUT_TEXT N_("Show video title for x milliseconds")
#define VIDEO_TITLE_TIMEOUT_LONGTEXT N_( \
- "Show the video title for n miliseconds, default is 5000 ms (5 sec.)")
+ "Show the video title for n milliseconds, default is 5000 ms (5 sec.)")
-#define VIDEO_TITLE_POSITION_TEXT N_("Position of video title.")
+#define VIDEO_TITLE_POSITION_TEXT N_("Position of video title")
#define VIDEO_TITLE_POSITION_LONGTEXT N_( \
"Place on video where to display the title (default bottom center).")
#define MOUSE_HIDE_TIMEOUT_TEXT N_("Hide cursor and fullscreen " \
- "controller after x miliseconds.")
+ "controller after x milliseconds")
#define MOUSE_HIDE_TIMEOUT_LONGTEXT N_( \
"Hide mouse cursor and fullscreen controller after " \
- "n miliseconds, default is 3000 ms (3 sec.)")
+ "n milliseconds, default is 3000 ms (3 sec.)")
-static int pi_pos_values[] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 };
-static const char *ppsz_pos_descriptions[] =
+static const int pi_pos_values[] = { 0, 1, 2, 4, 8, 5, 6, 9, 10 };
+static const char *const ppsz_pos_descriptions[] =
{ N_("Center"), N_("Left"), N_("Right"), N_("Top"), N_("Bottom"),
N_("Top-Left"), N_("Top-Right"), N_("Bottom-Left"), N_("Bottom-Right") };
#define SS_TEXT N_("Disable screensaver")
#define SS_LONGTEXT N_("Disable the screensaver during video playback." )
-#define INHIBIT_TEXT N_("Inhibits the power management daemon during playback.")
+#define INHIBIT_TEXT N_("Inhibit the power management daemon during playback")
#define INHIBIT_LONGTEXT N_("Inhibits the power management daemon during any " \
"playback, to avoid the computer being suspended because of inactivity.")
#define VOUT_FILTER_TEXT N_("Video output filter module")
#define VOUT_FILTER_LONGTEXT N_( \
- "This adds post-processing filters to enhance the " \
- "picture quality, for instance deinterlacing, or to clone or distort " \
- "the video window.")
+ "This adds video output filters like clone or wall" )
#define VIDEO_FILTER_TEXT N_("Video filter module")
#define VIDEO_FILTER_LONGTEXT N_( \
"synchronise clocks for server and client. The detailed settings " \
"are available in Advanced / Network Sync." )
-static int pi_clock_values[] = { -1, 0, 1 };
-static const char *ppsz_clock_descriptions[] =
+static const int pi_clock_values[] = { -1, 0, 1 };
+static const char *const ppsz_clock_descriptions[] =
{ N_("Default"), N_("Disable"), N_("Enable") };
#define SERVER_PORT_TEXT N_("UDP port")
#define INPUT_SUBTRACK_LANG_TEXT N_("Subtitle language")
#define INPUT_SUBTRACK_LANG_LONGTEXT N_( \
"Language of the subtitle track you want to use " \
- "(comma separated, two or tree letter country code).")
+ "(comma separated, two or three letters country code).")
/// \todo Document how to find it
#define INPUT_AUDIOTRACK_ID_TEXT N_("Audio track ID")
"the form \"{name=bookmark-name,time=optional-time-offset," \
"bytes=optional-byte-offset},{...}\"")
+#define INPUT_RECORD_PATH_TEXT N_("Record directory or filename")
+#define INPUT_RECORD_PATH_LONGTEXT N_( \
+ "Directory or filename where the records will be stored" )
+
+#define INPUT_RECORD_NATIVE_TEXT N_("Prefer native stream recording")
+#define INPUT_RECORD_NATIVE_LONGTEXT N_( \
+ "When possible, the input stream will be recorded instead of using" \
+ "the stream output module" )
+
// DEPRECATED
#define SUB_CAT_LONGTEXT N_( \
"These options allow you to modify the behavior of the subpictures " \
#define SUB_FILTER_TEXT N_("Subpictures filter module")
#define SUB_FILTER_LONGTEXT N_( \
"This adds so-called \"subpicture filters\". These filters overlay " \
- "some images or text over the video (like a logo, arbitrary text...)." )
+ "some images or text over the video (like a logo, arbitrary text, ...)." )
#define SUB_AUTO_TEXT N_("Autodetect subtitle files")
#define SUB_AUTO_LONGTEXT N_( \
"This allows you to select a list of encoders that VLC will use in " \
"priority.")
-#define SYSTEM_CODEC_TEXT N_("Prefer system plugins over vlc")
+#define SYSTEM_CODEC_TEXT N_("Prefer system plugins over VLC")
#define SYSTEM_CODEC_LONGTEXT N_( \
"Indicates whether VLC will prefer native plugins installed " \
"on system over VLC owns plugins whenever a choice is available." )
#define MINIMIZE_THREADS_LONGTEXT N_( \
"This option minimizes the number of threads needed to run VLC.")
+#define USE_STREAM_IMMEDIATE N_("(Experimental) Don't do caching at the access level.")
+#define USE_STREAM_IMMEDIATE_LONGTEXT N_( \
+ "This option is useful if you want to lower the latency when " \
+ "reading a stream")
+
+#define AUTO_ADJUST_PTS_DELAY N_("(Experimental) Minimize latency when" \
+ "reading live stream.")
+#define AUTO_ADJUST_PTS_DELAY_LONGTEXT N_( \
+ "This option is useful if you want to lower the latency when " \
+ "reading a stream")
+
#define PLUGIN_PATH_TEXT N_("Modules search path")
#define PLUGIN_PATH_LONGTEXT N_( \
"Additional path for VLC to look for its modules. You can add " \
- "several paths by concatenating them using " PATH_SEP " as separator")
+ "several paths by concatenating them using \" PATH_SEP \" as separator")
#define VLM_CONF_TEXT N_("VLM configuration file")
#define VLM_CONF_LONGTEXT N_( \
#define SYSLOG_LONGTEXT N_( \
"Log all VLC messages to syslog (UNIX systems)." )
-#define ONEINSTANCE_WIN_TEXT N_("Allow only one running instance")
-#define ONEINSTANCE_WIN_LONGTEXT N_( \
+#define ONEINSTANCE_TEXT N_("Allow only one running instance")
+#if defined( WIN32 )
+#define ONEINSTANCE_LONGTEXT N_( \
"Allowing only one running instance of VLC can sometimes be useful, " \
"for example if you associated VLC with some media types and you " \
"don't want a new instance of VLC to be opened each time you " \
"double-click on a file in the explorer. This option will allow you " \
"to play the file with the already running instance or enqueue it.")
-
-#define ONEINSTANCE_DBUS_TEXT ONEINSTANCE_WIN_TEXT
-#define ONEINSTANCE_DBUS_LONGTEXT N_( \
+#elif defined( HAVE_DBUS )
+#define ONEINSTANCE_LONGTEXT N_( \
"Allowing only one running instance of VLC can sometimes be useful, " \
"for example if you associated VLC with some media types and you " \
"don't want a new instance of VLC to be opened each time you " \
"open a file in your file manager. This option will allow you " \
"to play the file with the already running instance or enqueue it. " \
- "This option require the D-Bus session daemon to be active " \
+ "This option requires the D-Bus session daemon to be active " \
"and the running instance of VLC to use D-Bus control interface.")
+#endif
#define STARTEDFROMFILE_TEXT N_("VLC is started from file association")
#define STARTEDFROMFILE_LONGTEXT N_( \
"Automatically preparse files added to the playlist " \
"(to retrieve some metadata)." )
-#define FETCH_META_TEXT N_( "Authorise meta information fetching" )
-#define FETCH_META_LONGTEXT N_( \
- "Specify if you want to attempt to fetch files'"\
- "meta informations using the network." )
-
#define ALBUM_ART_TEXT N_( "Album art policy" )
#define ALBUM_ART_LONGTEXT N_( \
"Choose how album art will be downloaded." )
-static int pi_albumart_values[] = { ALBUM_ART_WHEN_ASKED,
- ALBUM_ART_WHEN_PLAYED,
- ALBUM_ART_ALL };
-static const char *ppsz_albumart_descriptions[] =
+static const int pi_albumart_values[] = { ALBUM_ART_WHEN_ASKED,
+ ALBUM_ART_WHEN_PLAYED,
+ ALBUM_ART_ALL };
+static const char *const ppsz_albumart_descriptions[] =
{ N_("Manual download only"),
N_("When track starts playing"),
N_("As soon as track is added") };
"video output for the time being." )
#define MENU_ON_KEY_TEXT N_("Display OSD menu on top of video output")
-#define MENU_ON_KEY_LONGTEXT N_("Display OSDmenu on top of video output")
+#define MENU_ON_KEY_LONGTEXT N_("Display OSD menu on top of video output")
#define MENU_OFF_KEY_TEXT N_("Do not display OSD menu on video output")
-#define MENU_OFF_KEY_LONGTEXT N_("Do not display OSDmenu on top of video output")
+#define MENU_OFF_KEY_LONGTEXT N_("Do not display OSD menu on top of video output")
#define MENU_RIGHT_KEY_TEXT N_("Highlight widget on the right")
#define MENU_RIGHT_KEY_LONGTEXT N_( \
"Move OSD menu highlight to the widget on the right")
add_category_hint( N_("Audio"), AOUT_CAT_LONGTEXT , false );
add_bool( "audio", 1, NULL, AUDIO_TEXT, AUDIO_LONGTEXT, false );
+ change_safe();
add_integer_with_range( "volume", AOUT_VOLUME_DEFAULT, AOUT_VOLUME_MIN,
AOUT_VOLUME_MAX, NULL, VOLUME_TEXT,
VOLUME_LONGTEXT, false );
add_bool( "spdif", 0, NULL, SPDIF_TEXT, SPDIF_LONGTEXT, false );
add_integer( "force-dolby-surround", 0, NULL, FORCE_DOLBY_TEXT,
FORCE_DOLBY_LONGTEXT, false );
- change_integer_list( pi_force_dolby_values, ppsz_force_dolby_descriptions, 0 );
+ change_integer_list( pi_force_dolby_values, ppsz_force_dolby_descriptions, NULL );
add_integer( "audio-desync", 0, NULL, DESYNC_TEXT,
DESYNC_LONGTEXT, true );
+ change_safe();
/* FIXME TODO create a subcat replay gain ? */
add_string( "audio-replay-gain-mode", ppsz_replay_gain_mode[0], NULL, AUDIO_REPLAY_GAIN_MODE_TEXT,
add_bool( "audio-replay-gain-peak-protection", true, NULL,
AUDIO_REPLAY_GAIN_PEAK_PROTECTION_TEXT, AUDIO_REPLAY_GAIN_PEAK_PROTECTION_LONGTEXT, true );
+ add_bool( "audio-time-stretch", true, NULL,
+ AUDIO_TIME_STRETCH_TEXT, AUDIO_TIME_STRETCH_LONGTEXT, false );
+
set_subcategory( SUBCAT_AUDIO_AOUT );
add_module( "aout", "audio output", NULL, NULL, AOUT_TEXT, AOUT_LONGTEXT,
true );
add_category_hint( N_("Video"), VOUT_CAT_LONGTEXT , false );
add_bool( "video", 1, NULL, VIDEO_TEXT, VIDEO_LONGTEXT, true );
+ change_safe();
add_bool( "grayscale", 0, NULL, GRAYSCALE_TEXT,
GRAYSCALE_LONGTEXT, true );
add_bool( "fullscreen", 0, NULL, FULLSCREEN_TEXT,
FULLSCREEN_LONGTEXT, false );
change_short('f');
+ change_safe();
add_bool( "embedded-video", 1, NULL, EMBEDDED_TEXT, EMBEDDED_LONGTEXT,
true );
#ifdef __APPLE__
VIDEO_TITLE_TIMEOUT_LONGTEXT, false );
add_integer( "video-title-position", 8, NULL, VIDEO_TITLE_POSITION_TEXT,
VIDEO_TITLE_POSITION_LONGTEXT, false );
- // autohide after 3s
- add_integer( "mouse-hide-timeout", 3000, NULL, MOUSE_HIDE_TIMEOUT_TEXT,
+ change_integer_list( pi_pos_values, ppsz_pos_descriptions, NULL );
+ // autohide after 1.5s
+ add_integer( "mouse-hide-timeout", 1500, NULL, MOUSE_HIDE_TIMEOUT_TEXT,
MOUSE_HIDE_TIMEOUT_LONGTEXT, false );
- change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
-
set_section( N_("Snapshot") , NULL );
add_directory( "snapshot-path", NULL, NULL, SNAP_PATH_TEXT,
SNAP_PATH_LONGTEXT, false );
- change_unsafe();
add_string( "snapshot-prefix", "vlcsnap-", NULL, SNAP_PREFIX_TEXT,
SNAP_PREFIX_LONGTEXT, false );
add_string( "snapshot-format", "png", NULL, SNAP_FORMAT_TEXT,
set_section( N_("Window properties" ), NULL );
add_integer( "width", -1, NULL, WIDTH_TEXT, WIDTH_LONGTEXT, true );
+ change_safe();
add_integer( "height", -1, NULL, HEIGHT_TEXT, HEIGHT_LONGTEXT, true );
+ change_safe();
add_integer( "video-x", -1, NULL, VIDEOX_TEXT, VIDEOX_LONGTEXT, true );
+ change_safe();
add_integer( "video-y", -1, NULL, VIDEOY_TEXT, VIDEOY_LONGTEXT, true );
+ change_safe();
add_string( "crop", NULL, NULL, CROP_TEXT, CROP_LONGTEXT, false );
+ change_safe();
add_string( "custom-crop-ratios", NULL, NULL, CUSTOM_CROP_RATIOS_TEXT,
CUSTOM_CROP_RATIOS_LONGTEXT, false );
add_string( "aspect-ratio", NULL, NULL,
ASPECT_RATIO_TEXT, ASPECT_RATIO_LONGTEXT, false );
+ change_safe();
add_string( "monitor-par", NULL, NULL,
MASPECT_RATIO_TEXT, MASPECT_RATIO_LONGTEXT, true );
add_string( "custom-aspect-ratios", NULL, NULL, CUSTOM_ASPECT_RATIOS_TEXT,
add_string( "video-title", NULL, NULL, VIDEO_TITLE_TEXT,
VIDEO_TITLE_LONGTEXT, true );
add_integer( "align", 0, NULL, ALIGN_TEXT, ALIGN_LONGTEXT, true );
- change_integer_list( pi_align_values, ppsz_align_descriptions, 0 );
+ change_integer_list( pi_align_values, ppsz_align_descriptions, NULL );
add_float( "zoom", 1, NULL, ZOOM_TEXT, ZOOM_LONGTEXT, true );
add_module_list_cat( "video-filter", SUBCAT_VIDEO_VFILTER, NULL, NULL,
VIDEO_FILTER_TEXT, VIDEO_FILTER_LONGTEXT, false );
add_deprecated_alias( "filter" ); /*deprecated since 0.8.2 */
-// add_deprecated_alias( "vout-filter" ); /* deprecated since 0.8.6 *// While the "video-filter" chain isn't parsed for both vfilter and vfilter2, keep both options
add_module_list_cat( "vout-filter", SUBCAT_VIDEO_VFILTER, NULL, NULL,
- NULL, NULL, false );
+ VOUT_FILTER_TEXT, VOUT_FILTER_LONGTEXT, false );
#if 0
add_string( "pixel-ratio", "1", NULL, PIXEL_RATIO_TEXT, PIXEL_RATIO_TEXT );
#endif
add_category_hint( N_("Subpictures"), SUB_CAT_LONGTEXT , false );
add_bool( "spu", 1, NULL, SPU_TEXT, SPU_LONGTEXT, true );
+ change_safe();
add_bool( "osd", 1, NULL, OSD_TEXT, OSD_LONGTEXT, false );
add_module( "text-renderer", "text renderer", NULL, NULL, TEXTRENDERER_TEXT,
TEXTRENDERER_LONGTEXT, true );
set_section( N_( "Track settings" ), NULL );
add_integer( "program", 0, NULL,
INPUT_PROGRAM_TEXT, INPUT_PROGRAM_LONGTEXT, true );
+ change_safe();
add_string( "programs", "", NULL,
INPUT_PROGRAMS_TEXT, INPUT_PROGRAMS_LONGTEXT, true );
+ change_safe();
add_integer( "audio-track", -1, NULL,
INPUT_AUDIOTRACK_TEXT, INPUT_AUDIOTRACK_LONGTEXT, true );
- add_deprecated_alias( "audio-channel" ); /*deprecated since 0.8.2 */
+ change_safe();
+ add_deprecated_alias( "audio-channel" ); /*deprecated since 0.8.2 */
add_integer( "sub-track", -1, NULL,
INPUT_SUBTRACK_TEXT, INPUT_SUBTRACK_LONGTEXT, true );
- add_deprecated_alias("spu-channel" ); /*deprecated since 0.8.2*/
+ change_safe();
+ add_deprecated_alias("spu-channel" ); /*deprecated since 0.8.2*/
add_string( "audio-language", "", NULL,
INPUT_AUDIOTRACK_LANG_TEXT, INPUT_AUDIOTRACK_LANG_LONGTEXT,
false );
+ change_safe();
add_string( "sub-language", "", NULL,
INPUT_SUBTRACK_LANG_TEXT, INPUT_SUBTRACK_LANG_LONGTEXT,
false );
+ change_safe();
add_integer( "audio-track-id", -1, NULL, INPUT_AUDIOTRACK_ID_TEXT,
INPUT_AUDIOTRACK_ID_LONGTEXT, true );
+ change_safe();
add_integer( "sub-track-id", -1, NULL,
INPUT_SUBTRACK_ID_TEXT, INPUT_SUBTRACK_ID_LONGTEXT, true );
+ change_safe();
set_section( N_( "Playback control" ) , NULL);
add_integer( "input-repeat", 0, NULL,
INPUT_REPEAT_TEXT, INPUT_REPEAT_LONGTEXT, false );
+ change_safe();
add_integer( "start-time", 0, NULL,
START_TIME_TEXT, START_TIME_LONGTEXT, true );
+ change_safe();
add_integer( "stop-time", 0, NULL,
STOP_TIME_TEXT, STOP_TIME_LONGTEXT, true );
+ change_safe();
add_integer( "run-time", 0, NULL,
RUN_TIME_TEXT, RUN_TIME_LONGTEXT, true );
+ change_safe();
add_string( "input-list", NULL, NULL,
INPUT_LIST_TEXT, INPUT_LIST_LONGTEXT, true );
add_string( "input-slave", NULL, NULL,
CR_AVERAGE_LONGTEXT, true );
add_integer( "clock-synchro", -1, NULL, CLOCK_SYNCHRO_TEXT,
CLOCK_SYNCHRO_LONGTEXT, true );
- change_integer_list( pi_clock_values, ppsz_clock_descriptions, 0 );
+ change_integer_list( pi_clock_values, ppsz_clock_descriptions, NULL );
add_bool( "network-synchronisation", false, NULL, NETSYNC_TEXT,
NETSYNC_LONGTEXT, true );
+ add_string( "input-record-path", NULL, NULL, INPUT_RECORD_PATH_TEXT,
+ INPUT_RECORD_PATH_LONGTEXT, true );
+ add_bool( "input-record-native", true, NULL, INPUT_RECORD_NATIVE_TEXT,
+ INPUT_RECORD_NATIVE_LONGTEXT, true );
+
/* Decoder options */
add_category_hint( N_("Decoders"), CODEC_CAT_LONGTEXT , true );
add_string( "codec", NULL, NULL, CODEC_TEXT,
add_string( "sout", NULL, NULL, SOUT_TEXT, SOUT_LONGTEXT, true );
add_bool( "sout-display", false, NULL, SOUT_DISPLAY_TEXT,
SOUT_DISPLAY_LONGTEXT, true );
- add_bool( "sout-keep", true, NULL, SOUT_KEEP_TEXT,
+ add_bool( "sout-keep", false, NULL, SOUT_KEEP_TEXT,
SOUT_KEEP_LONGTEXT, true );
add_bool( "sout-all", 0, NULL, SOUT_ALL_TEXT,
SOUT_ALL_LONGTEXT, true );
PACKETIZER_TEXT, PACKETIZER_LONGTEXT, true );
set_subcategory( SUBCAT_SOUT_SAP );
- add_bool( "sap-flow-control", false, NULL, ANN_SAPCTRL_TEXT,
- ANN_SAPCTRL_LONGTEXT, true );
+ add_obsolete_bool( "sap-flow-control" );
add_integer( "sap-interval", 5, NULL, ANN_SAPINTV_TEXT,
ANN_SAPINTV_LONGTEXT, true );
add_directory( "plugin-path", NULL, NULL, PLUGIN_PATH_TEXT,
PLUGIN_PATH_LONGTEXT, true );
change_need_restart();
- change_unsafe();
set_section( N_("Performance options"), NULL );
add_bool( "minimize-threads", 0, NULL, MINIMIZE_THREADS_TEXT,
MINIMIZE_THREADS_LONGTEXT, true );
change_need_restart();
+ add_bool( "use-stream-immediate", false, NULL,
+ USE_STREAM_IMMEDIATE, USE_STREAM_IMMEDIATE_LONGTEXT, true );
+
+ add_bool( "auto-adjust-pts-delay", false, NULL,
+ AUTO_ADJUST_PTS_DELAY, AUTO_ADJUST_PTS_DELAY_LONGTEXT, true );
+
#if !defined(__APPLE__) && !defined(SYS_BEOS) && defined(LIBVLC_USE_PTHREAD)
add_bool( "rt-priority", false, NULL, RT_PRIORITY_TEXT,
RT_PRIORITY_LONGTEXT, true );
change_need_restart();
#endif
-#if defined(HAVE_DBUS_3)
- add_bool( "one-instance", 0, NULL, ONEINSTANCE_DBUS_TEXT,
- ONEINSTANCE_DBUS_LONGTEXT, true );
- add_bool( "playlist-enqueue", 0, NULL, PLAYLISTENQUEUE_TEXT,
- PLAYLISTENQUEUE_LONGTEXT, true );
-
+#if defined(HAVE_DBUS)
add_bool( "inhibit", 1, NULL, INHIBIT_TEXT,
INHIBIT_LONGTEXT, true );
#endif
-#if defined(WIN32)
- add_bool( "one-instance", 0, NULL, ONEINSTANCE_WIN_TEXT,
- ONEINSTANCE_WIN_LONGTEXT, true );
+#if defined(WIN32) || defined(HAVE_DBUS)
+ add_bool( "one-instance", 0, NULL, ONEINSTANCE_TEXT,
+ ONEINSTANCE_LONGTEXT, true );
add_bool( "started-from-file", 0, NULL, STARTEDFROMFILE_TEXT,
STARTEDFROMFILE_LONGTEXT, true );
change_internal();
add_bool( "playlist-enqueue", 0, NULL, PLAYLISTENQUEUE_TEXT,
PLAYLISTENQUEUE_LONGTEXT, true );
change_unsaveable();
+#endif
+
+#if defined(WIN32)
add_bool( "high-priority", 0, NULL, HPRIORITY_TEXT,
HPRIORITY_LONGTEXT, false );
change_need_restart();
add_bool( "auto-preparse", true, NULL, PREPARSE_TEXT,
PREPARSE_LONGTEXT, false );
- add_integer( "fetch-meta", true, NULL, FETCH_META_TEXT,
- FETCH_META_LONGTEXT, false );
-
add_integer( "album-art", ALBUM_ART_WHEN_ASKED, NULL, ALBUM_ART_TEXT,
ALBUM_ART_LONGTEXT, false );
change_integer_list( pi_albumart_values,
add_integer( "verbose", 0, NULL, VERBOSE_TEXT, VERBOSE_LONGTEXT,
false );
change_short('v');
+ add_string( "verbose-objects", 0, NULL, VERBOSE_OBJECTS_TEXT, VERBOSE_OBJECTS_LONGTEXT,
+ false );
add_bool( "quiet", 0, NULL, QUIET_TEXT, QUIET_LONGTEXT, true );
change_short('q');
* open KEY_MODIFIER_COMMAND|'o'
* open disk KEY_MODIFIER_COMMAND|'d'
* open network KEY_MODIFIER_COMMAND|'n'
+ * open capture KEY_MODIFIER_COMMAND|'r'
* save playlist KEY_MODIFIER_COMMAND|'s'
* playlist random KEY_MODIFIER_COMMAND|'z'
* playlist repeat all KEY_MODIFIER_COMMAND|'l'
# define KEY_CROP 'c'
# define KEY_DEINTERLACE 'd'
# define KEY_INTF_SHOW 'i'
-# define KEY_INTF_HIDE 'I'
+# define KEY_INTF_HIDE KEY_MODIFIER_SHIFT|'i'
# define KEY_DISC_MENU KEY_MODIFIER_CTRL|'m'
# define KEY_TITLE_PREV KEY_MODIFIER_CTRL|'p'
# define KEY_TITLE_NEXT KEY_MODIFIER_CTRL|'n'
# define KEY_UNCROP_RIGHT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'l'
/* the macosx-interface already has bindings */
-# define KEY_ZOOM_QUARTER KEY_UNSET
+# define KEY_ZOOM_QUARTER KEY_UNSET
# define KEY_ZOOM_HALF KEY_UNSET
# define KEY_ZOOM_ORIGINAL KEY_UNSET
# define KEY_ZOOM_DOUBLE KEY_UNSET
# define KEY_MENU_DOWN KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_DOWN
# define KEY_MENU_SELECT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_ENTER
-#else
+#else /* Non Mac OS X */
+ /*
+ You should try to avoid Ctrl + letter key, because they are usually for
+ dialogs showing and interface related stuffs.
+ It would be nice (less important than previous rule) to try to avoid
+ alt + letter key, because they are usually for menu accelerators and you
+ don't know how the translator is going to do it.
+ */
# define KEY_TOGGLE_FULLSCREEN 'f'
# define KEY_LEAVE_FULLSCREEN KEY_ESC
# define KEY_PLAY_PAUSE KEY_SPACE
# define KEY_CROP 'c'
# define KEY_DEINTERLACE 'd'
# define KEY_INTF_SHOW 'i'
-# define KEY_INTF_HIDE 'I'
-# define KEY_DISC_MENU KEY_MODIFIER_ALT|'r'
-# define KEY_TITLE_PREV KEY_MODIFIER_ALT|'o'
-# define KEY_TITLE_NEXT KEY_MODIFIER_ALT|'b'
-# define KEY_CHAPTER_PREV KEY_MODIFIER_ALT|'p'
-# define KEY_CHAPTER_NEXT KEY_MODIFIER_ALT|'n'
-# define KEY_SNAPSHOT KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|'s'
+# define KEY_INTF_HIDE KEY_MODIFIER_SHIFT|'i'
+# define KEY_DISC_MENU KEY_MODIFIER_SHIFT|'m'
+# define KEY_TITLE_PREV KEY_MODIFIER_SHIFT|'o'
+# define KEY_TITLE_NEXT KEY_MODIFIER_SHIFT|'b'
+# define KEY_CHAPTER_PREV KEY_MODIFIER_SHIFT|'p'
+# define KEY_CHAPTER_NEXT KEY_MODIFIER_SHIFT|'n'
+# define KEY_SNAPSHOT KEY_MODIFIER_SHIFT|'s'
# define KEY_ZOOM 'z'
# define KEY_UNZOOM KEY_MODIFIER_SHIFT|'z'
-# define KEY_CROP_TOP KEY_MODIFIER_ALT|'i'
-# define KEY_UNCROP_TOP KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'i'
-# define KEY_CROP_LEFT KEY_MODIFIER_ALT|'j'
-# define KEY_UNCROP_LEFT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'j'
-# define KEY_CROP_BOTTOM KEY_MODIFIER_ALT|'k'
-# define KEY_UNCROP_BOTTOM KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'k'
-# define KEY_CROP_RIGHT KEY_MODIFIER_ALT|'l'
-# define KEY_UNCROP_RIGHT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'l'
+# define KEY_AUDIODEVICE_CYCLE KEY_MODIFIER_SHIFT|'a'
+# define KEY_HISTORY_BACK KEY_MODIFIER_SHIFT|'g'
+# define KEY_HISTORY_FORWARD KEY_MODIFIER_SHIFT|'h'
+# define KEY_RECORD KEY_MODIFIER_SHIFT|'r'
+# define KEY_DUMP KEY_MODIFIER_SHIFT|'d'
+# define KEY_WALLPAPER 'w'
+
+/* Cropping */
+# define KEY_CROP_TOP KEY_MODIFIER_ALT|'r'
+# define KEY_UNCROP_TOP KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'r'
+# define KEY_CROP_LEFT KEY_MODIFIER_ALT|'d'
+# define KEY_UNCROP_LEFT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'d'
+# define KEY_CROP_BOTTOM KEY_MODIFIER_ALT|'c'
+# define KEY_UNCROP_BOTTOM KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'c'
+# define KEY_CROP_RIGHT KEY_MODIFIER_ALT|'f'
+# define KEY_UNCROP_RIGHT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'f'
+
+/* Zooming */
# define KEY_ZOOM_QUARTER KEY_MODIFIER_CTRL|'1'
# define KEY_ZOOM_HALF KEY_MODIFIER_CTRL|'2'
# define KEY_ZOOM_ORIGINAL KEY_MODIFIER_CTRL|'3'
# define KEY_ZOOM_DOUBLE KEY_MODIFIER_CTRL|'4'
+/* Bookmarks */
# define KEY_SET_BOOKMARK1 KEY_MODIFIER_CTRL|KEY_F1
# define KEY_SET_BOOKMARK2 KEY_MODIFIER_CTRL|KEY_F2
# define KEY_SET_BOOKMARK3 KEY_MODIFIER_CTRL|KEY_F3
# define KEY_PLAY_BOOKMARK8 KEY_F8
# define KEY_PLAY_BOOKMARK9 KEY_F9
# define KEY_PLAY_BOOKMARK10 KEY_F10
-# define KEY_HISTORY_BACK KEY_MODIFIER_ALT|'g'
-# define KEY_HISTORY_FORWARD KEY_MODIFIER_ALT|'h'
-# define KEY_RECORD KEY_MODIFIER_CTRL|KEY_MODIFIER_SHIFT|'r'
-# define KEY_DUMP KEY_MODIFIER_CTRL|KEY_MODIFIER_SHIFT|'d'
-# define KEY_WALLPAPER 'w'
-# define KEY_MENU_ON KEY_MODIFIER_ALT|'m'
-# define KEY_MENU_OFF KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'m'
+/* OSD menu */
+# define KEY_MENU_ON KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|'m'
+# define KEY_MENU_OFF KEY_MODIFIER_ALT|KEY_MODIFIER_CTRL|'m'
# define KEY_MENU_RIGHT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_RIGHT
# define KEY_MENU_LEFT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_LEFT
# define KEY_MENU_UP KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_UP
# define KEY_MENU_DOWN KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_DOWN
# define KEY_MENU_SELECT KEY_MODIFIER_ALT|KEY_MODIFIER_SHIFT|KEY_ENTER
-# define KEY_AUDIODEVICE_CYCLE KEY_MODIFIER_ALT|'a'
#endif
add_key( "key-toggle-fullscreen", KEY_TOGGLE_FULLSCREEN, NULL, TOGGLE_FULLSCREEN_KEY_TEXT,
LOOP_KEY_TEXT, LOOP_KEY_LONGTEXT, false );
set_section ( N_("Zoom" ), NULL );
- add_key( "key-zoom-quarter", KEY_ZOOM_QUARTER, NULL,
+ add_key( "key-zoom-quarter", KEY_ZOOM_QUARTER, NULL,
ZOOM_QUARTER_KEY_TEXT, NULL, false );
- add_key( "key-zoom-half", KEY_ZOOM_HALF, NULL,
+ add_key( "key-zoom-half", KEY_ZOOM_HALF, NULL,
ZOOM_HALF_KEY_TEXT, NULL, false );
- add_key( "key-zoom-original", KEY_ZOOM_ORIGINAL, NULL,
+ add_key( "key-zoom-original", KEY_ZOOM_ORIGINAL, NULL,
ZOOM_ORIGINAL_KEY_TEXT, NULL, false );
- add_key( "key-zoom-double", KEY_ZOOM_DOUBLE, NULL,
+ add_key( "key-zoom-double", KEY_ZOOM_DOUBLE, NULL,
ZOOM_DOUBLE_KEY_TEXT, NULL, false );
-
+
set_section ( N_("Jump sizes" ), NULL );
add_integer( "extrashort-jump-size", 3, NULL, JIEXTRASHORT_TEXT,
JIEXTRASHORT_LONGTEXT, false );
#define HELP_TEXT \
N_("print help for VLC (can be combined with --advanced and " \
"--help-verbose)")
+#define FULL_HELP_TEXT \
+ N_("Exhaustive help for VLC and its modules")
#define LONGHELP_TEXT \
N_("print help for VLC and all its modules (can be combined with " \
"--advanced and --help-verbose)")
N_("print a list of available modules with extra detail")
#define MODULE_TEXT \
N_("print help on a specific module (can be combined with --advanced " \
- "and --help-verbose)")
+ "and --help-verbose). Prefix the module name with = for strict" \
+ "matches.")
#define IGNORE_CONFIG_TEXT \
N_("no configuration option will be loaded nor saved to config file")
#define SAVE_CONFIG_TEXT \
N_("resets the current plugins cache")
#define VERSION_TEXT \
N_("print version information")
-
+
add_bool( "help", false, NULL, HELP_TEXT, "", false );
change_short( 'h' );
change_internal();
change_unsaveable();
- add_bool( "longhelp", false, NULL, LONGHELP_TEXT, "", false );
+ add_bool( "full-help", false, NULL, FULL_HELP_TEXT, "", false );
change_short( 'H' );
change_internal();
change_unsaveable();
+ add_bool( "longhelp", false, NULL, LONGHELP_TEXT, "", false );
+ change_internal();
+ change_unsaveable();
add_bool( "help-verbose", false, NULL, HELP_VERBOSE_TEXT, "",
false );
change_internal();
change_unsaveable();
add_bool( "list-verbose", false, NULL, LIST_VERBOSE_TEXT, "",
false );
- change_short( 'l' );
change_internal();
change_unsaveable();
add_string( "module", NULL, NULL, MODULE_TEXT, "", false );
false );
change_internal();
change_unsaveable();
- add_bool( "reset-config", false, NULL, MODULE_TEXT, "", false );
+ add_bool( "reset-config", false, NULL, RESET_CONFIG_TEXT, "", false );
change_internal();
change_unsaveable();
add_bool( "reset-plugins-cache", false, NULL,