| FFmpegKit iOS / macOS / tvOS API 4.5

Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
fftools_ffprobe.c File Reference

Go to the source code of this file.

## Data Structures
struct | InputStream
struct | InputFile
struct | ReadInterval
struct | section
struct | LogBuffer
struct | unit_value
struct | Writer
struct | WriterContext
struct | DefaultContext
struct | CompactContext
struct | FlatContext
struct | INIContext
struct | JSONContext
struct | XMLContext

## Macros
#define | pthread_mutex_lock(a) do{}while(0)
#define | pthread_mutex_unlock(a) do{}while(0)
#define | SHOW_OPTIONAL_FIELDS_AUTO -1
#define | SHOW_OPTIONAL_FIELDS_NEVER 0
#define | SHOW_OPTIONAL_FIELDS_ALWAYS 1
#define | SECTION_MAX_NB_CHILDREN 10
#define | SECTION_FLAG_IS_WRAPPER 1
| the section only contains other sections, but has no data at its own level More...
#define | SECTION_FLAG_IS_ARRAY 2
| the section contains an array of elements of the same type More...
#define | SECTION_FLAG_HAS_VARIABLE_FIELDS 4
#define | WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS 1
#define | WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER 2
#define | SECTION_MAX_NB_LEVELS 10
#define | OFFSET(x) offsetof(WriterContext, x)
#define | PRINT_STRING_OPT 1
#define | PRINT_STRING_VALIDATE 2
#define | MAX_REGISTERED_WRITERS_NB 64
#define | DEFINE_WRITER_CLASS(name)
#define | OFFSET(x) offsetof(DefaultContext, x)
#define | OFFSET(x) offsetof(CompactContext, x)
#define | OFFSET(x) offsetof(FlatContext, x)
#define | OFFSET(x) offsetof(INIContext, x)
#define | OFFSET(x) offsetof(JSONContext, x)
#define | JSON_INDENT() av_log(NULL, AV_LOG_STDERR, "%*c", json->indent_level * 4, ' ')
#define | OFFSET(x) offsetof(XMLContext, x)
#define | CHECK_COMPLIANCE(opt, opt_name)
#define | XML_INDENT() av_log(NULL, AV_LOG_STDERR, "%*c", xml->indent_level * 4, ' ')
#define | print_fmt(k, f, ...)
#define | print_int(k, v) writer_print_integer(w, k, v)
#define | print_q(k, v, s) writer_print_rational(w, k, v, s)
#define | print_str(k, v) writer_print_string(w, k, v, 0)
#define | print_str_opt(k, v) writer_print_string(w, k, v, PRINT_STRING_OPT)
#define | print_str_validate(k, v) writer_print_string(w, k, v, PRINT_STRING_VALIDATE)
#define | print_time(k, v, tb) writer_print_time(w, k, v, tb, 0)
#define | print_ts(k, v) writer_print_ts(w, k, v, 0)
#define | print_duration_time(k, v, tb) writer_print_time(w, k, v, tb, 1)
#define | print_duration_ts(k, v) writer_print_ts(w, k, v, 1)
#define | print_val(k, v, u)
#define | print_section_header(s) writer_print_section_header(w, s)
#define | print_section_footer(s) writer_print_section_footer(w, s)
#define | REALLOCZ_ARRAY_STREAM(ptr, cur_n, new_n)
#define | PRINT_DISPOSITION(flagname, name)
#define | CHECK_END if (ret < 0) goto end
#define | SHOW_LIB_VERSION(libname, LIBNAME)
#define | PRINT_PIX_FMT_FLAG(flagname, name)
#define | DEFINE_OPT_SHOW_SECTION(section, target_section_id)
#define | SET_DO_SHOW(id, varname)

## Typedefs
typedef struct InputStream | InputStream
typedef struct InputFile | InputFile
typedef struct ReadInterval | ReadInterval
typedef struct LogBuffer | LogBuffer
typedef struct WriterContext | WriterContext
typedef struct Writer | Writer
typedef struct DefaultContext | DefaultContext
typedef struct CompactContext | CompactContext
typedef struct FlatContext | FlatContext
typedef struct INIContext | INIContext
typedef struct JSONContext | JSONContext
typedef struct XMLContext | XMLContext

## Enumerations
enum | SectionID { SECTION_ID_NONE = -1 , SECTION_ID_CHAPTER , SECTION_ID_CHAPTER_TAGS , SECTION_ID_CHAPTERS , SECTION_ID_ERROR , SECTION_ID_FORMAT , SECTION_ID_FORMAT_TAGS , SECTION_ID_FRAME , SECTION_ID_FRAMES , SECTION_ID_FRAME_TAGS , SECTION_ID_FRAME_SIDE_DATA_LIST , SECTION_ID_FRAME_SIDE_DATA , SECTION_ID_FRAME_SIDE_DATA_TIMECODE_LIST , SECTION_ID_FRAME_SIDE_DATA_TIMECODE , SECTION_ID_FRAME_LOG , SECTION_ID_FRAME_LOGS , SECTION_ID_LIBRARY_VERSION , SECTION_ID_LIBRARY_VERSIONS , SECTION_ID_PACKET , SECTION_ID_PACKET_TAGS , SECTION_ID_PACKETS , SECTION_ID_PACKETS_AND_FRAMES , SECTION_ID_PACKET_SIDE_DATA_LIST , SECTION_ID_PACKET_SIDE_DATA , SECTION_ID_PIXEL_FORMAT , SECTION_ID_PIXEL_FORMAT_FLAGS , SECTION_ID_PIXEL_FORMAT_COMPONENT , SECTION_ID_PIXEL_FORMAT_COMPONENTS , SECTION_ID_PIXEL_FORMATS , SECTION_ID_PROGRAM_STREAM_DISPOSITION , SECTION_ID_PROGRAM_STREAM_TAGS , SECTION_ID_PROGRAM , SECTION_ID_PROGRAM_STREAMS , SECTION_ID_PROGRAM_STREAM , SECTION_ID_PROGRAM_TAGS , SECTION_ID_PROGRAM_VERSION , SECTION_ID_PROGRAMS , SECTION_ID_ROOT , SECTION_ID_STREAM , SECTION_ID_STREAM_DISPOSITION , SECTION_ID_STREAMS , SECTION_ID_STREAM_TAGS , SECTION_ID_STREAM_SIDE_DATA_LIST , SECTION_ID_STREAM_SIDE_DATA , SECTION_ID_SUBTITLE }
enum | StringValidation { WRITER_STRING_VALIDATION_FAIL , WRITER_STRING_VALIDATION_REPLACE , WRITER_STRING_VALIDATION_IGNORE , WRITER_STRING_VALIDATION_NB }

