diff --git a/modules/access/dvdread.c b/modules/access/dvdread.c
index 4f1c8ae9f7c3f17da30cf7619f8a7eb68cdede76..fc562f95d922a5c222daeb0687e74075126870ad 100644
--- a/modules/access/dvdread.c
+++ b/modules/access/dvdread.c
@@ -81,7 +81,6 @@ vlc_module_begin ()
     set_subcategory( SUBCAT_INPUT_ACCESS )
     add_integer( "dvdread-angle", 1, ANGLE_TEXT,
         ANGLE_LONGTEXT, false )
-    add_obsolete_string( "dvdread-css-method" ) /* obsolete since 1.1.0 */
     set_capability( "access", 0 )
     add_shortcut( "dvd", "dvdread", "dvdsimple" )
     set_callbacks( Open, Close )
diff --git a/modules/access/fs.c b/modules/access/fs.c
index dae8c871649e6e099455107ef344e5d5ca2f7c42..9597b615694c7ca83fce8b72fac2f3807e5f6701 100644
--- a/modules/access/fs.c
+++ b/modules/access/fs.c
@@ -35,7 +35,6 @@ vlc_module_begin ()
     set_shortname( N_("File") )
     set_category( CAT_INPUT )
     set_subcategory( SUBCAT_INPUT_ACCESS )
-    add_obsolete_string( "file-cat" )
     set_capability( "access", 50 )
     add_shortcut( "file", "fd", "stream" )
     set_callbacks( FileOpen, FileClose )
diff --git a/modules/access/v4l2/v4l2.c b/modules/access/v4l2/v4l2.c
index f0b753b5df0980e46b6279ec10003e05d59913d5..35038f76e6d8a3e369d58523f6682d20648550d4 100644
--- a/modules/access/v4l2/v4l2.c
+++ b/modules/access/v4l2/v4l2.c
@@ -348,7 +348,6 @@ vlc_module_begin ()
     add_integer( CFG_PREFIX "hue-auto", -1,
                  HUE_AUTO_TEXT, HUE_AUTO_LONGTEXT, true )
         change_integer_list( tristate_vlc, tristate_user )
-    add_obsolete_integer( CFG_PREFIX "black-level" ) /* since Linux 2.6.26 */
     add_integer( CFG_PREFIX "white-balance-temperature", -1,
                  WHITE_BALANCE_TEMP_TEXT, WHITE_BALANCE_TEMP_LONGTEXT, true )
         /* Ideally, the range should be 2800-6500 */
@@ -385,8 +384,6 @@ vlc_module_begin ()
     add_bool( CFG_PREFIX "vflip", false, VFLIP_TEXT, VFLIP_LONGTEXT, true )
     add_integer( CFG_PREFIX "rotate", -1, ROTATE_TEXT, ROTATE_LONGTEXT, true )
         change_integer_range( -1, 359 )
-    add_obsolete_integer( CFG_PREFIX "hcenter" ) /* since Linux 2.6.26 */
-    add_obsolete_integer( CFG_PREFIX "vcenter" ) /* since Linux 2.6.26 */
     add_integer( CFG_PREFIX"color-killer", -1,
                  COLOR_KILLER_TEXT, COLOR_KILLER_LONGTEXT, true )
         change_integer_list( tristate_vlc, tristate_user )
@@ -410,11 +407,6 @@ vlc_module_begin ()
               S_CTRLS_LONGTEXT, true )
         change_safe()
 
-    add_obsolete_string( CFG_PREFIX "adev" )
-    add_obsolete_integer( CFG_PREFIX "audio-method" )
-    add_obsolete_bool( CFG_PREFIX "stereo" )
-    add_obsolete_integer( CFG_PREFIX "samplerate" )
-
     add_shortcut( "v4l", "v4l2" )
     set_capability( "access", 2 )
     set_callbacks( DemuxOpen, DemuxClose )
diff --git a/modules/codec/svcdsub.c b/modules/codec/svcdsub.c
index d742692d64faa2ff2b9dc90d41cf07f36a121553..c49666dfee1b138d23cf7cd52d558a98b60d8945 100644
--- a/modules/codec/svcdsub.c
+++ b/modules/codec/svcdsub.c
@@ -52,8 +52,6 @@ vlc_module_begin ()
     set_capability( "spu decoder", 50 )
     set_callbacks( DecoderOpen, DecoderClose )
 
-    add_obsolete_integer ( "svcdsub-debug" )
-
     add_submodule ()
     set_description( N_("Philips OGT (SVCD subtitle) packetizer") )
     set_capability( "packetizer", 50 )
