]> git.sesse.net Git - vlc/blobdiff - src/libvlc.h
add aspect ratio, crop and deinterlace hotkeys. fixes #442
[vlc] / src / libvlc.h
index 1ec91240501969fa77c7ff82b2503160ac5f7b7d..a6232b03892f5f0815015171a10c309d869d1d95 100644 (file)
@@ -279,6 +279,12 @@ static char *ppsz_align_descriptions[] =
     "Allows you to specify the image format in which the video snapshots will " \
     "be stored.")
 
+#define CROP_TEXT N_("Video cropping")
+#define CROP_LONGTEXT N_( \
+    "This will force the cropping of the source video. " \
+    "Accepted formats are x:y (4:3, 16:9, etc.) expressing the global image " \
+    "aspect.")
+
 #define ASPECT_RATIO_TEXT N_("Source aspect ratio")
 #define ASPECT_RATIO_LONGTEXT N_( \
     "This will force the source aspect ratio. For instance, some DVDs claim " \
@@ -288,11 +294,18 @@ static char *ppsz_align_descriptions[] =
     "aspect, or a float value (1.25, 1.3333, etc.) expressing pixel " \
     "squareness.")
 
-#define MASPECT_RATIO_TEXT N_("Monitor aspect ratio")
+#define HDTV_FIX_TEXT N_("Fix HDTV height")
+#define HDTV_FIX_LONGTEXT N_( \
+    "This option allows proper handling of HDTV-1080 video format " \
+    "even if broken encoder incorrectly set height to 1088 lines. " \
+    "Disable this option only if your video has non-standard format " \
+    "requiring all 1088 lines.")
+
+#define MASPECT_RATIO_TEXT N_("Monitor pixel aspect ratio")
 #define MASPECT_RATIO_LONGTEXT N_( \
-    "This will force the monitor aspect ratio. Most monitors have a 4:3." \
-    "If you have a 16:9 screen, you will need to change this to 16:9 in" \
-    "order to keep proportions.")
+    "This will force the monitor aspect ratio. Most monitors have square " \
+    "pixels (1:1). If you have a 16:9 screen, you might need to change this " \
+    "to 4:3 in order to keep proportions.")
 
 #define SKIP_FRAMES_TEXT N_("Skip frames")
 #define SKIP_FRAMES_LONGTEXT N_( \
@@ -329,8 +342,8 @@ static char *ppsz_clock_descriptions[] =
 
 #define MTU_TEXT N_("MTU of the network interface")
 #define MTU_LONGTEXT N_( \
-    "This is the typical size of UDP packets that we expect. On Ethernet " \
-    "it is usually 1500.")
+    "This is the maximum packet size that can be transmitted " \
+    "over network interface. On Ethernet it is usually 1500 bytes.")
 
 #define TTL_TEXT N_("Time To Live")
 #define TTL_LONGTEXT N_( \
@@ -795,25 +808,42 @@ static char *ppsz_clock_descriptions[] =
 #define POSITION_KEY_TEXT N_("Position")
 #define POSITION_KEY_LONGTEXT N_("Select the hotkey to display the position.")
 
