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 | 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(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 const char * | xml_escape_str (AVBPrint *dst, const char *src, void *log_ctx)
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_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 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 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:144

Definition at line 3613 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 917 of file fftools_ffprobe.c.

## JSON_INDENT

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

Definition at line 1514 of file fftools_ffprobe.c.

## MAX_REGISTERED_WRITERS_NB

#define MAX_REGISTERED_WRITERS_NB 64

Definition at line 888 of file fftools_ffprobe.c.

## OFFSET [1/8]

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

Definition at line 1641 of file fftools_ffprobe.c.

## OFFSET [2/8]

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

Definition at line 1641 of file fftools_ffprobe.c.

## OFFSET [3/8]

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

Definition at line 1641 of file fftools_ffprobe.c.

## OFFSET [4/8]

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

Definition at line 1641 of file fftools_ffprobe.c.

## OFFSET [5/8]

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

Definition at line 1641 of file fftools_ffprobe.c.

## OFFSET [6/8]

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

Definition at line 1641 of file fftools_ffprobe.c.

## OFFSET [7/8]

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

Definition at line 1641 of file fftools_ffprobe.c.

## OFFSET [8/8]

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

Definition at line 1641 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 1827 of file fftools_ffprobe.c.

## print_duration_ts

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

Definition at line 1828 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 1814 of file fftools_ffprobe.c.

## print_int

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

Definition at line 1820 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 3229 of file fftools_ffprobe.c.

## print_q

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

Definition at line 1821 of file fftools_ffprobe.c.

## print_section_footer

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

Definition at line 1837 of file fftools_ffprobe.c.

## print_section_header

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

Definition at line 1836 of file fftools_ffprobe.c.

## print_str

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

Definition at line 1822 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 1823 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 1824 of file fftools_ffprobe.c.

## PRINT_STRING_OPT

#define PRINT_STRING_OPT 1

Definition at line 745 of file fftools_ffprobe.c.

## PRINT_STRING_VALIDATE

#define PRINT_STRING_VALIDATE 2

Definition at line 746 of file fftools_ffprobe.c.

## print_time

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

Definition at line 1825 of file fftools_ffprobe.c.

## print_ts

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

Definition at line 1826 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:374
unit_value
Definition: fftools_ffprobe.c:369
unit_value::val
union unit_value::@4 val
unit_value::i
long long int i
Definition: fftools_ffprobe.c:370

Definition at line 1829 of file fftools_ffprobe.c.

## pthread_mutex_lock

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

Definition at line 71 of file fftools_ffprobe.c.

## pthread_mutex_unlock

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

Definition at line 75 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 1839 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.

Definition at line 150 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 149 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 148 of file fftools_ffprobe.c.

## SECTION_MAX_NB_CHILDREN

#define SECTION_MAX_NB_CHILDREN 10

Definition at line 142 of file fftools_ffprobe.c.

## SECTION_MAX_NB_LEVELS

#define SECTION_MAX_NB_LEVELS 10

Definition at line 457 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:3631

Definition at line 3643 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:177

Definition at line 3201 of file fftools_ffprobe.c.

## WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS

#define WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS 1

Definition at line 431 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 432 of file fftools_ffprobe.c.

## XML_INDENT

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

Definition at line 1699 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 374 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 160 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 434 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 542 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 1032 of file fftools_ffprobe.c.

## check_section_show_entries()

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

inlinestatic

Definition at line 3631 of file fftools_ffprobe.c.

## clear_log()

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

static

Definition at line 2100 of file fftools_ffprobe.c.

## close_input_file()

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

static

Definition at line 3082 of file fftools_ffprobe.c.

## compact_init()

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

static

Definition at line 1108 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 1183 of file fftools_ffprobe.c.

## compact_print_section_footer()

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

static

Definition at line 1160 of file fftools_ffprobe.c.

## compact_print_section_header()

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

static

Definition at line 1130 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 1170 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 1055 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 1007 of file fftools_ffprobe.c.

## default_print_section_footer()

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

static

Definition at line 985 of file fftools_ffprobe.c.

## default_print_section_header()

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

static

Definition at line 960 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 998 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 358 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 3713 of file fftools_ffprobe.c.

## ffprobe_show_library_versions()

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

static

Definition at line 3216 of file fftools_ffprobe.c.

## ffprobe_show_pixel_formats()

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

static

Definition at line 3234 of file fftools_ffprobe.c.

## ffprobe_show_program_version()

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

static

Definition at line 3185 of file fftools_ffprobe.c.

## ffprobe_var_cleanup()

void ffprobe_var_cleanup | ( |  | ) |

Definition at line 3648 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 1272 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 1287 of file fftools_ffprobe.c.

## flat_init()

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

static

Definition at line 1258 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 1331 of file fftools_ffprobe.c.

## flat_print_section_header()

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

static

Definition at line 1305 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 1336 of file fftools_ffprobe.c.

## ini_escape_str()

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

static

Definition at line 1378 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 1449 of file fftools_ffprobe.c.

## ini_print_section_header()

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

static

Definition at line 1405 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 1438 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 1494 of file fftools_ffprobe.c.

## json_init()

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

static

Definition at line 1484 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 1601 of file fftools_ffprobe.c.

## json_print_item_str()

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

inlinestatic

Definition at line 1576 of file fftools_ffprobe.c.

## json_print_section_footer()

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

static

Definition at line 1554 of file fftools_ffprobe.c.

## json_print_section_header()

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

static

Definition at line 1516 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 1588 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 309 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 2444 of file fftools_ffprobe.c.

## mark_section_show_entries()

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

inlinestatic

Definition at line 3293 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 3308 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 1073 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 2959 of file fftools_ffprobe.c.

## opt_format()

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

static

Definition at line 3283 of file fftools_ffprobe.c.

## opt_input_file()

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

static

Definition at line 3393 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 3406 of file fftools_ffprobe.c.

## opt_pretty()

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

static

Definition at line 3568 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 3412 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 3563 of file fftools_ffprobe.c.

## opt_sections()

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

static

Definition at line 3594 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 3327 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 3377 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 3606 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 3433 of file fftools_ffprobe.c.

## parse_read_intervals()

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

static

Definition at line 3515 of file fftools_ffprobe.c.

## print_chroma_location()

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

static

Definition at line 2089 of file fftools_ffprobe.c.

## print_color_range()

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

static

Definition at line 2049 of file fftools_ffprobe.c.

## print_color_space()

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

static

Definition at line 2059 of file fftools_ffprobe.c.

## print_color_trc()

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

static

Definition at line 2079 of file fftools_ffprobe.c.

## print_dynamic_hdr10_plus()

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

static

Definition at line 1865 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 1964 of file fftools_ffprobe.c.

## print_primaries()

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

static

Definition at line 2069 of file fftools_ffprobe.c.

## print_section()

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

static

Definition at line 3577 of file fftools_ffprobe.c.

## probe_file()

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

static

Definition at line 3097 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 2378 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 2468 of file fftools_ffprobe.c.

## read_packets()

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

static

Definition at line 2572 of file fftools_ffprobe.c.

## show_chapters()

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

static

Definition at line 2889 of file fftools_ffprobe.c.

## show_error()

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

static

Definition at line 2945 of file fftools_ffprobe.c.

## show_format()

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

static

Definition at line 2914 of file fftools_ffprobe.c.

## show_frame()

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

static

Definition at line 2229 of file fftools_ffprobe.c.

## show_help_default_ffprobe()

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

Definition at line 3418 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 2116 of file fftools_ffprobe.c.

## show_packet()

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

static

Definition at line 2151 of file fftools_ffprobe.c.

## show_program()

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

static

Definition at line 2836 of file fftools_ffprobe.c.

## show_programs()

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

static

Definition at line 2871 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 2592 of file fftools_ffprobe.c.

## show_streams()

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

static

Definition at line 2819 of file fftools_ffprobe.c.

## show_subtitle()

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

static

Definition at line 2206 of file fftools_ffprobe.c.

## show_tags()

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

inlinestatic

Definition at line 1847 of file fftools_ffprobe.c.

## show_usage()

static void show_usage | ( | void |  | ) |

static

Definition at line 3178 of file fftools_ffprobe.c.

## upcase_string()

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

inlinestatic

Definition at line 951 of file fftools_ffprobe.c.

## validate_string()

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

inlinestatic

Definition at line 690 of file fftools_ffprobe.c.

## value_string()

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

static

Definition at line 374 of file fftools_ffprobe.c.

## writer_child_next()

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

static

Definition at line 508 of file fftools_ffprobe.c.

## writer_close()

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

static

Definition at line 524 of file fftools_ffprobe.c.

## writer_get_by_name()

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

static

Definition at line 903 of file fftools_ffprobe.c.

## writer_get_name()

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

static

Definition at line 487 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 551 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 819 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 847 of file fftools_ffprobe.c.

## writer_print_integer()

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

inlinestatic

Definition at line 679 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 862 of file fftools_ffprobe.c.

## writer_print_rational()

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

inlinestatic

Definition at line 784 of file fftools_ffprobe.c.

## writer_print_section_footer()

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

inlinestatic

Definition at line 662 of file fftools_ffprobe.c.

## writer_print_section_header()

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

inlinestatic

Definition at line 638 of file fftools_ffprobe.c.

## writer_print_string()

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

inlinestatic

Definition at line 748 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 793 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 810 of file fftools_ffprobe.c.

## writer_register()

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

static

Definition at line 894 of file fftools_ffprobe.c.

## writer_register_all()

static void writer_register_all | ( | void |  | ) |

static

Definition at line 1802 of file fftools_ffprobe.c.

## xml_escape_str()

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

static

Definition at line 1681 of file fftools_ffprobe.c.

## xml_init()

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

static

Definition at line 1653 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 1783 of file fftools_ffprobe.c.

## xml_print_section_footer()

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

static

Definition at line 1741 of file fftools_ffprobe.c.

## xml_print_section_header()

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

static

Definition at line 1701 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 1760 of file fftools_ffprobe.c.

## Variable Documentation

## bin_str

const char* bin_str

Definition at line 273 of file fftools_ffprobe.c.

## bin_val

double bin_val

Definition at line 271 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:3577
OFFSET
#define OFFSET(x)
Definition: fftools_ffprobe.c:1641

Definition at line 1094 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:431
compact_print_section_footer
static void compact_print_section_footer(WriterContext *wctx)
Definition: fftools_ffprobe.c:1160
print_section_header
#define print_section_header(s)
Definition: fftools_ffprobe.c:1836
compact_print_section_header
static void compact_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1130
compact_print_int
static void compact_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1183
compact_init
static av_cold int compact_init(WriterContext *wctx)
Definition: fftools_ffprobe.c:1108
CompactContext
struct CompactContext CompactContext
print_section_footer
#define print_section_footer(s)
Definition: fftools_ffprobe.c:1837
compact_print_str
static void compact_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1170

Definition at line 1193 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 1210 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 1224 of file fftools_ffprobe.c.

## dec_str

const char* dec_str

Definition at line 274 of file fftools_ffprobe.c.

## dec_val

double dec_val

Definition at line 272 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 940 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:960
default_print_int
static void default_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1007
default_print_section_footer
static void default_print_section_footer(WriterContext *wctx)
Definition: fftools_ffprobe.c:985
default_print_str
static void default_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:998

Definition at line 1016 of file fftools_ffprobe.c.

## do_bitexact

__thread int do_bitexact = 0

Definition at line 91 of file fftools_ffprobe.c.

## do_count_frames

__thread int do_count_frames = 0

Definition at line 92 of file fftools_ffprobe.c.

## do_count_packets

__thread int do_count_packets = 0

Definition at line 93 of file fftools_ffprobe.c.

## do_read_frames

__thread int do_read_frames = 0

Definition at line 94 of file fftools_ffprobe.c.

## do_read_packets

__thread int do_read_packets = 0

Definition at line 95 of file fftools_ffprobe.c.

## do_show_chapter_tags

__thread int do_show_chapter_tags = 0

Definition at line 112 of file fftools_ffprobe.c.

## do_show_chapters

__thread int do_show_chapters = 0

Definition at line 96 of file fftools_ffprobe.c.

## do_show_data

__thread int do_show_data = 0

Definition at line 104 of file fftools_ffprobe.c.

## do_show_error

__thread int do_show_error = 0

Definition at line 97 of file fftools_ffprobe.c.

## do_show_format

__thread int do_show_format = 0

Definition at line 98 of file fftools_ffprobe.c.

## do_show_format_tags

__thread int do_show_format_tags = 0

Definition at line 113 of file fftools_ffprobe.c.

## do_show_frame_tags

__thread int do_show_frame_tags = 0

Definition at line 114 of file fftools_ffprobe.c.

## do_show_frames

__thread int do_show_frames = 0

Definition at line 99 of file fftools_ffprobe.c.

## do_show_library_versions

__thread int do_show_library_versions = 0

Definition at line 106 of file fftools_ffprobe.c.

## do_show_log

__thread int do_show_log = 0

Definition at line 110 of file fftools_ffprobe.c.

## do_show_packet_tags

__thread int do_show_packet_tags = 0

Definition at line 117 of file fftools_ffprobe.c.

## do_show_packets

__thread int do_show_packets = 0

Definition at line 100 of file fftools_ffprobe.c.

## do_show_pixel_format_components

__thread int do_show_pixel_format_components = 0

Definition at line 109 of file fftools_ffprobe.c.

## do_show_pixel_format_flags

__thread int do_show_pixel_format_flags = 0

Definition at line 108 of file fftools_ffprobe.c.

## do_show_pixel_formats

__thread int do_show_pixel_formats = 0

Definition at line 107 of file fftools_ffprobe.c.

## do_show_program_tags

__thread int do_show_program_tags = 0

Definition at line 115 of file fftools_ffprobe.c.

## do_show_program_version

__thread int do_show_program_version = 0

Definition at line 105 of file fftools_ffprobe.c.

## do_show_programs

__thread int do_show_programs = 0

Definition at line 101 of file fftools_ffprobe.c.

## do_show_stream_disposition

__thread int do_show_stream_disposition = 0

Definition at line 103 of file fftools_ffprobe.c.

## do_show_stream_tags

__thread int do_show_stream_tags = 0

Definition at line 116 of file fftools_ffprobe.c.

## do_show_streams

__thread int do_show_streams = 0

Definition at line 102 of file fftools_ffprobe.c.

## ffprobe_options

__thread OptionDef* ffprobe_options = NULL

Definition at line 258 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 1248 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:432
flat_print_int
static void flat_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1331
flat_print_section_header
static void flat_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1305
flat_init
static av_cold int flat_init(WriterContext *wctx)
Definition: fftools_ffprobe.c:1258
flat_print_str
static void flat_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1336
FlatContext
struct FlatContext FlatContext

Definition at line 1349 of file fftools_ffprobe.c.

## hash

__thread struct AVHashContext* hash

Definition at line 265 of file fftools_ffprobe.c.

## iformat

__thread AVInputFormat* iformat = NULL

Definition at line 263 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 1370 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:1438
ini_print_int
static void ini_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1449
ini_print_section_header
static void ini_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1405
INIContext
struct INIContext INIContext

Definition at line 1454 of file fftools_ffprobe.c.

## input_filename

__thread const char* input_filename

Definition at line 261 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 1476 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:1484
json_print_section_footer
static void json_print_section_footer(WriterContext *wctx)
Definition: fftools_ffprobe.c:1554
json_print_int
static void json_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1601
JSONContext
struct JSONContext JSONContext
json_print_str
static void json_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1588
json_print_section_header
static void json_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1516

Definition at line 1618 of file fftools_ffprobe.c.

## log_buffer

__thread LogBuffer* log_buffer

Definition at line 306 of file fftools_ffprobe.c.

## log_buffer_size

__thread int log_buffer_size

Definition at line 307 of file fftools_ffprobe.c.

## longjmp_value

__thread volatile int longjmp_value

extern

Definition at line 108 of file fftools_cmdutils.c.

## main_ffprobe_return_code

__thread volatile int main_ffprobe_return_code = 0

Definition at line 267 of file fftools_ffprobe.c.

## nb_streams

__thread int nb_streams

Definition at line 289 of file fftools_ffprobe.c.

## nb_streams_frames

__thread uint64_t* nb_streams_frames

Definition at line 291 of file fftools_ffprobe.c.

## nb_streams_packets

__thread uint64_t* nb_streams_packets

Definition at line 290 of file fftools_ffprobe.c.

## next_registered_writer_idx

__thread int next_registered_writer_idx = 0

Definition at line 892 of file fftools_ffprobe.c.

## print_format

__thread char* print_format

Definition at line 125 of file fftools_ffprobe.c.

## print_input_filename

__thread const char* print_input_filename

Definition at line 262 of file fftools_ffprobe.c.

## read_intervals

__thread ReadInterval* read_intervals

Definition at line 137 of file fftools_ffprobe.c.

## read_intervals_nb

__thread int read_intervals_nb = 0

Definition at line 138 of file fftools_ffprobe.c.

## registered_writers

__thread const Writer* registered_writers[MAX_REGISTERED_WRITERS_NB+1]

Definition at line 890 of file fftools_ffprobe.c.

## sections

struct section sections[]

static

Definition at line 138 of file fftools_ffprobe.c.

## selected_streams

__thread int* selected_streams

Definition at line 292 of file fftools_ffprobe.c.

## show_data_hash

__thread char* show_data_hash

Definition at line 127 of file fftools_ffprobe.c.

## show_private_data

__thread int show_private_data = 1

Definition at line 123 of file fftools_ffprobe.c.

## show_value_unit

__thread int show_value_unit = 0

Definition at line 119 of file fftools_ffprobe.c.

##

const { ... } 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 126 of file fftools_ffprobe.c.

## unit_bit_per_second_str

const char unit_bit_per_second_str[] = "bit/s"

static

Definition at line 287 of file fftools_ffprobe.c.

## unit_byte_str

const char unit_byte_str[] = "byte"

static

Definition at line 286 of file fftools_ffprobe.c.

## unit_hertz_str

const char unit_hertz_str[] = "Hz"

static

Definition at line 285 of file fftools_ffprobe.c.

## unit_second_str

const char unit_second_str[] = "s"

static

Definition at line 284 of file fftools_ffprobe.c.

## use_byte_value_binary_prefix

__thread int use_byte_value_binary_prefix = 0

Definition at line 121 of file fftools_ffprobe.c.

## use_value_prefix

__thread int use_value_prefix = 0

Definition at line 120 of file fftools_ffprobe.c.

## use_value_sexagesimal_format

__thread int use_value_sexagesimal_format = 0

Definition at line 122 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_options
static const AVOption writer_options[]
Definition: fftools_ffprobe.c:495
writer_child_next
static void * writer_child_next(void *obj, void *prev)
Definition: fftools_ffprobe.c:508
writer_get_name
static const char * writer_get_name(void *p)
Definition: fftools_ffprobe.c:487

Definition at line 516 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:438
WRITER_STRING_VALIDATION_REPLACE
@ WRITER_STRING_VALIDATION_REPLACE
Definition: fftools_ffprobe.c:436
WRITER_STRING_VALIDATION_IGNORE
@ WRITER_STRING_VALIDATION_IGNORE
Definition: fftools_ffprobe.c:437
WRITER_STRING_VALIDATION_FAIL
@ WRITER_STRING_VALIDATION_FAIL
Definition: fftools_ffprobe.c:435

Definition at line 495 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 1643 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:1653
XMLContext
struct XMLContext XMLContext
xml_print_section_footer
static void xml_print_section_footer(WriterContext *wctx)
Definition: fftools_ffprobe.c:1741
xml_print_str
static void xml_print_str(WriterContext *wctx, const char *key, const char *value)
Definition: fftools_ffprobe.c:1760
xml_print_section_header
static void xml_print_section_header(WriterContext *wctx)
Definition: fftools_ffprobe.c:1701
xml_print_int
static void xml_print_int(WriterContext *wctx, const char *key, long long int value)
Definition: fftools_ffprobe.c:1783

Definition at line 1790 of file fftools_ffprobe.c.