## Functions
static void | log_callback (void *ptr, int level, const char *fmt, va_list vl)
static void | ffprobe_cleanup (int ret)
static char * | value_string (char *buf, int buf_size, struct unit_value uv)
static const char * | writer_get_name (void *p)
static void * | writer_child_next (void *obj, void *prev)
static void | writer_close (WriterContext **wctx)
static void | bprint_bytes (AVBPrint *bp, const uint8_t *ubuf, size_t ubuf_size)
static int | writer_open (WriterContext **wctx, const Writer *writer, const char *args, const struct section *sections, int nb_sections)
static void | writer_print_section_header (WriterContext *wctx, int section_id)
static void | writer_print_section_footer (WriterContext *wctx)
static void | writer_print_integer (WriterContext *wctx, const char *key, long long int val)
static int | validate_string (WriterContext *wctx, char **dstp, const char *src)
static int | writer_print_string (WriterContext *wctx, const char *key, const char *val, int flags)
static void | writer_print_rational (WriterContext *wctx, const char *key, AVRational q, char sep)
static void | writer_print_time (WriterContext *wctx, const char *key, int64_t ts, const AVRational *time_base, int is_duration)
static void | writer_print_ts (WriterContext *wctx, const char *key, int64_t ts, int is_duration)
static void | writer_print_data (WriterContext *wctx, const char *name, uint8_t *data, int size)
static void | writer_print_data_hash (WriterContext *wctx, const char *name, uint8_t *data, int size)
static void | writer_print_integers (WriterContext *wctx, const char *name, uint8_t *data, int size, const char *format, int columns, int bytes, int offset_add)
static int | writer_register (const Writer *writer)
static const Writer * | writer_get_by_name (const char *name)
| DEFINE_WRITER_CLASS (default)
static char * | upcase_string (char *dst, size_t dst_size, const char *src)
static void | default_print_section_header (WriterContext *wctx)
static void | default_print_section_footer (WriterContext *wctx)
static void | default_print_str (WriterContext *wctx, const char *key, const char *value)
static void | default_print_int (WriterContext *wctx, const char *key, long long int value)
static const char * | c_escape_str (AVBPrint *dst, const char *src, const char sep, void *log_ctx)
static const char * | csv_escape_str (AVBPrint *dst, const char *src, const char sep, void *log_ctx)
static const char * | none_escape_str (AVBPrint *dst, const char *src, const char sep, void *log_ctx)
| DEFINE_WRITER_CLASS (compact)
static av_cold int | compact_init (WriterContext *wctx)
static void | compact_print_section_header (WriterContext *wctx)
static void | compact_print_section_footer (WriterContext *wctx)
static void | compact_print_str (WriterContext *wctx, const char *key, const char *value)
static void | compact_print_int (WriterContext *wctx, const char *key, long long int value)
| DEFINE_WRITER_CLASS (csv)
| DEFINE_WRITER_CLASS (flat)
static av_cold int | flat_init (WriterContext *wctx)
static const char * | flat_escape_key_str (AVBPrint *dst, const char *src, const char sep)
static const char * | flat_escape_value_str (AVBPrint *dst, const char *src)
static void | flat_print_section_header (WriterContext *wctx)
static void | flat_print_int (WriterContext *wctx, const char *key, long long int value)
static void | flat_print_str (WriterContext *wctx, const char *key, const char *value)
| DEFINE_WRITER_CLASS (ini)
static char * | ini_escape_str (AVBPrint *dst, const char *src)
static void | ini_print_section_header (WriterContext *wctx)
static void | ini_print_str (WriterContext *wctx, const char *key, const char *value)
static void | ini_print_int (WriterContext *wctx, const char *key, long long int value)
| DEFINE_WRITER_CLASS (json)
static av_cold int | json_init (WriterContext *wctx)
static const char * | json_escape_str (AVBPrint *dst, const char *src, void *log_ctx)
static void | json_print_section_header (WriterContext *wctx)
static void | json_print_section_footer (WriterContext *wctx)
static void | json_print_item_str (WriterContext *wctx, const char *key, const char *value)
static void | json_print_str (WriterContext *wctx, const char *key, const char *value)
static void | json_print_int (WriterContext *wctx, const char *key, long long int value)
| DEFINE_WRITER_CLASS (xml)
static av_cold int | xml_init (WriterContext *wctx)
static void | xml_print_section_header (WriterContext *wctx)
static void | xml_print_section_footer (WriterContext *wctx)
static void | xml_print_str (WriterContext *wctx, const char *key, const char *value)
static void | xml_print_int (WriterContext *wctx, const char *key, long long int value)
static void | writer_register_all (void)
static int | show_tags (WriterContext *w, AVDictionary *tags, int section_id)
static void | print_dynamic_hdr10_plus (WriterContext *w, const AVDynamicHDRPlus *metadata)
static void | print_pkt_side_data (WriterContext *w, AVCodecParameters *par, const AVPacketSideData *side_data, int nb_side_data, SectionID id_data_list, SectionID id_data)
static void | print_color_range (WriterContext *w, enum AVColorRange color_range)
static void | print_color_space (WriterContext *w, enum AVColorSpace color_space)
static void | print_primaries (WriterContext *w, enum AVColorPrimaries color_primaries)
static void | print_color_trc (WriterContext *w, enum AVColorTransferCharacteristic color_trc)
static void | print_chroma_location (WriterContext *w, enum AVChromaLocation chroma_location)
static void | clear_log (int need_lock)
static int | show_log (WriterContext *w, int section_ids, int section_id, int log_level)
static void | show_packet (WriterContext *w, InputFile *ifile, AVPacket *pkt, int packet_idx)
static void | show_subtitle (WriterContext *w, AVSubtitle *sub, AVStream *stream, AVFormatContext *fmt_ctx)
static void | show_frame (WriterContext *w, AVFrame *frame, AVStream *stream, AVFormatContext *fmt_ctx)
static av_always_inline int | process_frame (WriterContext *w, InputFile *ifile, AVFrame *frame, AVPacket *pkt, int *packet_new)
static void | log_read_interval (const ReadInterval *interval, void *log_ctx, int log_level)
static int | read_interval_packets (WriterContext *w, InputFile *ifile, const ReadInterval *interval, int64_t *cur_ts)
static int | read_packets (WriterContext *w, InputFile *ifile)
static int | show_stream (WriterContext *w, AVFormatContext *fmt_ctx, int stream_idx, InputStream *ist, int in_program)
static int | show_streams (WriterContext *w, InputFile *ifile)
static int | show_program (WriterContext *w, InputFile *ifile, AVProgram *program)
static int | show_programs (WriterContext *w, InputFile *ifile)
static int | show_chapters (WriterContext *w, InputFile *ifile)
static int | show_format (WriterContext *w, InputFile *ifile)
static void | show_error (WriterContext *w, int err)
static int | open_input_file (InputFile *ifile, const char *filename, const char *print_filename)
static void | close_input_file (InputFile *ifile)
static int | probe_file (WriterContext *wctx, const char *filename, const char *print_filename)
static void | show_usage (void)
static void | ffprobe_show_program_version (WriterContext *w)
static void | ffprobe_show_library_versions (WriterContext *w)
static void | ffprobe_show_pixel_formats (WriterContext *w)
static int | opt_show_optional_fields (void *optctx, const char *opt, const char *arg)
static int | opt_format (void *optctx, const char *opt, const char *arg)
static void | mark_section_show_entries (SectionID section_id, int show_all_entries, AVDictionary *entries)
static int | match_section (const char *section_name, int show_all_entries, AVDictionary *entries)
static int | opt_show_entries (void *optctx, const char *opt, const char *arg)
static int | opt_show_format_entry (void *optctx, const char *opt, const char *arg)
static void | opt_input_file (void *optctx, const char *arg)
static int | opt_input_file_i (void *optctx, const char *opt, const char *arg)
static int | opt_print_filename (void *optctx, const char *opt, const char *arg)
void | show_help_default_ffprobe (const char *opt, const char *arg)
static int | parse_read_interval (const char *interval_spec, ReadInterval *interval)
static int | parse_read_intervals (const char *intervals_spec)
static int | opt_read_intervals (void *optctx, const char *opt, const char *arg)
static int | opt_pretty (void *optctx, const char *opt, const char *arg)
static void | print_section (SectionID id, int level)
static int | opt_sections (void *optctx, const char *opt, const char *arg)
static int | opt_show_versions (void *optctx, const char *opt, const char *arg)
static int | check_section_show_entries (int section_id)
void | ffprobe_var_cleanup ()
int | ffprobe_execute (int argc, char **argv)

## Variables
__thread int | do_bitexact = 0
__thread int | do_count_frames = 0
__thread int | do_count_packets = 0
__thread int | do_read_frames = 0
__thread int | do_read_packets = 0
__thread int | do_show_chapters = 0
__thread int | do_show_error = 0
__thread int | do_show_format = 0
__thread int | do_show_frames = 0
__thread int | do_show_packets = 0
__thread int | do_show_programs = 0
__thread int | do_show_streams = 0
__thread int | do_show_stream_disposition = 0
__thread int | do_show_data = 0
__thread int | do_show_program_version = 0
__thread int | do_show_library_versions = 0
__thread int | do_show_pixel_formats = 0
__thread int | do_show_pixel_format_flags = 0
__thread int | do_show_pixel_format_components = 0
__thread int | do_show_log = 0
__thread int | do_show_chapter_tags = 0
__thread int | do_show_format_tags = 0
__thread int | do_show_frame_tags = 0
__thread int | do_show_program_tags = 0
__thread int | do_show_stream_tags = 0
__thread int | do_show_packet_tags = 0
__thread int | show_value_unit = 0
__thread int | use_value_prefix = 0
__thread int | use_byte_value_binary_prefix = 0
__thread int | use_value_sexagesimal_format = 0
__thread int | show_private_data = 1
__thread int | show_optional_fields = SHOW_OPTIONAL_FIELDS_AUTO
__thread char * | print_format
__thread char * | stream_specifier
__thread char * | show_data_hash
__thread ReadInterval * | read_intervals
__thread int | read_intervals_nb = 0
static struct section | sections []
__thread OptionDef * | ffprobe_options = NULL
__thread const char * | input_filename
__thread const char * | print_input_filename
__thread const AVInputFormat * | iformat = NULL
__thread struct AVHashContext * | hash
__thread volatile int | main_ffprobe_return_code = 0
__thread volatile int | longjmp_value
struct {
double bin_val
double dec_val
const char * bin_str
const char * dec_str
} | si_prefixes []
static const char | unit_second_str [] = "s"
static const char | unit_hertz_str [] = "Hz"
static const char | unit_byte_str [] = "byte"
static const char | unit_bit_per_second_str [] = "bit/s"
__thread int | nb_streams
__thread uint64_t * | nb_streams_packets
__thread uint64_t * | nb_streams_frames
__thread int * | selected_streams
__thread LogBuffer * | log_buffer
__thread int | log_buffer_size
static const AVOption | writer_options []
static const AVClass | writer_class
__thread const Writer * | registered_writers [MAX_REGISTERED_WRITERS_NB+1]
__thread int | next_registered_writer_idx = 0
static const AVOption | default_options []
static const Writer | default_writer
static const AVOption | compact_options []
static const Writer | compact_writer
static const AVOption | csv_options []
static const Writer | csv_writer
static const AVOption | flat_options []
static const Writer | flat_writer
static const AVOption | ini_options []
static const Writer | ini_writer
static const AVOption | json_options []
static const Writer | json_writer
static const AVOption | xml_options []
static Writer | xml_writer

## Detailed Description

simple media prober based on the FFmpeg libraries

Definition in file fftools_ffprobe.c.

## Macro Definition Documentation

## ◆ CHECK_COMPLIANCE

#define CHECK_COMPLIANCE | ( |  | opt,
|  |  | opt_name
| ) |  |

Value:
if (opt) { \
av_log(wctx, AV_LOG_ERROR, \
"XSD-compliant output selected but option '%s' was selected, XML output may be non-compliant.\n" \
"You need to disable such option with '-no%s'\n", opt_name, opt_name); \
return AVERROR(EINVAL); \
}

## ◆ CHECK_END

#define CHECK_END if (ret < 0) goto end

## ◆ DEFINE_OPT_SHOW_SECTION

#define DEFINE_OPT_SHOW_SECTION | ( |  | section,
|  |  | target_section_id
| ) |  |