diff --git a/modules/codec/x264.c b/modules/codec/x264.c
index 7c4e7e76bd7ad44f3bbb3a4895e1ac3d3b75e417..d9f27739700351d37d2f9967830aca2a23afa9e7 100644
--- a/modules/codec/x264.c
+++ b/modules/codec/x264.c
@@ -469,8 +469,6 @@ vlc_module_begin ()
                  SCENE_LONGTEXT, true )
         change_integer_range( -1, 100 )
 
-    add_obsolete_bool( SOUT_CFG_PREFIX "pre-scenecut" )
-
     add_integer( SOUT_CFG_PREFIX "bframes", 3, BFRAMES_TEXT,
                  BFRAMES_LONGTEXT, true )
         change_integer_range( 0, 16 )
@@ -641,16 +639,12 @@ vlc_module_begin ()
     add_integer( SOUT_CFG_PREFIX "subme", 7, SUBME_TEXT,
                  SUBME_LONGTEXT, true )
 
-    add_obsolete_bool( SOUT_CFG_PREFIX "b-rdo" )
-
     add_bool( SOUT_CFG_PREFIX "mixed-refs", true, MIXED_REFS_TEXT,
               MIXED_REFS_LONGTEXT, true )
 
     add_bool( SOUT_CFG_PREFIX "chroma-me", true, CHROMA_ME_TEXT,
               CHROMA_ME_LONGTEXT, true )
 
-    add_obsolete_bool( SOUT_CFG_PREFIX "bime" )
-
     add_bool( SOUT_CFG_PREFIX "8x8dct", true, TRANSFORM_8X8DCT_TEXT,
               TRANSFORM_8X8DCT_LONGTEXT, true )
 
diff --git a/modules/demux/playlist/playlist.c b/modules/demux/playlist/playlist.c
index bcffb03b7ad5205f1628bf672b245c104ad21072..6302f9879263178765628d999f49ff765b137410 100644
--- a/modules/demux/playlist/playlist.c
+++ b/modules/demux/playlist/playlist.c
@@ -56,8 +56,6 @@ vlc_module_begin ()
     set_category( CAT_INPUT )
     set_subcategory( SUBCAT_INPUT_DEMUX )
 
-    add_obsolete_integer( "parent-item" ) /* removed since 1.1.0 */
-
     add_bool( "playlist-skip-ads", true,
               SKIP_ADS_TEXT, SKIP_ADS_LONGTEXT, false )
 
diff --git a/modules/gui/qt/qt.cpp b/modules/gui/qt/qt.cpp
index 781904361d3a9d6a99df82685d798255ba9fbf37..f420461fdc960ada465cea3ff2b388c8158a1344 100644
--- a/modules/gui/qt/qt.cpp
+++ b/modules/gui/qt/qt.cpp
@@ -379,9 +379,6 @@ vlc_module_begin ()
     add_integer_with_range( "qt-fs-sensitivity", 3, 0, 4000, FULLSCREEN_CONTROL_PIXELS,
             nullptr, true)
 
-    add_obsolete_bool( "qt-blingbling" )      /* Suppressed since 1.0.0 */
-    add_obsolete_integer( "qt-display-mode" ) /* Suppressed since 1.1.0 */
-
     add_obsolete_bool( "qt-adv-options" )     /* Since 2.0.0 */
     add_obsolete_bool( "qt-volume-complete" ) /* Since 2.0.0 */
     add_obsolete_integer( "qt-startvolume" )  /* Since 2.0.0 */
diff --git a/modules/services_discovery/sap.c b/modules/services_discovery/sap.c
index 0bc85d85bc83e1aeec40869123dfac8e3c7af583..da3c1a65cdae6c22a644d97109ec3c67df7808a0 100644
--- a/modules/services_discovery/sap.c
+++ b/modules/services_discovery/sap.c
@@ -649,7 +649,6 @@ vlc_module_begin()
                 SAP_TIMEOUT_TEXT, SAP_TIMEOUT_LONGTEXT, true)
     add_obsolete_bool("sap-parse") /* since 4.0.0 */
     add_obsolete_bool("sap-strict") /* since 4.0.0 */
-    add_obsolete_bool("sap-timeshift") /* Redundant since 1.0.0 */
 
     set_capability("services_discovery", 0)
     set_callbacks(Open, Close)
diff --git a/modules/text_renderer/freetype/freetype.c b/modules/text_renderer/freetype/freetype.c
index 3303e4600034cd90bebce66eb864a608fa437d1d..a0f6f6beb1e42a7425a59ca597db385482ffd130 100644
--- a/modules/text_renderer/freetype/freetype.c
+++ b/modules/text_renderer/freetype/freetype.c
@@ -192,7 +192,6 @@ vlc_module_begin ()
 
     add_obsolete_integer( "freetype-fontsize" );
     add_obsolete_integer( "freetype-rel-fontsize" );
