{"request_sample_fmt","sample format audio decoders should prefer",OFFSET(request_sample_fmt),AV_OPT_TYPE_SAMPLE_FMT,{.i64=AV_SAMPLE_FMT_NONE},-1,INT_MAX,A|D,"request_sample_fmt"},
{"request_sample_fmt","sample format audio decoders should prefer",OFFSET(request_sample_fmt),AV_OPT_TYPE_SAMPLE_FMT,{.i64=AV_SAMPLE_FMT_NONE},-1,INT_MAX,A|D,"request_sample_fmt"},
{"sub_charenc","set input text subtitles character encoding",OFFSET(sub_charenc),AV_OPT_TYPE_STRING,{.str=NULL},CHAR_MIN,CHAR_MAX,S|D},
{"sub_charenc","set input text subtitles character encoding",OFFSET(sub_charenc),AV_OPT_TYPE_STRING,{.str=NULL},0,0,S|D},
{"sub_charenc_mode","set input text subtitles character encoding mode",OFFSET(sub_charenc_mode),AV_OPT_TYPE_FLAGS,{.i64=FF_SUB_CHARENC_MODE_AUTOMATIC},-1,INT_MAX,S|D,"sub_charenc_mode"},
{"sub_charenc_mode","set input text subtitles character encoding mode",OFFSET(sub_charenc_mode),AV_OPT_TYPE_FLAGS,{.i64=FF_SUB_CHARENC_MODE_AUTOMATIC},-1,INT_MAX,S|D,"sub_charenc_mode"},
{"full","compute full frame histograms",0,AV_OPT_TYPE_CONST,{.i64=STATS_MODE_ALL_FRAMES},INT_MIN,INT_MAX,FLAGS,"mode"},
{"full","compute full frame histograms",0,AV_OPT_TYPE_CONST,{.i64=STATS_MODE_ALL_FRAMES},INT_MIN,INT_MAX,FLAGS,"mode"},
{"diff","compute histograms only for the part that differs from previous frame",0,AV_OPT_TYPE_CONST,{.i64=STATS_MODE_DIFF_FRAMES},INT_MIN,INT_MAX,FLAGS,"mode"},
{"diff","compute histograms only for the part that differs from previous frame",0,AV_OPT_TYPE_CONST,{.i64=STATS_MODE_DIFF_FRAMES},INT_MIN,INT_MAX,FLAGS,"mode"},
{"filename", "set the filename of file to read", OFFSET(filename), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX, FLAGS }, \
{"filename", "set the filename of file to read", OFFSET(filename), AV_OPT_TYPE_STRING, {.str = NULL}, 0, 0, FLAGS }, \
{"f", "set the filename of file to read", OFFSET(filename), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX, FLAGS }, \
{"f", "set the filename of file to read", OFFSET(filename), AV_OPT_TYPE_STRING, {.str = NULL}, 0, 0, FLAGS }, \
{"original_size", "set the size of the original video (used to scale fonts)", OFFSET(original_w), AV_OPT_TYPE_IMAGE_SIZE, {.str = NULL}, CHAR_MIN, CHAR_MAX, FLAGS }, \
{"original_size", "set the size of the original video (used to scale fonts)", OFFSET(original_w), AV_OPT_TYPE_IMAGE_SIZE, {.str = NULL}, 0, 0, FLAGS }, \
{"fontsdir", "set the directory containing the fonts to read", OFFSET(fontsdir), AV_OPT_TYPE_STRING, {.str = NULL}, CHAR_MIN, CHAR_MAX, FLAGS }, \
{"fontsdir", "set the directory containing the fonts to read", OFFSET(fontsdir), AV_OPT_TYPE_STRING, {.str = NULL}, 0, 0, FLAGS }, \
{"protocol_whitelist","List of protocols that are allowed to be used",OFFSET(protocol_whitelist),AV_OPT_TYPE_STRING,{.str=NULL},CHAR_MIN,CHAR_MAX,D},
{"protocol_whitelist","List of protocols that are allowed to be used",OFFSET(protocol_whitelist),AV_OPT_TYPE_STRING,{.str=NULL},0,0,D},
{"protocol_blacklist","List of protocols that are not allowed to be used",OFFSET(protocol_blacklist),AV_OPT_TYPE_STRING,{.str=NULL},CHAR_MIN,CHAR_MAX,D},
{"protocol_blacklist","List of protocols that are not allowed to be used",OFFSET(protocol_blacklist),AV_OPT_TYPE_STRING,{.str=NULL},0,0,D},
{"rw_timeout","Timeout for IO operations (in microseconds)",offsetof(URLContext,rw_timeout),AV_OPT_TYPE_INT64,{.i64=0},0,INT64_MAX,AV_OPT_FLAG_ENCODING_PARAM|AV_OPT_FLAG_DECODING_PARAM},
{"rw_timeout","Timeout for IO operations (in microseconds)",offsetof(URLContext,rw_timeout),AV_OPT_TYPE_INT64,{.i64=0},0,INT64_MAX,AV_OPT_FLAG_ENCODING_PARAM|AV_OPT_FLAG_DECODING_PARAM},
{"disabled","do not change timestamps",0,AV_OPT_TYPE_CONST,{.i64=0},INT_MIN,INT_MAX,E,"avoid_negative_ts"},
{"disabled","do not change timestamps",0,AV_OPT_TYPE_CONST,{.i64=0},INT_MIN,INT_MAX,E,"avoid_negative_ts"},
{"make_non_negative","shift timestamps so they are non negative",0,AV_OPT_TYPE_CONST,{.i64=AVFMT_AVOID_NEG_TS_MAKE_NON_NEGATIVE},INT_MIN,INT_MAX,E,"avoid_negative_ts"},
{"make_non_negative","shift timestamps so they are non negative",0,AV_OPT_TYPE_CONST,{.i64=AVFMT_AVOID_NEG_TS_MAKE_NON_NEGATIVE},INT_MIN,INT_MAX,E,"avoid_negative_ts"},
{"make_zero","shift timestamps so they start at 0",0,AV_OPT_TYPE_CONST,{.i64=AVFMT_AVOID_NEG_TS_MAKE_ZERO},INT_MIN,INT_MAX,E,"avoid_negative_ts"},
{"make_zero","shift timestamps so they start at 0",0,AV_OPT_TYPE_CONST,{.i64=AVFMT_AVOID_NEG_TS_MAKE_ZERO},INT_MIN,INT_MAX,E,"avoid_negative_ts"},
{"dump_separator","set information dump field separator",OFFSET(dump_separator),AV_OPT_TYPE_STRING,{.str=", "},CHAR_MIN,CHAR_MAX,D|E},
{"dump_separator","set information dump field separator",OFFSET(dump_separator),AV_OPT_TYPE_STRING,{.str=", "},0,0,D|E},
{"codec_whitelist","List of decoders that are allowed to be used",OFFSET(codec_whitelist),AV_OPT_TYPE_STRING,{.str=NULL},CHAR_MIN,CHAR_MAX,D},
{"codec_whitelist","List of decoders that are allowed to be used",OFFSET(codec_whitelist),AV_OPT_TYPE_STRING,{.str=NULL},0,0,D},
{"format_whitelist","List of demuxers that are allowed to be used",OFFSET(format_whitelist),AV_OPT_TYPE_STRING,{.str=NULL},CHAR_MIN,CHAR_MAX,D},
{"format_whitelist","List of demuxers that are allowed to be used",OFFSET(format_whitelist),AV_OPT_TYPE_STRING,{.str=NULL},0,0,D},
{"protocol_whitelist","List of protocols that are allowed to be used",OFFSET(protocol_whitelist),AV_OPT_TYPE_STRING,{.str=NULL},CHAR_MIN,CHAR_MAX,D},
{"protocol_whitelist","List of protocols that are allowed to be used",OFFSET(protocol_whitelist),AV_OPT_TYPE_STRING,{.str=NULL},0,0,D},
{"protocol_blacklist","List of protocols that are not allowed to be used",OFFSET(protocol_blacklist),AV_OPT_TYPE_STRING,{.str=NULL},CHAR_MIN,CHAR_MAX,D},
{"protocol_blacklist","List of protocols that are not allowed to be used",OFFSET(protocol_blacklist),AV_OPT_TYPE_STRING,{.str=NULL},0,0,D},
{"max_streams","maximum number of streams",OFFSET(max_streams),AV_OPT_TYPE_INT,{.i64=1000},0,INT_MAX,D},
{"max_streams","maximum number of streams",OFFSET(max_streams),AV_OPT_TYPE_INT,{.i64=1000},0,INT_MAX,D},
{"skip_estimate_duration_from_pts","skip duration calculation in estimate_timings_from_pts",OFFSET(skip_estimate_duration_from_pts),AV_OPT_TYPE_BOOL,{.i64=0},0,1,D},
{"skip_estimate_duration_from_pts","skip duration calculation in estimate_timings_from_pts",OFFSET(skip_estimate_duration_from_pts),AV_OPT_TYPE_BOOL,{.i64=0},0,1,D},
{"max_probe_packets","Maximum number of packets to probe a codec",OFFSET(max_probe_packets),AV_OPT_TYPE_INT,{.i64=2500},0,INT_MAX,D},
{"max_probe_packets","Maximum number of packets to probe a codec",OFFSET(max_probe_packets),AV_OPT_TYPE_INT,{.i64=2500},0,INT_MAX,D},
{"segment_format","set container format used for the segments",OFFSET(format),AV_OPT_TYPE_STRING,{.str=NULL},0,0,E},
{"segment_format","set container format used for the segments",OFFSET(format),AV_OPT_TYPE_STRING,{.str=NULL},0,0,E},
{"segment_format_options","set list of options for the container format used for the segments",OFFSET(format_options),AV_OPT_TYPE_DICT,{.str=NULL},0,0,E},
{"segment_format_options","set list of options for the container format used for the segments",OFFSET(format_options),AV_OPT_TYPE_DICT,{.str=NULL},0,0,E},
{"segment_list","set the segment list filename",OFFSET(list),AV_OPT_TYPE_STRING,{.str=NULL},0,0,E},
{"segment_list","set the segment list filename",OFFSET(list),AV_OPT_TYPE_STRING,{.str=NULL},0,0,E},