X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Flibvlc-module.c;h=04526ddd14161919a589ff7b8da7d1f738688b1a;hb=b02d9f27b3c800884b5b40ade1de9641ed303d41;hp=23ec831828ed323cae7682ccbf3396435e367cf3;hpb=7bc28eebe843ef72304a7ec4bb7e89a12a17187a;p=vlc diff --git a/src/libvlc-module.c b/src/libvlc-module.c index 23ec831828..04526ddd14 100644 --- a/src/libvlc-module.c +++ b/src/libvlc-module.c @@ -34,7 +34,8 @@ # include "config.h" #endif -#include +#include +#include #include "libvlc.h" //#define Nothing here, this is just to prevent update-po from being stupid @@ -42,7 +43,7 @@ #include "vlc_meta.h" #if defined (WIN32) || defined (__APPLE__) -static const char *ppsz_language[] = +static const char *const ppsz_language[] = { "auto", "en", @@ -68,9 +69,11 @@ static const char *ppsz_language[] = "oc", "fa", "pl", + "pt_PT", "ro", "ru", "zh_CN", + "sr", "sk", "sl", "es", @@ -78,7 +81,7 @@ static const char *ppsz_language[] = "tr" }; -static const char *ppsz_language_text[] = +static const char *const ppsz_language_text[] = { N_("Auto"), N_("American English"), @@ -104,9 +107,11 @@ static const char *ppsz_language_text[] = N_("Occitan"), N_("Persian"), N_("Polish"), + N_("Portuguese"), N_("Romanian"), N_("Russian"), N_("Simplified Chinese"), + N_("Serbian"), N_("Slovak"), N_("Slovenian"), N_("Spanish"), @@ -115,7 +120,7 @@ static const char *ppsz_language_text[] = }; #endif -static const char *ppsz_snap_formats[] = +static const char *const ppsz_snap_formats[] = { "png", "jpg" }; /***************************************************************************** @@ -215,8 +220,10 @@ static const char *ppsz_snap_formats[] = "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_( \ @@ -269,8 +276,9 @@ static const char *ppsz_snap_formats[] = "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") @@ -301,8 +309,10 @@ static const char *ppsz_force_dolby_descriptions[] = { N_("Auto"), N_("On"), N_( #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") }; +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 @@ -356,8 +366,8 @@ static const char *ppsz_replay_gain_mode_text[] = { N_("None"), N_("Track"), N_( "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") }; @@ -387,33 +397,33 @@ static const char *ppsz_align_descriptions[] = #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 miliseconds") #define VIDEO_TITLE_TIMEOUT_LONGTEXT N_( \ "Show the video title for n miliseconds, 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 miliseconds") #define MOUSE_HIDE_TIMEOUT_LONGTEXT N_( \ "Hide mouse cursor and fullscreen controller after " \ "n miliseconds, 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.") @@ -545,8 +555,8 @@ static const char *ppsz_pos_descriptions[] = "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") @@ -817,7 +827,7 @@ static const char *ppsz_clock_descriptions[] = "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." ) @@ -985,10 +995,21 @@ static const char *ppsz_clock_descriptions[] = #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_( \ @@ -1078,10 +1099,10 @@ static const char *ppsz_clock_descriptions[] = #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") }; @@ -1331,9 +1352,9 @@ static const char *ppsz_albumart_descriptions[] = "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") @@ -1408,6 +1429,7 @@ vlc_module_begin(); 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 ); @@ -1426,6 +1448,7 @@ vlc_module_begin(); change_integer_list( pi_force_dolby_values, ppsz_force_dolby_descriptions, 0 ); 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, @@ -1456,11 +1479,13 @@ vlc_module_begin(); 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__ @@ -1487,11 +1512,10 @@ vlc_module_begin(); VIDEO_TITLE_TIMEOUT_LONGTEXT, false ); add_integer( "video-title-position", 8, NULL, VIDEO_TITLE_POSITION_TEXT, VIDEO_TITLE_POSITION_LONGTEXT, false ); + change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 ); // autohide after 3s add_integer( "mouse-hide-timeout", 3000, 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 ); @@ -1512,14 +1536,20 @@ vlc_module_begin(); 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, @@ -1556,6 +1586,7 @@ vlc_module_begin(); 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 ); @@ -1588,34 +1619,46 @@ vlc_module_begin(); 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, @@ -1806,6 +1849,12 @@ vlc_module_begin(); 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 ); @@ -1818,7 +1867,7 @@ vlc_module_begin(); change_need_restart(); #endif -#if defined(HAVE_DBUS_3) +#if defined(HAVE_DBUS) add_bool( "one-instance", 0, NULL, ONEINSTANCE_DBUS_TEXT, ONEINSTANCE_DBUS_LONGTEXT, true ); add_bool( "playlist-enqueue", 0, NULL, PLAYLISTENQUEUE_TEXT, @@ -1961,6 +2010,7 @@ vlc_module_begin(); * 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' @@ -2022,7 +2072,7 @@ vlc_module_begin(); # 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' @@ -2125,7 +2175,7 @@ vlc_module_begin(); # 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_ALT|'r' # define KEY_TITLE_PREV KEY_MODIFIER_ALT|'o' # define KEY_TITLE_NEXT KEY_MODIFIER_ALT|'b' @@ -2420,6 +2470,8 @@ vlc_module_begin(); #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)") @@ -2449,10 +2501,13 @@ vlc_module_begin(); 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(); @@ -2477,7 +2532,7 @@ vlc_module_begin(); 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,