Value:
static int opt_show_##section(void *optctx, const char *opt, const char *arg) \
{ \
mark_section_show_entries(SECTION_ID_##target_section_id, 1, NULL); \
return 0; \
}
section
Definition: fftools_ffprobe.c:150

Definition at line 3617 of file fftools_ffprobe.c.

## ◆ DEFINE_WRITER_CLASS

#define DEFINE_WRITER_CLASS | ( |  | name | ) |

Value:
static const char *name##_get_name(void *ctx) \
{ \
return #name ; \
} \
static const AVClass name##_class = { \
.class_name = #name, \
.item_name = name##_get_name, \
.option = name##_options \
}

Definition at line 925 of file fftools_ffprobe.c.

## ◆ JSON_INDENT

#define JSON_INDENT | ( |  | ) | av_log(NULL, AV_LOG_STDERR, "%*c", json->indent_level * 4, ' ')

Definition at line 1522 of file fftools_ffprobe.c.

## ◆ MAX_REGISTERED_WRITERS_NB

#define MAX_REGISTERED_WRITERS_NB 64

Definition at line 896 of file fftools_ffprobe.c.

## ◆ OFFSET [1/8]

#define OFFSET | ( |  | x | ) | offsetof(WriterContext, x)

Definition at line 1649 of file fftools_ffprobe.c.

## ◆ OFFSET [2/8]

#define OFFSET | ( |  | x | ) | offsetof(DefaultContext, x)

Definition at line 1649 of file fftools_ffprobe.c.

## ◆ OFFSET [3/8]

#define OFFSET | ( |  | x | ) | offsetof(CompactContext, x)

Definition at line 1649 of file fftools_ffprobe.c.

## ◆ OFFSET [4/8]

#define OFFSET | ( |  | x | ) | offsetof(CompactContext, x)

Definition at line 1649 of file fftools_ffprobe.c.

## ◆ OFFSET [5/8]

#define OFFSET | ( |  | x | ) | offsetof(FlatContext, x)

Definition at line 1649 of file fftools_ffprobe.c.

## ◆ OFFSET [6/8]

#define OFFSET | ( |  | x | ) | offsetof(INIContext, x)

Definition at line 1649 of file fftools_ffprobe.c.

## ◆ OFFSET [7/8]

#define OFFSET | ( |  | x | ) | offsetof(JSONContext, x)

Definition at line 1649 of file fftools_ffprobe.c.

## ◆ OFFSET [8/8]

#define OFFSET | ( |  | x | ) | offsetof(XMLContext, x)

Definition at line 1649 of file fftools_ffprobe.c.

## ◆ PRINT_DISPOSITION

#define PRINT_DISPOSITION | ( |  | flagname,
|  |  | name
| ) |  |

Value:
do { \
print_int(name, !!(stream->disposition & AV_DISPOSITION_##flagname)); \
} while (0)

## ◆ print_duration_time

#define print_duration_time | ( |  | k,
|  |  | v,
|  |  | tb
| ) |  | writer_print_time(w, k, v, tb, 1)

Definition at line 1818 of file fftools_ffprobe.c.

## ◆ print_duration_ts

#define print_duration_ts | ( |  | k,
|  |  | v
| ) |  | writer_print_ts(w, k, v, 1)

Definition at line 1819 of file fftools_ffprobe.c.

## ◆ print_fmt

#define print_fmt | ( |  | k,
|  |  | f,
|  |  | ...
| ) |  |

Value:
do { \
av_bprint_clear(&pbuf); \
av_bprintf(&pbuf, f, __VA_ARGS__); \
writer_print_string(w, k, pbuf.str, 0); \
} while (0)

Definition at line 1805 of file fftools_ffprobe.c.

## ◆ print_int

#define print_int | ( |  | k,
|  |  | v
| ) |  | writer_print_integer(w, k, v)

Definition at line 1811 of file fftools_ffprobe.c.

## ◆ PRINT_PIX_FMT_FLAG

#define PRINT_PIX_FMT_FLAG | ( |  | flagname,
|  |  | name
| ) |  |

Value:
do { \
print_int(name, !!(pixdesc->flags & AV_PIX_FMT_FLAG_##flagname)); \
} while (0)

Definition at line 3225 of file fftools_ffprobe.c.

## ◆ print_q

#define print_q | ( |  | k,
|  |  | v,
|  |  | s
| ) |  | writer_print_rational(w, k, v, s)

Definition at line 1812 of file fftools_ffprobe.c.

## ◆ print_section_footer

#define print_section_footer | ( |  | s | ) | writer_print_section_footer(w, s)

Definition at line 1828 of file fftools_ffprobe.c.

## ◆ print_section_header

#define print_section_header | ( |  | s | ) | writer_print_section_header(w, s)

Definition at line 1827 of file fftools_ffprobe.c.

## ◆ print_str

#define print_str | ( |  | k,
|  |  | v
| ) |  | writer_print_string(w, k, v, 0)

Definition at line 1813 of file fftools_ffprobe.c.

## ◆ print_str_opt

#define print_str_opt | ( |  | k,
|  |  | v
| ) |  | writer_print_string(w, k, v, PRINT_STRING_OPT)

Definition at line 1814 of file fftools_ffprobe.c.

## ◆ print_str_validate

#define print_str_validate | ( |  | k,
|  |  | v
| ) |  | writer_print_string(w, k, v, PRINT_STRING_VALIDATE)

Definition at line 1815 of file fftools_ffprobe.c.

## ◆ PRINT_STRING_OPT

#define PRINT_STRING_OPT 1

Definition at line 751 of file fftools_ffprobe.c.

## ◆ PRINT_STRING_VALIDATE

#define PRINT_STRING_VALIDATE 2

Definition at line 752 of file fftools_ffprobe.c.

## ◆ print_time

#define print_time | ( |  | k,
|  |  | v,
|  |  | tb
| ) |  | writer_print_time(w, k, v, tb, 0)

Definition at line 1816 of file fftools_ffprobe.c.

## ◆ print_ts

#define print_ts | ( |  | k,
|  |  | v
| ) |  | writer_print_ts(w, k, v, 0)

Definition at line 1817 of file fftools_ffprobe.c.

## ◆ print_val

#define print_val | ( |  | k,
|  |  | v,
|  |  | u
| ) |  |

Value:
do { \
struct unit_value uv; \
uv.val.i = v; \
uv.unit = u; \
writer_print_string(w, k, value_string(val_str, sizeof(val_str), uv), 0); \
} while (0)
value_string
static char * value_string(char *buf, int buf_size, struct unit_value uv)
Definition: fftools_ffprobe.c:380
unit_value
Definition: fftools_ffprobe.c:375
unit_value::val
union unit_value::@4 val
unit_value::i
long long int i
Definition: fftools_ffprobe.c:376

Definition at line 1820 of file fftools_ffprobe.c.

## ◆ pthread_mutex_lock

#define pthread_mutex_lock | ( |  | a | ) | do{}while(0)

Definition at line 72 of file fftools_ffprobe.c.

## ◆ pthread_mutex_unlock

#define pthread_mutex_unlock | ( |  | a | ) | do{}while(0)

Definition at line 76 of file fftools_ffprobe.c.

## ◆ REALLOCZ_ARRAY_STREAM

#define REALLOCZ_ARRAY_STREAM | ( |  | ptr,
|  |  | cur_n,
|  |  | new_n
| ) |  |

Value:
{ \
ret = av_reallocp_array(&(ptr), (new_n), sizeof(*(ptr))); \
if (ret < 0) \
goto end; \
memset( (ptr) + (cur_n), 0, ((new_n) - (cur_n)) * sizeof(*(ptr)) ); \
}

Definition at line 1830 of file fftools_ffprobe.c.

## ◆ SECTION_FLAG_HAS_VARIABLE_FIELDS

#define SECTION_FLAG_HAS_VARIABLE_FIELDS 4

the section may contain a variable number of fields with variable keys. For these sections the element_name field is mandatory.

Definition at line 157 of file fftools_ffprobe.c.

## ◆ SECTION_FLAG_IS_ARRAY

#define SECTION_FLAG_IS_ARRAY 2

the section contains an array of elements of the same type

Definition at line 155 of file fftools_ffprobe.c.

## ◆ SECTION_FLAG_IS_WRAPPER

#define SECTION_FLAG_IS_WRAPPER 1

the section only contains other sections, but has no data at its own level

Definition at line 154 of file fftools_ffprobe.c.

## ◆ SECTION_MAX_NB_CHILDREN

#define SECTION_MAX_NB_CHILDREN 10

Definition at line 148 of file fftools_ffprobe.c.

## ◆ SECTION_MAX_NB_LEVELS

#define SECTION_MAX_NB_LEVELS 10

Definition at line 463 of file fftools_ffprobe.c.

## ◆ SET_DO_SHOW

#define SET_DO_SHOW | ( |  | id,
|  |  | varname
| ) |  |

