+#define CACHING_TEXT N_("Caching value in ms")
+#define CACHING_LONGTEXT N_( \
+ "Caching value for FTP streams. This " \
+ "value should be set in milliseconds." )
+#define USER_TEXT N_("FTP user name")
+#define USER_LONGTEXT N_("User name that will " \
+ "be used for the connection.")
+#define PASS_TEXT N_("FTP password")
+#define PASS_LONGTEXT N_("Password that will be " \
+ "used for the connection.")
+#define ACCOUNT_TEXT N_("FTP account")
+#define ACCOUNT_LONGTEXT N_("Account that will be " \
+ "used for the connection.")
+
+vlc_module_begin ()
+ set_shortname( "FTP" )
+ set_description( N_("FTP input") )
+ set_capability( "access", 0 )
+ set_category( CAT_INPUT )
+ set_subcategory( SUBCAT_INPUT_ACCESS )
+ add_integer( "ftp-caching", 2 * DEFAULT_PTS_DELAY / 1000, NULL,
+ CACHING_TEXT, CACHING_LONGTEXT, true )
+ change_safe()
+ add_string( "ftp-user", "anonymous", NULL, USER_TEXT, USER_LONGTEXT,
+ false )
+ add_string( "ftp-pwd", "anonymous@example.com", NULL, PASS_TEXT,
+ PASS_LONGTEXT, false )
+ add_string( "ftp-account", "anonymous", NULL, ACCOUNT_TEXT,
+ ACCOUNT_LONGTEXT, false )
+ add_shortcut( "ftp" )
+ set_callbacks( InOpen, InClose )
+
+ add_submodule ()
+ set_shortname( "FTP" )
+ set_description( N_("FTP upload output") )
+ set_capability( "sout access", 0 )
+ set_category( CAT_SOUT )
+ set_subcategory( SUBCAT_SOUT_ACO )
+ add_shortcut( "ftp" )
+ set_callbacks( OutOpen, OutClose )
+vlc_module_end ()