-    add_obsolete_integer( "freetype-effect" );
 
     add_bool( "freetype-yuvp", false, YUVP_TEXT,
               YUVP_LONGTEXT, true )
diff --git a/modules/video_output/fb.c b/modules/video_output/fb.c
index 4ea44c154caeecf23e5188acdeb05f37ba732f88..b248bd08ec1df75d828cbf9c30eae1fe6c900509 100644
--- a/modules/video_output/fb.c
+++ b/modules/video_output/fb.c
@@ -82,7 +82,6 @@ vlc_module_begin ()
     add_loadfile(FB_DEV_VAR, "/dev/fb0", DEVICE_TEXT, DEVICE_LONGTEXT)
     add_bool("fb-tty", true, TTY_TEXT, TTY_LONGTEXT, true)
     add_string( "fb-chroma", NULL, CHROMA_TEXT, CHROMA_LONGTEXT, true )
-    add_obsolete_string("fb-aspect-ratio")
     add_integer("fb-mode", 4, FB_MODE_TEXT, FB_MODE_LONGTEXT,
                  true)
     add_obsolete_bool("fb-hw-accel") /* since 4.0.0 */
diff --git a/modules/video_output/vmem.c b/modules/video_output/vmem.c
index ce077db7a30299d0d73a4efc849cf01f3cdc5220..9650086cb143d23f1ae9a31971507c556011b236 100644
--- a/modules/video_output/vmem.c
+++ b/modules/video_output/vmem.c
@@ -70,9 +70,6 @@ vlc_module_begin()
         change_private()
     add_string("vmem-chroma", "RV16", T_CHROMA, LT_CHROMA, true)
         change_private()
-    add_obsolete_string("vmem-lock") /* obsoleted since 1.1.1 */
-    add_obsolete_string("vmem-unlock") /* obsoleted since 1.1.1 */
-    add_obsolete_string("vmem-data") /* obsoleted since 1.1.1 */
 
     set_callback_display(Open, 0)
 vlc_module_end()
diff --git a/modules/video_output/xcb/window.c b/modules/video_output/xcb/window.c
index 8d65b0dcf7fa0ea28538c7ac3302c00e30d39af5..2e826de23c3950136e2f4b3cc8144138bb6db123 100644
--- a/modules/video_output/xcb/window.c
+++ b/modules/video_output/xcb/window.c
@@ -981,12 +981,6 @@ vlc_module_begin ()
     set_capability ("vout window", 10)
     set_callback(Open)
 
-    /* Obsolete since 1.1.0: */
-    add_obsolete_bool ("x11-altfullscreen")
-    add_obsolete_bool ("xvideo-altfullscreen")
-    add_obsolete_bool ("xvmc-altfullscreen")
-    add_obsolete_bool ("glx-altfullscreen")
-
     add_submodule ()
     set_shortname (N_("Drawable"))
     set_description (N_("Embedded window video"))
diff --git a/modules/video_splitter/panoramix.c b/modules/video_splitter/panoramix.c
index 9790bb2c4ab8496f382e946d75a544b2cbee4e07..0b99aee3b241c17706b092a7fd6eb7390708d213 100644
--- a/modules/video_splitter/panoramix.c
+++ b/modules/video_splitter/panoramix.c
@@ -166,10 +166,6 @@ vlc_module_begin()
     add_integer_with_range( CFG_PREFIX "bz-whitelevel-red", 0, 0, 255, RGAMMA_WL_TEXT, RGAMMA_WL_LONGTEXT, true )
     add_integer_with_range( CFG_PREFIX "bz-whitelevel-green", 0, 0, 255, GGAMMA_WL_TEXT, GGAMMA_WL_LONGTEXT, true )
     add_integer_with_range( CFG_PREFIX "bz-whitelevel-blue", 0, 0, 255, BGAMMA_WL_TEXT, BGAMMA_WL_LONGTEXT, true )
-#ifndef _WIN32
-    add_obsolete_bool( CFG_PREFIX "xinerama" );
-#endif
-    add_obsolete_bool( CFG_PREFIX "offset-x" )
 #endif
 
     add_string( CFG_PREFIX "active", NULL, ACTIVE_TEXT, ACTIVE_LONGTEXT, true )
diff --git a/modules/visualization/visual/visual.c b/modules/visualization/visual/visual.c
index 15cc1454f5306c89c655e2add9e5ebc2bf4d3f04..b3f123e76180c0c52dbe2d23c9a03d301fdff046 100644
--- a/modules/visualization/visual/visual.c
+++ b/modules/visualization/visual/visual.c
@@ -132,11 +132,8 @@ vlc_module_begin ()
     add_float("effect-kaiser-param", 3.0f,
             KAISER_PARAMETER_TEXT, KAISER_PARAMETER_LONGTEXT, true )
     set_section( N_("Spectrum analyser") , NULL )