Value:
do { \
if (check_section_show_entries(SECTION_ID_##id)) \
do_show_##varname = 1; \
} while (0)
check_section_show_entries
static int check_section_show_entries(int section_id)
Definition: fftools_ffprobe.c:3635

Definition at line 3647 of file fftools_ffprobe.c.

## ◆ SHOW_LIB_VERSION

#define SHOW_LIB_VERSION | ( |  | libname,
|  |  | LIBNAME
| ) |  |

Value:
do { \
if (CONFIG_##LIBNAME) { \
unsigned int version = libname##_version(); \
writer_print_section_header(w, SECTION_ID_LIBRARY_VERSION); \
print_str("name", "lib" #libname); \
print_int("major", LIB##LIBNAME##_VERSION_MAJOR); \
print_int("minor", LIB##LIBNAME##_VERSION_MINOR); \
print_int("micro", LIB##LIBNAME##_VERSION_MICRO); \
print_int("version", version); \
print_str("ident", LIB##LIBNAME##_IDENT); \
writer_print_section_footer(w); \
} \
} while (0)
SECTION_ID_LIBRARY_VERSION
@ SECTION_ID_LIBRARY_VERSION
Definition: fftools_ffprobe.c:183

Definition at line 3197 of file fftools_ffprobe.c.

## ◆ SHOW_OPTIONAL_FIELDS_ALWAYS

#define SHOW_OPTIONAL_FIELDS_ALWAYS 1

Definition at line 128 of file fftools_ffprobe.c.

## ◆ SHOW_OPTIONAL_FIELDS_AUTO

#define SHOW_OPTIONAL_FIELDS_AUTO -1

Definition at line 126 of file fftools_ffprobe.c.

## ◆ SHOW_OPTIONAL_FIELDS_NEVER

#define SHOW_OPTIONAL_FIELDS_NEVER 0

Definition at line 127 of file fftools_ffprobe.c.

## ◆ WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS

#define WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS 1

Definition at line 437 of file fftools_ffprobe.c.

## ◆ WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER

#define WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER 2

Definition at line 438 of file fftools_ffprobe.c.

## ◆ XML_INDENT

#define XML_INDENT | ( |  | ) | av_log(NULL, AV_LOG_STDERR, "%*c", xml->indent_level * 4, ' ')

Definition at line 1682 of file fftools_ffprobe.c.

## Typedef Documentation

## ◆ CompactContext

typedef struct CompactContext CompactContext

## ◆ DefaultContext

typedef struct DefaultContext DefaultContext

## ◆ FlatContext

typedef struct FlatContext FlatContext

## ◆ INIContext

typedef struct INIContext INIContext

## ◆ InputFile

typedef struct InputFile InputFile

## ◆ InputStream

typedef struct InputStream InputStream

## ◆ JSONContext

typedef struct JSONContext JSONContext

## ◆ LogBuffer

typedef struct LogBuffer LogBuffer

## ◆ ReadInterval

typedef struct ReadInterval ReadInterval

## ◆ Writer

typedef struct Writer Writer

## ◆ WriterContext

typedef struct WriterContext WriterContext

Definition at line 435 of file fftools_ffprobe.c.

## ◆ XMLContext

typedef struct XMLContext XMLContext

## Enumeration Type Documentation

## ◆ SectionID

enum SectionID

Enumerator
SECTION_ID_NONE |
SECTION_ID_CHAPTER |
SECTION_ID_CHAPTER_TAGS |
SECTION_ID_CHAPTERS |
SECTION_ID_ERROR |
SECTION_ID_FORMAT |
SECTION_ID_FORMAT_TAGS |
SECTION_ID_FRAME |
SECTION_ID_FRAMES |
SECTION_ID_FRAME_TAGS |
SECTION_ID_FRAME_SIDE_DATA_LIST |
SECTION_ID_FRAME_SIDE_DATA |
SECTION_ID_FRAME_SIDE_DATA_TIMECODE_LIST |
SECTION_ID_FRAME_SIDE_DATA_TIMECODE |
SECTION_ID_FRAME_LOG |
SECTION_ID_FRAME_LOGS |
SECTION_ID_LIBRARY_VERSION |
SECTION_ID_LIBRARY_VERSIONS |
SECTION_ID_PACKET |
SECTION_ID_PACKET_TAGS |
SECTION_ID_PACKETS |
SECTION_ID_PACKETS_AND_FRAMES |
SECTION_ID_PACKET_SIDE_DATA_LIST |
SECTION_ID_PACKET_SIDE_DATA |
SECTION_ID_PIXEL_FORMAT |
SECTION_ID_PIXEL_FORMAT_FLAGS |
SECTION_ID_PIXEL_FORMAT_COMPONENT |
SECTION_ID_PIXEL_FORMAT_COMPONENTS |
SECTION_ID_PIXEL_FORMATS |
SECTION_ID_PROGRAM_STREAM_DISPOSITION |
SECTION_ID_PROGRAM_STREAM_TAGS |
SECTION_ID_PROGRAM |
SECTION_ID_PROGRAM_STREAMS |
SECTION_ID_PROGRAM_STREAM |
SECTION_ID_PROGRAM_TAGS |
SECTION_ID_PROGRAM_VERSION |
SECTION_ID_PROGRAMS |
SECTION_ID_ROOT |
SECTION_ID_STREAM |
SECTION_ID_STREAM_DISPOSITION |
SECTION_ID_STREAMS |
SECTION_ID_STREAM_TAGS |
SECTION_ID_STREAM_SIDE_DATA_LIST |
SECTION_ID_STREAM_SIDE_DATA |
SECTION_ID_SUBTITLE |

Definition at line 166 of file fftools_ffprobe.c.

## ◆ StringValidation

enum StringValidation

Enumerator
WRITER_STRING_VALIDATION_FAIL |
WRITER_STRING_VALIDATION_REPLACE |
WRITER_STRING_VALIDATION_IGNORE |
WRITER_STRING_VALIDATION_NB |

Definition at line 440 of file fftools_ffprobe.c.

## Function Documentation

## ◆ bprint_bytes()

static void bprint_bytes | ( | AVBPrint * | bp,
|  | const uint8_t * | ubuf,
|  | size_t | ubuf_size
| ) |  |
| static

Definition at line 548 of file fftools_ffprobe.c.

## ◆ c_escape_str()

static const char * c_escape_str | ( | AVBPrint * | dst,
|  | const char * | src,
|  | const char | sep,
|  | void * | log_ctx
| ) |  |
| static

Apply C-language-like string escaping.

Definition at line 1040 of file fftools_ffprobe.c.

## ◆ check_section_show_entries()

static int check_section_show_entries | ( | int | section_id | ) |
| inline static

Definition at line 3635 of file fftools_ffprobe.c.

## ◆ clear_log()

static void clear_log | ( | int | need_lock | ) |
| static

Definition at line 2108 of file fftools_ffprobe.c.

## ◆ close_input_file()

static void close_input_file | ( | InputFile * | ifile | ) |
| static

Definition at line 3079 of file fftools_ffprobe.c.

## ◆ compact_init()

static av_cold int compact_init | ( | WriterContext * | wctx | ) |
| static

Definition at line 1116 of file fftools_ffprobe.c.

## ◆ compact_print_int()

static void compact_print_int | ( | WriterContext * | wctx,
|  | const char * | key,
|  | long long int | value
| ) |  |
| static

Definition at line 1191 of file fftools_ffprobe.c.

## ◆ compact_print_section_footer()

static void compact_print_section_footer | ( | WriterContext * | wctx | ) |
| static

Definition at line 1168 of file fftools_ffprobe.c.

## ◆ compact_print_section_header()

static void compact_print_section_header | ( | WriterContext * | wctx | ) |
| static

Definition at line 1138 of file fftools_ffprobe.c.

## ◆ compact_print_str()

static void compact_print_str | ( | WriterContext * | wctx,
|  | const char * | key,
|  | const char * | value
| ) |  |
| static

Definition at line 1178 of file fftools_ffprobe.c.

## ◆ csv_escape_str()

static const char * csv_escape_str | ( | AVBPrint * | dst,
|  | const char * | src,
|  | const char | sep,
|  | void * | log_ctx
| ) |  |
| static

Quote fields containing special characters, check RFC4180.

Definition at line 1063 of file fftools_ffprobe.c.

## ◆ default_print_int()

static void default_print_int | ( | WriterContext * | wctx,
|  | const char * | key,
|  | long long int | value
| ) |  |
| static

Definition at line 1015 of file fftools_ffprobe.c.

## ◆ default_print_section_footer()

static void default_print_section_footer | ( | WriterContext * | wctx | ) |
| static

Definition at line 993 of file fftools_ffprobe.c.

## ◆ default_print_section_header()

static void default_print_section_header | ( | WriterContext * | wctx | ) |
| static

Definition at line 968 of file fftools_ffprobe.c.

## ◆ default_print_str()

static void default_print_str | ( | WriterContext * | wctx,
|  | const char * | key,
|  | const char * | value
| ) |  |
| static

Definition at line 1006 of file fftools_ffprobe.c.

## ◆ DEFINE_WRITER_CLASS() [1/7]

DEFINE_WRITER_CLASS | ( | compact |  | ) |

## ◆ DEFINE_WRITER_CLASS() [2/7]

DEFINE_WRITER_CLASS | ( | csv |  | ) |

## ◆ DEFINE_WRITER_CLASS() [3/7]

DEFINE_WRITER_CLASS | ( | default |  | ) |

## ◆ DEFINE_WRITER_CLASS() [4/7]

DEFINE_WRITER_CLASS | ( | flat |  | ) |

## ◆ DEFINE_WRITER_CLASS() [5/7]

DEFINE_WRITER_CLASS | ( | ini |  | ) |

## ◆ DEFINE_WRITER_CLASS() [6/7]

DEFINE_WRITER_CLASS | ( | json |  | ) |

## ◆ DEFINE_WRITER_CLASS() [7/7]

DEFINE_WRITER_CLASS | ( | xml |  | ) |

## ◆ ffprobe_cleanup()

static void ffprobe_cleanup | ( | int | ret | ) |
| static

Definition at line 364 of file fftools_ffprobe.c.

## ◆ ffprobe_execute()

int ffprobe_execute | ( | int | argc,
|  | char ** | argv
| ) |  |

Forward declaration for function defined in fftools_ffprobe.c

Definition at line 3717 of file fftools_ffprobe.c.

## ◆ ffprobe_show_library_versions()

static void ffprobe_show_library_versions | ( | WriterContext * | w | ) |
| static

Definition at line 3212 of file fftools_ffprobe.c.

## ◆ ffprobe_show_pixel_formats()

static void ffprobe_show_pixel_formats | ( | WriterContext * | w | ) |
| static

Definition at line 3230 of file fftools_ffprobe.c.

## ◆ ffprobe_show_program_version()

static void ffprobe_show_program_version | ( | WriterContext * | w | ) |
| static

Definition at line 3181 of file fftools_ffprobe.c.

## ◆ ffprobe_var_cleanup()

void ffprobe_var_cleanup | ( |  | ) |

Definition at line 3652 of file fftools_ffprobe.c.

## ◆ flat_escape_key_str()

static const char * flat_escape_key_str | ( | AVBPrint * | dst,
|  | const char * | src,
|  | const char | sep
| ) |  |
| static

Definition at line 1280 of file fftools_ffprobe.c.

## ◆ flat_escape_value_str()

static const char * flat_escape_value_str | ( | AVBPrint * | dst,
|  | const char * | src
| ) |  |
| static

Definition at line 1295 of file fftools_ffprobe.c.

## ◆ flat_init()

static av_cold int flat_init | ( | WriterContext * | wctx | ) |
| static

Definition at line 1266 of file fftools_ffprobe.c.

## ◆ flat_print_int()

static void flat_print_int | ( | WriterContext * | wctx,
|  | const char * | key,
|  | long long int | value
| ) |  |
| static

Definition at line 1339 of file fftools_ffprobe.c.

## ◆ flat_print_section_header()

static void flat_print_section_header | ( | WriterContext * | wctx | ) |
| static

Definition at line 1313 of file fftools_ffprobe.c.

## ◆ flat_print_str()

static void flat_print_str | ( | WriterContext * | wctx,
|  | const char * | key,
|  | const char * | value
| ) |  |
| static

Definition at line 1344 of file fftools_ffprobe.c.

## ◆ ini_escape_str()

static char * ini_escape_str | ( | AVBPrint * | dst,
|  | const char * | src
| ) |  |
| static

Definition at line 1386 of file fftools_ffprobe.c.

## ◆ ini_print_int()

static void ini_print_int | ( | WriterContext * | wctx,
|  | const char * | key,
|  | long long int | value
| ) |  |
| static

Definition at line 1457 of file fftools_ffprobe.c.

## ◆ ini_print_section_header()

static void ini_print_section_header | ( | WriterContext * | wctx | ) |
| static

Definition at line 1413 of file fftools_ffprobe.c.

## ◆ ini_print_str()

static void ini_print_str | ( | WriterContext * | wctx,
|  | const char * | key,
|  | const char * | value
| ) |  |
| static

Definition at line 1446 of file fftools_ffprobe.c.

## ◆ json_escape_str()

static const char * json_escape_str | ( | AVBPrint * | dst,
|  | const char * | src,
|  | void * | log_ctx
| ) |  |
| static

Definition at line 1502 of file fftools_ffprobe.c.

## ◆ json_init()

static av_cold int json_init | ( | WriterContext * | wctx | ) |
| static

Definition at line 1492 of file fftools_ffprobe.c.

## ◆ json_print_int()

static void json_print_int | ( | WriterContext * | wctx,
|  | const char * | key,
|  | long long int | value
| ) |  |
| static

Definition at line 1609 of file fftools_ffprobe.c.

## ◆ json_print_item_str()

static void json_print_item_str | ( | WriterContext * | wctx,
|  | const char * | key,
|  | const char * | value
| ) |  |
| inline static

Definition at line 1584 of file fftools_ffprobe.c.

## ◆ json_print_section_footer()

static void json_print_section_footer | ( | WriterContext * | wctx | ) |
| static

Definition at line 1562 of file fftools_ffprobe.c.

## ◆ json_print_section_header()

static void json_print_section_header | ( | WriterContext * | wctx | ) |
| static

Definition at line 1524 of file fftools_ffprobe.c.

## ◆ json_print_str()

static void json_print_str | ( | WriterContext * | wctx,
|  | const char * | key,
|  | const char * | value
| ) |  |
| static

Definition at line 1596 of file fftools_ffprobe.c.

## ◆ log_callback()

static void log_callback | ( | void * | ptr,
|  | int | level,
|  | const char * | fmt,
|  | va_list | vl
| ) |  |
| static

Definition at line 315 of file fftools_ffprobe.c.

## ◆ log_read_interval()

static void log_read_interval | ( | const ReadInterval * | interval,
|  | void * | log_ctx,
|  | int | log_level
| ) |  |
| static

Definition at line 2450 of file fftools_ffprobe.c.

## ◆ mark_section_show_entries()

static void mark_section_show_entries | ( | SectionID | section_id,
|  | int | show_all_entries,
|  | AVDictionary * | entries
| ) |  |
| inline static

Definition at line 3297 of file fftools_ffprobe.c.

## ◆ match_section()

static int match_section | ( | const char * | section_name,
|  | int | show_all_entries,
|  | AVDictionary * | entries
| ) |  |
| static

Definition at line 3312 of file fftools_ffprobe.c.

## ◆ none_escape_str()

static const char * none_escape_str | ( | AVBPrint * | dst,
|  | const char * | src,
|  | const char | sep,
|  | void * | log_ctx
| ) |  |
| static

Definition at line 1081 of file fftools_ffprobe.c.

## ◆ open_input_file()

static int open_input_file | ( | InputFile * | ifile,
|  | const char * | filename,
|  | const char * | print_filename
| ) |  |
| static

Definition at line 2962 of file fftools_ffprobe.c.

## ◆ opt_format()

static int opt_format | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3287 of file fftools_ffprobe.c.

## ◆ opt_input_file()

static void opt_input_file | ( | void * | optctx,
|  | const char * | arg
| ) |  |
| static

Definition at line 3397 of file fftools_ffprobe.c.

## ◆ opt_input_file_i()

static int opt_input_file_i | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3410 of file fftools_ffprobe.c.

## ◆ opt_pretty()

static int opt_pretty | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3572 of file fftools_ffprobe.c.

## ◆ opt_print_filename()

static int opt_print_filename | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3416 of file fftools_ffprobe.c.

## ◆ opt_read_intervals()

static int opt_read_intervals | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3567 of file fftools_ffprobe.c.

## ◆ opt_sections()

static int opt_sections | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3598 of file fftools_ffprobe.c.

## ◆ opt_show_entries()

static int opt_show_entries | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3331 of file fftools_ffprobe.c.

## ◆ opt_show_format_entry()

static int opt_show_format_entry | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3381 of file fftools_ffprobe.c.

## ◆ opt_show_optional_fields()

static int opt_show_optional_fields | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3276 of file fftools_ffprobe.c.

## ◆ opt_show_versions()

static int opt_show_versions | ( | void * | optctx,
|  | const char * | opt,
|  | const char * | arg
| ) |  |
| static

Definition at line 3610 of file fftools_ffprobe.c.

## ◆ parse_read_interval()

static int parse_read_interval | ( | const char * | interval_spec,
|  | ReadInterval * | interval
| ) |  |
| static

Parse interval specification, according to the format: INTERVAL ::= [START|+START_OFFSET][%[END|+END_OFFSET]] INTERVALS ::= INTERVAL[,INTERVALS]

Definition at line 3437 of file fftools_ffprobe.c.

## ◆ parse_read_intervals()

static int parse_read_intervals | ( | const char * | intervals_spec | ) |
| static

Definition at line 3519 of file fftools_ffprobe.c.

## ◆ print_chroma_location()

static void print_chroma_location | ( | WriterContext * | w,
|  | enum AVChromaLocation | chroma_location
| ) |  |
| static

Definition at line 2097 of file fftools_ffprobe.c.

## ◆ print_color_range()

static void print_color_range | ( | WriterContext * | w,
|  | enum AVColorRange | color_range
| ) |  |
| static

Definition at line 2057 of file fftools_ffprobe.c.

## ◆ print_color_space()

static void print_color_space | ( | WriterContext * | w,
|  | enum AVColorSpace | color_space
| ) |  |
| static

Definition at line 2067 of file fftools_ffprobe.c.

## ◆ print_color_trc()

static void print_color_trc | ( | WriterContext * | w,
|  | enum AVColorTransferCharacteristic | color_trc
| ) |  |
| static

Definition at line 2087 of file fftools_ffprobe.c.

## ◆ print_dynamic_hdr10_plus()

static void print_dynamic_hdr10_plus | ( | WriterContext * | w,
|  | const AVDynamicHDRPlus * | metadata
| ) |  |
| static

Definition at line 1856 of file fftools_ffprobe.c.

## ◆ print_pkt_side_data()

static void print_pkt_side_data | ( | WriterContext * | w,
|  | AVCodecParameters * | par,
|  | const AVPacketSideData * | side_data,
|  | int | nb_side_data,
|  | SectionID | id_data_list,
|  | SectionID | id_data
| ) |  |
| static

Definition at line 1955 of file fftools_ffprobe.c.

## ◆ print_primaries()

static void print_primaries | ( | WriterContext * | w,
|  | enum AVColorPrimaries | color_primaries
| ) |  |
| static

Definition at line 2077 of file fftools_ffprobe.c.

## ◆ print_section()

static void print_section | ( | SectionID | id,
|  | int | level
| ) |  |
| static

Definition at line 3581 of file fftools_ffprobe.c.

## ◆ probe_file()

static int probe_file | ( | WriterContext * | wctx,
|  | const char * | filename,
|  | const char * | print_filename
| ) |  |
| static

Definition at line 3093 of file fftools_ffprobe.c.

## ◆ process_frame()

static av_always_inline int process_frame | ( | WriterContext * | w,
|  | InputFile * | ifile,
|  | AVFrame * | frame,
|  | AVPacket * | pkt,
|  | int * | packet_new
| ) |  |
| static

Definition at line 2384 of file fftools_ffprobe.c.

## ◆ read_interval_packets()

static int read_interval_packets | ( | WriterContext * | w,
|  | InputFile * | ifile,
|  | const ReadInterval * | interval,
|  | int64_t * | cur_ts
| ) |  |
| static

Definition at line 2474 of file fftools_ffprobe.c.

## ◆ read_packets()

static int read_packets | ( | WriterContext * | w,
|  | InputFile * | ifile
| ) |  |
| static

Definition at line 2582 of file fftools_ffprobe.c.

## ◆ show_chapters()

static int show_chapters | ( | WriterContext * | w,
|  | InputFile * | ifile
| ) |  |
| static

Definition at line 2892 of file fftools_ffprobe.c.

## ◆ show_error()

static void show_error | ( | WriterContext * | w,
|  | int | err
| ) |  |
| static

Definition at line 2948 of file fftools_ffprobe.c.

## ◆ show_format()

static int show_format | ( | WriterContext * | w,
|  | InputFile * | ifile
| ) |  |
| static

Definition at line 2917 of file fftools_ffprobe.c.

## ◆ show_frame()

static void show_frame | ( | WriterContext * | w,
|  | AVFrame * | frame,
|  | AVStream * | stream,
|  | AVFormatContext * | fmt_ctx
| ) |  |
| static

Definition at line 2235 of file fftools_ffprobe.c.

## ◆ show_help_default_ffprobe()

void show_help_default_ffprobe | ( | const char * | opt,
|  | const char * | arg
| ) |  |

Definition at line 3422 of file fftools_ffprobe.c.

## ◆ show_log()

static int show_log | ( | WriterContext * | w,
|  | int | section_ids,
|  | int | section_id,
|  | int | log_level
| ) |  |
| static

Definition at line 2124 of file fftools_ffprobe.c.

## ◆ show_packet()

static void show_packet | ( | WriterContext * | w,
|  | InputFile * | ifile,
|  | AVPacket * | pkt,
|  | int | packet_idx
| ) |  |
| static

Definition at line 2159 of file fftools_ffprobe.c.

## ◆ show_program()

static int show_program | ( | WriterContext * | w,
|  | InputFile * | ifile,
|  | AVProgram * | program
| ) |  |
| static

Definition at line 2839 of file fftools_ffprobe.c.

## ◆ show_programs()

static int show_programs | ( | WriterContext * | w,
|  | InputFile * | ifile
| ) |  |
| static

Definition at line 2874 of file fftools_ffprobe.c.

## ◆ show_stream()

static int show_stream | ( | WriterContext * | w,
|  | AVFormatContext * | fmt_ctx,
|  | int | stream_idx,
|  | InputStream * | ist,
|  | int | in_program
| ) |  |
| static

Definition at line 2602 of file fftools_ffprobe.c.

## ◆ show_streams()

static int show_streams | ( | WriterContext * | w,
|  | InputFile * | ifile
| ) |  |
| static

Definition at line 2822 of file fftools_ffprobe.c.

## ◆ show_subtitle()

static void show_subtitle | ( | WriterContext * | w,
|  | AVSubtitle * | sub,
|  | AVStream * | stream,
|  | AVFormatContext * | fmt_ctx
| ) |  |
| static

Definition at line 2212 of file fftools_ffprobe.c.

## ◆ show_tags()

static int show_tags | ( | WriterContext * | w,
|  | AVDictionary * | tags,
|  | int | section_id
| ) |  |
| inline static

Definition at line 1838 of file fftools_ffprobe.c.

## ◆ show_usage()

static void show_usage | ( | void |  | ) |
| static

Definition at line 3174 of file fftools_ffprobe.c.

## ◆ upcase_string()

static char * upcase_string | ( | char * | dst,
|  | size_t | dst_size,
|  | const char * | src
| ) |  |
| inline static

Definition at line 959 of file fftools_ffprobe.c.

## ◆ validate_string()

static int validate_string | ( | WriterContext * | wctx,
|  | char ** | dstp,
|  | const char * | src
| ) |  |
| inline static

Definition at line 696 of file fftools_ffprobe.c.

## ◆ value_string()

static char * value_string | ( | char * | buf,
|  | int | buf_size,
|  | struct unit_value | uv
| ) |  |
| static

Definition at line 380 of file fftools_ffprobe.c.

## ◆ writer_child_next()

static void * writer_child_next | ( | void * | obj,
|  | void * | prev
| ) |  |
| static

Definition at line 514 of file fftools_ffprobe.c.

## ◆ writer_close()

static void writer_close | ( | WriterContext ** | wctx | ) |
| static

Definition at line 530 of file fftools_ffprobe.c.

## ◆ writer_get_by_name()

static const Writer * writer_get_by_name | ( | const char * | name | ) |
| static

Definition at line 911 of file fftools_ffprobe.c.

## ◆ writer_get_name()

static const char * writer_get_name | ( | void * | p | ) |
| static

Definition at line 493 of file fftools_ffprobe.c.

## ◆ writer_open()

static int writer_open | ( | WriterContext ** | wctx,
|  | const Writer * | writer,
|  | const char * | args,
|  | const struct section * | sections,
|  | int | nb_sections
| ) |  |
| static

Definition at line 557 of file fftools_ffprobe.c.

## ◆ writer_print_data()

static void writer_print_data | ( | WriterContext * | wctx,
|  | const char * | name,
|  | uint8_t * | data,
|  | int | size
| ) |  |
| static

Definition at line 827 of file fftools_ffprobe.c.

## ◆ writer_print_data_hash()

static void writer_print_data_hash | ( | WriterContext * | wctx,
|  | const char * | name,
|  | uint8_t * | data,
|  | int | size
| ) |  |
| static

Definition at line 855 of file fftools_ffprobe.c.

## ◆ writer_print_integer()

static void writer_print_integer | ( | WriterContext * | wctx,
|  | const char * | key,
|  | long long int | val
| ) |  |
| inline static

Definition at line 685 of file fftools_ffprobe.c.

## ◆ writer_print_integers()

static void writer_print_integers | ( | WriterContext * | wctx,
|  | const char * | name,
|  | uint8_t * | data,
|  | int | size,
|  | const char * | format,
|  | int | columns,
|  | int | bytes,
|  | int | offset_add
| ) |  |
| static

Definition at line 870 of file fftools_ffprobe.c.

## ◆ writer_print_rational()

static void writer_print_rational | ( | WriterContext * | wctx,
|  | const char * | key,
|  | AVRational | q,
|  | char | sep
| ) |  |
| inline static

Definition at line 792 of file fftools_ffprobe.c.

## ◆ writer_print_section_footer()

static void writer_print_section_footer | ( | WriterContext * | wctx | ) |
| inline static

Definition at line 668 of file fftools_ffprobe.c.

## ◆ writer_print_section_header()

static void writer_print_section_header | ( | WriterContext * | wctx,
|  | int | section_id
| ) |  |
| inline static

Definition at line 644 of file fftools_ffprobe.c.

## ◆ writer_print_string()

static int writer_print_string | ( | WriterContext * | wctx,
|  | const char * | key,
|  | const char * | val,
|  | int | flags
| ) |  |
| inline static

Definition at line 754 of file fftools_ffprobe.c.

## ◆ writer_print_time()

static void writer_print_time | ( | WriterContext * | wctx,
|  | const char * | key,
|  | int64_t | ts,
|  | const AVRational * | time_base,
|  | int | is_duration
| ) |  |
| static

Definition at line 801 of file fftools_ffprobe.c.

## ◆ writer_print_ts()

static void writer_print_ts | ( | WriterContext * | wctx,
|  | const char * | key,
|  | int64_t | ts,
|  | int | is_duration
| ) |  |
| static

Definition at line 818 of file fftools_ffprobe.c.

## ◆ writer_register()

static int writer_register | ( | const Writer * | writer | ) |
| static

Definition at line 902 of file fftools_ffprobe.c.

## ◆ writer_register_all()

static void writer_register_all | ( | void |  | ) |
| static

Definition at line 1793 of file fftools_ffprobe.c.

## ◆ xml_init()

static av_cold int xml_init | ( | WriterContext * | wctx | ) |
| static

Definition at line 1661 of file fftools_ffprobe.c.

## ◆ xml_print_int()

static void xml_print_int | ( | WriterContext * | wctx,
|  | const char * | key,
|  | long long int | value
| ) |  |
| static

Definition at line 1774 of file fftools_ffprobe.c.

## ◆ xml_print_section_footer()

static void xml_print_section_footer | ( | WriterContext * | wctx | ) |
| static

Definition at line 1724 of file fftools_ffprobe.c.

## ◆ xml_print_section_header()

static void xml_print_section_header | ( | WriterContext * | wctx | ) |
| static

Definition at line 1684 of file fftools_ffprobe.c.

## ◆ xml_print_str()

static void xml_print_str | ( | WriterContext * | wctx,
|  | const char * | key,
|  | const char * | value
| ) |  |
| static

Definition at line 1743 of file fftools_ffprobe.c.

## Variable Documentation

## ◆ bin_str

const char* bin_str

Definition at line 279 of file fftools_ffprobe.c.

## ◆ bin_val

double bin_val

Definition at line 277 of file fftools_ffprobe.c.

## ◆ compact_options

const AVOption compact_options[]
| static

Initial value:
= {
{"item_sep", "set item separator", OFFSET(item_sep_str), AV_OPT_TYPE_STRING, {.str="|"}, 0, 0 },
{"s", "set item separator", OFFSET(item_sep_str), AV_OPT_TYPE_STRING, {.str="|"}, 0, 0 },
{"nokey", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{"nk", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{"escape", "set escape mode", OFFSET(escape_mode_str), AV_OPT_TYPE_STRING, {.str="c"}, 0, 0 },
{"e", "set escape mode", OFFSET(escape_mode_str), AV_OPT_TYPE_STRING, {.str="c"}, 0, 0 },
{"print_section", "print section name", OFFSET(print_section), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{"p", "print section name", OFFSET(print_section), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{NULL},
}
print_section
static void print_section(SectionID id, int level)
Definition: fftools_ffprobe.c:3581
OFFSET
#define OFFSET(x)
Definition: fftools_ffprobe.c:1649

Definition at line 1102 of file fftools_ffprobe.c.

## ◆ compact_writer

const Writer compact_writer
| static

Initial value:
= {
.name = "compact",
.priv_size = sizeof(CompactContext),
.init = compact_init,
.print_section_header = compact_print_section_header,
.print_section_footer = compact_print_section_footer,
.print_integer = compact_print_int,
.print_string = compact_print_str,
.flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS,
.priv_class = &compact_class,
}
WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS
#define WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS
Definition: fftools_ffprobe.c:437
compact_print_section_footer
static void compact_print_section_footer(WriterContext *wctx)
Definition: fftools_ffprobe.c:1168
print_section_header
#define print_section_header(s)
Definition: fftools_ffprobe.c:1827
compact_print_section_header
static void compact_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1138
compact_print_int
static void compact_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1191
compact_init
static av_cold int compact_init(WriterContext *wctx)
Definition: fftools_ffprobe.c:1116
CompactContext
struct CompactContext CompactContext
print_section_footer
#define print_section_footer(s)
Definition: fftools_ffprobe.c:1828
compact_print_str
static void compact_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1178

Definition at line 1201 of file fftools_ffprobe.c.

## ◆ csv_options

const AVOption csv_options[]
| static

Initial value:
= {
{"item_sep", "set item separator", OFFSET(item_sep_str), AV_OPT_TYPE_STRING, {.str=","}, 0, 0 },
{"s", "set item separator", OFFSET(item_sep_str), AV_OPT_TYPE_STRING, {.str=","}, 0, 0 },
{"nokey", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{"nk", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{"escape", "set escape mode", OFFSET(escape_mode_str), AV_OPT_TYPE_STRING, {.str="csv"}, 0, 0 },
{"e", "set escape mode", OFFSET(escape_mode_str), AV_OPT_TYPE_STRING, {.str="csv"}, 0, 0 },
{"print_section", "print section name", OFFSET(print_section), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{"p", "print section name", OFFSET(print_section), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{NULL},
}

Definition at line 1218 of file fftools_ffprobe.c.

## ◆ csv_writer

const Writer csv_writer
| static

Initial value:
= {
.name = "csv",
.priv_size = sizeof(CompactContext),
.init = compact_init,
.print_section_header = compact_print_section_header,
.print_section_footer = compact_print_section_footer,
.print_integer = compact_print_int,
.print_string = compact_print_str,
.flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS,
.priv_class = &csv_class,
}

Definition at line 1232 of file fftools_ffprobe.c.

## ◆ dec_str

const char* dec_str

Definition at line 280 of file fftools_ffprobe.c.

## ◆ dec_val

double dec_val

Definition at line 278 of file fftools_ffprobe.c.

## ◆ default_options

const AVOption default_options[]
| static

Initial value:
= {
{ "noprint_wrappers", "do not print headers and footers", OFFSET(noprint_wrappers), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{ "nw", "do not print headers and footers", OFFSET(noprint_wrappers), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{ "nokey", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{ "nk", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{NULL},
}

Definition at line 948 of file fftools_ffprobe.c.

## ◆ default_writer

const Writer default_writer
| static

Initial value:
= {
.name = "default",
.priv_size = sizeof(DefaultContext),
.print_section_header = default_print_section_header,
.print_section_footer = default_print_section_footer,
.print_integer = default_print_int,
.print_string = default_print_str,
.flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS,
.priv_class = &default_class,
}
DefaultContext
struct DefaultContext DefaultContext
default_print_section_header
static void default_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:968
default_print_int
static void default_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1015
default_print_section_footer
static void default_print_section_footer(WriterContext *wctx)
Definition: fftools_ffprobe.c:993
default_print_str
static void default_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1006

Definition at line 1024 of file fftools_ffprobe.c.

## ◆ do_bitexact

__thread int do_bitexact = 0

Definition at line 92 of file fftools_ffprobe.c.

## ◆ do_count_frames

__thread int do_count_frames = 0

Definition at line 93 of file fftools_ffprobe.c.

## ◆ do_count_packets

__thread int do_count_packets = 0

Definition at line 94 of file fftools_ffprobe.c.

## ◆ do_read_frames

__thread int do_read_frames = 0

Definition at line 95 of file fftools_ffprobe.c.

## ◆ do_read_packets

__thread int do_read_packets = 0

Definition at line 96 of file fftools_ffprobe.c.

## ◆ do_show_chapter_tags

__thread int do_show_chapter_tags = 0

Definition at line 113 of file fftools_ffprobe.c.

## ◆ do_show_chapters

__thread int do_show_chapters = 0

Definition at line 97 of file fftools_ffprobe.c.

## ◆ do_show_data

__thread int do_show_data = 0

Definition at line 105 of file fftools_ffprobe.c.

## ◆ do_show_error

__thread int do_show_error = 0

Definition at line 98 of file fftools_ffprobe.c.

## ◆ do_show_format

__thread int do_show_format = 0

Definition at line 99 of file fftools_ffprobe.c.

## ◆ do_show_format_tags

__thread int do_show_format_tags = 0

Definition at line 114 of file fftools_ffprobe.c.

## ◆ do_show_frame_tags

__thread int do_show_frame_tags = 0

Definition at line 115 of file fftools_ffprobe.c.

## ◆ do_show_frames

__thread int do_show_frames = 0

Definition at line 100 of file fftools_ffprobe.c.

## ◆ do_show_library_versions

__thread int do_show_library_versions = 0

Definition at line 107 of file fftools_ffprobe.c.

## ◆ do_show_log

__thread int do_show_log = 0

Definition at line 111 of file fftools_ffprobe.c.

## ◆ do_show_packet_tags

__thread int do_show_packet_tags = 0

Definition at line 118 of file fftools_ffprobe.c.

## ◆ do_show_packets

__thread int do_show_packets = 0

Definition at line 101 of file fftools_ffprobe.c.

## ◆ do_show_pixel_format_components

__thread int do_show_pixel_format_components = 0

Definition at line 110 of file fftools_ffprobe.c.

## ◆ do_show_pixel_format_flags

__thread int do_show_pixel_format_flags = 0

Definition at line 109 of file fftools_ffprobe.c.

## ◆ do_show_pixel_formats

__thread int do_show_pixel_formats = 0

Definition at line 108 of file fftools_ffprobe.c.

## ◆ do_show_program_tags

__thread int do_show_program_tags = 0

Definition at line 116 of file fftools_ffprobe.c.

## ◆ do_show_program_version

__thread int do_show_program_version = 0

Definition at line 106 of file fftools_ffprobe.c.

## ◆ do_show_programs

__thread int do_show_programs = 0

Definition at line 102 of file fftools_ffprobe.c.

## ◆ do_show_stream_disposition

__thread int do_show_stream_disposition = 0

Definition at line 104 of file fftools_ffprobe.c.

## ◆ do_show_stream_tags

__thread int do_show_stream_tags = 0

Definition at line 117 of file fftools_ffprobe.c.

## ◆ do_show_streams

__thread int do_show_streams = 0

Definition at line 103 of file fftools_ffprobe.c.

## ◆ ffprobe_options

__thread OptionDef* ffprobe_options = NULL

Definition at line 264 of file fftools_ffprobe.c.

## ◆ flat_options

const AVOption flat_options[]
| static

Initial value:
= {
{"sep_char", "set separator", OFFSET(sep_str), AV_OPT_TYPE_STRING, {.str="."}, 0, 0 },
{"s", "set separator", OFFSET(sep_str), AV_OPT_TYPE_STRING, {.str="."}, 0, 0 },
{"hierarchical", "specify if the section specification should be hierarchical", OFFSET(hierarchical), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{"h", "specify if the section specification should be hierarchical", OFFSET(hierarchical), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{NULL},
}

Definition at line 1256 of file fftools_ffprobe.c.

## ◆ flat_writer

const Writer flat_writer
| static

Initial value:
= {
.name = "flat",
.priv_size = sizeof(FlatContext),
.init = flat_init,
.print_section_header = flat_print_section_header,
.print_integer = flat_print_int,
.print_string = flat_print_str,
.flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS|WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER,
.priv_class = &flat_class,
}
WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER
#define WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER
Definition: fftools_ffprobe.c:438
flat_print_int
static void flat_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1339
flat_print_section_header
static void flat_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1313
flat_init
static av_cold int flat_init(WriterContext *wctx)
Definition: fftools_ffprobe.c:1266
flat_print_str
static void flat_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1344
FlatContext
struct FlatContext FlatContext

Definition at line 1357 of file fftools_ffprobe.c.

## ◆ hash

__thread struct AVHashContext* hash

Definition at line 271 of file fftools_ffprobe.c.

## ◆ iformat

__thread const AVInputFormat* iformat = NULL

Definition at line 269 of file fftools_ffprobe.c.

## ◆ ini_options

const AVOption ini_options[]
| static

Initial value:
= {
{"hierarchical", "specify if the section specification should be hierarchical", OFFSET(hierarchical), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{"h", "specify if the section specification should be hierarchical", OFFSET(hierarchical), AV_OPT_TYPE_BOOL, {.i64=1}, 0, 1 },
{NULL},
}

Definition at line 1378 of file fftools_ffprobe.c.

## ◆ ini_writer

const Writer ini_writer
| static

Initial value:
= {
.name = "ini",
.priv_size = sizeof(INIContext),
.print_section_header = ini_print_section_header,
.print_integer = ini_print_int,
.print_string = ini_print_str,
.flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS|WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER,
.priv_class = &ini_class,
}
ini_print_str
static void ini_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1446
ini_print_int
static void ini_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1457
ini_print_section_header
static void ini_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1413
INIContext
struct INIContext INIContext

Definition at line 1462 of file fftools_ffprobe.c.

## ◆ input_filename

__thread const char* input_filename

Definition at line 267 of file fftools_ffprobe.c.

## ◆ json_options

const AVOption json_options[]
| static

Initial value:
= {
{ "compact", "enable compact output", OFFSET(compact), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{ "c", "enable compact output", OFFSET(compact), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{ NULL }
}

Definition at line 1484 of file fftools_ffprobe.c.

## ◆ json_writer

const Writer json_writer
| static

Initial value:
= {
.name = "json",
.priv_size = sizeof(JSONContext),
.init = json_init,
.print_section_header = json_print_section_header,
.print_section_footer = json_print_section_footer,
.print_integer = json_print_int,
.print_string = json_print_str,
.flags = WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER,
.priv_class = &json_class,
}
json_init
static av_cold int json_init(WriterContext *wctx)
Definition: fftools_ffprobe.c:1492
json_print_section_footer
static void json_print_section_footer(WriterContext *wctx)
Definition: fftools_ffprobe.c:1562
json_print_int
static void json_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1609
JSONContext
struct JSONContext JSONContext
json_print_str
static void json_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1596
json_print_section_header
static void json_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1524

Definition at line 1626 of file fftools_ffprobe.c.

## ◆ log_buffer

__thread LogBuffer* log_buffer

Definition at line 312 of file fftools_ffprobe.c.

## ◆ log_buffer_size

__thread int log_buffer_size

Definition at line 313 of file fftools_ffprobe.c.

## ◆ longjmp_value

__thread volatile int longjmp_value
| extern

Definition at line 107 of file fftools_cmdutils.c.

## ◆ main_ffprobe_return_code

__thread volatile int main_ffprobe_return_code = 0

Definition at line 273 of file fftools_ffprobe.c.

## ◆ nb_streams

__thread int nb_streams

Definition at line 295 of file fftools_ffprobe.c.

## ◆ nb_streams_frames

__thread uint64_t* nb_streams_frames

Definition at line 297 of file fftools_ffprobe.c.

## ◆ nb_streams_packets

__thread uint64_t* nb_streams_packets

Definition at line 296 of file fftools_ffprobe.c.

## ◆ next_registered_writer_idx

__thread int next_registered_writer_idx = 0

Definition at line 900 of file fftools_ffprobe.c.

## ◆ print_format

__thread char* print_format

Definition at line 131 of file fftools_ffprobe.c.

## ◆ print_input_filename

__thread const char* print_input_filename

Definition at line 268 of file fftools_ffprobe.c.

## ◆ read_intervals

__thread ReadInterval* read_intervals

Definition at line 143 of file fftools_ffprobe.c.

## ◆ read_intervals_nb

__thread int read_intervals_nb = 0

Definition at line 144 of file fftools_ffprobe.c.

## ◆ registered_writers

__thread const Writer* registered_writers[MAX_REGISTERED_WRITERS_NB+1]

Definition at line 898 of file fftools_ffprobe.c.

## ◆ sections

struct section sections[]
| static

Definition at line 214 of file fftools_ffprobe.c.

## ◆ selected_streams

__thread int* selected_streams

Definition at line 298 of file fftools_ffprobe.c.

## ◆ show_data_hash

__thread char* show_data_hash

Definition at line 133 of file fftools_ffprobe.c.

## ◆ show_optional_fields

__thread int show_optional_fields = SHOW_OPTIONAL_FIELDS_AUTO

Definition at line 129 of file fftools_ffprobe.c.

## ◆ show_private_data

__thread int show_private_data = 1

Definition at line 124 of file fftools_ffprobe.c.

## ◆ show_value_unit

__thread int show_value_unit = 0

Definition at line 120 of file fftools_ffprobe.c.

## ◆

const struct { ... } si_prefixes[]

Initial value:
= {
{ 1.0, 1.0, "", "" },
{ 1.024e3, 1e3, "Ki", "K" },
{ 1.048576e6, 1e6, "Mi", "M" },
{ 1.073741824e9, 1e9, "Gi", "G" },
{ 1.099511627776e12, 1e12, "Ti", "T" },
{ 1.125899906842624e15, 1e15, "Pi", "P" },
}

## ◆ stream_specifier

__thread char* stream_specifier

Definition at line 132 of file fftools_ffprobe.c.

## ◆ unit_bit_per_second_str

const char unit_bit_per_second_str[] = "bit/s"
| static

Definition at line 293 of file fftools_ffprobe.c.

## ◆ unit_byte_str

const char unit_byte_str[] = "byte"
| static

Definition at line 292 of file fftools_ffprobe.c.

## ◆ unit_hertz_str

const char unit_hertz_str[] = "Hz"
| static

Definition at line 291 of file fftools_ffprobe.c.

## ◆ unit_second_str

const char unit_second_str[] = "s"
| static

Definition at line 290 of file fftools_ffprobe.c.

## ◆ use_byte_value_binary_prefix

__thread int use_byte_value_binary_prefix = 0

Definition at line 122 of file fftools_ffprobe.c.

## ◆ use_value_prefix

__thread int use_value_prefix = 0

Definition at line 121 of file fftools_ffprobe.c.

## ◆ use_value_sexagesimal_format

__thread int use_value_sexagesimal_format = 0

Definition at line 123 of file fftools_ffprobe.c.

## ◆ writer_class

const AVClass writer_class
| static

Initial value:
= {
.class_name = "Writer",
.item_name = writer_get_name,
.option = writer_options,
.version = LIBAVUTIL_VERSION_INT,
.child_next = writer_child_next,
}
writer_get_name
static const char * writer_get_name(void *p)
Definition: fftools_ffprobe.c:493
writer_options
static const AVOption writer_options[]
Definition: fftools_ffprobe.c:501
writer_child_next
static void * writer_child_next(void *obj, void *prev)
Definition: fftools_ffprobe.c:514

Definition at line 522 of file fftools_ffprobe.c.

## ◆ writer_options

const AVOption writer_options[]
| static

Initial value:
= {
{ "string_validation", "set string validation mode",
OFFSET(string_validation), AV_OPT_TYPE_INT, {.i64=WRITER_STRING_VALIDATION_REPLACE}, 0, WRITER_STRING_VALIDATION_NB-1, .unit = "sv" },
{ "sv", "set string validation mode",
OFFSET(string_validation), AV_OPT_TYPE_INT, {.i64=WRITER_STRING_VALIDATION_REPLACE}, 0, WRITER_STRING_VALIDATION_NB-1, .unit = "sv" },
{ "ignore", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = WRITER_STRING_VALIDATION_IGNORE}, .unit = "sv" },
{ "replace", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = WRITER_STRING_VALIDATION_REPLACE}, .unit = "sv" },
{ "fail", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = WRITER_STRING_VALIDATION_FAIL}, .unit = "sv" },
{ "string_validation_replacement", "set string validation replacement string", OFFSET(string_validation_replacement), AV_OPT_TYPE_STRING, {.str=""}},
{ "svr", "set string validation replacement string", OFFSET(string_validation_replacement), AV_OPT_TYPE_STRING, {.str="\xEF\xBF\xBD"}},
{ NULL }
}
WRITER_STRING_VALIDATION_NB
@ WRITER_STRING_VALIDATION_NB
Definition: fftools_ffprobe.c:444
WRITER_STRING_VALIDATION_REPLACE
@ WRITER_STRING_VALIDATION_REPLACE
Definition: fftools_ffprobe.c:442
WRITER_STRING_VALIDATION_IGNORE
@ WRITER_STRING_VALIDATION_IGNORE
Definition: fftools_ffprobe.c:443
WRITER_STRING_VALIDATION_FAIL
@ WRITER_STRING_VALIDATION_FAIL
Definition: fftools_ffprobe.c:441

Definition at line 501 of file fftools_ffprobe.c.

## ◆ xml_options

const AVOption xml_options[]
| static

Initial value:
= {
{"fully_qualified", "specify if the output should be fully qualified", OFFSET(fully_qualified), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{"q", "specify if the output should be fully qualified", OFFSET(fully_qualified), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{"xsd_strict", "ensure that the output is XSD compliant", OFFSET(xsd_strict), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{"x", "ensure that the output is XSD compliant", OFFSET(xsd_strict), AV_OPT_TYPE_BOOL, {.i64=0}, 0, 1 },
{NULL},
}

Definition at line 1651 of file fftools_ffprobe.c.

## ◆ xml_writer

Writer xml_writer
| static

Initial value:
= {
.name = "xml",
.priv_size = sizeof(XMLContext),
.init = xml_init,
.print_section_header = xml_print_section_header,
.print_section_footer = xml_print_section_footer,
.print_integer = xml_print_int,
.print_string = xml_print_str,
.flags = WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER,
.priv_class = &xml_class,
}
xml_init
static av_cold int xml_init(WriterContext *wctx)
Definition: fftools_ffprobe.c:1661
XMLContext
struct XMLContext XMLContext
xml_print_section_footer
static void xml_print_section_footer(WriterContext *wctx)
Definition: fftools_ffprobe.c:1724
xml_print_str
static void xml_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1743
xml_print_section_header
static void xml_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1684
xml_print_int
static void xml_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1774

Definition at line 1781 of file fftools_ffprobe.c.