-#define JB3SEC_KEY_TEXT N_("Jump 3 seconds backwards")
-#define JB3SEC_KEY_LONGTEXT N_("Select the hotkey to jump 3 seconds backwards.")
-#define JB10SEC_KEY_TEXT N_("Jump 10 seconds backwards")
-#define JB10SEC_KEY_LONGTEXT N_("Select the hotkey to jump 10 seconds backwards.")
-
-#define JB1MIN_KEY_TEXT N_("Jump 1 minute backwards")
-#define JB1MIN_KEY_LONGTEXT N_("Select the hotkey to jump 1 minute backwards.")
-#define JB5MIN_KEY_TEXT N_("Jump 5 minutes backwards")
-#define JB5MIN_KEY_LONGTEXT N_("Select the hotkey to jump 5 minutes backwards.")
-
-#define JF3SEC_KEY_TEXT N_("Jump 3 seconds forward")
-#define JF3SEC_KEY_LONGTEXT N_("Select the hotkey to jump 3 seconds forward.")
-#define JF10SEC_KEY_TEXT N_("Jump 10 seconds forward")
-#define JF10SEC_KEY_LONGTEXT N_("Select the hotkey to jump 10 seconds forward.")
-
-#define JF1MIN_KEY_TEXT N_("Jump 1 minute forward")
-#define JF1MIN_KEY_LONGTEXT N_("Select the hotkey to jump 1 minute forward.")
-#define JF5MIN_KEY_TEXT N_("Jump 5 minutes forward")
-#define JF5MIN_KEY_LONGTEXT N_("Select the hotkey to jump 5 minutes forward.")
+#define JBEXTRASHORT_KEY_TEXT N_("Very short backwards jump")
+#define JBEXTRASHORT_KEY_LONGTEXT \
+    N_("Select the hotkey to make a very short backwards jump.")
+#define JBSHORT_KEY_TEXT N_("Short backwards jump")
+#define JBSHORT_KEY_LONGTEXT \
+    N_("Select the hotkey to make a short backwards jump.")
+
+#define JBMEDIUM_KEY_TEXT N_("Medium backwards jump")
+#define JBMEDIUM_KEY_LONGTEXT \
+    N_("Select the hotkey to make a medium backwards jump.")
+#define JBLONG_KEY_TEXT N_("Long backwards jump")
+#define JBLONG_KEY_LONGTEXT \
+    N_("Select the hotkey to make a long backwards jump.")
+
+#define JFEXTRASHORT_KEY_TEXT N_("Very short forward jump")
+#define JFEXTRASHORT_KEY_LONGTEXT \
+    N_("Select the hotkey to make a very short forward jump.")
+#define JFSHORT_KEY_TEXT N_("Short forward jump")
+#define JFSHORT_KEY_LONGTEXT \
+    N_("Select the hotkey to make a short forward jump.")
+
+#define JFMEDIUM_KEY_TEXT N_("Medium forward jump")
+#define JFMEDIUM_KEY_LONGTEXT \
+    N_("Select the hotkey to make a medium forward jump.")
+#define JFLONG_KEY_TEXT N_("Long forward jump")
+#define JFLONG_KEY_LONGTEXT \
+    N_("Select the hotkey to make a long forward jump.")
+
+#define JIEXTRASHORT_TEXT N_("Very short jump size")
+#define JIEXTRASHORT_LONGTEXT N_("Very short jump \"size\", in seconds")
+#define JISHORT_TEXT N_("Short jump size")
+#define JISHORT_LONGTEXT N_("Short jump \"size\", in seconds")
+#define JIMEDIUM_TEXT N_("Medium jump size")
+#define JIMEDIUM_LONGTEXT N_("Medium jump \"size\", in seconds")
+#define JILONG_TEXT N_("Long jump size")
+#define JILONG_LONGTEXT N_("Long jump \"size\", in seconds")
 
 #define QUIT_KEY_TEXT N_("Quit")
 #define QUIT_KEY_LONGTEXT N_("Select the hotkey to quit the application.")
@@ -827,6 +857,8 @@ static char *ppsz_clock_descriptions[] =
 #define NAV_RIGHT_KEY_LONGTEXT N_("Select the key to move the selector right in DVD menus.")
 #define NAV_ACTIVATE_KEY_TEXT N_("Activate")
 #define NAV_ACTIVATE_KEY_LONGTEXT N_("Select the key to activate selected item in DVD menus.")
+#define DISC_MENU_TEXT N_("Go to the DVD menu")
+#define DISC_MENU_LONGTEXT N_("Select the key to take you to the DVD menu")
 #define TITLE_PREV_TEXT N_("Select previous DVD title")
 #define TITLE_PREV_LONGTEXT N_("Select the key to choose the previous title from the DVD")
 #define TITLE_NEXT_TEXT N_("Select next DVD title")
@@ -881,6 +913,12 @@ static char *ppsz_clock_descriptions[] =
 #define AUDIO_TRACK_KEY_LONGTEXT N_("Cycle through the available audio tracks(languages)")
 #define SUBTITLE_TRACK_KEY_TEXT N_("Cycle subtitle track")
 #define SUBTITLE_TRACK_KEY_LONGTEXT N_("Cycle through the available subtitle tracks")
+#define ASPECT_RATIO_KEY_TEXT N_("Cycle source aspect ratio")
+#define ASPECT_RATIO_KEY_LONGTEXT N_("Cycle through a predefined list of source aspect ratios")
+#define CROP_KEY_TEXT N_("Cycle video crop")
+#define CROP_KEY_LONGTEXT N_("Cycle through a predefined list of crop formats")
+#define DEINTERLACE_KEY_TEXT N_("Cycle deinterlace modes")
+#define DEINTERLACE_KEY_LONGTEXT N_("Cycle through all the deinterlace modes")
 #define INTF_SHOW_KEY_TEXT N_("Show interface")
 #define INTF_SHOW_KEY_LONGTEXT N_("Raise the interface above all other windows")
 #define INTF_HIDE_KEY_TEXT N_("Hide interface")
