/* former option name (args=const char *) */
VLC_CONFIG_SAFE,
- /* usable by external plugins (args=none) */
+ /* tag as modifiable by untrusted input item "sources" (args=none) */
};
add_integer( "dvb-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT,
CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-frequency", 11954000, NULL, FREQ_TEXT, FREQ_LONGTEXT,
VLC_FALSE );
- change_safe();
# if defined(WIN32) || defined(WINCE)
# else
add_integer( "dvb-adapter", 0, NULL, ADAPTER_TEXT, ADAPTER_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "dvb-device", 0, NULL, DEVICE_TEXT, DEVICE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "dvb-probe", 1, NULL, PROBE_TEXT, PROBE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "dvb-budget-mode", 0, NULL, BUDGET_TEXT, BUDGET_LONGTEXT,
VLC_TRUE );
- change_safe();
# endif
/* DVB-S (satellite) */
add_integer( "dvb-inversion", 2, NULL, INVERSION_TEXT,
INVERSION_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_inversion_list, ppsz_inversion_text, 0 );
# if defined(WIN32) || defined(WINCE)
add_string( "dvb-polarisation", NULL, NULL, POLARISATION_TEXT,
POLARISATION_LONGTEXT, VLC_TRUE );
- change_safe();
change_string_list( ppsz_polar_list, ppsz_polar_text, 0 );
add_integer( "dvb-network-id", 0, NULL, NETID_TEXT, NETID_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "dvb-azimuth", 0, NULL, AZIMUTH_TEXT, AZIMUTH_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "dvb-elevation", 0, NULL, ELEVATION_TEXT,
ELEVATION_LONGTEXT, VLC_TRUE );
add_integer( "dvb-longitude", 0, NULL, LONGITUDE_TEXT,
LONGITUDE_LONGTEXT, VLC_TRUE );
- change_safe();
/* Note: Polaristion H = voltage 18; V = voltage 13; */
# else
add_integer( "dvb-satno", 0, NULL, SATNO_TEXT, SATNO_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "dvb-voltage", 13, NULL, VOLTAGE_TEXT, VOLTAGE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "dvb-high-voltage", 0, NULL, HIGH_VOLTAGE_TEXT,
HIGH_VOLTAGE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-tone", -1, NULL, TONE_TEXT, TONE_LONGTEXT,
VLC_TRUE );
- change_safe();
# endif
add_integer( "dvb-lnb-lof1", 0, NULL, LNB_LOF1_TEXT,
LNB_LOF1_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-lnb-lof2", 0, NULL, LNB_LOF2_TEXT,
LNB_LOF2_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-lnb-slof", 0, NULL, LNB_SLOF_TEXT,
LNB_SLOF_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-fec", 9, NULL, FEC_TEXT, FEC_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-srate", 27500000, NULL, SRATE_TEXT, SRATE_LONGTEXT,
VLC_FALSE );
- change_safe();
/* DVB-C (cable) */
add_integer( "dvb-modulation", -1, NULL, MODULATION_TEXT,
MODULATION_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_qam_list, ppsz_qam_text, 0 );
/* DVB-T (terrestrial) */
add_integer( "dvb-code-rate-hp", -1, NULL, CODE_RATE_HP_TEXT,
CODE_RATE_HP_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_hp_fec_list, ppsz_hp_fec_text, 0 );
add_integer( "dvb-code-rate-lp", -1, NULL, CODE_RATE_LP_TEXT,
CODE_RATE_LP_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_lp_fec_list, ppsz_lp_fec_text, 0 );
add_integer( "dvb-bandwidth", 0, NULL, BANDWIDTH_TEXT, BANDWIDTH_LONGTEXT,
VLC_TRUE );
- change_safe();
change_integer_list( i_band_list, ppsz_band_text, 0 );
add_integer( "dvb-guard", -1, NULL, GUARD_TEXT, GUARD_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_guard_list, ppsz_guard_text, 0 );
add_integer( "dvb-transmission", -1, NULL, TRANSMISSION_TEXT,
TRANSMISSION_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_transmission_list, ppsz_transmission_text, 0 );
add_integer( "dvb-hierarchy", -1, NULL, HIERARCHY_TEXT, HIERARCHY_LONGTEXT,
VLC_TRUE );
- change_safe();
change_integer_list( i_hierarchy_list, ppsz_hierarchy_text, 0 );
set_capability( "access2", 0 );
add_usage_hint( N_("[cdda:][device][@[track]]") );
add_integer( "cdda-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT,
CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "cdda-track", -1 , NULL, NULL, NULL, VLC_TRUE );
change_internal();
- change_safe();
add_integer( "cdda-first-sector", -1, NULL, NULL, NULL, VLC_TRUE );
change_internal();
- change_safe();
add_integer( "cdda-last-sector", -1, NULL, NULL, NULL, VLC_TRUE );
change_internal();
- change_safe();
add_string( "cddb-server", "freedb.freedb.org", NULL,
N_( "CDDB Server" ), N_( "Address of the CDDB server to use." ),
VLC_TRUE );
- change_safe();
add_integer( "cddb-port", 8880, NULL,
N_( "CDDB port" ), N_( "CDDB Server port to use." ),
VLC_TRUE );
- change_safe();
add_shortcut( "cdda" );
add_shortcut( "cddasimple" );
vlc_module_end();
add_integer ( MODULE_STRING "-debug", 0, CDDADebugCB,
N_("Additional debug"),
DEBUG_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( MODULE_STRING "-caching",
DEFAULT_PTS_DELAY / MILLISECONDS_PER_SEC, NULL,
N_("Caching value in microseconds"),
CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( MODULE_STRING "-blocks-per-read",
DEFAULT_BLOCKS_PER_READ, CDDABlocksPerReadCB,
N_("Number of blocks per CD read"),
BLOCKS_PER_READ_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( MODULE_STRING "-title-format",
"Track %T. %t", NULL,
N_("Format to use in playlist \"title\" field when no CDDB"),
TITLE_FMT_LONGTEXT, VLC_TRUE );
- change_safe();
#if LIBCDIO_VERSION_NUM >= 73
add_bool( MODULE_STRING "-analog-output", VLC_FALSE, NULL,
N_("Use CD audio controls and output?"),
N_("If set, audio controls and audio jack output are used"),
VLC_FALSE );
- change_safe();
#endif
add_bool( MODULE_STRING "-cdtext-enabled", VLC_TRUE, CDTextEnabledCB,
N_("Do CD-Text lookups?"),
N_("If set, get CD-Text information"),
VLC_FALSE );
- change_safe();
add_bool( MODULE_STRING "-navigation-mode", VLC_TRUE,
#if FIXED
N_("Tracks are navigated via Navagation rather than "
"a playlist entries"),
VLC_FALSE );
- change_safe();
#if LIBCDIO_VERSION_NUM >= 72
add_string( MODULE_STRING "-paranoia", NULL, NULL,
PARANOIA_LONGTEXT,
VLC_FALSE );
change_string_list( psz_paranoia_list, psz_paranoia_list_text, 0 );
- change_safe();
#endif /* LIBCDIO_VERSION_NUM >= 72 */
#ifdef HAVE_LIBCDDB
"Track %T. %t - %p %A", NULL,
N_("Format to use in playlist \"title\" field when using CDDB"),
CDDB_TITLE_FMT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( MODULE_STRING "-cddb-enabled", VLC_TRUE, CDDBEnabledCB,
N_("CDDB lookups"),
N_("If set, lookup CD-DA track information using the CDDB "
"protocol"),
VLC_FALSE );
- change_safe();
add_string( MODULE_STRING "-cddb-server", "freedb.freedb.org", NULL,
N_("CDDB server"),
N_( "Contact this CDDB server look up CD-DA information"),
VLC_TRUE );
- change_safe();
add_integer( MODULE_STRING "-cddb-port", 8880, NULL,
N_("CDDB server port"),
N_("CDDB server uses this port number to communicate on"),
VLC_TRUE );
- change_safe();
add_string( MODULE_STRING "-cddb-email", "me@home", NULL,
N_("email address reported to CDDB server"),
N_("email address reported to CDDB server"),
VLC_TRUE );
- change_safe();
add_bool( MODULE_STRING "-cddb-enable-cache", VLC_TRUE, NULL,
N_("Cache CDDB lookups?"),
N_("If set cache CDDB information about this CD"),
VLC_FALSE );
- change_safe();
add_bool( MODULE_STRING "-cddb-httpd", VLC_FALSE, NULL,
N_("Contact CDDB via the HTTP protocol?"),
N_("If set, the CDDB server gets information via the CDDB HTTP "
"protocol"),
VLC_TRUE );
- change_safe();
add_integer( MODULE_STRING "-cddb-timeout", 10, NULL,
N_("CDDB server timeout"),
N_("Time (in seconds) to wait for a response from the "
"CDDB server"),
VLC_FALSE );
- change_safe();
add_string( MODULE_STRING "-cddb-cachedir", "~/.cddbslave", NULL,
N_("Directory to cache CDDB requests"),
N_("Directory to cache CDDB requests"),
VLC_TRUE );
- /* XXX: change_safe(); ?*/
add_bool( MODULE_STRING "-cdtext-prefer", VLC_TRUE, CDTextPreferCB,
N_("Prefer CD-Text info to CDDB info?"),
N_("If set, CD-Text information will be preferred "
"to CDDB information when both are available"),
VLC_FALSE );
- change_safe();
#endif /*HAVE_LIBCDDB*/
vlc_module_end();
add_shortcut( "directory" );
add_shortcut( "dir" );
add_shortcut( "file" );
-
add_string( "recursive", "expand" , NULL, RECURSIVE_TEXT,
RECURSIVE_LONGTEXT, VLC_FALSE );
- change_string_list( psz_recursive_list, psz_recursive_list_text, 0 );
- change_safe();
-
+ change_string_list( psz_recursive_list, psz_recursive_list_text, 0 );
add_string( "ignore-filetypes", "m3u,db,nfo,jpg,gif,sfv,txt,sub,idx,srt,cue",
NULL, IGNORE_TEXT, IGNORE_LONGTEXT, VLC_FALSE );
- change_safe();
-
set_callbacks( Open, Close );
add_submodule();
set_category( CAT_INPUT );
set_subcategory( SUBCAT_INPUT_ACCESS );
add_integer( "dv-caching", 60000 / 1000, NULL, CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "access2", 0 );
add_shortcut( "dv" );
add_shortcut( "dv1394" );
add_integer( "dvb-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT,
CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-adapter", 0, NULL, ADAPTER_TEXT, ADAPTER_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "dvb-device", 0, NULL, DEVICE_TEXT, DEVICE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "dvb-frequency", 11954000, NULL, FREQ_TEXT, FREQ_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "dvb-inversion", 2, NULL, INVERSION_TEXT, INVERSION_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "dvb-probe", 1, NULL, PROBE_TEXT, PROBE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "dvb-budget-mode", 0, NULL, BUDGET_TEXT, BUDGET_LONGTEXT,
VLC_TRUE );
- change_safe();
/* DVB-S (satellite) */
add_integer( "dvb-satno", 0, NULL, SATNO_TEXT, SATNO_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "dvb-voltage", 13, NULL, VOLTAGE_TEXT, VOLTAGE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "dvb-high-voltage", 0, NULL, HIGH_VOLTAGE_TEXT,
HIGH_VOLTAGE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-tone", -1, NULL, TONE_TEXT, TONE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "dvb-fec", 9, NULL, FEC_TEXT, FEC_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-srate", 27500000, NULL, SRATE_TEXT, SRATE_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "dvb-lnb-lof1", 0, NULL, LNB_LOF1_TEXT,
LNB_LOF1_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-lnb-lof2", 0, NULL, LNB_LOF2_TEXT,
LNB_LOF2_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-lnb-slof", 0, NULL, LNB_SLOF_TEXT,
LNB_SLOF_LONGTEXT, VLC_TRUE );
- change_safe();
/* DVB-C (cable) */
add_integer( "dvb-modulation", 0, NULL, MODULATION_TEXT,
MODULATION_LONGTEXT, VLC_TRUE );
- change_safe();
/* DVB-T (terrestrial) */
add_integer( "dvb-code-rate-hp", 9, NULL, CODE_RATE_HP_TEXT,
CODE_RATE_HP_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-code-rate-lp", 9, NULL, CODE_RATE_LP_TEXT,
CODE_RATE_LP_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-bandwidth", 0, NULL, BANDWIDTH_TEXT, BANDWIDTH_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "dvb-guard", 0, NULL, GUARD_TEXT, GUARD_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-transmission", 0, NULL, TRANSMISSION_TEXT,
TRANSMISSION_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "dvb-hierarchy", 0, NULL, HIERARCHY_TEXT, HIERARCHY_LONGTEXT,
VLC_TRUE );
- change_safe();
#ifdef ENABLE_HTTPD
/* MMI HTTP interface */
set_section( N_("HTTP server" ), 0 );
add_string( "dvb-http-host", NULL, NULL, HOST_TEXT, HOST_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "dvb-http-user", NULL, NULL, USER_TEXT, USER_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "dvb-http-password", NULL, NULL, PASSWORD_TEXT,
PASSWORD_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "dvb-http-acl", NULL, NULL, ACL_TEXT, ACL_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "dvb-http-intf-cert", NULL, NULL, CERT_TEXT, CERT_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "dvb-http-intf-key", NULL, NULL, KEY_TEXT, KEY_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "dvb-http-intf-ca", NULL, NULL, CA_TEXT, CA_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "dvb-http-intf-crl", NULL, NULL, CRL_TEXT, CRL_LONGTEXT,
VLC_TRUE );
- change_safe();
#endif
set_capability( "access2", 0 );
set_subcategory( SUBCAT_INPUT_ACCESS );
add_integer( "dvdnav-angle", 1, NULL, ANGLE_TEXT,
ANGLE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "dvdnav-caching", DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "dvdnav-menu", VLC_TRUE, NULL,
MENU_TEXT, MENU_LONGTEXT, VLC_FALSE );
- change_safe();
set_capability( "access_demux", 5 );
add_shortcut( "dvd" );
add_shortcut( "dvdnav" );
set_subcategory( SUBCAT_INPUT_ACCESS );
add_integer( "dvdread-angle", 1, NULL, ANGLE_TEXT,
ANGLE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "dvdread-caching", DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "dvdread-css-method", NULL, NULL, CSSMETHOD_TEXT,
CSSMETHOD_LONGTEXT, VLC_TRUE );
- change_safe();
change_string_list( psz_css_list, psz_css_list_text, 0 );
set_capability( "access_demux", 0 );
add_shortcut( "dvd" );
add_integer( "fake-caching", DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( "fake-fps", 25.0, NULL, FPS_TEXT, FPS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "fake-id", 0, NULL, ID_TEXT, ID_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "fake-duration", 0, NULL, DURATION_TEXT, DURATION_LONGTEXT,
VLC_TRUE );
- change_safe();
add_shortcut( "fake" );
set_capability( "access_demux", 0 );
set_category( CAT_INPUT );
set_subcategory( SUBCAT_INPUT_ACCESS );
add_integer( "file-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_obsolete_string( "file-cat" );
set_capability( "access2", 50 );
add_shortcut( "file" );
set_subcategory( SUBCAT_INPUT_ACCESS );
add_integer( "ftp-caching", 2 * DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "ftp-user", "anonymous", NULL, USER_TEXT, USER_LONGTEXT,
VLC_FALSE );
- change_safe();
add_string( "ftp-pwd", "anonymous@example.com", NULL, PASS_TEXT,
PASS_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "ftp-account", "anonymous", NULL, ACCOUNT_TEXT,
ACCOUNT_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "ftp" );
set_callbacks( InOpen, InClose );
set_category( CAT_INPUT );
set_subcategory( SUBCAT_INPUT_ACCESS );
add_integer( "gnomevfs-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "access2", 10 );
add_shortcut( "gnomevfs" );
set_callbacks( Open, Close );
add_string( "http-proxy", NULL, NULL, PROXY_TEXT, PROXY_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "http-caching", 4 * DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "http-user-agent", COPYRIGHT_MESSAGE , NULL, AGENT_TEXT,
AGENT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "http-reconnect", 0, NULL, RECONNECT_TEXT,
RECONNECT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "http-continuous", 0, NULL, CONTINUOUS_TEXT,
CONTINUOUS_LONGTEXT, VLC_TRUE );
- change_safe();
add_obsolete_string("http-user");
add_obsolete_string("http-pwd");
add_shortcut( "http" );
add_integer( "jack-input-caching", DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "jack-input-use-vlc-pace", VLC_FALSE, NULL,
PACE_TEXT, PACE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "jack-input-auto-connect", VLC_FALSE, NULL,
PACE_TEXT, PACE_LONGTEXT, VLC_TRUE );
- change_safe();
add_shortcut( "jack" );
set_callbacks( Open, Close );
add_integer( "mms-caching", 19 * DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "mms-all", 0, NULL, ALL_TEXT, ALL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "mms-maxbitrate", 0, NULL, BITRATE_TEXT, BITRATE_LONGTEXT ,
VLC_FALSE );
- change_safe();
add_string( "mmsh-proxy", NULL, NULL, PROXY_TEXT, PROXY_LONGTEXT,
VLC_FALSE );
- change_safe();
add_shortcut( "mms" );
add_shortcut( "mmsu" );
add_integer( "pvr-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT,
CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "pvr-device", "/dev/video0", NULL, DEVICE_TEXT,
DEVICE_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "pvr-radio-device", "/dev/radio0", NULL, RADIO_DEVICE_TEXT,
RADIO_DEVICE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "pvr-norm", V4L2_STD_UNKNOWN , NULL, NORM_TEXT,
NORM_LONGTEXT, VLC_FALSE );
- change_safe();
- change_integer_list( i_norm_list, psz_norm_list_text, 0 );
+ change_integer_list( i_norm_list, psz_norm_list_text, 0 );
add_integer( "pvr-width", -1, NULL, WIDTH_TEXT, WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "pvr-height", -1, NULL, HEIGHT_TEXT, HEIGHT_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "pvr-frequency", -1, NULL, FREQUENCY_TEXT, FREQUENCY_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "pvr-framerate", -1, NULL, FRAMERATE_TEXT, FRAMERATE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "pvr-keyint", -1, NULL, KEYINT_TEXT, KEYINT_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "pvr-bframes", -1, NULL, FRAMERATE_TEXT, FRAMERATE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "pvr-bitrate", -1, NULL, BITRATE_TEXT, BITRATE_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "pvr-bitrate-peak", -1, NULL, BITRATE_PEAK_TEXT,
BITRATE_PEAK_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "pvr-bitrate-mode", -1, NULL, BITRATE_MODE_TEXT,
BITRATE_MODE_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_bitrates, psz_bitrates_list_text, 0 );
add_integer( "pvr-audio-bitmask", -1, NULL, BITMASK_TEXT,
BITMASK_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "pvr-audio-volume", -1, NULL, VOLUME_TEXT,
VOLUME_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "pvr-channel", -1, NULL, CHAN_TEXT, CHAN_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
set_subcategory( SUBCAT_INPUT_ACCESS );
add_integer( "realrtsp-caching", 3000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "access2", 10 );
set_callbacks( Open, Close );
add_shortcut( "realrtsp" );
add_integer( "screen-caching", DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( "screen-fps", SCREEN_FPS, 0, FPS_TEXT, FPS_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef WIN32
add_integer( "screen-fragment-size", 0, NULL, FRAGS_TEXT,
FRAGS_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
set_capability( "access_demux", 0 );
set_subcategory( SUBCAT_INPUT_ACCESS );
add_integer( "smb-caching", 2 * DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "smb-user", NULL, NULL, USER_TEXT, USER_LONGTEXT,
VLC_FALSE );
- change_safe();
add_string( "smb-pwd", NULL, NULL, PASS_TEXT,
PASS_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "smb-domain", NULL, NULL, DOMAIN_TEXT,
DOMAIN_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "smb" );
set_callbacks( Open, Close );
vlc_module_end();
add_integer( "tcp-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT,
CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "access2", 0 );
add_shortcut( "tcp" );
add_integer( "udp-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT,
CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "rtp-late", 100, NULL, RTP_LATE_TEXT, RTP_LATE_LONGTEXT, VLC_TRUE );
- change_safe();
add_obsolete_bool( "udp-auto-mtu" );
set_capability( "access2", 0 );
add_integer( "v4l-caching", DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "v4l-vdev", "/dev/video", 0, VDEV_TEXT, VDEV_LONGTEXT,
VLC_FALSE );
- change_safe();
add_string( "v4l-adev", "/dev/dsp", 0, ADEV_TEXT, ADEV_LONGTEXT,
VLC_FALSE );
- change_safe();
add_string( "v4l-chroma", NULL, NULL, CHROMA_TEXT, CHROMA_LONGTEXT,
VLC_TRUE );
- change_safe();
add_float( "v4l-fps", -1.0, NULL, FPS_TEXT, FPS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "v4l-samplerate", 44100, NULL, SAMPLERATE_TEXT,
SAMPLERATE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "v4l-channel", 0, NULL, CHANNEL_TEXT, CHANNEL_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "v4l-tuner", -1, NULL, TUNER_TEXT, TUNER_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "v4l-norm", VIDEO_MODE_AUTO, NULL, NORM_TEXT, NORM_LONGTEXT,
VLC_FALSE );
- change_safe();
change_integer_list( i_norm_list, psz_norm_list_text, 0 );
add_integer( "v4l-frequency", -1, NULL, FREQUENCY_TEXT, FREQUENCY_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "v4l-audio", -1, NULL, AUDIO_TEXT, AUDIO_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "v4l-stereo", VLC_TRUE, NULL, STEREO_TEXT, STEREO_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "v4l-width", 0, NULL, WIDTH_TEXT, WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "v4l-height", 0, NULL, HEIGHT_TEXT, HEIGHT_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "v4l-brightness", -1, NULL, BRIGHTNESS_TEXT,
BRIGHTNESS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "v4l-colour", -1, NULL, COLOUR_TEXT, COLOUR_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "v4l-hue", -1, NULL, HUE_TEXT, HUE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "v4l-contrast", -1, NULL, CONTRAST_TEXT, CONTRAST_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "v4l-mjpeg", VLC_FALSE, NULL, MJPEG_TEXT, MJPEG_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( "v4l-decimation", 1, NULL, DECIMATION_TEXT,
DECIMATION_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "v4l-quality", 100, NULL, QUALITY_TEXT, QUALITY_LONGTEXT,
VLC_TRUE );
- change_safe();
add_shortcut( "v4l" );
set_capability( "access_demux", 10 );
set_section( N_( "Video input" ), NULL );
add_string( CFG_PREFIX "dev", "/dev/video0", 0, DEV_TEXT, DEV_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "standard", 0, NULL, STANDARD_TEXT,
STANDARD_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( i_standards_list, psz_standards_list_text, 0 );
add_string( CFG_PREFIX "chroma", NULL, NULL, CHROMA_TEXT, CHROMA_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "input", 0, NULL, INPUT_TEXT, INPUT_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "audio-input", 0, NULL, AUDIO_INPUT_TEXT,
AUDIO_INPUT_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "io", IO_METHOD_MMAP, NULL, IOMETHOD_TEXT,
IOMETHOD_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_iomethod_list, psz_iomethod_list_text, 0 );
add_integer( CFG_PREFIX "width", 0, NULL, WIDTH_TEXT,
WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "height", 0, NULL, HEIGHT_TEXT,
HEIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( CFG_PREFIX "fps", 0, NULL, FPS_TEXT, FPS_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_( "Audio input" ), NULL );
add_string( CFG_PREFIX "adev", NULL, 0, ADEV_TEXT, ADEV_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "audio-method", AUDIO_METHOD_OSS|AUDIO_METHOD_ALSA,
NULL, AUDIO_METHOD_TEXT, AUDIO_METHOD_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( CFG_PREFIX "stereo", VLC_TRUE, NULL, STEREO_TEXT, STEREO_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "samplerate", 48000, NULL, SAMPLERATE_TEXT,
SAMPLERATE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "caching", DEFAULT_PTS_DELAY / 1000, NULL,
CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_( "Tuner" ), NULL );
add_integer( CFG_PREFIX "tuner", 0, NULL, TUNER_TEXT, TUNER_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "tuner-frequency", -1, NULL, FREQUENCY_TEXT,
FREQUENCY_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "tuner-audio-mode", -1, NULL, TUNER_AUDIO_MODE_TEXT,
TUNER_AUDIO_MODE_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( i_tuner_audio_modes_list,
psz_tuner_audio_modes_list_text, 0 );
N_( "v4l2 driver controls, if supported by your v4l2 driver." ) );
add_bool( CFG_PREFIX "controls-reset", VLC_FALSE, NULL, CTRL_RESET_TEXT,
CTRL_RESET_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "brightness", -1, NULL, BRIGHTNESS_TEXT,
BRIGHTNESS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "contrast", -1, NULL, CONTRAST_TEXT,
CONTRAST_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "saturation", -1, NULL, SATURATION_TEXT,
SATURATION_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "hue", -1, NULL, HUE_TEXT,
HUE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "black-level", -1, NULL, BLACKLEVEL_TEXT,
BLACKLEVEL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "auto-white-balance", -1, NULL,
AUTOWHITEBALANCE_TEXT, AUTOWHITEBALANCE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "do-white-balance", -1, NULL, DOWHITEBALANCE_TEXT,
DOWHITEBALANCE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "red-balance", -1, NULL, REDBALANCE_TEXT,
REDBALANCE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "blue-balance", -1, NULL, BLUEBALANCE_TEXT,
BLUEBALANCE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "gamma", -1, NULL, GAMMA_TEXT,
GAMMA_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "exposure", -1, NULL, EXPOSURE_TEXT,
EXPOSURE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "autogain", -1, NULL, AUTOGAIN_TEXT,
AUTOGAIN_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "gain", -1, NULL, GAIN_TEXT,
GAIN_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "hflip", -1, NULL, HFLIP_TEXT,
HFLIP_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "vflip", -1, NULL, VFLIP_TEXT,
VFLIP_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "hcenter", -1, NULL, HCENTER_TEXT,
HCENTER_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "vcenter", -1, NULL, VCENTER_TEXT,
VCENTER_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "audio-volume", -1, NULL, AUDIO_VOLUME_TEXT,
AUDIO_VOLUME_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "audio-balance", -1, NULL, AUDIO_BALANCE_TEXT,
AUDIO_BALANCE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( CFG_PREFIX "audio-mute", VLC_FALSE, NULL, AUDIO_MUTE_TEXT,
AUDIO_MUTE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "audio-bass", -1, NULL, AUDIO_BASS_TEXT,
AUDIO_BASS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "audio-treble", -1, NULL, AUDIO_TREBLE_TEXT,
AUDIO_TREBLE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "audio-loudness", -1, NULL, AUDIO_LOUDNESS_TEXT,
AUDIO_LOUDNESS_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( CFG_PREFIX "set-ctrls", NULL, NULL, S_CTRLS_TEXT,
S_CTRLS_LONGTEXT, VLC_TRUE );
- change_safe();
add_shortcut( "v4l2" );
set_capability( "access_demux", 10 );
add_usage_hint( N_("[vcd:][device][@[title][,[chapter]]]") );
add_integer( "vcd-caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT,
CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_shortcut( "vcd" );
add_shortcut( "svcd" );
vlc_module_end();
add_integer ( MODULE_STRING "-debug", 0, NULL,
N_("If nonzero, this gives additional debug information."),
DEBUG_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer ( MODULE_STRING "-blocks-per-read", 20,
NULL,
N_("Number of CD blocks to get in a single read."),
N_("Number of CD blocks to get in a single read."),
VLC_TRUE );
- change_safe();
add_bool( MODULE_STRING "-PBC", 0, NULL,
N_("Use playback control?"),
N_("If VCD is authored with playback control, use it. "
"Otherwise we play by tracks."),
VLC_FALSE );
- change_safe();
add_bool( MODULE_STRING "-track-length", VLC_TRUE,
NULL,
N_("If set, the length of the seek bar is the track rather than "
"the length of an entry."),
VLC_FALSE );
- change_safe();
add_bool( MODULE_STRING "-extended-info", 0, NULL,
N_("Show extended VCD info?"),
N_("Show the maximum amount of information under Stream and "
"Media Info. Shows for example playback control navigation."),
VLC_FALSE );
- change_safe();
add_string( MODULE_STRING "-author-format",
"%v - %F disc %c of %C",
NULL,
N_("Format to use in the playlist's \"author\" field."),
VCD_TITLE_FMT_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( MODULE_STRING "-title-format",
"%I %N %L%S - %M %A %v - disc %c of %C %F",
NULL,
N_("Format to use in the playlist's \"title\" field."),
VCD_TITLE_FMT_LONGTEXT, VLC_FALSE );
- change_safe();
vlc_module_end();
add_integer ("access-bandwidth", 65536, NULL, BANDWIDTH_TEXT,
BANDWIDTH_LONGTEXT, VLC_FALSE);
- change_safe();
-
vlc_module_end();
static ssize_t Read (access_t *access, uint8_t *buffer, size_t len);
add_bool ("dump-force", VLC_FALSE, NULL, FORCE_TEXT,
FORCE_LONGTEXT, VLC_FALSE);
- change_safe();
add_integer ("dump-margin", DEFAULT_MARGIN, NULL, MARGIN_TEXT,
MARGIN_LONGTEXT, VLC_FALSE);
- change_safe();
-
vlc_module_end();
static ssize_t Read (access_t *access, uint8_t *buffer, size_t len);
add_directory( "record-path", NULL, NULL,
RECORD_PATH_TXT, RECORD_PATH_LONGTXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
add_integer( "timeshift-granularity", 50, NULL, GRANULARITY_TEXT,
GRANULARITY_LONGTEXT, VLC_TRUE );
- change_safe();
-
add_directory( "timeshift-dir", 0, 0, DIR_TEXT, DIR_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "timeshift-force", VLC_FALSE, NULL, FORCE_TEXT, FORCE_LONGTEXT,
- VLC_FALSE );
- change_safe();
-
+ VLC_FALSE );
vlc_module_end();
/*****************************************************************************
add_shortcut( "stream" );
add_bool( SOUT_CFG_PREFIX "append", 0, NULL, APPEND_TEXT,APPEND_LONGTEXT,
VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
set_subcategory( SUBCAT_SOUT_ACO );
add_string( SOUT_CFG_PREFIX "user", "", NULL,
USER_TEXT, USER_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "pwd", "", NULL,
PASS_TEXT, PASS_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "mime", "", NULL,
MIME_TEXT, MIME_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "cert", "vlc.pem", NULL,
CERT_TEXT, CERT_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "key", NULL, NULL,
KEY_TEXT, KEY_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "ca", NULL, NULL,
CA_TEXT, CA_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "crl", NULL, NULL,
CRL_TEXT, CRL_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( SOUT_CFG_PREFIX "bonjour", VLC_FALSE, NULL,
BONJOUR_TEXT, BONJOUR_LONGTEXT, VLC_TRUE);
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
add_shortcut( "shout" );
add_string( SOUT_CFG_PREFIX "name", "VLC media player - Live stream", NULL,
NAME_TEXT, NAME_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( SOUT_CFG_PREFIX "description",
"Live stream from VLC media player", NULL,
DESCRIPTION_TEXT, DESCRIPTION_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( SOUT_CFG_PREFIX "mp3", VLC_FALSE, NULL,
MP3_TEXT, MP3_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "genre", "Alternative", NULL,
GENRE_TEXT, GENRE_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( SOUT_CFG_PREFIX "url", "http://www.videolan.org/vlc", NULL,
URL_TEXT, URL_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( SOUT_CFG_PREFIX "bitrate", "", NULL,
BITRATE_TEXT, BITRATE_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( SOUT_CFG_PREFIX "samplerate", "", NULL,
SAMPLERATE_TEXT, SAMPLERATE_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( SOUT_CFG_PREFIX "channels", "", NULL,
CHANNELS_TEXT, CHANNELS_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( SOUT_CFG_PREFIX "quality", "", NULL,
QUALITY_TEXT, QUALITY_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( SOUT_CFG_PREFIX "public", VLC_FALSE, NULL,
PUBLIC_TEXT, PUBLIC_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
set_category( CAT_SOUT );
set_subcategory( SUBCAT_SOUT_ACO );
add_integer( SOUT_CFG_PREFIX "caching", DEFAULT_PTS_DELAY / 1000, NULL, CACHING_TEXT, CACHING_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "group", 1, NULL, GROUP_TEXT, GROUP_LONGTEXT,
VLC_TRUE );
- change_safe();
add_obsolete_integer( SOUT_CFG_PREFIX "late" );
add_obsolete_bool( SOUT_CFG_PREFIX "raw" );
add_bool( SOUT_CFG_PREFIX "auto-mcast", VLC_FALSE, NULL, AUTO_MCAST_TEXT,
AUTO_MCAST_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "sout access", 100 );
add_shortcut( "udp" );
add_integer( "headphone-dim", 10, NULL, HEADPHONE_DIM_TEXT,
HEADPHONE_DIM_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "headphone-compensate", 0, NULL, HEADPHONE_COMPENSATE_TEXT,
HEADPHONE_COMPENSATE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "headphone-dolby", 0, NULL, HEADPHONE_DOLBY_TEXT,
HEADPHONE_DOLBY_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "audio filter", 0 );
set_callbacks( Create, Destroy );
add_bool( MONO_CFG "downmix", VLC_FALSE, NULL, MONO_DOWNMIX_TEXT,
MONO_DOWNMIX_LONGTEXT, VLC_FALSE );
- change_safe();
-
add_integer( MONO_CFG "channel", -1, NULL, MONO_CHANNEL_TEXT,
MONO_CHANNEL_LONGTEXT, VLC_FALSE );
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
- change_safe();
set_category( CAT_AUDIO );
set_subcategory( SUBCAT_AUDIO_MISC );
set_category( CAT_INPUT );
set_subcategory( SUBCAT_INPUT_ACODEC );
add_bool( "a52-dynrng", 1, NULL, DYNRNG_TEXT, DYNRNG_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "a52-upmix", 0, NULL, UPMIX_TEXT, UPMIX_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "audio filter", 100 );
set_callbacks( Create, Destroy );
set_shortname( "DCA" );
set_description( _("DTS Coherent Acoustics audio decoder") );
add_bool( "dts-dynrng", 1, NULL, DYNRNG_TEXT, DYNRNG_LONGTEXT, VLC_FALSE );
- change_safe();
set_capability( "audio filter", 100 );
set_callbacks( Create, Destroy );
add_string( "equalizer-preset", "flat", NULL, PRESET_TEXT,
PRESET_LONGTEXT, VLC_FALSE );
change_string_list( preset_list, preset_list_text, 0 );
- change_safe();
add_string( "equalizer-bands", NULL, NULL, BANDS_TEXT,
BANDS_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "equalizer-2pass", 0, NULL, TWOPASS_TEXT,
TWOPASS_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( "equalizer-preamp", 12.0, NULL, PREAMP_TEXT,
PREAMP_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
add_shortcut( "equalizer" );
vlc_module_end();
add_shortcut( "volnorm" );
add_integer( "norm-buff-size", 20 ,NULL ,BUFF_TEXT, BUFF_LONGTEXT,
VLC_TRUE);
- change_safe();
add_float( "norm-max-level", 2.0, NULL, LEVEL_TEXT,
LEVEL_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "audio filter", 0 );
set_callbacks( Open, Close );
vlc_module_end();
set_subcategory( SUBCAT_AUDIO_AFILTER );
add_float( "param-eq-lowf", 100, NULL, N_("Low freq (Hz)"),"", VLC_FALSE );
- change_safe();
add_float_with_range( "param-eq-lowgain", 0, -20.0, 20.0, NULL,
N_("Low freq gain (dB)"), "",VLC_FALSE );
- change_safe();
add_float( "param-eq-highf", 10000, NULL, N_("High freq (Hz)"),"", VLC_FALSE );
- change_safe();
add_float_with_range( "param-eq-highgain", 0, -20.0, 20.0, NULL,
N_("High freq gain (dB)"),"",VLC_FALSE );
- change_safe();
add_float( "param-eq-f1", 300, NULL, N_("Freq 1 (Hz)"),"", VLC_FALSE );
- change_safe();
add_float_with_range( "param-eq-gain1", 0, -20.0, 20.0, NULL,
N_("Freq 1 gain (dB)"), "",VLC_FALSE );
- change_safe();
add_float_with_range( "param-eq-q1", 3, 0.1, 100.0, NULL,
N_("Freq 1 Q"), "",VLC_FALSE );
- change_safe();
add_float( "param-eq-f2", 1000, NULL, N_("Freq 2 (Hz)"),"", VLC_FALSE );
- change_safe();
add_float_with_range( "param-eq-gain2", 0, -20.0, 20.0, NULL,
N_("Freq 2 gain (dB)"),"",VLC_FALSE );
- change_safe();
add_float_with_range( "param-eq-q2", 3, 0.1, 100.0, NULL,
N_("Freq 2 Q"),"",VLC_FALSE );
- change_safe();
add_float( "param-eq-f3", 3000, NULL, N_("Freq 3 (Hz)"),"", VLC_FALSE );
- change_safe();
add_float_with_range( "param-eq-gain3", 0, -20.0, 20.0, NULL,
N_("Freq 3 gain (dB)"),"",VLC_FALSE );
- change_safe();
add_float_with_range( "param-eq-q3", 3, 0.1, 100.0, NULL,
N_("Freq 3 Q"),"",VLC_FALSE );
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
set_subcategory( SUBCAT_AUDIO_AOUT );
add_string( "alsadev", DEFAULT_ALSA_DEVICE, aout_FindAndRestart,
N_("ALSA Device Name"), NULL, VLC_FALSE );
- change_safe();
change_string_list( ppsz_devices, ppsz_devices_text, FindDevicesCallback );
change_action_add( FindDevicesCallback, N_("Refresh list") );
set_subcategory( SUBCAT_AUDIO_AOUT );
set_callbacks( Open, Close );
add_integer( "macosx-audio-device", 0, NULL, ADEV_TEXT, ADEV_LONGTEXT, VLC_FALSE );
- change_safe();
vlc_module_end();
/*****************************************************************************
add_shortcut( "directx" );
add_integer( "directx-audio-device", 0, NULL, DEVICE_TEXT,
DEVICE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "directx-audio-float32", 0, 0, FLOAT_TEXT,
FLOAT_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( OpenAudio, CloseAudio );
vlc_module_end();
set_shortname( "EsounD" );
set_capability( "audio output", 50 );
add_string( "esdserver", "", NULL, N_("Esound server"), NULL, VLC_FALSE );
- change_safe();
set_category( CAT_AUDIO );
set_subcategory( SUBCAT_AUDIO_AOUT );
set_callbacks( Open, Close );
add_string( "audiofile-format", "s16", NULL,
FORMAT_TEXT, FORMAT_LONGTEXT, VLC_TRUE );
change_string_list( format_list, 0, 0 );
- change_safe();
add_integer( "audiofile-channels", 0, NULL,
CHANNELS_TEXT, CHANNELS_LONGTEXT, VLC_TRUE );
- change_safe();
add_file( "audiofile-file", "audiofile.wav", NULL, FILE_TEXT,
FILE_LONGTEXT, VLC_FALSE );
add_bool( "audiofile-wav", 1, NULL, WAV_TEXT, WAV_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "audio output", 0 );
add_shortcut( "file" );
set_subcategory( SUBCAT_AUDIO_AOUT );
add_bool( AUTO_CONNECT_OPTION, 0, NULL, AUTO_CONNECT_TEXT,
AUTO_CONNECT_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( CONNECT_REGEX_OPTION, NULL, NULL, CONNECT_REGEX_TEXT,
CONNECT_REGEX_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
set_subcategory( SUBCAT_AUDIO_AOUT );
add_file( "dspdev", "/dev/dsp", aout_FindAndRestart,
N_("OSS DSP device"), NULL, VLC_FALSE );
- change_safe(); /* if we specify a normal file it won't be overwritten */
add_bool( "oss-buggy", 0, NULL, BUGGY_TEXT, BUGGY_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "audio output", 100 );
add_shortcut( "oss" );
set_subcategory( SUBCAT_AUDIO_AOUT );
add_integer( "portaudio-device", 0, NULL,
DEVICE_TEXT, DEVICE_LONGTEXT, VLC_FALSE );
- change_safe();
set_capability( "audio output", 0 );
set_callbacks( Open, Close );
vlc_module_end();
set_category( CAT_AUDIO );
set_subcategory( SUBCAT_AUDIO_AOUT );
add_bool( "waveout-float32", 1, 0, FLOAT_TEXT, FLOAT_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
set_callbacks( OpenEncoder, CloseEncoder );
add_float( ENC_CFG_PREFIX "quality", 7.0, NULL, ENC_QUALITY_TEXT,
ENC_QUALITY_LONGTEXT, VLC_FALSE );
- change_safe();
+
vlc_module_end();
/*****************************************************************************
set_callbacks( Open, Close );
add_integer( DVBSUB_CFG_PREFIX "position", 8, NULL, POS_TEXT, POS_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
add_integer( DVBSUB_CFG_PREFIX "x", -1, NULL, POSX_TEXT, POSX_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( DVBSUB_CFG_PREFIX "y", -1, NULL, POSY_TEXT, POSY_LONGTEXT, VLC_FALSE );
- change_safe();
# define ENC_CFG_PREFIX "sout-dvbsub-"
add_submodule();
set_callbacks( OpenEncoder, CloseEncoder );
add_integer( ENC_CFG_PREFIX "x", -1, NULL, ENC_POSX_TEXT, ENC_POSX_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( ENC_CFG_PREFIX "y", -1, NULL, ENC_POSY_TEXT, ENC_POSY_LONGTEXT, VLC_FALSE );
- change_safe();
add_obsolete_integer( ENC_CFG_PREFIX "timeout" ); /* Suppressed since 0.8.5 */
vlc_module_end();
add_file( "fake-file", "", NULL, FILE_TEXT,
FILE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "fake-file-reload", 0, NULL, RELOAD_TEXT,
RELOAD_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "fake-width", 0, NULL, WIDTH_TEXT,
WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "fake-height", 0, NULL, HEIGHT_TEXT,
HEIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "fake-keep-ar", 0, NULL, KEEP_AR_TEXT, KEEP_AR_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "fake-aspect-ratio", "", NULL,
ASPECT_RATIO_TEXT, ASPECT_RATIO_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "fake-deinterlace", 0, NULL, DEINTERLACE_TEXT,
DEINTERLACE_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "fake-deinterlace-module", "deinterlace", NULL,
DEINTERLACE_MODULE_TEXT, DEINTERLACE_MODULE_LONGTEXT,
VLC_FALSE );
- change_safe();
change_string_list( ppsz_deinterlace_type, 0, 0 );
add_string( "fake-chroma", "I420", NULL, CHROMA_TEXT, CHROMA_LONGTEXT,
VLC_TRUE );
- change_safe();
vlc_module_end();
struct decoder_sys_t
add_bool( "ffmpeg-dr", 1, NULL, DR_TEXT, DR_TEXT, VLC_TRUE );
- change_safe();
add_integer ( "ffmpeg-error-resilience", 1, NULL, ERROR_TEXT,
ERROR_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer ( "ffmpeg-workaround-bugs", 1, NULL, BUGS_TEXT, BUGS_LONGTEXT,
VLC_FALSE );
- change_safe();
add_bool( "ffmpeg-hurry-up", 1, NULL, HURRYUP_TEXT, HURRYUP_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "ffmpeg-skip-frame", 0, NULL, SKIP_FRAME_TEXT,
SKIP_FRAME_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_range( -1, 4 );
add_integer( "ffmpeg-skip-idct", 0, NULL, SKIP_IDCT_TEXT,
SKIP_IDCT_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_range( -1, 4 );
add_integer ( "ffmpeg-vismv", 0, NULL, VISMV_TEXT, VISMV_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer ( "ffmpeg-lowres", 0, NULL, LOWRES_TEXT, LOWRES_LONGTEXT,
VLC_TRUE );
- change_safe();
change_integer_range( 0, 2 );
add_integer ( "ffmpeg-skiploopfilter", 0, NULL, SKIPLOOPF_TEXT,
SKIPLOOPF_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( nloopf_list, nloopf_list_text, 0 );
add_integer( "ffmpeg-pp-q", 0, NULL, PP_Q_TEXT, PP_Q_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "ffmpeg-pp-name", "default", NULL, LIBAVCODEC_PP_TEXT,
LIBAVCODEC_PP_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "ffmpeg-debug", 0, NULL, DEBUG_TEXT, DEBUG_LONGTEXT,
VLC_TRUE );
- change_safe();
/* encoder submodule */
add_submodule();
add_string( ENC_CFG_PREFIX "hq", "simple", NULL, ENC_HQ_TEXT,
ENC_HQ_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( enc_hq_list, enc_hq_list_text, 0 );
add_integer( ENC_CFG_PREFIX "keyint", 0, NULL, ENC_KEYINT_TEXT,
ENC_KEYINT_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( ENC_CFG_PREFIX "bframes", 0, NULL, ENC_BFRAMES_TEXT,
ENC_BFRAMES_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( ENC_CFG_PREFIX "hurry-up", 0, NULL, ENC_HURRYUP_TEXT,
ENC_HURRYUP_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( ENC_CFG_PREFIX "interlace", 0, NULL, ENC_INTERLACE_TEXT,
ENC_INTERLACE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( ENC_CFG_PREFIX "interlace-me", 1, NULL, ENC_INTERLACE_ME_TEXT,
ENC_INTERLACE_ME_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( ENC_CFG_PREFIX "vt", 0, NULL, ENC_VT_TEXT,
ENC_VT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( ENC_CFG_PREFIX "pre-me", 0, NULL, ENC_PRE_ME_TEXT,
ENC_PRE_ME_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( ENC_CFG_PREFIX "strict-rc", 0, NULL, ENC_RC_STRICT_TEXT,
ENC_RC_STRICT_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( ENC_CFG_PREFIX "rc-buffer-size", 224*1024*8, NULL,
ENC_RC_BUF_TEXT, ENC_RC_BUF_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( ENC_CFG_PREFIX "rc-buffer-aggressivity", 1.0, NULL,
ENC_RC_BUF_AGGR_TEXT, ENC_RC_BUF_AGGR_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( ENC_CFG_PREFIX "i-quant-factor", 0, NULL,
ENC_IQUANT_FACTOR_TEXT, ENC_IQUANT_FACTOR_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( ENC_CFG_PREFIX "noise-reduction", 0, NULL,
ENC_NOISE_RED_TEXT, ENC_NOISE_RED_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( ENC_CFG_PREFIX "mpeg4-matrix", 0, NULL,
ENC_MPEG4_MATRIX_TEXT, ENC_MPEG4_MATRIX_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( ENC_CFG_PREFIX "qmin", 0, NULL,
ENC_QMIN_TEXT, ENC_QMIN_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( ENC_CFG_PREFIX "qmax", 0, NULL,
ENC_QMAX_TEXT, ENC_QMAX_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( ENC_CFG_PREFIX "trellis", 0, NULL,
ENC_TRELLIS_TEXT, ENC_TRELLIS_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( ENC_CFG_PREFIX "qscale", 0, NULL,
ENC_QSCALE_TEXT, ENC_QSCALE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( ENC_CFG_PREFIX "strict", 0, NULL,
ENC_STRICT_TEXT, ENC_STRICT_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( ENC_CFG_PREFIX "lumi-masking", 0.0, NULL,
ENC_LUMI_MASKING_TEXT, ENC_LUMI_MASKING_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( ENC_CFG_PREFIX "dark-masking", 0.0, NULL,
ENC_DARK_MASKING_TEXT, ENC_DARK_MASKING_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( ENC_CFG_PREFIX "p-masking", 0.0, NULL,
ENC_P_MASKING_TEXT, ENC_P_MASKING_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( ENC_CFG_PREFIX "border-masking", 0.0, NULL,
ENC_BORDER_MASKING_TEXT, ENC_BORDER_MASKING_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( ENC_CFG_PREFIX "luma-elim-threshold", 0, NULL,
ENC_LUMA_ELIM_TEXT, ENC_LUMA_ELIM_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( ENC_CFG_PREFIX "chroma-elim-threshold", 0, NULL,
ENC_CHROMA_ELIM_TEXT, ENC_CHROMA_ELIM_LONGTEXT, VLC_TRUE );
- change_safe();
#if defined(HAVE_FFMPEG_AVFORMAT_H) || defined(HAVE_LIBAVFORMAT_TREE)
/* demux submodule */
set_capability( "sout mux", 2 );
add_string( "ffmpeg-mux", NULL, NULL, MUX_TEXT,
MUX_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( E_(OpenMux), E_(CloseMux) );
#endif
set_subcategory( SUBCAT_VIDEO_VFILTER );
set_callbacks( E_(OpenScaler), E_(CloseScaler) );
add_integer( "swscale-mode", 0, NULL, SCALEMODE_TEXT, SCALEMODE_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( pi_mode_values, ppsz_mode_descriptions, 0 );
#else
set_callbacks (Open, Close);
add_file ("soundfont", "", NULL,
SOUNDFONT_TEXT, SOUNDFONT_LONGTEXT, VLC_FALSE);
- change_safe();
vlc_module_end();
add_integer( "subsdec-align", 0, NULL, ALIGN_TEXT, ALIGN_LONGTEXT,
VLC_FALSE );
- change_safe();
change_integer_list( pi_justification, ppsz_justification_text, 0 );
add_string( "subsdec-encoding", DEFAULT_NAME, NULL,
ENCODING_TEXT, ENCODING_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( ppsz_encodings, 0, 0 );
add_bool( "subsdec-autodetect-utf8", VLC_TRUE, NULL,
AUTODETECT_UTF8_TEXT, AUTODETECT_UTF8_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "subsdec-formatted", VLC_TRUE, NULL, FORMAT_TEXT, FORMAT_LONGTEXT,
VLC_FALSE );
- change_safe();
vlc_module_end();
/*****************************************************************************
add_integer ( MODULE_STRING "-debug", 0, NULL,
DEBUG_TEXT, DEBUG_LONGTEXT, VLC_TRUE );
- change_safe();
add_submodule();
set_description( _("Philips OGT (SVCD subtitle) packetizer") );
add_integer( "telx-override-page", -1, NULL,
OVERRIDE_PAGE_TEXT, OVERRIDE_PAGE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "telx-ignore-subtitle-flag", 0, NULL,
IGNORE_SUB_FLAG_TEXT, IGNORE_SUB_FLAG_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "telx-french-workaround", 0, NULL,
FRENCH_WORKAROUND_TEXT, FRENCH_WORKAROUND_LONGTEXT, VLC_TRUE );
- change_safe();
vlc_module_end();
# define ENC_CFG_PREFIX "sout-theora-"
add_integer( ENC_CFG_PREFIX "quality", 2, NULL, ENC_QUALITY_TEXT,
ENC_QUALITY_LONGTEXT, VLC_FALSE );
- change_safe();
vlc_module_end();
static const char *ppsz_enc_options[] = {
add_float( ENC_CFG_PREFIX "quality", 0.0, NULL, ENC_QUALITY_TEXT,
ENC_QUALITY_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( ENC_CFG_PREFIX "mode", 0, NULL, ENC_MODE_TEXT,
ENC_MODE_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_stereo_values, ppsz_stereo_descriptions, 0 );
add_bool( ENC_CFG_PREFIX "vbr", 0, NULL, ENC_VBR_TEXT,
ENC_VBR_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( ENC_CFG_PREFIX "psy", 3, NULL, ENC_PSY_TEXT,
ENC_PSY_LONGTEXT, VLC_FALSE );
- change_safe();
vlc_module_end();
static const char *ppsz_enc_options[] = {
add_integer( ENC_CFG_PREFIX "quality", 0, NULL, ENC_QUALITY_TEXT,
ENC_QUALITY_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( ENC_CFG_PREFIX "max-bitrate", 0, NULL, ENC_MAXBR_TEXT,
ENC_MAXBR_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( ENC_CFG_PREFIX "min-bitrate", 0, NULL, ENC_MINBR_TEXT,
ENC_MINBR_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( ENC_CFG_PREFIX "cbr", 0, NULL, ENC_CBR_TEXT,
ENC_CBR_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
vlc_module_end();
add_integer( SOUT_CFG_PREFIX "keyint", 250, NULL, KEYINT_TEXT,
KEYINT_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "min-keyint", 25, NULL, MIN_KEYINT_TEXT,
MIN_KEYINT_LONGTEXT, VLC_FALSE );
- change_safe();
add_deprecated_alias( SOUT_CFG_PREFIX "keyint-min" ); /* Deprecated since 0.8.5 */
add_integer( SOUT_CFG_PREFIX "scenecut", 40, NULL, SCENE_TEXT,
SCENE_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( -1, 100 );
#if X264_BUILD >= 55 /* r607 */
add_bool( SOUT_CFG_PREFIX "pre-scenecut", 0, NULL, PRESCENE_TEXT,
PRESCENE_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
add_integer( SOUT_CFG_PREFIX "bframes", 0, NULL, BFRAMES_TEXT,
BFRAMES_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 16 );
#if X264_BUILD >= 0x0013 /* r137 */
add_bool( SOUT_CFG_PREFIX "b-adapt", 1, NULL, B_ADAPT_TEXT,
B_ADAPT_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "b-bias", 0, NULL, B_BIAS_TEXT,
B_BIAS_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( -100, 100 );
#endif
add_bool( SOUT_CFG_PREFIX "bpyramid", 0, NULL, BPYRAMID_TEXT,
BPYRAMID_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( SOUT_CFG_PREFIX "cabac", 1, NULL, CABAC_TEXT, CABAC_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "ref", 1, NULL, REF_TEXT,
REF_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 1, 16 );
add_deprecated_alias( SOUT_CFG_PREFIX "frameref" ); /* Deprecated since 0.8.5 */
add_bool( SOUT_CFG_PREFIX "nf", 0, NULL, NF_TEXT,
NF_LONGTEXT, VLC_FALSE );
- change_safe();
add_deprecated_alias( SOUT_CFG_PREFIX "loopfilter" ); /* Deprecated since 0.8.5 */
add_string( SOUT_CFG_PREFIX "deblock", "0:0", NULL, FILTER_TEXT,
FILTER_LONGTEXT, VLC_FALSE );
- change_safe();
add_deprecated_alias( SOUT_CFG_PREFIX "filter" ); /* Deprecated since 0.8.6 */
add_string( SOUT_CFG_PREFIX "level", "5.1", NULL, LEVEL_TEXT,
LEVEL_LONGTEXT, VLC_FALSE );
- change_safe();
#if X264_BUILD >= 51 /* r570 */
add_bool( SOUT_CFG_PREFIX "interlaced", 0, NULL, INTERLACED_TEXT, INTERLACED_LONGTEXT,
VLC_FALSE );
- change_safe();
#endif
/* Ratecontrol */
add_integer( SOUT_CFG_PREFIX "qp", 26, NULL, QP_TEXT, QP_LONGTEXT,
VLC_FALSE );
- change_safe();
change_integer_range( 0, 51 ); /* QP 0 -> lossless encoding */
#if X264_BUILD >= 37 /* r334 */
add_integer( SOUT_CFG_PREFIX "crf", 0, NULL, CRF_TEXT,
CRF_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 51 );
#endif
add_integer( SOUT_CFG_PREFIX "qpmin", 10, NULL, QPMIN_TEXT,
QPMIN_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 51 );
add_deprecated_alias( SOUT_CFG_PREFIX "qp-min" ); /* Deprecated since 0.8.5 */
add_integer( SOUT_CFG_PREFIX "qpmax", 51, NULL, QPMAX_TEXT,
QPMAX_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 51 );
add_deprecated_alias( SOUT_CFG_PREFIX "qp-max" ); /* Deprecated since 0.8.5 */
add_integer( SOUT_CFG_PREFIX "qpstep", 4, NULL, QPSTEP_TEXT,
QPSTEP_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 51 );
add_float( SOUT_CFG_PREFIX "ratetol", 1.0, NULL, RATETOL_TEXT,
RATETOL_LONGTEXT, VLC_FALSE );
- change_safe();
change_float_range( 0, 100 );
add_deprecated_alias( SOUT_CFG_PREFIX "tolerance" ); /* Deprecated since 0.8.5 */
add_integer( SOUT_CFG_PREFIX "vbv-maxrate", 0, NULL, VBV_MAXRATE_TEXT,
VBV_MAXRATE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "vbv-bufsize", 0, NULL, VBV_BUFSIZE_TEXT,
VBV_BUFSIZE_LONGTEXT, VLC_FALSE );
- change_safe();
add_float( SOUT_CFG_PREFIX "vbv-init", 0.9, NULL, VBV_INIT_TEXT,
VBV_INIT_LONGTEXT, VLC_FALSE );
- change_safe();
change_float_range( 0, 1 );
add_float( SOUT_CFG_PREFIX "ipratio", 1.40, NULL, IPRATIO_TEXT,
IPRATIO_LONGTEXT, VLC_FALSE );
- change_safe();
change_float_range( 1, 2 );
add_float( SOUT_CFG_PREFIX "pbratio", 1.30, NULL, PBRATIO_TEXT,
PBRATIO_LONGTEXT, VLC_FALSE );
- change_safe();
change_float_range( 1, 2 );
#if X264_BUILD >= 23 /* r190 */
add_integer( SOUT_CFG_PREFIX "chroma-qp-offset", 0, NULL, CHROMA_QP_OFFSET_TEXT,
CHROMA_QP_OFFSET_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
add_integer( SOUT_CFG_PREFIX "pass", 0, NULL, PASS_TEXT,
PASS_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 3 );
add_float( SOUT_CFG_PREFIX "qcomp", 0.60, NULL, QCOMP_TEXT,
QCOMP_LONGTEXT, VLC_FALSE );
- change_safe();
change_float_range( 0, 1 );
add_float( SOUT_CFG_PREFIX "cplxblur", 20.0, NULL, CPLXBLUR_TEXT,
CPLXBLUR_LONGTEXT, VLC_FALSE );
- change_safe();
add_float( SOUT_CFG_PREFIX "qblur", 0.5, NULL, QBLUR_TEXT,
QBLUR_LONGTEXT, VLC_FALSE );
- change_safe();
/* Analysis */
/* x264 partitions = none (default). set at least "normal" mode. */
add_string( SOUT_CFG_PREFIX "partitions", "normal", NULL, ANALYSE_TEXT,
ANALYSE_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( enc_analyse_list, enc_analyse_list_text, 0 );
add_deprecated_alias( SOUT_CFG_PREFIX "analyse" ); /* Deprecated since 0.8.6 */
add_string( SOUT_CFG_PREFIX "direct", "spatial", NULL, DIRECT_PRED_TEXT,
DIRECT_PRED_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( direct_pred_list, direct_pred_list_text, 0 );
#if X264_BUILD >= 52 /* r573 */
add_integer( SOUT_CFG_PREFIX "direct-8x8", 0, NULL, DIRECT_PRED_SIZE_TEXT,
DIRECT_PRED_SIZE_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( -1, 1 );
#endif
#if X264_BUILD >= 0x0012 /* r134 */
add_bool( SOUT_CFG_PREFIX "weightb", 0, NULL, WEIGHTB_TEXT,
WEIGHTB_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
#if X264_BUILD >= 24 /* r221 */
add_string( SOUT_CFG_PREFIX "me", "hex", NULL, ME_TEXT,
ME_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( enc_me_list, enc_me_list_text, 0 );
add_integer( SOUT_CFG_PREFIX "merange", 16, NULL, MERANGE_TEXT,
MERANGE_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 1, 64 );
#endif
add_integer( SOUT_CFG_PREFIX "mvrange", -1, NULL, MVRANGE_TEXT,
MVRANGE_LONGTEXT, VLC_FALSE );
- change_safe();
#if X264_BUILD >= 55 /* r607 */
add_integer( SOUT_CFG_PREFIX "mvrange-thread", -1, NULL, MVRANGE_THREAD_TEXT,
MVRANGE_THREAD_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
add_integer( SOUT_CFG_PREFIX "subme", 5, NULL, SUBME_TEXT,
SUBME_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 1, SUBME_MAX );
add_deprecated_alias( SOUT_CFG_PREFIX "subpel" ); /* Deprecated since 0.8.5 */
#if X264_BUILD >= 41 /* r368 */
add_bool( SOUT_CFG_PREFIX "b-rdo", 0, NULL, B_RDO_TEXT,
B_RDO_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
#if X264_BUILD >= 36 /* r318 */
add_bool( SOUT_CFG_PREFIX "mixed-refs", 0, NULL, MIXED_REFS_TEXT,
MIXED_REFS_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
#if X264_BUILD >= 23 /* r171 */
add_bool( SOUT_CFG_PREFIX "chroma-me", 1, NULL, CHROMA_ME_TEXT,
CHROMA_ME_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
#if X264_BUILD >= 43 /* r390 */
add_bool( SOUT_CFG_PREFIX "bime", 0, NULL, BIME_TEXT,
BIME_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
#if X264_BUILD >= 30 /* r251 */
add_bool( SOUT_CFG_PREFIX "8x8dct", 0, NULL, TRANSFORM_8X8DCT_TEXT,
TRANSFORM_8X8DCT_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
#if X264_BUILD >= 39 /* r360 */
add_integer( SOUT_CFG_PREFIX "trellis", 0, NULL, TRELLIS_TEXT,
TRELLIS_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 2 );
#endif
#if X264_BUILD >= 42 /* r384 */
add_bool( SOUT_CFG_PREFIX "fast-pskip", 1, NULL, FAST_PSKIP_TEXT,
FAST_PSKIP_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
#if X264_BUILD >= 46 /* r503 */
add_bool( SOUT_CFG_PREFIX "dct-decimate", 1, NULL, DCT_DECIMATE_TEXT,
DCT_DECIMATE_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
#if X264_BUILD >= 44 /* r398 */
add_integer( SOUT_CFG_PREFIX "nr", 0, NULL, NR_TEXT,
NR_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 1000 );
#endif
#if X264_BUILD >= 52 /* r573 */
add_integer( SOUT_CFG_PREFIX "deadzone-inter", 21, NULL, DEADZONE_INTER_TEXT,
DEADZONE_INTRA_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 32 );
add_integer( SOUT_CFG_PREFIX "deadzone-intra", 11, NULL, DEADZONE_INTRA_TEXT,
DEADZONE_INTRA_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_range( 0, 32 );
#endif
#if X264_BUILD >= 55 /* r607 */
add_bool( SOUT_CFG_PREFIX "non-deterministic", 0, NULL, NON_DETERMINISTIC_TEXT,
NON_DETERMINISTIC_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
add_bool( SOUT_CFG_PREFIX "asm", 1, NULL, ASM_TEXT,
ASM_LONGTEXT, VLC_FALSE );
- change_safe();
/* x264 psnr = 1 (default). disable PSNR computation for speed. */
add_bool( SOUT_CFG_PREFIX "psnr", 0, NULL, PSNR_TEXT,
PSNR_LONGTEXT, VLC_FALSE );
- change_safe();
#if X264_BUILD >= 50 /* r554 */
/* x264 ssim = 1 (default). disable SSIM computation for speed. */
add_bool( SOUT_CFG_PREFIX "ssim", 0, NULL, SSIM_TEXT,
SSIM_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
add_bool( SOUT_CFG_PREFIX "quiet", 0, NULL, QUIET_TEXT,
QUIET_LONGTEXT, VLC_FALSE );
- change_safe();
#if X264_BUILD >= 47 /* r518 */
add_integer( SOUT_CFG_PREFIX "sps-id", 0, NULL, SPS_ID_TEXT,
SPS_ID_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
add_bool( SOUT_CFG_PREFIX "aud", 0, NULL, AUD_TEXT,
AUD_LONGTEXT, VLC_FALSE );
- change_safe();
#if X264_BUILD >= 0x000e /* r81 */
add_bool( SOUT_CFG_PREFIX "verbose", 0, NULL, VERBOSE_TEXT,
VERBOSE_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
add_string( SOUT_CFG_PREFIX "stats", "x264_2pass.log", NULL, STATS_TEXT,
add_integer( "vbi-page", 100, NULL,
PAGE_TEXT, PAGE_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "vbi-opaque", VLC_TRUE, NULL,
OPAQUE_TEXT, OPAQUE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "vbi-position", 4, NULL, POS_TEXT, POS_LONGTEXT, VLC_FALSE );
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
- change_safe();
add_bool( "vbi-text", VLC_FALSE, NULL,
TELX_TEXT, TELX_LONGTEXT, VLC_FALSE );
- change_safe();
vlc_module_end();
/****************************************************************************
SOURCES_vc1 = vc1.c
SOURCES_demux_cdg = cdg.c
SOURCES_smf = smf.c
+SOURCES_rtp = rtp.c
add_bool( "avi-interleaved", 0, NULL,
INTERLEAVE_TEXT, INTERLEAVE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "avi-index", 0, NULL,
INDEX_TEXT, INDEX_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_index, ppsz_indexes, 0 );
set_callbacks( Open, Close );
FILE_LONGTEXT, VLC_FALSE );
add_bool( "demuxdump-append", 0, NULL, APPEND_TEXT, APPEND_LONGTEXT,
VLC_FALSE );
- change_safe();
set_callbacks( Open, Close );
add_shortcut( "dump" );
vlc_module_end();
set_category( CAT_INPUT );
set_subcategory( SUBCAT_INPUT_DEMUX );
add_float( "mjpeg-fps", 0.0, NULL, FPS_TEXT, FPS_LONGTEXT, VLC_FALSE );
- change_safe();
vlc_module_end();
/*****************************************************************************
add_bool( "mod-noisereduction", VLC_TRUE, NULL, N_("Noise reduction"),
NOISE_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "mod-reverb", VLC_FALSE, NULL, N_("Reverb"),
REVERB_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( "mod-reverb-level", 0, 0, 100, NULL,
N_("Reverberation level"), REVERB_LEVEL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( "mod-reverb-delay", 40, 0, 1000, NULL,
N_("Reverberation delay"), REVERB_DELAY_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "mod-megabass", VLC_FALSE, NULL, N_("Mega bass"),
MEGABASS_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( "mod-megabass-level", 0, 0, 100, NULL,
N_("Mega bass level"), MEGABASS_LEVEL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( "mod-megabass-range", 10, 10, 100, NULL,
N_("Mega bass cutoff"), MEGABASS_RANGE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "mod-surround", VLC_FALSE, NULL, N_("Surround"), N_("Surround"),
VLC_FALSE );
- change_safe();
add_integer_with_range( "mod-surround-level", 0, 0, 100, NULL,
N_("Surround level"), SURROUND_LEVEL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( "mod-surround-delay", 5, 0, 1000, NULL,
N_("Surround delay (ms)"), SURROUND_DELAY_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
add_shortcut( "mod" );
set_description( _("H264 video demuxer" ) );
set_capability( "demux2", 0 );
add_float( "h264-fps", 25.0, NULL, FPS_TEXT, FPS_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
add_shortcut( "h264" );
vlc_module_end();
add_shortcut( "m4v" );
add_shortcut( "mp4v" );
add_float( "m4v-fps", 25, NULL, FPS_TEXT, FPS_LONGTEXT, VLC_FALSE );
- change_safe();
vlc_module_end();
/*****************************************************************************
add_bool( "playlist-autostart", 1, NULL,
AUTOSTART_TEXT, AUTOSTART_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "parent-item", 0, NULL, NULL, NULL, VLC_TRUE );
change_internal();
- change_safe();
add_bool( "playlist-skip-ads", 1, NULL,
SKIP_ADS_TEXT, SKIP_ADS_LONGTEXT, VLC_FALSE );
- change_safe();
set_shortname( _("Playlist") );
set_description( _("Playlist") );
set_callbacks( E_(Import_Shoutcast), E_(Close_Shoutcast) );
add_bool( "shoutcast-show-adult", VLC_FALSE, NULL,
SHOW_ADULT_TEXT, SHOW_ADULT_LONGTEXT, VLC_FALSE );
- change_safe();
add_submodule();
set_description( _("ASX playlist import") );
add_shortcut( "asx-open" );
add_bool( "ps-trust-timestamps", VLC_TRUE, NULL, TIME_TEXT,
TIME_LONGTEXT, VLC_TRUE );
- change_safe();
add_submodule();
set_description( _("MPEG-PS demuxer") );
set_category( CAT_INPUT );
set_subcategory( SUBCAT_INPUT_DEMUX );
add_bool( "rawdv-hurry-up", 0, NULL, HURRYUP_TEXT, HURRYUP_LONGTEXT, VLC_FALSE );
- change_safe();
set_callbacks( Open, Close );
add_shortcut( "rawdv" );
vlc_module_end();
set_callbacks( Open, Close );
add_shortcut( "rawvideo" );
add_float( "rawvid-fps", 0, 0, FPS_TEXT, FPS_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "rawvid-width", 0, 0, WIDTH_TEXT, WIDTH_LONGTEXT, 0 );
- change_safe();
add_integer( "rawvid-height", 0, 0, HEIGHT_TEXT, HEIGHT_LONGTEXT, 0 );
- change_safe();
add_string( "rawvid-chroma", NULL, NULL, CHROMA_TEXT, CHROMA_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "rawvid-aspect-ratio", NULL, NULL,
ASPECT_RATIO_TEXT, ASPECT_RATIO_LONGTEXT, VLC_TRUE );
- change_safe();
vlc_module_end();
/*****************************************************************************
--- /dev/null
+/*****************************************************************************
+ * rtp.c : Real-Time Protocol (RTP) demux module for VLC media player
+ *****************************************************************************
+ * Copyright (C) 2001-2005 the VideoLAN team
+ * Copyright © 2007 Rémi Denis-Courmont
+ * $Id$
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2.0
+ * of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ *****************************************************************************/
+
+/*****************************************************************************
+ * Preamble
+ *****************************************************************************/
+#include <vlc/vlc.h>
+#include <stdarg.h>
+#include <assert.h>
+
+#include <vlc_demux.h>
+#include <vlc_aout.h>
+
+#include <vlc_codecs.h>
+
+/*****************************************************************************
+ * Module descriptor
+ *****************************************************************************/
+
+#define RTP_MAX_DROPOUT_TEXT N_("RTP maximum sequence number dropout")
+#define RTP_MAX_DROPOUT_LONGTEXT N_( \
+ "RTP packets will be discarded if they are too much ahead (i.e. in the " \
+ "future) by this many packets from the last received packet." )
+
+#define RTP_MAX_MISORDER_TEXT N_("RTP maximum sequence number misordering")
+#define RTP_MAX_MISORDER_LONGTEXT N_( \
+ "RTP packets will be discarded if they are too far behind (i.e. in the " \
+ "past) by this many packets from the last received packet." )
+
+#define RTP_MIN_SEQUENTIAL_TEXT N_("RTP minimum sequential packets count")
+#define RTP_MIN_SEQUENTIAL_LONGTEXT N_( \
+ "VLC will wait until it has received this many sequential RTP packets " \
+ "before it considers the RTP stream synchronized." )
+
+
+static int Open (vlc_object_t *);
+static void Close (vlc_object_t *);
+
+vlc_module_begin ();
+ set_shortname (_("RTP"));
+ set_description (_("(Experimental) Real-Time Protocol demuxer"));
+ set_category (CAT_INPUT);
+ set_subcategory (SUBCAT_INPUT_DEMUX);
+ set_capability ("access_demux", 10);
+ set_callbacks (Open, Close);
+
+ add_integer( "rtp-max-dropout", 3000, NULL, RTP_MAX_DROPOUT_TEXT,
+ RTP_MAX_DROPOUT_LONGTEXT, VLC_TRUE );
+ add_integer( "rtp-max-misorder", 100, NULL, RTP_MAX_MISORDER_TEXT,
+ RTP_MAX_MISORDER_LONGTEXT, VLC_TRUE );
+ add_integer( "rtp-min-seq", 2, NULL, RTP_MIN_SEQUENTIAL_TEXT,
+ RTP_MIN_SEQUENTIAL_LONGTEXT, VLC_TRUE );
+
+ add_shortcut ("rtp");
+vlc_module_end ();
+
+/*****************************************************************************
+ * Local prototypes
+ *****************************************************************************/
+static int Demux (demux_t *);
+static int Control (demux_t *, int i_query, va_list args);
+static block_t *ParseRTP (demux_t *obj, block_t *p_block, int8_t *pt,
+ uint16_t *seq);
+
+#define RTP_PACKET_SIZE 0xffff
+
+typedef int (*rtp_pt_cb) (demux_t *, block_t *, void *);
+
+/* State for a RTP source */
+typedef struct rtp_source_t
+{
+ uint32_t ssrc; /* current synchronization source */
+ int8_t pt; /* current payload type, -1 if none */
+
+ uint8_t probation; /* how many packets left before resync */
+ uint16_t max_seq; /* next expected sequence */
+ uint16_t bad_seq; /* tentatively next expected sequence for resync */
+} rtp_source_t;
+
+/* State for a RTP session */
+typedef struct rtp_session_t
+{
+ /*stream_t *feed;*/ /* where data comes from */
+ /* TODO: keep values to sync multiple sessions. */
+ /* We'd need to parse RTCP SR to do that though... */
+ rtp_source_t src[1];
+} rtp_session_t;
+
+
+struct demux_sys_t
+{
+ uint16_t max_dropout;
+ uint16_t max_misorder;
+ uint16_t min_sequential;
+
+ rtp_session_t session;
+};
+
+
+/*****************************************************************************
+ * Open: check stream and initializes structures
+ *****************************************************************************/
+static int Open (vlc_object_t *obj)
+{
+ demux_t *demux = (demux_t *)obj;
+ demux_sys_t *p_sys;
+
+ assert (demux->s == NULL);
+ msg_Dbg (pbj, "access = %s", obj->psz_access);
+
+ /* Initializes demux */
+ p_sys = calloc (1, sizeof (*p_sys));
+ if (p_sys == NULL)
+ return VLC_ENOMEM;
+
+ p_sys->max_dropout = var_CreateGetInteger (obj, "rtp-max-dropout");
+ p_sys->max_misorder = var_CreateGetInteger (obj, "rtp-max-misorder");
+ p_sys->min_sequential = var_CreateGetInteger (obj, "rtp-min-seq");
+
+ demux->pf_demux = Demux;
+ demux->pf_control = Control;
+ demux->p_sys = p_sys;
+
+ return VLC_SUCCESS;
+}
+
+
+/*****************************************************************************
+ * Close: frees unused data
+ *****************************************************************************/
+static void Close (vlc_object_t *obj)
+{
+ demux_sys_t *p_sys = ((demux_t *)obj)->p_sys;
+ free (p_sys);
+}
+
+/*****************************************************************************
+ * Control:
+ *****************************************************************************/
+static int Control (demux_t *p_demux, int i_query, va_list args)
+{
+ /*demux_sys_t *p_sys = p_demux->p_sys;*/
+
+ switch (i_query)
+ {
+ case DEMUX_GET_POSITION:
+ return VLC_EGENERIC;
+
+ case DEMUX_GET_TIME:
+ case DEMUX_GET_LENGTH:
+ {
+ int64_t *v = va_arg (args, int64_t *);
+ *v = 0;
+ return 0;
+ }
+ }
+
+ return VLC_EGENERIC;
+}
+
+
+static int Demux (demux_t *demux)
+{
+ //demux_sys_t *p_sys = demux->p_sys;
+ block_t *block = stream_Block (demux->s, RTP_PACKET_SIZE);
+ uint16_t seq;
+ int8_t pt;
+
+ if (block == NULL)
+ return 0;
+
+ block = ParseRTP (demux, block, &pt, &seq);
+ if (block == NULL)
+ return 1;
+
+ msg_Dbg (demux, "got len = %5u; PT = %3d, seq = %5u", block->i_buffer, pt, seq);
+
+ return 1;
+}
+
+
+static block_t *ParseRTP (demux_t *obj, block_t *p_block, int8_t *pt,
+ uint16_t *seq)
+{
+ size_t i_skip = 12;
+
+ /* RTP header sanity checks (see RFC 3550) */
+ if (p_block->i_buffer < 12)
+ goto trash;
+
+ if (p_block->i_buffer > RTP_PACKET_SIZE)
+ {
+ msg_Err (obj, "RTP packet too big! wrong demux?");
+ goto trash;
+ }
+
+ // Version number:
+ if ((p_block->p_buffer[0] >> 6 ) != 2)
+ {
+ // STUN/ICE anyone ?
+ msg_Dbg (obj, "RTP version is %u instead of 2", p_block->p_buffer[0] >> 6);
+ goto trash;
+ }
+
+ // Padding bit:
+ uint8_t pad = (p_block->p_buffer[0] & 0x20)
+ ? p_block->p_buffer[p_block->i_buffer - 1] : 0;
+
+ // CSRC count:
+ i_skip += (p_block->p_buffer[0] & 0x0F) * 4;
+
+ // Extension header:
+ if (p_block->p_buffer[0] & 0x10) /* Extension header */
+ {
+ i_skip += 4;
+ if ((size_t)p_block->i_buffer < i_skip)
+ goto trash;
+
+ i_skip += 4 * GetWBE (p_block->p_buffer + i_skip - 2);
+ }
+
+ if ((size_t)p_block->i_buffer < (i_skip + pad))
+ goto trash;
+
+ *pt = p_block->p_buffer[1] & 0x7F;
+ *seq = GetWBE (p_block->p_buffer + 2);
+
+ /* This is the place for deciphering and authentication */
+
+ /* Remove the RTP header */
+ p_block->i_buffer -= i_skip;
+ p_block->p_buffer += i_skip;
+
+ /* Remove padding (at the end) */
+ p_block->i_buffer -= pad;
+
+ return p_block;
+
+trash:
+ block_Release (p_block);
+ msg_Dbg (obj, "ignored non-RTP packet");
+ return NULL;
+}
+
+
+/**
+ * Initializes a source before any packet has been received
+ */
+static
+void PreinitSource (const demux_sys_t *p_sys, rtp_source_t *src)
+{
+ src->pt = -1;
+ src->probation = p_sys->min_sequential;
+}
+
+
+/**
+ * Reinitializes a source (resynchronization)
+ */
+static
+void InitSource (const demux_sys_t *p_sys, rtp_source_t *src, uint32_t ssrc,
+ uint16_t seq)
+{
+ src->ssrc = ssrc;
+ (void)src->pt;
+
+ src->probation = p_sys->min_sequential - 1;
+ src->bad_seq = src->max_seq = seq;
+}
+
+
+#if 0
+/*
+ * Generic packet handlers
+ */
+
+/* Ignore a packet */
+static int pt_ignore (demux_t *obj, block_t *block, rtp_pt_t *self)
+{
+ (void)self;
+ msg_Dbg (obj, "ignoring unknown payload type");
+ block_Release (block);
+ return 0;
+}
+
+
+/* Send a packet to decoder */
+#if 0
+static void pt_decode (demux_t *obj, block_t *block, rtp_pt_t *self)
+{
+ p_block->i_pts = p_block->i_dts = date_... (...);
+ es_out_Control (obj->out, ES_OUT_SET_PCR, p_block->i_pts);
+ es_out_Send (obj->out, (es_out_id_t *)*p_id, block);
+ return 0;
+}
+#endif
+
+
+/* Send a packet to a chained demuxer */
+static
+int pt_demux (demux_t *obj, block_t *block, rtp_pt_t *self, const char *demux)
+{
+ stream_t *stream = self->data.demux.stream;
+
+ if (stream == NULL)
+ {
+ stream = stream_DemuxNew (obj, demux, obj->out);
+ if (stream == NULL)
+ return VLC_EGENERIC;
+ self->data.demux.stream = stream;
+ }
+
+ stream_DemuxSend (stream, block);
+ return 0;
+}
+
+
+/*
+ * Static payload types handler
+ */
+
+/* PT=14
+ * MPA: MPEG Audio (RFC2250, §3.4)
+ */
+static int pt_mpa (demux_t *obj, block_t *block, rtp_pt_t *self)
+{
+ if (block->i_buffer < 4)
+ return VLC_EGENERIC;
+
+ block->i_buffer -= 4; // 32 bits RTP/MPA header
+ block->p_buffer += 4;
+
+ return pt_demux (obj, block, self, "mpga");
+}
+
+
+/* PT=32
+ * MPV: MPEG Video (RFC2250, §3.5)
+ */
+static int pt_mpv (demux_t *obj, block_t *block, rtp_pt_t *self)
+{
+ if (block->i_buffer < 4)
+ return VLC_EGENERIC;
+
+ block->i_buffer -= 4; // 32 bits RTP/MPV header
+ block->p_buffer += 4;
+
+ if (block->p_buffer[-3] & 0x4)
+ {
+ /* MPEG2 Video extension header */
+ /* TODO: shouldn't we skip this too ? */
+ }
+
+ return pt_demux (obj, block, self, "mpgv");
+}
+
+
+/* PT=33
+ * MP2: MPEG TS (RFC2250, §2)
+ */
+static int pt_ts (demux_t *obj, block_t *block, rtp_pt_t *self)
+{
+ return pt_demux (obj, block, self, "ts");
+}
+
+
+/*
+ * Dynamic payload type handlers
+ * Hmm, none implemented yet.
+ */
+#endif
add_float( "sub-fps", 0.0, NULL,
N_("Frames per second"),
SUB_FPS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "sub-delay", 0, NULL,
N_("Subtitles delay"),
SUB_DELAY_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "sub-type", "auto", NULL, N_("Subtitles format"),
SUB_TYPE_LONGTEXT, VLC_TRUE );
change_string_list( ppsz_sub_type, NULL, NULL );
- change_safe();
set_callbacks( Open, Close );
add_shortcut( "subtitle" );
set_subcategory( SUBCAT_INPUT_DEMUX );
add_string( "ts-extra-pmt", NULL, NULL, PMT_TEXT, PMT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "ts-es-id-pid", 1, NULL, PID_TEXT, PID_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "ts-out", NULL, NULL, TSOUT_TEXT, TSOUT_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "ts-out-mtu", 1400, NULL, MTUOUT_TEXT,
MTUOUT_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "ts-csa-ck", NULL, NULL, CSA_TEXT, CSA_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "ts-csa-pkt", 188, NULL, CPKT_TEXT, CPKT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "ts-silent", 0, NULL, SILENT_TEXT, SILENT_LONGTEXT, VLC_TRUE );
- change_safe();
- add_file( "ts-dump-file", "ts.dump", NULL, TSDUMP_TEXT, TSDUMP_LONGTEXT, VLC_FALSE );
+ add_file( "ts-dump-file", NULL, NULL, TSDUMP_TEXT, TSDUMP_LONGTEXT, VLC_FALSE );
add_bool( "ts-dump-append", 0, NULL, APPEND_TEXT, APPEND_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "ts-dump-size", 16384, NULL, DUMPSIZE_TEXT,
DUMPSIZE_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "demux2", 10 );
set_callbacks( Open, Close );
set_description( _("VC1 video demuxer" ) );
set_capability( "demux2", 0 );
add_float( "vc1-fps", 25.0, NULL, FPS_TEXT, FPS_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
add_shortcut( "vc1" );
vlc_module_end();
set_capability( "decoder", 0 );
set_callbacks( E_(OpenDecoder), E_(CloseDecoder) );
add_bool( "dummy-save-es", 0, NULL, SAVE_TEXT, SAVE_LONGTEXT, VLC_TRUE );
- change_safe();
add_submodule();
set_description( _("Dummy encoder function") );
set_capability( "encoder", 0 );
set_callbacks( E_(OpenVideo), NULL );
add_category_hint( N_("Video"), NULL, VLC_FALSE );
add_string( "dummy-chroma", NULL, NULL, CHROMA_TEXT, CHROMA_LONGTEXT, VLC_TRUE );
- change_safe();
add_submodule();
set_description( _("Dummy font renderer function") );
set_capability( "text renderer", 1 );
add_file( "freetype-font", DEFAULT_FONT, NULL, FONT_TEXT, FONT_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "freetype-fontsize", 0, NULL, FONTSIZE_TEXT,
FONTSIZE_LONGTEXT, VLC_TRUE );
- change_safe();
/* opacity valid on 0..255, with default 255 = fully opaque */
add_integer_with_range( "freetype-opacity", 255, 0, 255, NULL,
OPACITY_TEXT, OPACITY_LONGTEXT, VLC_TRUE );
- change_safe();
/* hook to the color values list, with default 0x00ffffff = white */
add_integer( "freetype-color", 0x00FFFFFF, NULL, COLOR_TEXT,
COLOR_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_color_values, ppsz_color_descriptions, 0 );
add_integer( "freetype-rel-fontsize", 16, NULL, FONTSIZER_TEXT,
FONTSIZER_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_sizes, ppsz_sizes_text, 0 );
add_integer( "freetype-effect", 2, NULL, EFFECT_TEXT,
EFFECT_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_effects, ppsz_effects_text, 0 );
add_bool( "freetype-yuvp", 0, NULL, YUVP_TEXT,
YUVP_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "text renderer", 100 );
add_shortcut( "text" );
set_callbacks( Create, Destroy );
add_obsolete_integer( "gnutls-dh-bits" );
add_integer( "gnutls-cache-timeout", CACHE_TIMEOUT, NULL,
CACHE_TIMEOUT_TEXT, CACHE_TIMEOUT_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "gnutls-cache-size", CACHE_SIZE, NULL, CACHE_SIZE_TEXT,
CACHE_SIZE_LONGTEXT, VLC_TRUE );
- change_safe();
vlc_module_end();
set_callbacks( Open, Close );
add_shortcut( "rtsp" );
add_string ( "rtsp-host", NULL, NULL, HOST_TEXT, HOST_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "rtsp-raw-mux", "ts", NULL, RAWMUX_TEXT,
RAWMUX_TEXT, VLC_TRUE );
- change_safe();
add_integer( "rtsp-throttle-users", 0, NULL, THROTLE_TEXT,
THROTLE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "rtsp-session-timeout", 5, NULL, SESSION_TIMEOUT_TEXT,
SESSION_TIMEOUT_LONGTEXT, VLC_TRUE );
- change_safe();
vlc_module_end();
/*****************************************************************************
"for automatic string conversion" )
vlc_module_begin();
- set_category( CAT_INPUT);
- set_category( SUBCAT_INPUT_SCODEC );
- set_capability( "text renderer", 99 );
- add_shortcut( "svg" );
- add_string( "svg-template-file", "", NULL, TEMPLATE_TEXT, TEMPLATE_LONGTEXT, VLC_TRUE );
- change_safe();
- set_callbacks( Create, Destroy );
+ set_category( CAT_INPUT);
+ set_category( SUBCAT_INPUT_SCODEC );
+ set_capability( "text renderer", 99 );
+ add_shortcut( "svg" );
+ add_string( "svg-template-file", "", NULL, TEMPLATE_TEXT, TEMPLATE_LONGTEXT, VLC_TRUE );
+ set_callbacks( Create, Destroy );
vlc_module_end();
/**
add_integer( "win32text-fontsize", 0, NULL, FONTSIZE_TEXT,
FONTSIZE_LONGTEXT, VLC_TRUE );
- change_safe();
/* opacity valid on 0..255, with default 255 = fully opaque */
add_integer_with_range( "win32-opacity", 255, 0, 255, NULL,
OPACITY_TEXT, OPACITY_LONGTEXT, VLC_FALSE );
- change_safe();
/* hook to the color values list, with default 0x00ffffff = white */
add_integer( "win32text-color", 0x00FFFFFF, NULL, COLOR_TEXT,
COLOR_LONGTEXT, VLC_TRUE );
- change_safe();
change_integer_list( pi_color_values, ppsz_color_descriptions, 0 );
add_integer( "win32text-rel-fontsize", 16, NULL, FONTSIZER_TEXT,
FONTSIZER_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_sizes, ppsz_sizes_text, 0 );
set_capability( "text renderer", 50 );
add_string( SOUT_CFG_PREFIX "title", "", NULL, TITLE_TEXT, TITLE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "author", "", NULL, AUTHOR_TEXT,
AUTHOR_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "copyright","", NULL, COPYRIGHT_TEXT,
COPYRIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "comment", "", NULL, COMMENT_TEXT,
COMMENT_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "rating", "", NULL, RATING_TEXT,
RATING_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "sout-asf-packet-size", 4096, NULL, PACKETSIZE_TEXT, PACKETSIZE_LONGTEXT, VLC_TRUE );
- change_safe();
vlc_module_end();
add_bool( SOUT_CFG_PREFIX "faststart", 1, NULL,
FASTSTART_TEXT, FASTSTART_LONGTEXT,
VLC_TRUE );
- change_safe();
set_capability( "sout mux", 5 );
add_shortcut( "mp4" );
add_shortcut( "mov" );
add_integer( SOUT_CFG_PREFIX "dts-delay", 200, NULL, DTS_TEXT,
DTS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "pes-max-size", PES_PAYLOAD_SIZE_MAX, NULL,
PES_SIZE_TEXT, PES_SIZE_LONGTEXT, VLC_TRUE );
- change_safe();
vlc_module_end();
/*****************************************************************************
add_integer( SOUT_CFG_PREFIX "pid-video", 0, NULL,VPID_TEXT, VPID_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "pid-audio", 0, NULL, APID_TEXT,
APID_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "pid-spu", 0, NULL, SPUPID_TEXT,
SPUPID_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "pid-pmt", 0, NULL, PMTPID_TEXT,
PMTPID_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "tsid", 0, NULL, TSID_TEXT,
TSID_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef HAVE_DVBPSI_SDT
add_integer( SOUT_CFG_PREFIX "netid", 0, NULL, NETID_TEXT,
NETID_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
add_string( SOUT_CFG_PREFIX "program-pmt", NULL, NULL, PMTPROG_TEXT,
PMTPROG_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( SOUT_CFG_PREFIX "es-id-pid", 0, NULL, PID_TEXT, PID_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "muxpmt", NULL, NULL, MUXPMT_TEXT, MUXPMT_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef HAVE_DVBPSI_SDT
add_string( SOUT_CFG_PREFIX "sdtdesc", NULL, NULL, SDTDESC_TEXT, SDTDESC_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
add_bool( SOUT_CFG_PREFIX "alignment", VLC_TRUE, NULL, ALIGNMENT_TEXT,
ALIGNMENT_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "shaping", 200, NULL,SHAPING_TEXT,
SHAPING_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( SOUT_CFG_PREFIX "use-key-frames", VLC_FALSE, NULL, KEYF_TEXT,
KEYF_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "pcr", 70, NULL, PCR_TEXT, PCR_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "bmin", 0, NULL, BMIN_TEXT, BMIN_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "bmax", 0, NULL, BMAX_TEXT, BMAX_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "dts-delay", 400, NULL, DTS_TEXT,
DTS_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( SOUT_CFG_PREFIX "crypt-audio", VLC_TRUE, NULL, ACRYPT_TEXT,
ACRYPT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( SOUT_CFG_PREFIX "crypt-video", VLC_TRUE, NULL, VCRYPT_TEXT,
VCRYPT_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( SOUT_CFG_PREFIX "csa-ck", NULL, NULL, CK_TEXT, CK_LONGTEXT,
VLC_TRUE );
- change_safe();
add_integer( SOUT_CFG_PREFIX "csa-pkt", 188, NULL, CPKT_TEXT, CPKT_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
add_bool( "packetizer-mpegvideo-sync-iframe", 0, NULL, SYNC_INTRAFRAME_TEXT,
SYNC_INTRAFRAME_LONGTEXT, VLC_TRUE );
- change_safe();
vlc_module_end();
/*****************************************************************************
add_string( "podcast-urls", NULL, NULL,
URLS_TEXT, URLS_LONGTEXT, VLC_FALSE );
change_autosave();
- change_safe();
set_capability( "services_discovery", 0 );
set_callbacks( Open, Close );
add_string( "sap-addr", NULL, NULL,
SAP_ADDR_TEXT, SAP_ADDR_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "sap-ipv4", 1 , NULL,
SAP_IPV4_TEXT,SAP_IPV4_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "sap-ipv6", 1 , NULL,
SAP_IPV6_TEXT, SAP_IPV6_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "sap-timeout", 1800, NULL,
SAP_TIMEOUT_TEXT, SAP_TIMEOUT_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "sap-parse", 1 , NULL,
SAP_PARSE_TEXT,SAP_PARSE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "sap-strict", 0 , NULL,
SAP_STRICT_TEXT,SAP_STRICT_LONGTEXT, VLC_TRUE );
- change_safe();
#if 0
add_bool( "sap-cache", 0 , NULL,
SAP_CACHE_TEXT,SAP_CACHE_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
add_bool( "sap-timeshift", 0 , NULL,
SAP_TIMESHIFT_TEXT,SAP_TIMESHIFT_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "services_discovery", 0 );
set_callbacks( Open, Close );
add_string( CFG_PREFIX "id", "Id", NULL, ID_TEXT, ID_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "width", 0, NULL, WIDTH_TEXT,
WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "height", 0, NULL, HEIGHT_TEXT,
HEIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( CFG_PREFIX "sar", "1:1", NULL, RATIO_TEXT,
RATIO_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( CFG_PREFIX "chroma", 0, NULL, CHROMA_TEXT, CHROMA_LONGTEXT,
VLC_FALSE );
- change_safe();
add_module_list( CFG_PREFIX "vfilter", "video filter2",
NULL, NULL, VFILTER_TEXT, VFILTER_LONGTEXT, VLC_FALSE );
- change_safe();
set_callbacks( Open, Close );
vlc_module_end();
add_float_with_range( "contrast", 1.0, 0.0, 2.0, NULL,
CONT_TEXT, CONT_LONGTEXT, VLC_FALSE );
- change_safe();
add_float_with_range( "brightness", 1.0, 0.0, 2.0, NULL,
LUM_TEXT, LUM_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( "hue", 0, 0, 360, NULL,
HUE_TEXT, HUE_LONGTEXT, VLC_FALSE );
- change_safe();
add_float_with_range( "saturation", 1.0, 0.0, 3.0, NULL,
SAT_TEXT, SAT_LONGTEXT, VLC_FALSE );
- change_safe();
add_float_with_range( "gamma", 1.0, 0.01, 10.0, NULL,
GAMMA_TEXT, GAMMA_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "brightness-threshold", 0, NULL,
THRES_TEXT, THRES_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "adjust" );
set_callbacks( Create, Destroy );
add_string( CFG_PREFIX "mask", NULL, NULL, MASK_TEXT,
MASK_LONGTEXT, VLC_FALSE );
- change_safe();
vlc_module_end();
static const char *ppsz_filter_options[] = {
add_integer_with_range( CFG_PREFIX "u", 120, 0, 255, NULL,
BLUESCREENU_TEXT, BLUESCREENU_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( CFG_PREFIX "v", 90, 0, 255, NULL,
BLUESCREENV_TEXT, BLUESCREENV_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( CFG_PREFIX "ut", 17, 0, 255, NULL,
BLUESCREENUTOL_TEXT, BLUESCREENUTOL_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer_with_range( CFG_PREFIX "vt", 17, 0, 255, NULL,
BLUESCREENVTOL_TEXT, BLUESCREENVTOL_LONGTEXT,
VLC_FALSE );
- change_safe();
vlc_module_end();
static const char *ppsz_filter_options[] = {
set_subcategory( SUBCAT_VIDEO_VFILTER );
add_integer( CFG_PREFIX "count", 2, NULL, COUNT_TEXT, COUNT_LONGTEXT, VLC_FALSE );
- change_safe();
add_string ( CFG_PREFIX "vout-list", NULL, NULL, VOUTLIST_TEXT, VOUTLIST_LONGTEXT, VLC_TRUE );
- change_safe();
add_shortcut( "clone" );
set_callbacks( Create, Destroy );
set_capability( "video filter2", 0 );
add_integer( CFG_PREFIX "color", 0x00FF0000, NULL, COLOR_TEXT,
COLOR_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_color_values, ppsz_color_descriptions, 0 );
add_integer( CFG_PREFIX "saturationthres", 20, NULL,
_("Saturaton threshold"), "", VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "similaritythres", 15, NULL,
_("Similarity threshold"), "", VLC_FALSE );
- change_safe();
set_callbacks( Create, Destroy );
vlc_module_end();
add_string( "crop-geometry", NULL, NULL, GEOMETRY_TEXT,
GEOMETRY_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "autocrop", 0, NULL, AUTOCROP_TEXT,
AUTOCROP_LONGTEXT, VLC_FALSE );
- change_safe();
#ifdef BEST_AUTOCROP
add_integer_with_range( "autocrop-ratio-max", 2405, 0, RATIO_MAX, NULL,
RATIOMAX_TEXT, RATIOMAX_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( "crop-ratio", 0, 0, RATIO_MAX, NULL, RATIO_TEXT,
RATIO_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "autocrop-time", 25, NULL, TIME_TEXT,
TIME_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "autocrop-diff", 16, NULL, DIFF_TEXT,
DIFF_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "autocrop-non-black-pixels", 3, NULL,
NBP_TEXT, NBP_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( "autocrop-skip-percent", 17, 0, 100, NULL,
SKIP_TEXT, SKIP_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( "autocrop-luminance-threshold", 40, 0, 128, NULL,
LUM_TEXT, LUM_LONGTEXT, VLC_TRUE );
- change_safe();
#endif //BEST_AUTOCROP
add_shortcut( "crop" );
add_string( "deinterlace-mode", "discard", NULL, MODE_TEXT,
MODE_LONGTEXT, VLC_FALSE );
change_string_list( mode_list, mode_list_text, 0 );
- change_safe();
add_shortcut( "deinterlace" );
set_callbacks( Create, Destroy );
set_section( N_("Streaming"),NULL);
add_string( FILTER_CFG_PREFIX "mode", "blend", NULL, SOUT_MODE_TEXT,
SOUT_MODE_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( mode_list, mode_list_text, 0 );
set_callbacks( OpenFilter, CloseFilter );
vlc_module_end();
add_file( CFG_PREFIX "mask", NULL, NULL,
MASK_TEXT, MASK_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "x", 0, NULL, POSX_TEXT, POSX_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "y", 0, NULL, POSY_TEXT, POSY_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "erase" );
set_callbacks( Create, Destroy );
add_integer_with_range( FILTER_PREFIX "component", 0xFF0000, 1, 0xFFFFFF,
NULL, COMPONENT_TEXT, COMPONENT_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_component_values, ppsz_component_descriptions, 0 );
set_callbacks( Create, Destroy );
add_float( FILTER_PREFIX "sigma", 2., NULL, SIGMA_TEXT, SIGMA_LONGTEXT,
VLC_FALSE );
- change_safe();
set_callbacks( Create, Destroy );
vlc_module_end();
add_string( FILTER_PREFIX "mode", "gradient", NULL,
MODE_TEXT, MODE_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( mode_list, mode_list_text, 0 );
add_integer_with_range( FILTER_PREFIX "type", 0, 0, 1, NULL,
GRADIENT_TEXT, GRADIENT_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( FILTER_PREFIX "cartoon", 1, NULL,
CARTOON_TEXT, CARTOON_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "gradient" );
set_callbacks( Create, Destroy );
set_callbacks( Create, Destroy );
add_file( CFG_PREFIX "file", NULL, NULL, FILE_TEXT, FILE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "x", 0, NULL, POSX_TEXT, POSX_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "y", 0, NULL, POSY_TEXT, POSY_LONGTEXT, VLC_TRUE );
- change_safe();
/* default to 1000 ms per image, continuously cycle through them */
add_integer( CFG_PREFIX "delay", 1000, NULL, DELAY_TEXT, DELAY_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "repeat", -1, NULL, REPEAT_TEXT, REPEAT_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "transparency", 255, 0, 255, NULL,
TRANS_TEXT, TRANS_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "position", -1, NULL, POS_TEXT, POS_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
/* subpicture filter submodule */
set_subcategory( SUBCAT_VIDEO_SUBPIC );
add_string( CFG_PREFIX "marquee", "VLC", NULL, MSG_TEXT, MSG_LONGTEXT,
VLC_FALSE );
- change_safe();
set_section( N_("Position"), NULL );
add_integer( CFG_PREFIX "x", 0, NULL, POSX_TEXT, POSX_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "y", 0, NULL, POSY_TEXT, POSY_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "position", -1, NULL, POS_TEXT, POS_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
set_section( N_("Font"), NULL );
/* 5 sets the default to top [1] left [4] */
add_integer_with_range( CFG_PREFIX "opacity", 255, 0, 255, NULL,
OPACITY_TEXT, OPACITY_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "color", 0xFFFFFF, NULL, COLOR_TEXT, COLOR_LONGTEXT,
VLC_FALSE );
- change_safe();
change_integer_list( pi_color_values, ppsz_color_descriptions, 0 );
add_integer( CFG_PREFIX "size", -1, NULL, SIZE_TEXT, SIZE_LONGTEXT,
VLC_FALSE );
- change_safe();
set_section( N_("Misc"), NULL );
add_integer( CFG_PREFIX "timeout", 0, NULL, TIMEOUT_TEXT, TIMEOUT_LONGTEXT,
VLC_FALSE );
- change_safe();
set_description( _("Marquee display") );
add_shortcut( "time" );
add_integer( CFG_PREFIX "alpha", 255, NULL,
ALPHA_TEXT, ALPHA_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "height", 100, NULL,
HEIGHT_TEXT, HEIGHT_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "width", 100, NULL,
WIDTH_TEXT, WIDTH_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "align", 5, NULL,
ALIGN_TEXT, ALIGN_LONGTEXT, VLC_TRUE);
- change_safe();
change_integer_list( pi_align_values, ppsz_align_descriptions, 0 );
add_integer( CFG_PREFIX "xoffset", 0, NULL,
XOFFSET_TEXT, XOFFSET_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "yoffset", 0, NULL,
YOFFSET_TEXT, YOFFSET_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "borderw", 0, NULL,
BORDERW_TEXT, BORDERW_LONGTEXT, VLC_TRUE );
- change_safe();
add_deprecated_alias( CFG_PREFIX "vborder" );
add_integer( CFG_PREFIX "borderh", 0, NULL,
BORDERH_TEXT, BORDERH_LONGTEXT, VLC_TRUE );
- change_safe();
add_deprecated_alias( CFG_PREFIX "hborder" );
add_integer( CFG_PREFIX "position", 0, NULL,
POS_TEXT, POS_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
add_integer( CFG_PREFIX "rows", 2, NULL,
ROWS_TEXT, ROWS_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "cols", 2, NULL,
COLS_TEXT, COLS_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( CFG_PREFIX "keep-aspect-ratio", 0, NULL,
AR_TEXT, AR_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( CFG_PREFIX "keep-picture", 0, NULL,
KEEP_TEXT, KEEP_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( CFG_PREFIX "order", "", NULL,
ORDER_TEXT, ORDER_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( CFG_PREFIX "offsets", "", NULL,
OFFSETS_TEXT, OFFSETS_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "delay", 0, NULL, DELAY_TEXT, DELAY_LONGTEXT,
VLC_FALSE );
- change_safe();
vlc_module_end();
static const char *ppsz_filter_options[] = {
add_integer_with_range( FILTER_PREFIX "factor", 80, 1, 127, NULL,
FACTOR_TEXT, FACTOR_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "blur" );
N_("Scale factor (0.1-2.0)"),
N_("Ammount by which to scale the picture before sending it to the internal OpenCV filter"),
VLC_FALSE );
- change_safe();
add_string( "opencv-chroma", "input", NULL,
N_("OpenCV filter chroma"),
N_("Chroma to convert picture to before sending it to the internal OpenCV filter"), VLC_FALSE);
- change_safe();
change_string_list( chroma_list, chroma_list_text, 0);
add_string( "opencv-output", "input", NULL,
N_("Wrapper filter output"),
N_("Determines what (if any) video is displayed by the wrapper filter"), VLC_FALSE);
- change_safe();
change_string_list( output_list, output_list_text, 0);
add_string( "opencv-verbosity", "error", NULL,
N_("Wrapper filter verbosity"),
N_("Determines wrapper filter verbosity level"), VLC_FALSE);
- change_safe();
change_string_list( verbosity_list, verbosity_list_text, 0);
add_string( "opencv-filter-name", "none", NULL,
N_("OpenCV internal filter name"),
N_("Name of internal OpenCV plugin filter to use"), VLC_FALSE);
- change_safe();
vlc_module_end();
vlc_module_begin();
add_integer( OSD_CFG "x", -1, NULL, POSX_TEXT, POSX_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( OSD_CFG "y", -1, NULL, POSY_TEXT, POSY_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( OSD_CFG "position", 8, NULL, POS_TEXT, POS_LONGTEXT,
VLC_FALSE );
- change_safe();
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
add_string( OSD_CFG "file", OSD_DEFAULT_CFG, NULL, OSD_FILE_TEXT,
OSD_FILE_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( OSD_CFG "file-path", NULL, NULL, OSD_PATH_TEXT,
OSD_PATH_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( OSD_CFG "timeout", 15, NULL, TIMEOUT_TEXT,
TIMEOUT_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( OSD_CFG "update", OSD_UPDATE_DEFAULT,
OSD_UPDATE_MIN, OSD_UPDATE_MAX, NULL, OSD_UPDATE_TEXT,
OSD_UPDATE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( OSD_CFG "alpha", 255, 0, 255, NULL,
OSD_ALPHA_TEXT, OSD_ALPHA_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "sub filter", 100 );
set_description( _("On Screen Display menu") );
add_integer( CFG_PREFIX "cols", -1, NULL,
COLS_TEXT, COLS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "rows", -1, NULL,
ROWS_TEXT, ROWS_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef OVERLAP
#define OFFSET_X_TEXT N_("Offset X offset (automatic compensation)")
#define OFFSET_X_LONGTEXT N_("Select if you want an automatic offset in horizontal (in case of misalignment due to autoratio control)")
add_bool( CFG_PREFIX "offset-x", 1, NULL, OFFSET_X_TEXT, OFFSET_X_LONGTEXT, VLC_TRUE );
- change_safe();
#define LENGTH_TEXT N_("length of the overlapping area (in %)")
#define LENGTH_LONGTEXT N_("Select in percent the length of the blended zone")
add_integer_with_range( CFG_PREFIX "bz-length", 100, 0, 100, NULL, LENGTH_TEXT, LENGTH_LONGTEXT, VLC_TRUE );
- change_safe();
#define HEIGHT_TEXT N_("height of the overlapping area (in %)")
#define HEIGHT_LONGTEXT N_("Select in percent the height of the blended zone (case of 2x2 wall)")
add_integer_with_range( CFG_PREFIX "bz-height", 100, 0, 100, NULL, HEIGHT_TEXT, HEIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
#define ATTENUATION_TEXT N_("Attenuation")
#define ATTENUATION_LONGTEXT N_("Check this option if you want attenuate blended zone by this plug-in (if option is unchecked, attenuate is made by opengl)")
add_bool( CFG_PREFIX "attenuate", 1, NULL, ATTENUATION_TEXT, ATTENUATION_LONGTEXT, VLC_FALSE );
- change_safe();
#define BEGIN_TEXT N_("Attenuation, begin (in %)")
#define BEGIN_LONGTEXT N_("Select in percent the Lagrange coeff of the beginning blended zone")
add_integer_with_range( CFG_PREFIX "bz-begin", 0, 0, 100, NULL, BEGIN_TEXT, BEGIN_LONGTEXT, VLC_TRUE );
- change_safe();
#define MIDDLE_TEXT N_("Attenuation, middle (in %)")
#define MIDDLE_LONGTEXT N_("Select in percent the Lagrange coeff of the middle of blended zone")
add_integer_with_range( CFG_PREFIX "bz-middle", 50, 0, 100, NULL, MIDDLE_TEXT, MIDDLE_LONGTEXT, VLC_FALSE );
- change_safe();
#define END_TEXT N_("Attenuation, end (in %)")
#define END_LONGTEXT N_("Select in percent the Lagrange coeff of the end of blended zone")
add_integer_with_range( CFG_PREFIX "bz-end", 100, 0, 100, NULL, END_TEXT, END_LONGTEXT, VLC_TRUE );
- change_safe();
#define MIDDLE_POS_TEXT N_("middle position (in %)")
#define MIDDLE_POS_LONGTEXT N_("Select in percent (50 is center) the position of the middle point (Lagrange) of blended zone")
add_integer_with_range( CFG_PREFIX "bz-middle-pos", 50, 1, 99, NULL, MIDDLE_POS_TEXT, MIDDLE_POS_LONGTEXT, VLC_FALSE );
- change_safe();
#ifdef GAMMA
#define RGAMMA_TEXT N_("Gamma (Red) correction")
#define RGAMMA_LONGTEXT N_("Select the gamma for the correction of blended zone (Red or Y component)")
add_float_with_range( CFG_PREFIX "bz-gamma-red", 1, 0, 5, NULL, RGAMMA_TEXT, RGAMMA_LONGTEXT, VLC_TRUE );
- change_safe();
#define GGAMMA_TEXT N_("Gamma (Green) correction")
#define GGAMMA_LONGTEXT N_("Select the gamma for the correction of blended zone (Green or U component)")
add_float_with_range( CFG_PREFIX "bz-gamma-green", 1, 0, 5, NULL, GGAMMA_TEXT, GGAMMA_LONGTEXT, VLC_TRUE );
- change_safe();
#define BGAMMA_TEXT N_("Gamma (Blue) correction")
#define BGAMMA_LONGTEXT N_("Select the gamma for the correction of blended zone (Blue or V component)")
add_float_with_range( CFG_PREFIX "bz-gamma-blue", 1, 0, 5, NULL, BGAMMA_TEXT, BGAMMA_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
#define RGAMMA_BC_TEXT N_("Black Crush for Red")
#define RGAMMA_BC_LONGTEXT N_("Select the Black Crush of blended zone (Red or Y component)")
#define BGAMMA_WL_TEXT N_("White Level for Blue")
#define BGAMMA_WL_LONGTEXT N_("Select the White Level of blended zone (Blue or V component)")
add_integer_with_range( CFG_PREFIX "bz-blackcrush-red", 140, 0, 255, NULL, RGAMMA_BC_TEXT, RGAMMA_BC_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-blackcrush-green", 140, 0, 255, NULL, GGAMMA_BC_TEXT, GGAMMA_BC_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-blackcrush-blue", 140, 0, 255, NULL, BGAMMA_BC_TEXT, BGAMMA_BC_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-whitecrush-red", 200, 0, 255, NULL, RGAMMA_WC_TEXT, RGAMMA_WC_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-whitecrush-green", 200, 0, 255, NULL, GGAMMA_WC_TEXT, GGAMMA_WC_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-whitecrush-blue", 200, 0, 255, NULL, BGAMMA_WC_TEXT, BGAMMA_WC_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-blacklevel-red", 150, 0, 255, NULL, RGAMMA_BL_TEXT, RGAMMA_BL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-blacklevel-green", 150, 0, 255, NULL, GGAMMA_BL_TEXT, GGAMMA_BL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-blacklevel-blue", 150, 0, 255, NULL, BGAMMA_BL_TEXT, BGAMMA_BL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-whitelevel-red", 0, 0, 255, NULL, RGAMMA_WL_TEXT, RGAMMA_WL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-whitelevel-green", 0, 0, 255, NULL, GGAMMA_WL_TEXT, GGAMMA_WL_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer_with_range( CFG_PREFIX "bz-whitelevel-blue", 0, 0, 255, NULL, BGAMMA_WL_TEXT, BGAMMA_WL_LONGTEXT, VLC_TRUE );
- change_safe();
#ifndef SYS_MINGW32
#define XINERAMA_TEXT N_("Xinerama option")
#define XINERAMA_LONGTEXT N_("Uncheck if you have not used xinerama")
add_bool( CFG_PREFIX "xinerama", 1, NULL, XINERAMA_TEXT, XINERAMA_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
#endif
add_string( CFG_PREFIX "active", NULL, NULL, ACTIVE_TEXT, ACTIVE_LONGTEXT, VLC_TRUE );
- change_safe();
add_shortcut( "panoramix" );
set_callbacks( Create, Destroy );
add_integer_with_range( CFG_PREFIX "rows", 4, 1, 128, NULL,
ROWS_TEXT, ROWS_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( CFG_PREFIX "cols", 4, 1, 128, NULL,
COLS_TEXT, COLS_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( CFG_PREFIX "black-slot", 0, NULL,
BLACKSLOT_TEXT, BLACKSLOT_LONGTEXT, VLC_FALSE );
- change_safe();
set_callbacks( Create, Destroy );
vlc_module_end();
add_integer_with_range( FILTER_PREFIX "angle", 30, 0, 359, NULL,
ANGLE_TEXT, ANGLE_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "rotate" );
set_callbacks( Create, Destroy );
set_category( CAT_VIDEO );
set_subcategory( SUBCAT_VIDEO_SUBPIC );
add_string( CFG_PREFIX "urls", "rss", NULL, MSG_TEXT, MSG_LONGTEXT, VLC_FALSE );
- change_safe();
set_section( N_("Position"), NULL );
add_integer( CFG_PREFIX "x", 0, NULL, POSX_TEXT, POSX_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "y", 0, NULL, POSY_TEXT, POSY_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( CFG_PREFIX "position", -1, NULL, POS_TEXT, POS_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
set_section( N_("Font"), NULL );
/* 5 sets the default to top [1] left [4] */
add_integer_with_range( CFG_PREFIX "opacity", 255, 0, 255, NULL,
OPACITY_TEXT, OPACITY_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "color", 0xFFFFFF, NULL, COLOR_TEXT, COLOR_LONGTEXT,
VLC_FALSE );
- change_safe();
change_integer_list( pi_color_values, ppsz_color_descriptions, 0 );
add_integer( CFG_PREFIX "size", -1, NULL, SIZE_TEXT, SIZE_LONGTEXT, VLC_FALSE );
- change_safe();
set_section( N_("Misc"), NULL );
add_integer( CFG_PREFIX "speed", 100000, NULL, SPEED_TEXT, SPEED_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "length", 60, NULL, LENGTH_TEXT, LENGTH_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "ttl", 1800, NULL, TTL_TEXT, TTL_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( CFG_PREFIX "images", 1, NULL, IMAGE_TEXT, IMAGE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "title", default_title, NULL, TITLE_TEXT, TITLE_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_title_modes, ppsz_title_modes, 0 );
set_description( _("RSS and Atom feed display") );
set_capability( "video filter2", 0 );
add_float_with_range( "sharpen-sigma", 0.05, 0.0, 2.0, NULL,
SIG_TEXT, SIG_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "sharpen" );
set_callbacks( Create, Destroy );
vlc_module_end();
add_string( CFG_PREFIX "type", "90", NULL,
TYPE_TEXT, TYPE_LONGTEXT, VLC_FALSE);
- change_safe();
change_string_list( type_list, type_list_text, 0);
add_shortcut( "transform" );
set_subcategory( SUBCAT_VIDEO_VFILTER );
add_integer( CFG_PREFIX "cols", 3, NULL, COLS_TEXT, COLS_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( CFG_PREFIX "rows", 3, NULL, ROWS_TEXT, ROWS_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( CFG_PREFIX "active", NULL, NULL, ACTIVE_TEXT, ACTIVE_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( CFG_PREFIX "element-aspect", "4:3", NULL, ASPECT_TEXT, ASPECT_LONGTEXT, VLC_FALSE );
- change_safe();
add_shortcut( "wall" );
set_callbacks( Create, Destroy );
set_subcategory( SUBCAT_VIDEO_VOUT );
add_file( FB_DEV_VAR, "/dev/fb0", NULL, DEVICE_TEXT, DEVICE_LONGTEXT,
VLC_FALSE );
- change_safe(); /* ioctl() prevents doing bad things */
add_bool( "fb-tty", 1, NULL, TTY_TEXT, TTY_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "fb-chroma", NULL, NULL, CHROMA_TEXT, CHROMA_LONGTEXT,
VLC_TRUE );
- change_safe();
add_string( "fb-aspect-ratio", NULL, NULL, ASPECT_RATIO_TEXT,
ASPECT_RATIO_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "fb-mode", 4, NULL, FB_MODE_TEXT, FB_MODE_LONGTEXT,
VLC_TRUE );
- change_safe();
set_description( _("GNU/Linux console framebuffer video output") );
set_capability( "video output", 30 );
set_callbacks( Create, Destroy );
vlc_module_begin();
add_string( "ggi-display", NULL, NULL, DISPLAY_TEXT, DISPLAY_LONGTEXT, VLC_TRUE );
- change_safe();
set_description( "General Graphics Interface video output" );
set_capability( "video output", 30 );
set_callbacks( Create, Destroy );
add_string( CFG_PREFIX "format", "png", NULL,
FORMAT_TEXT, FORMAT_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( psz_format_list, psz_format_list_text, 0 );
add_integer( CFG_PREFIX "width", 0, NULL,
WIDTH_TEXT, WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_deprecated_alias( "image-width" ); /* since 0.9.0 */
add_integer( CFG_PREFIX "height", 0, NULL,
HEIGHT_TEXT, HEIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
add_deprecated_alias( "image-height" ); /* since 0.9.0 */
add_integer( CFG_PREFIX "ratio", 3, NULL,
RATIO_TEXT, RATIO_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( CFG_PREFIX "prefix", "img", NULL,
PREFIX_TEXT, PREFIX_LONGTEXT, VLC_FALSE );
add_bool( CFG_PREFIX "replace", 0, NULL,
REPLACE_TEXT, REPLACE_LONGTEXT, VLC_FALSE );
- change_safe();
set_callbacks( Create, Destroy );
vlc_module_end();
set_subcategory( SUBCAT_VIDEO_VOUT );
add_bool( "directx-hw-yuv", 1, NULL, HW_YUV_TEXT, HW_YUV_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "directx-use-sysmem", 0, NULL, SYSMEM_TEXT, SYSMEM_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "directx-3buffering", 1, NULL, TRIPLEBUF_TEXT,
TRIPLEBUF_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "directx-device", "", NULL, DEVICE_TEXT, DEVICE_LONGTEXT,
VLC_TRUE );
- change_safe();
change_string_list( ppsz_dev, ppsz_dev_text, FindDevicesCallback );
change_action_add( FindDevicesCallback, N_("Refresh list") );
add_bool( "directx-wallpaper", 0, NULL, WALLPAPER_TEXT, WALLPAPER_LONGTEXT,
VLC_TRUE );
- change_safe();
set_description( _("DirectX video output") );
set_capability( "video output", 100 );
add_shortcut( "opengl" );
add_float( "opengl-cube-speed", 2.0, NULL, SPEED_TEXT,
SPEED_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef OPENGL_MORE_EFFECT
add_integer_with_range( "opengl-accuracy", 4, 1, 10, NULL, ACCURACY_TEXT,
ACCURACY_LONGTEXT, VLC_TRUE );
- change_safe();
add_float_with_range( "opengl-pov-x", 0.0, -1.0, 1.0, NULL, POV_X_TEXT,
POV_X_LONGTEXT, VLC_TRUE );
- change_safe();
add_float_with_range( "opengl-pov-y", 0.0, -1.0, 1.0, NULL, POV_Y_TEXT,
POV_Y_LONGTEXT, VLC_TRUE );
- change_safe();
add_float_with_range( "opengl-pov-z", -1.0, -1.0, 1.0, NULL, POV_Z_TEXT,
POV_Z_LONGTEXT, VLC_TRUE );
- change_safe();
add_float( "opengl-cylinder-radius", -100.0, NULL, RADIUS_TEXT,
RADIUS_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
/* Allow opengl provider plugin selection */
add_string( "opengl-provider", "default", NULL, PROVIDER_TEXT,
PROVIDER_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( CreateVout, DestroyVout );
add_string( "opengl-effect", "none", NULL, EFFECT_TEXT,
EFFECT_LONGTEXT, VLC_FALSE );
- change_safe();
change_string_list( ppsz_effects, ppsz_effects_text, 0 );
vlc_module_end();
set_capability( "video output", 60 );
add_shortcut( "sdl" );
add_string( "sdl-chroma", NULL, NULL, CHROMA_TEXT, CHROMA_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Open, Close );
#if defined( __i386__ ) || defined( __x86_64__ )
/* On i386, SDL is linked against svgalib */
set_capability( "video output", 1 );
add_integer( "snapshot-width", 320, NULL, WIDTH_TEXT, WIDTH_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "snapshot-height", 200, NULL, HEIGHT_TEXT, HEIGHT_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "snapshot-chroma", "RV32", NULL, CHROMA_TEXT, CHROMA_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "snapshot-cache-size", 50, NULL, CACHE_TEXT, CACHE_LONGTEXT, VLC_TRUE );
- change_safe();
set_callbacks( Create, Destroy );
vlc_module_end();
set_callbacks( CreateOpenGL, DestroyOpenGL );
add_string( "glx-display", NULL, NULL, DISPLAY_TEXT, DISPLAY_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "glx-adaptor", -1, NULL, ADAPTOR_TEXT, ADAPTOR_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "glx-altfullscreen", 0, NULL, ALT_FS_TEXT, ALT_FS_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef HAVE_XINERAMA
add_integer ( "glx-xineramascreen", 0, NULL, SCREEN_TEXT, SCREEN_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
vlc_module_end();
set_category( CAT_VIDEO );
set_subcategory( SUBCAT_VIDEO_VOUT );
add_string( "x11-display", NULL, NULL, DISPLAY_TEXT, DISPLAY_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "x11-altfullscreen", 0, NULL, ALT_FS_TEXT, ALT_FS_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef HAVE_SYS_SHM_H
add_bool( "x11-shm", 1, NULL, SHM_TEXT, SHM_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
#ifdef HAVE_XINERAMA
add_integer ( "x11-xineramascreen", 0, NULL, SCREEN_TEXT, SCREEN_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
set_description( _("X11 video output") );
set_capability( "video output", 70 );
set_category( CAT_VIDEO );
set_subcategory( SUBCAT_VIDEO_VOUT );
add_string( "xvideo-display", NULL, NULL, DISPLAY_TEXT, DISPLAY_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "xvideo-adaptor", -1, NULL, ADAPTOR_TEXT, ADAPTOR_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "xvideo-altfullscreen", 0, NULL, ALT_FS_TEXT, ALT_FS_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "xvideo-chroma", NULL, NULL, CHROMA_TEXT, CHROMA_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef HAVE_SYS_SHM_H
add_bool( "xvideo-shm", 1, NULL, SHM_TEXT, SHM_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
#ifdef HAVE_XINERAMA
add_integer ( "xvideo-xineramascreen", 0, NULL, SCREEN_TEXT, SCREEN_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
set_description( _("XVideo extension video output") );
vlc_module_begin();
set_shortname( "XVMC" );
add_string( "xvmc-display", NULL, NULL, DISPLAY_TEXT, DISPLAY_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "xvmc-adaptor", -1, NULL, ADAPTOR_TEXT, ADAPTOR_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "xvmc-altfullscreen", 0, NULL, ALT_FS_TEXT, ALT_FS_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "xvmc-chroma", NULL, NULL, CHROMA_TEXT, CHROMA_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef HAVE_SYS_SHM_H
add_bool( "xvmc-shm", 1, NULL, SHM_TEXT, SHM_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
#ifdef HAVE_XINERAMA
add_integer ( "xvmc-xineramascreen", 0, NULL, SCREEN_TEXT, SCREEN_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
add_string( "xvmc-deinterlace-mode", "bob", NULL, MODE_TEXT, MODE_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "xvmc-crop-style", "eq", NULL, CROP_TEXT, CROP_LONGTEXT, VLC_FALSE );
- change_safe();
set_description( _("XVMC extension video output") );
set_capability( "video output", 160 );
set_capability( "visualization", 0 );
add_integer( "goom-width", 320, NULL,
WIDTH_TEXT, RES_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "goom-height", 240, NULL,
HEIGHT_TEXT, RES_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "goom-speed", 6, NULL,
SPEED_TEXT, SPEED_LONGTEXT, VLC_FALSE );
- change_safe();
set_callbacks( Open, Close );
add_shortcut( "goom" );
vlc_module_end();
set_section( N_( "General") , NULL );
add_string("effect-list", "spectrum", NULL,
ELIST_TEXT, ELIST_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("effect-width",VOUT_WIDTH,NULL,
WIDTH_TEXT, WIDTH_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer("effect-height" , VOUT_HEIGHT , NULL,
HEIGHT_TEXT, HEIGHT_LONGTEXT, VLC_FALSE );
- change_safe();
set_section( N_("Spectrum analyser") , NULL );
add_integer("visual-nbbands", 80, NULL,
NBBANDS_TEXT, NBBANDS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("visual-separ", 1, NULL,
SEPAR_TEXT, SEPAR_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("visual-amp", 3, NULL,
AMP_TEXT, AMP_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool("visual-peaks", VLC_TRUE, NULL,
PEAKS_TEXT, PEAKS_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_("Spectrometer") , NULL );
add_bool("spect-show-original", VLC_FALSE, NULL,
ORIG_TEXT, ORIG_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool("spect-show-base", VLC_TRUE, NULL,
BASE_TEXT, BASE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("spect-radius", 42, NULL,
RADIUS_TEXT, RADIUS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("spect-sections", 3, NULL,
SSECT_TEXT, SSECT_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("spect-color", 80, NULL,
COLOR1_TEXT, COLOR1_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool("spect-show-bands", VLC_TRUE, NULL,
BANDS_TEXT, BANDS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("spect-nbbands", 32, NULL,
NBBANDS_TEXT, SPNBBANDS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("spect-separ", 1, NULL,
SEPAR_TEXT, SEPAR_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("spect-amp", 8, NULL,
AMP_TEXT, AMP_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool("spect-show-peaks", VLC_TRUE, NULL,
PEAKS_TEXT, PEAKS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("spect-peak-width", 61, NULL,
PEAK_WIDTH_TEXT, PEAK_WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer("spect-peak-height", 1, NULL,
PEAK_HEIGHT_TEXT, PEAK_HEIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
set_capability( "visualization", 0 );
set_callbacks( Open, Close );
add_shortcut( "visualizer");
add_category_hint( N_("Audio"), AOUT_CAT_LONGTEXT , VLC_FALSE );
add_bool( "audio", 1, NULL, AUDIO_TEXT, AUDIO_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( "volume", AOUT_VOLUME_DEFAULT, AOUT_VOLUME_MIN,
AOUT_VOLUME_MAX, NULL, VOLUME_TEXT,
VOLUME_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer_with_range( "volume-step", AOUT_VOLUME_STEP, AOUT_VOLUME_MIN,
AOUT_VOLUME_MAX, NULL, VOLUME_STEP_TEXT,
VOLUME_STEP_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "aout-rate", -1, NULL, AOUT_RATE_TEXT,
AOUT_RATE_LONGTEXT, VLC_TRUE );
- change_safe();
#if !defined( __APPLE__ )
add_bool( "hq-resampling", 1, NULL, AOUT_RESAMP_TEXT,
AOUT_RESAMP_LONGTEXT, VLC_TRUE );
- change_safe();
#endif
add_bool( "spdif", 0, NULL, SPDIF_TEXT, SPDIF_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "force-dolby-surround", 0, NULL, FORCE_DOLBY_TEXT,
FORCE_DOLBY_LONGTEXT, VLC_FALSE );
change_integer_list( pi_force_dolby_values, ppsz_force_dolby_descriptions, 0 );
- change_safe();
add_integer( "audio-desync", 0, NULL, DESYNC_TEXT,
DESYNC_LONGTEXT, VLC_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,
AUDIO_REPLAY_GAIN_MODE_LONGTEXT, VLC_FALSE );
change_string_list( ppsz_replay_gain_mode, ppsz_replay_gain_mode_text, 0 );
- change_safe();
add_float( "audio-replay-gain-preamp", 0.0, NULL,
AUDIO_REPLAY_GAIN_PREAMP_TEXT, AUDIO_REPLAY_GAIN_PREAMP_LONGTEXT, VLC_FALSE );
- change_safe();
add_float( "audio-replay-gain-default", -7.0, NULL,
AUDIO_REPLAY_GAIN_DEFAULT_TEXT, AUDIO_REPLAY_GAIN_DEFAULT_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "audio-replay-gain-peak-protection", VLC_TRUE, NULL,
AUDIO_REPLAY_GAIN_PEAK_PROTECTION_TEXT, AUDIO_REPLAY_GAIN_PEAK_PROTECTION_LONGTEXT, VLC_TRUE );
- change_safe();
set_subcategory( SUBCAT_AUDIO_AOUT );
add_module( "aout", "audio output", NULL, NULL, AOUT_TEXT, AOUT_LONGTEXT,
VLC_TRUE );
change_short('A');
- change_safe();
set_subcategory( SUBCAT_AUDIO_AFILTER );
add_module_list_cat( "audio-filter", SUBCAT_AUDIO_AFILTER, 0,
NULL, AUDIO_FILTER_TEXT,
AUDIO_FILTER_LONGTEXT, VLC_FALSE );
- change_safe();
set_subcategory( SUBCAT_AUDIO_VISUAL );
add_module( "audio-visual", "visualization",NULL, NULL,AUDIO_VISUAL_TEXT,
AUDIO_VISUAL_LONGTEXT, VLC_FALSE );
- change_safe();
/* Video options */
set_category( CAT_VIDEO );
add_category_hint( N_("Video"), VOUT_CAT_LONGTEXT , VLC_FALSE );
add_bool( "video", 1, NULL, VIDEO_TEXT, VIDEO_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "grayscale", 0, NULL, GRAYSCALE_TEXT,
GRAYSCALE_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "fullscreen", 0, NULL, FULLSCREEN_TEXT,
FULLSCREEN_LONGTEXT, VLC_FALSE );
- change_safe();
change_short('f');
add_bool( "embedded-video", 1, NULL, EMBEDDED_TEXT, EMBEDDED_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "drop-late-frames", 1, NULL, DROP_LATE_FRAMES_TEXT,
DROP_LATE_FRAMES_LONGTEXT, VLC_TRUE );
- change_safe();
/* Used in vout_synchro */
add_bool( "skip-frames", 1, NULL, SKIP_FRAMES_TEXT,
SKIP_FRAMES_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "quiet-synchro", 0, NULL, QUIET_SYNCHRO_TEXT,
QUIET_SYNCHRO_LONGTEXT, VLC_TRUE );
- change_safe();
#ifndef __APPLE__
add_bool( "overlay", 1, NULL, OVERLAY_TEXT, OVERLAY_LONGTEXT, VLC_FALSE );
- change_safe();
#endif
add_bool( "video-on-top", 0, NULL, VIDEO_ON_TOP_TEXT,
VIDEO_ON_TOP_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "disable-screensaver", VLC_TRUE, NULL, SS_TEXT, SS_LONGTEXT,
VLC_TRUE );
- change_safe();
add_bool( "video-title-show", 1, NULL, VIDEO_TITLE_SHOW_TEXT,
VIDEO_TITLE_SHOW_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "video-title-timeout", 5000, NULL, VIDEO_TITLE_TIMEOUT_TEXT,
VIDEO_TITLE_TIMEOUT_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "video-title-position", 8, NULL, VIDEO_TITLE_POSITION_TEXT,
VIDEO_TITLE_POSITION_LONGTEXT, VLC_FALSE );
change_integer_list( pi_pos_values, ppsz_pos_descriptions, 0 );
- change_safe();
set_section( N_("Snapshot") , NULL );
add_directory( "snapshot-path", NULL, NULL, SNAP_PATH_TEXT,
SNAP_PATH_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "snapshot-prefix", "vlcsnap-", NULL, SNAP_PREFIX_TEXT,
SNAP_PREFIX_LONGTEXT, VLC_FALSE );
- /* "snapshot-prefix" isn't safe to be modified by external plugins */
add_string( "snapshot-format", "png", NULL, SNAP_FORMAT_TEXT,
SNAP_FORMAT_LONGTEXT, VLC_FALSE );
change_string_list( ppsz_snap_formats, NULL, 0 );
- change_safe();
add_bool( "snapshot-preview", VLC_TRUE, NULL, SNAP_PREVIEW_TEXT,
SNAP_PREVIEW_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "snapshot-sequential", VLC_FALSE, NULL, SNAP_SEQUENTIAL_TEXT,
SNAP_SEQUENTIAL_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "snapshot-width", 320, NULL, SNAP_WIDTH_TEXT,
SNAP_WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "snapshot-height", 200, NULL, SNAP_HEIGHT_TEXT,
SNAP_HEIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_("Window properties" ), NULL );
add_integer( "width", -1, NULL, WIDTH_TEXT, WIDTH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "height", -1, NULL, HEIGHT_TEXT, HEIGHT_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "video-x", -1, NULL, VIDEOX_TEXT, VIDEOX_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "video-y", -1, NULL, VIDEOY_TEXT, VIDEOY_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "crop", NULL, NULL, CROP_TEXT, CROP_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "custom-crop-ratios", NULL, NULL, CUSTOM_CROP_RATIOS_TEXT,
CUSTOM_CROP_RATIOS_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "aspect-ratio", NULL, NULL,
ASPECT_RATIO_TEXT, ASPECT_RATIO_LONGTEXT, VLC_FALSE );
- change_safe();
add_string( "monitor-par", NULL, NULL,
MASPECT_RATIO_TEXT, MASPECT_RATIO_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "custom-aspect-ratios", NULL, NULL, CUSTOM_ASPECT_RATIOS_TEXT,
CUSTOM_ASPECT_RATIOS_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "hdtv-fix", 1, NULL, HDTV_FIX_TEXT, HDTV_FIX_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "video-deco", 1, NULL, VIDEO_DECO_TEXT,
VIDEO_DECO_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "video-title", NULL, NULL, VIDEO_TITLE_TEXT,
VIDEO_TITLE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "align", 0, NULL, ALIGN_TEXT, ALIGN_LONGTEXT, VLC_TRUE );
change_integer_list( pi_align_values, ppsz_align_descriptions, 0 );
- change_safe();
add_float( "zoom", 1, NULL, ZOOM_TEXT, ZOOM_LONGTEXT, VLC_TRUE );
- change_safe();
set_subcategory( SUBCAT_VIDEO_VOUT );
add_module( "vout", "video output", NULL, NULL, VOUT_TEXT, VOUT_LONGTEXT,
VLC_TRUE );
change_short('V');
- change_safe();
set_subcategory( SUBCAT_VIDEO_VFILTER );
add_module_list_cat( "video-filter", SUBCAT_VIDEO_VFILTER, NULL, NULL,
VIDEO_FILTER_TEXT, VIDEO_FILTER_LONGTEXT, VLC_FALSE );
- change_safe();
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, VLC_FALSE );
- change_safe();
#if 0
add_string( "pixel-ratio", "1", NULL, PIXEL_RATIO_TEXT, PIXEL_RATIO_TEXT );
#endif
add_category_hint( N_("Subpictures"), SUB_CAT_LONGTEXT , VLC_FALSE );
add_bool( "spu", 1, NULL, SPU_TEXT, SPU_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "osd", 1, NULL, OSD_TEXT, OSD_LONGTEXT, VLC_FALSE );
- change_safe();
add_module( "text-renderer", "text renderer", NULL, NULL, TEXTRENDERER_TEXT,
TEXTRENDERER_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_("Subtitles") , NULL );
add_file( "sub-file", NULL, NULL, SUB_FILE_TEXT,
SUB_FILE_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "sub-autodetect-file", VLC_TRUE, NULL,
SUB_AUTO_TEXT, SUB_AUTO_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "sub-autodetect-fuzzy", 3, NULL,
SUB_FUZZY_TEXT, SUB_FUZZY_LONGTEXT, VLC_TRUE );
- change_safe();
#ifdef WIN32
# define SUB_PATH ".\\subtitles"
#else
#endif
add_string( "sub-autodetect-path", SUB_PATH, NULL,
SUB_PATH_TEXT, SUB_PATH_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "sub-margin", 0, NULL, SUB_MARGIN_TEXT,
SUB_MARGIN_LONGTEXT, VLC_TRUE );
add_deprecated_alias( "spu-margin" ); /*Deprecated since 0.8.2 */
- change_safe();
set_section( N_( "Overlays" ) , NULL );
add_module_list_cat( "sub-filter", SUBCAT_VIDEO_SUBPIC, NULL, NULL,
SUB_FILTER_TEXT, SUB_FILTER_LONGTEXT, VLC_FALSE );
- change_safe();
/* Input options */
set_category( CAT_INPUT );
set_subcategory( SUBCAT_INPUT_GENERAL );
add_bool( "france", VLC_FALSE, NULL, N_("France"), FRANCE_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_( "Track settings" ), NULL );
add_integer( "program", 0, NULL,
INPUT_PROGRAM_TEXT, INPUT_PROGRAM_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "programs", "", NULL,
INPUT_PROGRAMS_TEXT, INPUT_PROGRAMS_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "audio-track", -1, NULL,
INPUT_AUDIOTRACK_TEXT, INPUT_AUDIOTRACK_LONGTEXT, VLC_TRUE );
- change_safe();
add_deprecated_alias( "audio-channel" ); /*deprecated since 0.8.2 */
add_integer( "sub-track", -1, NULL,
INPUT_SUBTRACK_TEXT, INPUT_SUBTRACK_LONGTEXT, VLC_TRUE );
- 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,
VLC_FALSE );
- change_safe();
add_string( "sub-language", "", NULL,
INPUT_SUBTRACK_LANG_TEXT, INPUT_SUBTRACK_LANG_LONGTEXT,
VLC_FALSE );
- change_safe();
add_integer( "audio-track-id", -1, NULL, INPUT_AUDIOTRACK_ID_TEXT,
INPUT_AUDIOTRACK_ID_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "sub-track-id", -1, NULL,
INPUT_SUBTRACK_ID_TEXT, INPUT_SUBTRACK_ID_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_( "Playback control" ) , NULL);
add_integer( "input-repeat", 0, NULL,
INPUT_REPEAT_TEXT, INPUT_REPEAT_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "start-time", 0, NULL,
START_TIME_TEXT, START_TIME_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "stop-time", 0, NULL,
STOP_TIME_TEXT, STOP_TIME_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "run-time", 0, NULL,
RUN_TIME_TEXT, RUN_TIME_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "input-list", NULL, NULL,
INPUT_LIST_TEXT, INPUT_LIST_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "input-slave", NULL, NULL,
INPUT_SLAVE_TEXT, INPUT_SLAVE_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "bookmarks", NULL, NULL,
BOOKMARKS_TEXT, BOOKMARKS_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_( "Default devices") , NULL );
add_file( "dvd", DVD_DEVICE, NULL, DVD_DEV_TEXT, DVD_DEV_LONGTEXT,
VLC_FALSE );
- change_safe();
add_file( "vcd", VCD_DEVICE, NULL, VCD_DEV_TEXT, VCD_DEV_LONGTEXT,
VLC_FALSE );
- change_safe();
add_file( "cd-audio", CDAUDIO_DEVICE, NULL, CDAUDIO_DEV_TEXT,
CDAUDIO_DEV_LONGTEXT, VLC_FALSE );
- change_safe();
set_section( N_( "Network settings" ), NULL );
add_integer( "server-port", 1234, NULL,
SERVER_PORT_TEXT, SERVER_PORT_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "mtu", MTU_DEFAULT, NULL, MTU_TEXT, MTU_LONGTEXT, VLC_TRUE );
- change_safe();
add_bool( "ipv6", 0, NULL, IPV6_TEXT, IPV6_LONGTEXT, VLC_FALSE );
change_short('6');
- change_safe();
add_bool( "ipv4", 0, NULL, IPV4_TEXT, IPV4_LONGTEXT, VLC_FALSE );
change_short('4');
- change_safe();
add_integer( "ipv4-timeout", 5 * 1000, NULL, TIMEOUT_TEXT,
TIMEOUT_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_( "Socks proxy") , NULL );
add_string( "socks", NULL, NULL,
SOCKS_SERVER_TEXT, SOCKS_SERVER_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "socks-user", NULL, NULL,
SOCKS_USER_TEXT, SOCKS_USER_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "socks-pwd", NULL, NULL,
SOCKS_PASS_TEXT, SOCKS_PASS_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_("Metadata" ) , NULL );
add_string( "meta-title", NULL, NULL, META_TITLE_TEXT,
META_TITLE_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "meta-author", NULL, NULL, META_AUTHOR_TEXT,
META_AUTHOR_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "meta-artist", NULL, NULL, META_ARTIST_TEXT,
META_ARTIST_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "meta-genre", NULL, NULL, META_GENRE_TEXT,
META_GENRE_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "meta-copyright", NULL, NULL, META_CPYR_TEXT,
META_CPYR_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "meta-description", NULL, NULL, META_DESCR_TEXT,
META_DESCR_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "meta-date", NULL, NULL, META_DATE_TEXT,
META_DATE_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "meta-url", NULL, NULL, META_URL_TEXT,
META_URL_LONGTEXT, VLC_TRUE );
- change_safe();
set_section( N_( "Advanced" ), NULL );
add_integer( "cr-average", 40, NULL, CR_AVERAGE_TEXT,
CR_AVERAGE_LONGTEXT, VLC_TRUE );
- change_safe();
add_integer( "clock-synchro", -1, NULL, CLOCK_SYNCHRO_TEXT,
CLOCK_SYNCHRO_LONGTEXT, VLC_TRUE );
change_integer_list( pi_clock_values, ppsz_clock_descriptions, 0 );
- change_safe();
add_bool( "network-synchronisation", VLC_FALSE, NULL, NETSYNC_TEXT,
NETSYNC_LONGTEXT, VLC_TRUE );
- change_safe();
/* Decoder options */
add_category_hint( N_("Decoders"), CODEC_CAT_LONGTEXT , VLC_TRUE );
add_string( "codec", NULL, NULL, CODEC_TEXT,
CODEC_LONGTEXT, VLC_TRUE );
- change_safe();
add_string( "encoder", NULL, NULL, ENCODER_TEXT,
ENCODER_LONGTEXT, VLC_TRUE );
- change_safe();
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 );
- change_safe();
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 );
- change_safe();
+
set_subcategory( SUBCAT_INPUT_DEMUX );
add_module( "demux", "demux2", NULL, NULL, DEMUX_TEXT,
DEMUX_LONGTEXT, VLC_TRUE );
- change_safe();
set_subcategory( SUBCAT_INPUT_VCODEC );
set_subcategory( SUBCAT_INPUT_ACODEC );
set_subcategory( SUBCAT_INPUT_SCODEC );
add_bool( "prefer-system-codecs", VLC_FALSE, NULL, SYSTEM_CODEC_TEXT,
SYSTEM_CODEC_LONGTEXT, VLC_FALSE );
- change_safe();
/* Stream output options */
set_subcategory( SUBCAT_PLAYLIST_GENERAL );
add_category_hint( N_("Playlist"), PLAYLIST_CAT_LONGTEXT , VLC_FALSE );
add_bool( "random", 0, NULL, RANDOM_TEXT, RANDOM_LONGTEXT, VLC_FALSE );
- change_safe();
change_short('Z');
add_bool( "loop", 0, NULL, LOOP_TEXT, LOOP_LONGTEXT, VLC_FALSE );
- change_safe();
change_short('L');
add_bool( "repeat", 0, NULL, REPEAT_TEXT, REPEAT_LONGTEXT, VLC_FALSE );
- change_safe();
change_short('R');
add_bool( "play-and-exit", 0, NULL, PAE_TEXT, PAE_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "play-and-stop", 0, NULL, PAS_TEXT, PAS_LONGTEXT, VLC_FALSE );
- change_safe();
add_bool( "media-library", 1, NULL, ML_TEXT, ML_LONGTEXT, VLC_FALSE );
add_integer( "playlist-tree", 0, NULL, PLTREE_TEXT, PLTREE_LONGTEXT,
VLC_TRUE );
add_bool( "auto-preparse", VLC_TRUE, NULL, PREPARSE_TEXT,
PREPARSE_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "fetch-meta", VLC_TRUE, NULL, FETCH_META_TEXT,
FETCH_META_LONGTEXT, VLC_FALSE );
- change_safe();
add_integer( "album-art", ALBUM_ART_WHEN_ASKED, NULL, ALBUM_ART_TEXT,
ALBUM_ART_LONGTEXT, VLC_FALSE );
- change_safe();
change_integer_list( pi_albumart_values,
ppsz_albumart_descriptions, 0 );
*****************************************************************************/
int __net_Accept( vlc_object_t *p_this, int *pi_fd, mtime_t i_wait )
{
- vlc_bool_t b_block = (i_wait < 0);
+ int timeout = (i_wait < 0) ? -1 : i_wait / 1000;
+ int evfd;
assert( pi_fd != NULL );
- while( !p_this->b_die )
+ vlc_object_lock (p_this);
+ evfd = vlc_object_waitpipe (p_this);
+
+ while (vlc_object_alive (p_this))
{
unsigned n = 0;
while (pi_fd[n] != -1)
n++;
- struct pollfd ufd[n];
+ struct pollfd ufd[n + 1];
/* Initialize file descriptor set */
- for (unsigned i = 0; i < n; i++)
+ for (unsigned i = 0; i <= n; i++)
{
- ufd[i].fd = pi_fd[i];
+ ufd[i].fd = (i < n) ? pi_fd[i] : evfd;
ufd[i].events = POLLIN;
ufd[i].revents = 0;
}
- switch (poll (ufd, n, b_block ? 500 : i_wait / 1000))
+ vlc_object_unlock (p_this);
+ switch (poll (ufd, n, timeout))
{
case -1:
if (net_errno != EINTR)
- {
msg_Err (p_this, "poll error: %m");
- }
- return -1;
-
case 0:
- if (b_block)
- continue;
- return -1;
+ return -1; /* NOTE: p_this already unlocked */
+ }
+ vlc_object_lock (p_this);
+
+ if (ufd[n].revents)
+ {
+ vlc_object_wait (p_this);
+ errno = EINTR;
+ break;
}
for (unsigned i = 0; i < n; i++)
*/
memmove (pi_fd + i, pi_fd + i + 1, n - (i + 1));
pi_fd[n - 1] = sfd;
+ vlc_object_unlock (p_this);
msg_Dbg (p_this, "accepted socket %d (from socket %d)", fd, sfd);
return fd;
}
}
-
+ vlc_object_unlock (p_this);
return -1;
}