21#ifndef AVFORMAT_OPTIONS_TABLE_H
22#define AVFORMAT_OPTIONS_TABLE_H
30#define OFFSET(x) offsetof(AVFormatContext,x)
33#define E AV_OPT_FLAG_ENCODING_PARAM
34#define D AV_OPT_FLAG_DECODING_PARAM
47{
"noparse",
"disable AVParsers, this needs nofillin too", 0,
AV_OPT_TYPE_CONST, {.i64 =
AVFMT_FLAG_NOPARSE }, INT_MIN, INT_MAX,
D, .unit =
"fflags"},
55#if FF_API_OLD_ID3V2_COMMENT
56{
"legacy_id3v2_comm_keys",
"also export id3v2 COMM descriptors as bare metadata keys", 0,
AV_OPT_TYPE_CONST, { .i64 = AVFMT_FLAG_LEGACY_ID3V2_COMM_KEYS }, 0, 0,
D|
AV_OPT_FLAG_DEPRECATED, .unit =
"fflags" },
58{
"seek2any",
"allow seeking to non-keyframes on demuxer level when supported",
OFFSET(seek2any),
AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1,
D},
59{
"analyzeduration",
"specify how many microseconds are analyzed to probe the input",
OFFSET(max_analyze_duration),
AV_OPT_TYPE_INT64, {.i64 = 0 }, 0, (
double)INT64_MAX,
D},
61{
"indexmem",
"max memory used for timestamp index (per stream)",
OFFSET(max_index_size),
AV_OPT_TYPE_INT, {.i64 = 1<<20 }, 0, INT_MAX,
D},
62{
"rtbufsize",
"max memory used for buffering real-time frames",
OFFSET(max_picture_buffer),
AV_OPT_TYPE_INT, {.i64 = 3041280 }, 0, INT_MAX,
D},
66{
"max_delay",
"maximum muxing or demuxing delay in microseconds",
OFFSET(max_delay),
AV_OPT_TYPE_INT, {.i64 = -1 }, -1, INT_MAX,
E|
D},
68{
"fpsprobesize",
"number of frames used to probe fps",
OFFSET(fps_probe_size),
AV_OPT_TYPE_INT, {.i64 = -1}, -1, INT_MAX-1,
D},
69{
"audio_preload",
"microseconds by which audio packets should be interleaved earlier",
OFFSET(audio_preload),
AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX-1,
E},
70{
"chunk_duration",
"microseconds for each chunk",
OFFSET(max_chunk_duration),
AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX-1,
E},
71{
"chunk_size",
"size in bytes for each chunk",
OFFSET(max_chunk_size),
AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX-1,
E},
74{
"f_err_detect",
"set error detection flags (deprecated; use err_detect, save via avconv)",
OFFSET(error_recognition),
AV_OPT_TYPE_FLAGS, {.i64 =
AV_EF_CRCCHECK }, INT_MIN, INT_MAX,
D, .unit =
"err_detect"},
81{
"careful",
"consider things that violate the spec, are fast to check and have not been seen in the wild as errors", 0,
AV_OPT_TYPE_CONST, {.i64 =
AV_EF_CAREFUL }, INT_MIN, INT_MAX,
D, .unit =
"err_detect"},
84{
"use_wallclock_as_timestamps",
"use wallclock as timestamps",
OFFSET(use_wallclock_as_timestamps),
AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1,
D},
85{
"skip_initial_bytes",
"set number of bytes to skip before reading header and frames",
OFFSET(skip_initial_bytes),
AV_OPT_TYPE_INT64, {.i64 = 0}, 0, (
double)(INT64_MAX-1),
D},
86{
"correct_ts_overflow",
"correct single timestamp overflows",
OFFSET(correct_ts_overflow),
AV_OPT_TYPE_BOOL, {.i64 = 1}, 0, 1,
D},
87{
"flush_packets",
"enable flushing of the I/O context after each packet",
OFFSET(flush_packets),
AV_OPT_TYPE_INT, {.i64 = -1}, -1, 1,
E},
88{
"metadata_header_padding",
"set number of bytes to be written as padding in a metadata header",
OFFSET(metadata_header_padding),
AV_OPT_TYPE_INT, {.i64 = -1}, -1, INT_MAX,
E},
90{
"max_interleave_delta",
"maximum buffering duration for interleaving",
OFFSET(max_interleave_delta),
AV_OPT_TYPE_INT64, { .i64 = 10000000 }, 0, (
double)INT64_MAX,
E },
91{
"f_strict",
"how strictly to follow the standards (deprecated; use strict, save via avconv)",
OFFSET(strict_std_compliance),
AV_OPT_TYPE_INT, {.i64 =
DEFAULT }, INT_MIN, INT_MAX,
D|
E, .unit =
"strict"},
92{
"strict",
"how strictly to follow the standards",
OFFSET(strict_std_compliance),
AV_OPT_TYPE_INT, {.i64 =
DEFAULT }, INT_MIN, INT_MAX,
D|
E, .unit =
"strict"},
98{
"max_ts_probe",
"maximum number of packets to read while waiting for the first timestamp",
OFFSET(max_ts_probe),
AV_OPT_TYPE_INT, { .i64 = 50 }, 0, INT_MAX,
D },
99{
"avoid_negative_ts",
"shift timestamps so they start at 0",
OFFSET(avoid_negative_ts),
AV_OPT_TYPE_INT, {.i64 = -1}, -1, 2,
E, .unit =
"avoid_negative_ts"},
104{
"dump_separator",
"set information dump field separator",
OFFSET(dump_separator),
AV_OPT_TYPE_STRING, {.str =
", "}, 0, 0,
D|
E},
106{
"format_whitelist",
"List of demuxers that are allowed to be used",
OFFSET(format_whitelist),
AV_OPT_TYPE_STRING, { .str =
NULL }, 0, 0,
D },
107{
"protocol_whitelist",
"List of protocols that are allowed to be used",
OFFSET(protocol_whitelist),
AV_OPT_TYPE_STRING, { .str =
NULL }, 0, 0,
D },
108{
"protocol_blacklist",
"List of protocols that are not allowed to be used",
OFFSET(protocol_blacklist),
AV_OPT_TYPE_STRING, { .str =
NULL }, 0, 0,
D },
109{
"max_streams",
"maximum number of streams",
OFFSET(max_streams),
AV_OPT_TYPE_INT, { .i64 = 1000 }, 0, INT_MAX,
D },
110{
"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},
111{
"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 },
112{
"duration_probesize",
"Maximum number of bytes to probe the durations of the streams in estimate_timings_from_pts",
OFFSET(duration_probesize),
AV_OPT_TYPE_INT64, {.i64 = 0 }, 0, (
double)INT64_MAX,
D},
113{
"recursion_limit",
"Maximum number of times a demuxer can recursively be opened",
OFFSET(recursion_limit),
AV_OPT_TYPE_INT, {.i64 = 10 }, 0, INT_MAX,
D},
#define AVIO_FLAG_DIRECT
Use direct mode.
#define flags(name, subs,...)
#define FF_COMPLIANCE_UNOFFICIAL
Allow unofficial extensions.
#define FF_COMPLIANCE_EXPERIMENTAL
Allow nonstandardized experimental things.
#define AV_EF_BITSTREAM
detect bitstream specification deviations
#define AV_EF_CRCCHECK
Verify checksums embedded in the bitstream (could be of either encoded or decoded data,...
#define AV_EF_COMPLIANT
consider all spec non compliances as errors
#define AV_EF_IGNORE_ERR
ignore errors and continue
#define FF_COMPLIANCE_STRICT
Strictly conform to all the things in the spec no matter what consequences.
#define AV_EF_EXPLODE
abort decoding on minor error detection
#define FF_COMPLIANCE_NORMAL
#define AV_EF_BUFFER
detect improper bitstream length
#define AV_EF_AGGRESSIVE
consider things that a sane encoder/muxer should not do as an error
#define FF_COMPLIANCE_VERY_STRICT
Strictly conform to an older more strict version of the spec or reference software.
#define AV_EF_CAREFUL
consider things that violate the spec, are fast to calculate and have not been seen in the wild as er...
#define AV_OPT_FLAG_DEPRECATED
Set if option is deprecated, users should refer to AVOption.help text for more information.
@ AV_OPT_TYPE_CONST
Special option type for declaring named constants.
@ AV_OPT_TYPE_BINARY
Underlying C type is a uint8_t* that is either NULL or points to an array allocated with the av_mallo...
@ AV_OPT_TYPE_DURATION
Underlying C type is int64_t.
@ AV_OPT_TYPE_FLAGS
Underlying C type is unsigned int.
@ AV_OPT_TYPE_INT64
Underlying C type is int64_t.
@ AV_OPT_TYPE_INT
Underlying C type is int.
@ AV_OPT_TYPE_BOOL
Underlying C type is int.
@ AV_OPT_TYPE_STRING
Underlying C type is a uint8_t* that is either NULL or points to a C string allocated with the av_mal...
#define AV_NOPTS_VALUE
Undefined timestamp value.