@@ -961,9 +999,9 @@ vlc_module_begin();
     add_bool( "hq-resampling", 1, NULL, AOUT_RESAMP_TEXT,
               AOUT_RESAMP_LONGTEXT, VLC_TRUE );
 #endif
-    add_bool( "spdif", 0, NULL, SPDIF_TEXT, SPDIF_LONGTEXT, VLC_TRUE );
+    add_bool( "spdif", 0, NULL, SPDIF_TEXT, SPDIF_LONGTEXT, VLC_FALSE );
     add_integer( "force-dolby-surround", 0, NULL, FORCE_DOLBY_TEXT,
-                 FORCE_DOLBY_LONGTEXT, VLC_TRUE );
+                 FORCE_DOLBY_LONGTEXT, VLC_FALSE );
         change_integer_list( pi_force_dolby_values, ppsz_force_dolby_descriptions, 0 );
     add_integer( "audio-desync", 0, NULL, DESYNC_TEXT,
                  DESYNC_LONGTEXT, VLC_TRUE );
@@ -1013,10 +1051,12 @@ vlc_module_begin();
     add_integer( "height", -1, NULL, HEIGHT_TEXT, HEIGHT_LONGTEXT, VLC_TRUE );
     add_integer( "video-x", -1, NULL, VIDEOX_TEXT, VIDEOX_LONGTEXT, VLC_TRUE );
     add_integer( "video-y", -1, NULL, VIDEOY_TEXT, VIDEOY_LONGTEXT, VLC_TRUE );