-    add_obsolete_integer( "visual-nbbands" ) /* Since 1.0.0 */
     add_bool("visual-80-bands", true,
              NBBANDS_TEXT, NULL, true );
-    add_obsolete_integer( "visual-separ" ) /* Since 1.0.0 */
-    add_obsolete_integer( "visual-amp" ) /* Since 1.0.0 */
     add_bool("visual-peaks", true,
              PEAKS_TEXT, NULL, true )
     set_section( N_("Spectrometer") , NULL )
@@ -152,7 +149,6 @@ vlc_module_begin ()
              COLOR1_TEXT, COLOR1_LONGTEXT, true )
     add_bool("spect-show-bands", true,
              BANDS_TEXT, NULL, true );
-    add_obsolete_integer( "spect-nbbands" ) /* Since 1.0.0 */
     add_bool("spect-80-bands", true,
              NBBANDS_TEXT, NULL, true )
     add_integer("spect-separ", 1,
diff --git a/src/libvlc-module.c b/src/libvlc-module.c
index 16ca4fedc3a0abc898417d26634ab5cc405ea02f..70129e207827a62a3ddfb38ed3c983e5fae18cac 100644
--- a/src/libvlc-module.c
+++ b/src/libvlc-module.c
@@ -1555,7 +1555,6 @@ vlc_module_begin ()
         change_float_range( 1., AOUT_VOLUME_DEFAULT )
     add_bool( "volume-save", true, VOLUME_SAVE_TEXT, NULL, true )
     add_obsolete_integer( "aout-rate" ) /* since 2.0.0 */
-    add_obsolete_bool( "hq-resampling" ) /* since 1.1.8 */
 #if defined(__ANDROID__) || defined(__APPLE__) || defined(_WIN32)
     add_bool( "spdif", false, SPDIF_TEXT, SPDIF_LONGTEXT, true )
 #else
@@ -1632,8 +1631,6 @@ vlc_module_begin ()
               KEYBOARD_EVENTS_LONGTEXT, true )
     add_bool( "mouse-events", true, MOUSE_EVENTS_TEXT,
               MOUSE_EVENTS_LONGTEXT, true )
-    add_obsolete_integer( "vout-event" ) /* deprecated since 1.1.0 */
-    add_obsolete_integer( "x11-event" ) /* renamed since 1.0.0 */
     add_bool( "video-on-top", 0, VIDEO_ON_TOP_TEXT,
               VIDEO_ON_TOP_LONGTEXT, false )
     add_bool( "video-wallpaper", false, WALLPAPER_TEXT,
@@ -2029,9 +2026,6 @@ vlc_module_begin ()
     add_module("dec-dev", "decoder device", "any", DEC_DEV_TEXT, DEC_DEV_LONGTEXT)
 
     set_subcategory( SUBCAT_INPUT_SCODEC )
-
-    add_obsolete_bool( "prefer-system-codecs" )
-
     set_subcategory( SUBCAT_INPUT_STREAM_FILTER )
 
     add_module_list("stream-filter", "stream_filter", NULL,
@@ -2084,7 +2078,6 @@ vlc_module_begin ()
 
 /* CPU options */
     set_category( CAT_ADVANCED )
-    add_obsolete_bool( "fpu" )
 #if defined( __i386__ ) || defined( __x86_64__ )
     add_obsolete_bool( "mmx" ) /* since 2.0.0 */
     add_obsolete_bool( "3dn" ) /* since 2.0.0 */
@@ -2710,7 +2703,6 @@ vlc_module_begin ()
             DEINTERLACE_MODE_KEY_TEXT, DEINTERLACE_MODE_KEY_LONGTEXT)
     add_key("key-intf-show", KEY_INTF_TOGGLE_FSC,
             INTF_TOGGLE_FSC_KEY_TEXT, INTF_TOGGLE_FSC_KEY_LONGTEXT)
-    add_obsolete_inner( "key-intf-hide", CONFIG_ITEM_KEY )
 
     add_key("key-intf-boss", KEY_INTF_BOSS,
             INTF_BOSS_KEY_TEXT, INTF_BOSS_KEY_LONGTEXT)
@@ -2875,7 +2867,6 @@ vlc_module_begin ()
         change_volatile ()
     add_bool( "ignore-config", true, IGNORE_CONFIG_TEXT, "", false )
         change_volatile ()
-    add_obsolete_bool( "save-config" )
     add_bool( "reset-config", false, RESET_CONFIG_TEXT, "", false )
         change_volatile ()
 #ifdef HAVE_DYNAMIC_PLUGINS