-    add_string( "aspect-ratio", "", NULL,
-               ASPECT_RATIO_TEXT, ASPECT_RATIO_LONGTEXT, VLC_FALSE );
-    add_string( "monitor-aspect-ratio", "4:3", NULL,
-               MASPECT_RATIO_TEXT, MASPECT_RATIO_LONGTEXT, VLC_FALSE );
+    add_string( "crop", NULL, NULL, CROP_TEXT, CROP_LONGTEXT, VLC_FALSE );
+    add_string( "aspect-ratio", NULL, NULL,
+                ASPECT_RATIO_TEXT, ASPECT_RATIO_LONGTEXT, VLC_FALSE );
+    add_string( "monitor-par", NULL, NULL,
+                MASPECT_RATIO_TEXT, MASPECT_RATIO_LONGTEXT, VLC_TRUE );
+    add_bool( "hdtv-fix", 1, NULL, HDTV_FIX_TEXT, HDTV_FIX_LONGTEXT, VLC_TRUE );
     add_bool( "video-deco", 1, NULL, VIDEO_DECO_TEXT,
               VIDEO_DECO_LONGTEXT, VLC_TRUE );
     add_string( "video-title", NULL, NULL, VIDEO_TITLE_TEXT,
@@ -1059,7 +1099,7 @@ vlc_module_begin();
 #endif
     add_string( "sub-autodetect-path", SUB_PATH, NULL,
                  SUB_PATH_TEXT, SUB_PATH_LONGTEXT, VLC_TRUE );
-    add_integer( "sub-margin", -1, NULL, SUB_MARGIN_TEXT,
+    add_integer( "sub-margin", 0, NULL, SUB_MARGIN_TEXT,
                  SUB_MARGIN_LONGTEXT, VLC_TRUE );
         add_deprecated( "spu-margin", VLC_FALSE ); /*Deprecated since 0.8.2 */
     set_section( N_( "Overlays" ) , NULL );
@@ -1068,23 +1108,7 @@ vlc_module_begin();
 
 /* Input options */
     set_category( CAT_INPUT );
-    set_subcategory( SUBCAT_INPUT_ACCESS );
-    add_category_hint( N_("Input"), INPUT_CAT_LONGTEXT , VLC_FALSE );
-    add_module( "access", "access2", NULL, NULL, ACCESS_TEXT,
-                ACCESS_LONGTEXT, VLC_TRUE );
-
-    set_subcategory( SUBCAT_INPUT_ACCESS_FILTER );
-    add_module_list_cat( "access-filter", SUBCAT_INPUT_ACCESS_FILTER, NULL, NULL,
-                ACCESS_FILTER_TEXT, ACCESS_FILTER_LONGTEXT, VLC_FALSE );
-
-
-    set_subcategory( SUBCAT_INPUT_DEMUX );
-    add_module( "demux", "demux2", NULL, NULL, DEMUX_TEXT,
-                DEMUX_LONGTEXT, VLC_TRUE );
-    set_subcategory( SUBCAT_INPUT_VCODEC );
-    set_subcategory( SUBCAT_INPUT_ACODEC );
-    set_subcategory( SUBCAT_INPUT_SCODEC );
-    set_subcategory( SUBCAT_INPUT_ADVANCED );
+    set_subcategory( SUBCAT_INPUT_GENERAL );
 
     set_section( N_( "Track settings" ), NULL );
     add_integer( "program", 0, NULL,
@@ -1170,9 +1194,9 @@ vlc_module_begin();
     set_section( N_( "Advanced" ), NULL );
 
     add_integer( "cr-average", 40, NULL, CR_AVERAGE_TEXT,
-                 CR_AVERAGE_LONGTEXT, VLC_FALSE );
+                 CR_AVERAGE_LONGTEXT, VLC_TRUE );
     add_integer( "clock-synchro", -1, NULL, CLOCK_SYNCHRO_TEXT,
-                 CLOCK_SYNCHRO_LONGTEXT, VLC_FALSE );
+                 CLOCK_SYNCHRO_LONGTEXT, VLC_TRUE );
         change_integer_list( pi_clock_values, ppsz_clock_descriptions, 0 );
 
 /* Decoder options */
@@ -1182,6 +1206,23 @@ vlc_module_begin();
     add_string( "encoder",  NULL, NULL, ENCODER_TEXT,
                 ENCODER_LONGTEXT, VLC_TRUE );
 
+    set_subcategory( SUBCAT_INPUT_ACCESS );
+    add_category_hint( N_("Input"), INPUT_CAT_LONGTEXT , VLC_FALSE );
+    add_module( "access", "access2", NULL, NULL, ACCESS_TEXT,
+                ACCESS_LONGTEXT, VLC_TRUE );
+
+    set_subcategory( SUBCAT_INPUT_ACCESS_FILTER );
+    add_module_list_cat( "access-filter", SUBCAT_INPUT_ACCESS_FILTER, NULL, NULL,
+                ACCESS_FILTER_TEXT, ACCESS_FILTER_LONGTEXT, VLC_FALSE );
+
+
+    set_subcategory( SUBCAT_INPUT_DEMUX );
+    add_module( "demux", "demux2", NULL, NULL, DEMUX_TEXT,
+                DEMUX_LONGTEXT, VLC_TRUE );
+    set_subcategory( SUBCAT_INPUT_VCODEC );
+    set_subcategory( SUBCAT_INPUT_ACODEC );
+    set_subcategory( SUBCAT_INPUT_SCODEC );
+
 
 /* Stream output options */
     set_category( CAT_SOUT );
@@ -1253,8 +1294,8 @@ vlc_module_begin();
     add_bool( "minimize-threads", 0, NULL, MINIMIZE_THREADS_TEXT,
               MINIMIZE_THREADS_LONGTEXT, VLC_TRUE );
 
-#if !defined(SYS_BEOS) && defined(PTHREAD_COND_T_IN_PTHREAD_H)
-    add_bool( "rt-priority", 0, NULL, RT_PRIORITY_TEXT,
+#if !defined(SYS_DARWIN) && !defined(SYS_BEOS) && defined(PTHREAD_COND_T_IN_PTHREAD_H)
+    add_bool( "rt-priority", VLC_FALSE, NULL, RT_PRIORITY_TEXT,
               RT_PRIORITY_LONGTEXT, VLC_TRUE );
 #endif
 
@@ -1378,14 +1419,14 @@ vlc_module_begin();
 #   define KEY_PREV               KEY_MODIFIER_COMMAND|KEY_LEFT
 #   define KEY_STOP               KEY_MODIFIER_COMMAND|'.'
 #   define KEY_POSITION           't'
-#   define KEY_JUMP_M3SEC         KEY_MODIFIER_COMMAND|KEY_MODIFIER_CTRL|KEY_LEFT
-#   define KEY_JUMP_P3SEC         KEY_MODIFIER_COMMAND|KEY_MODIFIER_CTRL|KEY_RIGHT
-#   define KEY_JUMP_M10SEC        KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|KEY_LEFT
-#   define KEY_JUMP_P10SEC        KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|KEY_RIGHT
-#   define KEY_JUMP_M1MIN         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_LEFT
-#   define KEY_JUMP_P1MIN         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_RIGHT
-#   define KEY_JUMP_M5MIN         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_MODIFIER_ALT|KEY_LEFT
-#   define KEY_JUMP_P5MIN         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_MODIFIER_ALT|KEY_RIGHT
+#   define KEY_JUMP_MEXTRASHORT   KEY_MODIFIER_COMMAND|KEY_MODIFIER_CTRL|KEY_LEFT
+#   define KEY_JUMP_PEXTRASHORT   KEY_MODIFIER_COMMAND|KEY_MODIFIER_CTRL|KEY_RIGHT
+#   define KEY_JUMP_MSHORT        KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|KEY_LEFT
+#   define KEY_JUMP_PSHORT        KEY_MODIFIER_COMMAND|KEY_MODIFIER_ALT|KEY_RIGHT
+#   define KEY_JUMP_MMEDIUM       KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_LEFT
+#   define KEY_JUMP_PMEDIUM       KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_RIGHT
+#   define KEY_JUMP_MLONG         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_MODIFIER_ALT|KEY_LEFT
+#   define KEY_JUMP_PLONG         KEY_MODIFIER_COMMAND|KEY_MODIFIER_SHIFT|KEY_MODIFIER_ALT|KEY_RIGHT
 #   define KEY_NAV_ACTIVATE       KEY_ENTER
 #   define KEY_NAV_UP             KEY_UP
 #   define KEY_NAV_DOWN           KEY_DOWN
@@ -1401,8 +1442,12 @@ vlc_module_begin();
 #   define KEY_AUDIODELAY_DOWN    'f'
 #   define KEY_AUDIO_TRACK        'l'
 #   define KEY_SUBTITLE_TRACK     's'
+#   define KEY_ASPECT_RATIO       'a'
+#   define KEY_CROP               'c'
+#   define KEY_DEINTERLACE        'd'
 #   define KEY_INTF_SHOW          'i'
 #   define KEY_INTF_HIDE          '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_CHAPTER_PREV       KEY_MODIFIER_CTRL|'u'
@@ -1444,14 +1489,14 @@ vlc_module_begin();
 #   define KEY_PREV               'p'
 #   define KEY_STOP               's'
 #   define KEY_POSITION           't'
-#   define KEY_JUMP_M3SEC         KEY_MODIFIER_SHIFT|KEY_LEFT
-#   define KEY_JUMP_P3SEC         KEY_MODIFIER_SHIFT|KEY_RIGHT
-#   define KEY_JUMP_M10SEC        KEY_MODIFIER_ALT|KEY_LEFT
-#   define KEY_JUMP_P10SEC        KEY_MODIFIER_ALT|KEY_RIGHT
-#   define KEY_JUMP_M1MIN         KEY_MODIFIER_CTRL|KEY_LEFT
-#   define KEY_JUMP_P1MIN         KEY_MODIFIER_CTRL|KEY_RIGHT
-#   define KEY_JUMP_M5MIN         KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|KEY_LEFT
-#   define KEY_JUMP_P5MIN         KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|KEY_RIGHT
+#   define KEY_JUMP_MEXTRASHORT   KEY_MODIFIER_SHIFT|KEY_LEFT
+#   define KEY_JUMP_PEXTRASHORT   KEY_MODIFIER_SHIFT|KEY_RIGHT
+#   define KEY_JUMP_MSHORT        KEY_MODIFIER_ALT|KEY_LEFT
+#   define KEY_JUMP_PSHORT        KEY_MODIFIER_ALT|KEY_RIGHT
+#   define KEY_JUMP_MMEDIUM       KEY_MODIFIER_CTRL|KEY_LEFT
+#   define KEY_JUMP_PMEDIUM       KEY_MODIFIER_CTRL|KEY_RIGHT
+#   define KEY_JUMP_MLONG         KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|KEY_LEFT
+#   define KEY_JUMP_PLONG         KEY_MODIFIER_CTRL|KEY_MODIFIER_ALT|KEY_RIGHT
 #   define KEY_NAV_ACTIVATE       KEY_ENTER
 #   define KEY_NAV_UP             KEY_UP
 #   define KEY_NAV_DOWN           KEY_DOWN
@@ -1468,8 +1513,12 @@ vlc_module_begin();
 
 #   define KEY_AUDIO_TRACK        'l'
 #   define KEY_SUBTITLE_TRACK     'k'
+#   define KEY_ASPECT_RATIO       'a'
+#   define KEY_CROP               'c'
+#   define KEY_DEINTERLACE        'd'
 #   define KEY_INTF_SHOW          'i'
 #   define KEY_INTF_HIDE          '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_CHAPTER_PREV       KEY_MODIFIER_CTRL|'u'
@@ -1521,23 +1570,22 @@ vlc_module_begin();
              STOP_KEY_LONGTEXT, VLC_FALSE );
     add_key( "key-position", KEY_POSITION, NULL, POSITION_KEY_TEXT,
              POSITION_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-jump-3sec", KEY_JUMP_M3SEC, NULL, JB3SEC_KEY_TEXT,
-             JB3SEC_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+3sec", KEY_JUMP_P3SEC, NULL, JF3SEC_KEY_TEXT,
-             JF3SEC_KEY_LONGTEXT, VLC_FALSE );             
-    add_key( "key-jump-10sec", KEY_JUMP_M10SEC, NULL, JB10SEC_KEY_TEXT,
-             JB10SEC_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+10sec", KEY_JUMP_P10SEC, NULL, JF10SEC_KEY_TEXT,
-             JF10SEC_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump-1min", KEY_JUMP_M1MIN, NULL, JB1MIN_KEY_TEXT,
-             JB1MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+1min", KEY_JUMP_P1MIN, NULL, JF1MIN_KEY_TEXT,
-             JF1MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump-5min", KEY_JUMP_M5MIN, NULL, JB5MIN_KEY_TEXT,
-             JB5MIN_KEY_LONGTEXT, VLC_FALSE );
-    add_key( "key-jump+5min", KEY_JUMP_P5MIN, NULL, JF5MIN_KEY_TEXT,
-             JF5MIN_KEY_LONGTEXT, VLC_FALSE );
-
+    add_key( "key-jump-extrashort", KEY_JUMP_MEXTRASHORT, NULL,
+             JBEXTRASHORT_KEY_TEXT, JBEXTRASHORT_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump+extrashort", KEY_JUMP_PEXTRASHORT, NULL,
+             JFEXTRASHORT_KEY_TEXT, JFEXTRASHORT_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump-short", KEY_JUMP_MSHORT, NULL, JBSHORT_KEY_TEXT,
+             JBSHORT_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump+short", KEY_JUMP_PSHORT, NULL, JFSHORT_KEY_TEXT,
+             JFSHORT_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump-medium", KEY_JUMP_MMEDIUM, NULL, JBMEDIUM_KEY_TEXT,
+             JBMEDIUM_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump+medium", KEY_JUMP_PMEDIUM, NULL, JFMEDIUM_KEY_TEXT,
+             JFMEDIUM_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump-long", KEY_JUMP_MLONG, NULL, JBLONG_KEY_TEXT,
+             JBLONG_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-jump+long", KEY_JUMP_PLONG, NULL, JFLONG_KEY_TEXT,
+             JFLONG_KEY_LONGTEXT, VLC_FALSE );
     add_key( "key-nav-activate", KEY_NAV_ACTIVATE, NULL, NAV_ACTIVATE_KEY_TEXT,
              NAV_ACTIVATE_KEY_LONGTEXT, VLC_TRUE );
     add_key( "key-nav-up", KEY_NAV_UP, NULL, NAV_UP_KEY_TEXT,
@@ -1549,6 +1597,8 @@ vlc_module_begin();
     add_key( "key-nav-right", KEY_NAV_RIGHT, NULL, NAV_RIGHT_KEY_TEXT,
              NAV_RIGHT_KEY_LONGTEXT, VLC_TRUE );
 
+    add_key( "key-disc-menu", KEY_DISC_MENU, NULL, DISC_MENU_TEXT,
+             DISC_MENU_LONGTEXT, VLC_TRUE );
     add_key( "key-title-prev", KEY_TITLE_PREV, NULL, TITLE_PREV_TEXT,
              TITLE_PREV_LONGTEXT, VLC_TRUE );
     add_key( "key-title-next", KEY_TITLE_NEXT, NULL, TITLE_NEXT_TEXT,
@@ -1557,7 +1607,6 @@ vlc_module_begin();
              CHAPTER_PREV_LONGTEXT, VLC_TRUE );
     add_key( "key-chapter-next", KEY_CHAPTER_NEXT, NULL, CHAPTER_NEXT_TEXT,
              CHAPTER_NEXT_LONGTEXT, VLC_TRUE );
-                          
     add_key( "key-quit", KEY_QUIT, NULL, QUIT_KEY_TEXT,
              QUIT_KEY_LONGTEXT, VLC_FALSE );
     add_key( "key-vol-up", KEY_VOL_UP, NULL, VOL_UP_KEY_TEXT,
@@ -1578,13 +1627,36 @@ vlc_module_begin();
              AUDIO_TRACK_KEY_LONGTEXT, VLC_FALSE );
     add_key( "key-subtitle-track", KEY_SUBTITLE_TRACK, NULL,
              SUBTITLE_TRACK_KEY_TEXT, SUBTITLE_TRACK_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-aspect-ratio", KEY_ASPECT_RATIO, NULL,
+             ASPECT_RATIO_KEY_TEXT, ASPECT_RATIO_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-crop", KEY_CROP, NULL,
+             CROP_KEY_TEXT, CROP_KEY_LONGTEXT, VLC_FALSE );
+    add_key( "key-deinterlace", KEY_DEINTERLACE, NULL,
+             DEINTERLACE_KEY_TEXT, DEINTERLACE_KEY_LONGTEXT, VLC_FALSE );
     add_key( "key-intf-show", KEY_INTF_SHOW, NULL,
              INTF_SHOW_KEY_TEXT, INTF_SHOW_KEY_LONGTEXT, VLC_TRUE );
     add_key( "key-intf-hide", KEY_INTF_HIDE, NULL,
-             INTF_HIDE_KEY_TEXT, INTF_HIDE_KEY_LONGTEXT, VLC_TRUE );             
+             INTF_HIDE_KEY_TEXT, INTF_HIDE_KEY_LONGTEXT, VLC_TRUE );
     add_key( "key-snapshot", KEY_SNAPSHOT, NULL,
-             SNAP_KEY_TEXT, SNAP_KEY_LONGTEXT, VLC_TRUE );
-
+        SNAP_KEY_TEXT, SNAP_KEY_LONGTEXT, VLC_TRUE );
+    add_key( "key-history-back", KEY_HISTORY_BACK, NULL, HISTORY_BACK_TEXT,
+             HISTORY_BACK_LONGTEXT, VLC_TRUE );
+    add_key( "key-history-forward", KEY_HISTORY_FORWARD, NULL,
+             HISTORY_FORWARD_TEXT, HISTORY_FORWARD_LONGTEXT, VLC_TRUE );
+    add_key( "key-record", KEY_RECORD, NULL,
+             RECORD_KEY_TEXT, RECORD_KEY_LONGTEXT, VLC_TRUE );
+    add_integer( "extrashort-jump-size", 3, NULL, JIEXTRASHORT_TEXT,
+                                    JIEXTRASHORT_LONGTEXT, VLC_FALSE );
+    add_integer( "short-jump-size", 10, NULL, JISHORT_TEXT,
+                                    JISHORT_LONGTEXT, VLC_FALSE );
+    add_integer( "medium-jump-size", 60, NULL, JIMEDIUM_TEXT,
+                                    JIMEDIUM_LONGTEXT, VLC_FALSE );
+    add_integer( "long-jump-size", 300, NULL, JILONG_TEXT,
+                                    JILONG_LONGTEXT, VLC_FALSE );
+
+    /* HACK so these don't get displayed */
+    set_category( -1 );
+    set_subcategory( -1 );
     add_key( "key-set-bookmark1", KEY_SET_BOOKMARK1, NULL,
              SET_BOOKMARK1_KEY_TEXT, SET_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
     add_key( "key-set-bookmark2", KEY_SET_BOOKMARK2, NULL,
@@ -1625,12 +1697,6 @@ vlc_module_begin();
              PLAY_BOOKMARK9_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
     add_key( "key-play-bookmark10", KEY_PLAY_BOOKMARK10, NULL,
              PLAY_BOOKMARK10_KEY_TEXT, PLAY_BOOKMARK_KEY_LONGTEXT, VLC_TRUE );
-    add_key( "key-history-back", KEY_HISTORY_BACK, NULL, HISTORY_BACK_TEXT,
-             HISTORY_BACK_LONGTEXT, VLC_TRUE );
-    add_key( "key-history-forward", KEY_HISTORY_FORWARD, NULL,
-             HISTORY_FORWARD_TEXT, HISTORY_FORWARD_LONGTEXT, VLC_TRUE );
-    add_key( "key-record", KEY_RECORD, NULL,
-             RECORD_KEY_TEXT, RECORD_KEY_LONGTEXT, VLC_TRUE );
 
     /* Usage (mainly useful for cmd line stuff) */
     /* add_usage_hint( PLAYLIST_USAGE ); */
@@ -1681,14 +1747,14 @@ static struct hotkey p_hotkeys[] =
     { "key-pause", ACTIONID_PAUSE, 0, 0, 0, 0 },
     { "key-stop", ACTIONID_STOP, 0, 0, 0, 0 },
     { "key-position", ACTIONID_POSITION, 0, 0, 0, 0 },
-    { "key-jump-3sec", ACTIONID_JUMP_BACKWARD_3SEC, 0, 1000000, 0, 0 },
-    { "key-jump+3sec", ACTIONID_JUMP_FORWARD_3SEC, 0, 1000000, 0, 0 },
-    { "key-jump-10sec", ACTIONID_JUMP_BACKWARD_10SEC, 0, 1000000, 0, 0 },
-    { "key-jump+10sec", ACTIONID_JUMP_FORWARD_10SEC, 0, 1000000, 0, 0 },
-    { "key-jump-1min", ACTIONID_JUMP_BACKWARD_1MIN, 0, 1000000, 0, 0 },
-    { "key-jump+1min", ACTIONID_JUMP_FORWARD_1MIN, 0, 1000000, 0, 0 },
-    { "key-jump-5min", ACTIONID_JUMP_BACKWARD_5MIN, 0, 1000000, 0, 0 },
-    { "key-jump+5min", ACTIONID_JUMP_FORWARD_5MIN, 0, 1000000, 0, 0 },
+    { "key-jump-extrashort", ACTIONID_JUMP_BACKWARD_EXTRASHORT, 0, 1000000, 0, 0 },
+    { "key-jump+extrashort", ACTIONID_JUMP_FORWARD_EXTRASHORT, 0, 1000000, 0, 0 },
+    { "key-jump-short", ACTIONID_JUMP_BACKWARD_SHORT, 0, 1000000, 0, 0 },
+    { "key-jump+short", ACTIONID_JUMP_FORWARD_SHORT, 0, 1000000, 0, 0 },
+    { "key-jump-medium", ACTIONID_JUMP_BACKWARD_MEDIUM, 0, 1000000, 0, 0 },
+    { "key-jump+medium", ACTIONID_JUMP_FORWARD_MEDIUM, 0, 1000000, 0, 0 },
+    { "key-jump-long", ACTIONID_JUMP_BACKWARD_LONG, 0, 1000000, 0, 0 },
+    { "key-jump+long", ACTIONID_JUMP_FORWARD_LONG, 0, 1000000, 0, 0 },
     { "key-prev", ACTIONID_PREV, 0, 0, 0, 0 },
     { "key-next", ACTIONID_NEXT, 0, 0, 0, 0 },
     { "key-faster", ACTIONID_FASTER, 0, 0, 0, 0 },
@@ -1703,6 +1769,9 @@ static struct hotkey p_hotkeys[] =
     { "key-audiodelay-up", ACTIONID_AUDIODELAY_UP, 0, 0, 0, 0 },
     { "key-audio-track", ACTIONID_AUDIO_TRACK, 0, 0, 0, 0 },
     { "key-subtitle-track", ACTIONID_SUBTITLE_TRACK, 0, 0, 0, 0 },
+    { "key-aspect-ratio", ACTIONID_ASPECT_RATIO, 0, 0, 0, 0 },
+    { "key-crop", ACTIONID_CROP, 0, 0, 0, 0 },
+    { "key-deinterlace", ACTIONID_DEINTERLACE, 0, 0, 0, 0 },
     { "key-intf-show", ACTIONID_INTF_SHOW, 0, 0, 0, 0 },
     { "key-intf-hide", ACTIONID_INTF_HIDE, 0, 0, 0, 0 },
     { "key-snapshot", ACTIONID_SNAPSHOT, 0, 0, 0, 0 },
@@ -1711,6 +1780,7 @@ static struct hotkey p_hotkeys[] =
     { "key-nav-down", ACTIONID_NAV_DOWN, 0, 0, 0, 0 },
     { "key-nav-left", ACTIONID_NAV_LEFT, 0, 0, 0, 0 },
     { "key-nav-right", ACTIONID_NAV_RIGHT, 0, 0, 0, 0 },
+    { "key-disc-menu", ACTIONID_DISC_MENU, 0, 0, 0, 0 },
     { "key-title-prev", ACTIONID_TITLE_PREV, 0, 0, 0, 0 },
     { "key-title-next", ACTIONID_TITLE_NEXT, 0, 0, 0, 0 },
     { "key-chapter-prev", ACTIONID_CHAPTER_PREV, 0, 0, 0, 0 },