#include "config.h"
#include "version.h"
#include "libavformat/avformat.h"
#include "libavcodec/avcodec.h"
#include "libavutil/avstring.h"
#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "libavutil/dict.h"
#include "libavdevice/avdevice.h"
#include "libswscale/swscale.h"
#include "libswresample/swresample.h"
#include "libpostproc/postprocess.h"
#include "cmdutils.h"
#include "cmdutils_common_opts.h"
Go to the source code of this file.
Data Structures | |
struct | unit_value |
struct | Writer |
struct | WriterContext |
struct | print_buf |
struct | CompactContext |
struct | JSONContext |
struct | XMLContext |
Defines | |
#define | WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS 1 |
#define | WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER 2 |
#define | MAX_REGISTERED_WRITERS_NB 64 |
#define | ESCAPE_INIT_BUF_SIZE 256 |
#define | ESCAPE_CHECK_SIZE(src, size, max_size) |
#define | ESCAPE_REALLOC_BUF(dst_size_p, dst_p, src, size) |
#define | OFFSET(x) offsetof(CompactContext, x) |
#define | OFFSET(x) offsetof(JSONContext, x) |
#define | JSON_INDENT() printf("%*c", json->indent_level * 4, ' ') |
#define | OFFSET(x) offsetof(XMLContext, x) |
#define | CHECK_COMPLIANCE(opt, opt_name) |
#define | COPY_STR(str) |
#define | XML_INDENT() printf("%*c", xml->indent_level * 4, ' ') |
#define | print_fmt(k, f,...) |
#define | print_fmt_opt(k, f,...) |
#define | print_int(k, v) writer_print_integer(w, k, v) |
#define | print_str(k, v) writer_print_string(w, k, v, 0) |
#define | print_str_opt(k, v) writer_print_string(w, k, v, 1) |
#define | print_time(k, v, tb) writer_print_time(w, k, v, tb) |
#define | print_ts(k, v) writer_print_ts(w, k, v) |
#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 | show_tags(metadata) writer_show_tags(w, metadata) |
#define | PRINT_CHAPTER(name) |
#define | SHOW_LIB_VERSION(libname, LIBNAME) |
Typedefs | |
typedef struct WriterContext | WriterContext |
Functions | |
void av_noreturn | exit_program (int ret) |
Do all the necessary cleanup and abort. | |
static char * | value_string (char *buf, int buf_size, struct unit_value uv) |
static const char * | writer_get_name (void *p) |
static void | writer_close (WriterContext **wctx) |
static int | writer_open (WriterContext **wctx, const Writer *writer, const char *args, void *opaque) |
static void | writer_print_header (WriterContext *wctx) |
static void | writer_print_footer (WriterContext *wctx) |
static void | writer_print_chapter_header (WriterContext *wctx, const char *chapter) |
static void | writer_print_chapter_footer (WriterContext *wctx, const char *chapter) |
static void | writer_print_section_header (WriterContext *wctx, const char *section) |
static void | writer_print_section_footer (WriterContext *wctx, const char *section) |
static void | writer_print_integer (WriterContext *wctx, const char *key, long long int val) |
static void | writer_print_string (WriterContext *wctx, const char *key, const char *val, int opt) |
static void | writer_print_time (WriterContext *wctx, const char *key, int64_t ts, const AVRational *time_base) |
static void | writer_print_ts (WriterContext *wctx, const char *key, int64_t ts) |
static void | writer_show_tags (WriterContext *wctx, AVDictionary *dict) |
static int | writer_register (const Writer *writer) |
static const Writer * | writer_get_by_name (const char *name) |
static char * | fast_asprintf (struct print_buf *pbuf, const char *fmt,...) |
static void | default_print_footer (WriterContext *wctx) |
static void | default_print_chapter_header (WriterContext *wctx, const char *chapter) |
static char * | upcase_string (char *dst, size_t dst_size, const char *src) |
static void | default_print_section_header (WriterContext *wctx, const char *section) |
static void | default_print_section_footer (WriterContext *wctx, const char *section) |
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 void | default_show_tags (WriterContext *wctx, AVDictionary *dict) |
static const char * | c_escape_str (char **dst, size_t *dst_size, const char *src, const char sep, void *log_ctx) |
Escape , , \ and sep characters contained in s, and print the resulting string. | |
static const char * | csv_escape_str (char **dst, size_t *dst_size, const char *src, const char sep, void *log_ctx) |
Quote fields containing special characters, check RFC4180. | |
static const char * | none_escape_str (char **dst, size_t *dst_size, const char *src, const char sep, void *log_ctx) |
static const char * | compact_get_name (void *ctx) |
static av_cold int | compact_init (WriterContext *wctx, const char *args, void *opaque) |
static av_cold void | compact_uninit (WriterContext *wctx) |
static void | compact_print_section_header (WriterContext *wctx, const char *section) |
static void | compact_print_section_footer (WriterContext *wctx, const char *section) |
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) |
static void | compact_show_tags (WriterContext *wctx, AVDictionary *dict) |
static av_cold int | csv_init (WriterContext *wctx, const char *args, void *opaque) |
static const char * | json_get_name (void *ctx) |
static av_cold int | json_init (WriterContext *wctx, const char *args, void *opaque) |
static av_cold void | json_uninit (WriterContext *wctx) |
static const char * | json_escape_str (char **dst, size_t *dst_size, const char *src, void *log_ctx) |
static void | json_print_header (WriterContext *wctx) |
static void | json_print_footer (WriterContext *wctx) |
static void | json_print_chapter_header (WriterContext *wctx, const char *chapter) |
static void | json_print_chapter_footer (WriterContext *wctx, const char *chapter) |
static void | json_print_section_header (WriterContext *wctx, const char *section) |
static void | json_print_section_footer (WriterContext *wctx, const char *section) |
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) |
static void | json_show_tags (WriterContext *wctx, AVDictionary *dict) |
static const char * | xml_get_name (void *ctx) |
static av_cold int | xml_init (WriterContext *wctx, const char *args, void *opaque) |
static av_cold void | xml_uninit (WriterContext *wctx) |
static const char * | xml_escape_str (char **dst, size_t *dst_size, const char *src, void *log_ctx) |
static void | xml_print_header (WriterContext *wctx) |
static void | xml_print_footer (WriterContext *wctx) |
static void | xml_print_chapter_header (WriterContext *wctx, const char *chapter) |
static void | xml_print_chapter_footer (WriterContext *wctx, const char *chapter) |
static void | xml_print_section_header (WriterContext *wctx, const char *section) |
static void | xml_print_section_footer (WriterContext *wctx, const char *section) |
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 | xml_show_tags (WriterContext *wctx, AVDictionary *dict) |
static void | writer_register_all (void) |
static void | show_packet (WriterContext *w, AVFormatContext *fmt_ctx, AVPacket *pkt, int packet_idx) |
static void | show_frame (WriterContext *w, AVFrame *frame, AVStream *stream) |
static av_always_inline int | get_decoded_frame (AVFormatContext *fmt_ctx, AVFrame *frame, int *got_frame, AVPacket *pkt) |
static void | show_packets (WriterContext *w, AVFormatContext *fmt_ctx) |
static void | show_stream (WriterContext *w, AVFormatContext *fmt_ctx, int stream_idx) |
static void | show_streams (WriterContext *w, AVFormatContext *fmt_ctx) |
static void | show_format (WriterContext *w, AVFormatContext *fmt_ctx) |
static void | show_error (WriterContext *w, int err) |
static int | open_input_file (AVFormatContext **fmt_ctx_ptr, const char *filename) |
static int | probe_file (WriterContext *wctx, const char *filename) |
static void | show_usage (void) |
static void | ffprobe_show_program_version (WriterContext *w) |
static void | ffprobe_show_library_versions (WriterContext *w) |
static int | opt_format (const char *opt, const char *arg) |
static void | opt_input_file (void *optctx, const char *arg) |
static int | opt_help (const char *opt, const char *arg) |
static int | opt_pretty (const char *opt, const char *arg) |
static int | opt_show_versions (const char *opt, const char *arg) |
int | main (int argc, char **argv) |
Variables | |
const char | program_name [] = "ffprobe" |
program name, defined by the program for show_version(). | |
const int | program_birth_year = 2007 |
program birth year, defined by the program for show_banner() | |
static int | do_show_error = 0 |
static int | do_show_format = 0 |
static int | do_show_frames = 0 |
static int | do_show_packets = 0 |
static int | do_show_streams = 0 |
static int | do_show_program_version = 0 |
static int | do_show_library_versions = 0 |
static int | show_value_unit = 0 |
static int | use_value_prefix = 0 |
static int | use_byte_value_binary_prefix = 0 |
static int | use_value_sexagesimal_format = 0 |
static int | show_private_data = 1 |
static char * | print_format |
static const OptionDef | options [] |
static const char * | input_filename |
static AVInputFormat * | iformat = NULL |
static const char * | binary_unit_prefixes [] = { "", "Ki", "Mi", "Gi", "Ti", "Pi" } |
static const char * | decimal_unit_prefixes [] = { "", "K" , "M" , "G" , "T" , "P" } |
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" |
static const AVClass | writer_class |
static const Writer * | registered_writers [MAX_REGISTERED_WRITERS_NB+1] |
static const Writer | default_writer |
static const AVOption | compact_options [] |
static const AVClass | compact_class |
static const Writer | compact_writer |
static const Writer | csv_writer |
static const AVOption | json_options [] |
static const AVClass | json_class |
static const Writer | json_writer |
static const AVOption | xml_options [] |
static const AVClass | xml_class |
static Writer | xml_writer |
Definition in file ffprobe.c.
#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); \ }
Referenced by xml_init().
#define COPY_STR | ( | str | ) |
#define ESCAPE_CHECK_SIZE | ( | src, | |||
size, | |||||
max_size | ) |
Value:
if (size > max_size) { \ char buf[64]; \ snprintf(buf, sizeof(buf), "%s", src); \ av_log(log_ctx, AV_LOG_WARNING, \ "String '%s...' with is too big\n", buf); \ return "FFPROBE_TOO_BIG_STRING"; \ }
Definition at line 382 of file ffprobe.c.
Referenced by c_escape_str(), csv_escape_str(), json_escape_str(), and xml_escape_str().
#define ESCAPE_INIT_BUF_SIZE 256 |
Definition at line 380 of file ffprobe.c.
Referenced by compact_init(), json_init(), and xml_init().
#define ESCAPE_REALLOC_BUF | ( | dst_size_p, | |||
dst_p, | |||||
src, | |||||
size | ) |
Value:
if (*dst_size_p < size) { \ char *q = av_realloc(*dst_p, size); \ if (!q) { \ char buf[64]; \ snprintf(buf, sizeof(buf), "%s", src); \ av_log(log_ctx, AV_LOG_WARNING, \ "String '%s...' could not be escaped\n", buf); \ return "FFPROBE_THIS_STRING_COULD_NOT_BE_ESCAPED"; \ } \ *dst_size_p = size; \ *dst = q; \ }
Definition at line 391 of file ffprobe.c.
Referenced by c_escape_str(), csv_escape_str(), json_escape_str(), and xml_escape_str().
#define JSON_INDENT | ( | ) | printf("%*c", json->indent_level * 4, ' ') |
Definition at line 834 of file ffprobe.c.
Referenced by json_print_chapter_footer(), json_print_chapter_header(), json_print_int(), json_print_section_footer(), json_print_section_header(), json_print_str(), and json_show_tags().
#define MAX_REGISTERED_WRITERS_NB 64 |
#define OFFSET | ( | x | ) | offsetof(XMLContext, x) |
#define OFFSET | ( | x | ) | offsetof(JSONContext, x) |
#define OFFSET | ( | x | ) | offsetof(CompactContext, x) |
#define PRINT_CHAPTER | ( | name | ) |
Value:
do { \ if (do_show_ ## name) { \ writer_print_chapter_header(wctx, #name); \ show_ ## name (wctx, fmt_ctx); \ writer_print_chapter_footer(wctx, #name); \ } \ } while (0)
Definition at line 1596 of file ffprobe.c.
Referenced by probe_file().
#define print_fmt | ( | k, | |||
f, | |||||
... | ) |
Value:
do { \ if (fast_asprintf(&pbuf, f, __VA_ARGS__)) \ writer_print_string(w, k, pbuf.s, 0); \ } while (0)
Definition at line 1237 of file ffprobe.c.
Referenced by ffprobe_show_program_version(), show_frame(), show_packet(), and show_stream().
#define print_fmt_opt | ( | k, | |||
f, | |||||
... | ) |
Value:
do { \ if (fast_asprintf(&pbuf, f, __VA_ARGS__)) \ writer_print_string(w, k, pbuf.s, 1); \ } while (0)
#define print_int | ( | k, | |||
v | ) | writer_print_integer(w, k, v) |
Definition at line 1247 of file ffprobe.c.
Referenced by show_error(), show_format(), show_frame(), show_packet(), and show_stream().
#define print_section_footer | ( | s | ) | writer_print_section_footer(w, s) |
Definition at line 1255 of file ffprobe.c.
Referenced by ffprobe_show_program_version(), show_error(), show_format(), show_frame(), show_packet(), and show_stream().
#define print_section_header | ( | s | ) | writer_print_section_header(w, s) |
Definition at line 1254 of file ffprobe.c.
Referenced by ffprobe_show_program_version(), show_error(), show_format(), show_frame(), show_packet(), and show_stream().
#define print_str | ( | k, | |||
v | ) | writer_print_string(w, k, v, 0) |
Definition at line 1248 of file ffprobe.c.
Referenced by ffprobe_show_program_version(), show_error(), show_format(), show_frame(), show_packet(), and show_stream().
#define print_str_opt | ( | k, | |||
v | ) | writer_print_string(w, k, v, 1) |
Definition at line 1249 of file ffprobe.c.
Referenced by show_format(), show_frame(), show_packet(), and show_stream().
#define print_time | ( | k, | |||
v, | |||||
tb | ) | writer_print_time(w, k, v, tb) |
Definition at line 1250 of file ffprobe.c.
Referenced by show_format(), show_frame(), show_packet(), and show_stream().
#define print_ts | ( | k, | |||
v | ) | writer_print_ts(w, k, v) |
#define print_val | ( | k, | |||
v, | |||||
u | ) |
Value:
writer_print_string(w, k, \ value_string(val_str, sizeof(val_str), (struct unit_value){.val.i = v, .unit=u}), 0)
Definition at line 1252 of file ffprobe.c.
Referenced by show_format(), show_packet(), and show_stream().
#define SHOW_LIB_VERSION | ( | libname, | |||
LIBNAME | ) |
Value:
do { \ if (CONFIG_##LIBNAME) { \ unsigned int version = libname##_version(); \ print_section_header("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_section_footer("library_version"); \ } \ } while (0)
Definition at line 1662 of file ffprobe.c.
Referenced by ffprobe_show_library_versions().
#define show_tags | ( | metadata | ) | writer_show_tags(w, metadata) |
#define WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS 1 |
#define WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER 2 |
#define XML_INDENT | ( | ) | printf("%*c", xml->indent_level * 4, ' ') |
Definition at line 1119 of file ffprobe.c.
Referenced by xml_print_chapter_footer(), xml_print_chapter_header(), xml_print_section_footer(), xml_print_section_header(), and xml_show_tags().
typedef struct WriterContext WriterContext |
static const char* c_escape_str | ( | char ** | dst, | |
size_t * | dst_size, | |||
const char * | src, | |||
const char | sep, | |||
void * | log_ctx | |||
) | [static] |
Escape
, , \ and sep characters contained in s, and print the resulting string.
Definition at line 483 of file ffprobe.c.
Referenced by compact_init().
static const char* compact_get_name | ( | void * | ctx | ) | [static] |
static av_cold int compact_init | ( | WriterContext * | wctx, | |
const char * | args, | |||
void * | opaque | |||
) | [static] |
static void compact_print_int | ( | WriterContext * | wctx, | |
const char * | key, | |||
long long int | value | |||
) | [static] |
static void compact_print_section_footer | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [static] |
static void compact_print_section_header | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [static] |
static void compact_print_str | ( | WriterContext * | wctx, | |
const char * | key, | |||
const char * | value | |||
) | [static] |
static void compact_show_tags | ( | WriterContext * | wctx, | |
AVDictionary * | dict | |||
) | [static] |
static av_cold void compact_uninit | ( | WriterContext * | wctx | ) | [static] |
static const char* csv_escape_str | ( | char ** | dst, | |
size_t * | dst_size, | |||
const char * | src, | |||
const char | sep, | |||
void * | log_ctx | |||
) | [static] |
Quote fields containing special characters, check RFC4180.
Definition at line 518 of file ffprobe.c.
Referenced by compact_init().
static av_cold int csv_init | ( | WriterContext * | wctx, | |
const char * | args, | |||
void * | opaque | |||
) | [static] |
static void default_print_chapter_header | ( | WriterContext * | wctx, | |
const char * | chapter | |||
) | [static] |
static void default_print_footer | ( | WriterContext * | wctx | ) | [static] |
static void default_print_int | ( | WriterContext * | wctx, | |
const char * | key, | |||
long long int | value | |||
) | [static] |
static void default_print_section_footer | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [static] |
static void default_print_section_header | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [static] |
static void default_print_str | ( | WriterContext * | wctx, | |
const char * | key, | |||
const char * | value | |||
) | [static] |
static void default_show_tags | ( | WriterContext * | wctx, | |
AVDictionary * | dict | |||
) | [static] |
void av_noreturn exit_program | ( | int | ret | ) |
static char* fast_asprintf | ( | struct print_buf * | pbuf, | |
const char * | fmt, | |||
... | ||||
) | [static] |
static void ffprobe_show_library_versions | ( | WriterContext * | w | ) | [static] |
static void ffprobe_show_program_version | ( | WriterContext * | w | ) | [static] |
static av_always_inline int get_decoded_frame | ( | AVFormatContext * | fmt_ctx, | |
AVFrame * | frame, | |||
int * | got_frame, | |||
AVPacket * | pkt | |||
) | [static] |
static const char* json_escape_str | ( | char ** | dst, | |
size_t * | dst_size, | |||
const char * | src, | |||
void * | log_ctx | |||
) | [static] |
Definition at line 785 of file ffprobe.c.
Referenced by json_print_chapter_header(), json_print_int(), and json_print_item_str().
static av_cold int json_init | ( | WriterContext * | wctx, | |
const char * | args, | |||
void * | opaque | |||
) | [static] |
static void json_print_chapter_footer | ( | WriterContext * | wctx, | |
const char * | chapter | |||
) | [static] |
static void json_print_chapter_header | ( | WriterContext * | wctx, | |
const char * | chapter | |||
) | [static] |
static void json_print_footer | ( | WriterContext * | wctx | ) | [static] |
static void json_print_header | ( | WriterContext * | wctx | ) | [static] |
static void json_print_int | ( | WriterContext * | wctx, | |
const char * | key, | |||
long long int | value | |||
) | [static] |
static void json_print_item_str | ( | WriterContext * | wctx, | |
const char * | key, | |||
const char * | value | |||
) | [inline, static] |
static void json_print_section_footer | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [static] |
static void json_print_section_header | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [static] |
static void json_print_str | ( | WriterContext * | wctx, | |
const char * | key, | |||
const char * | value | |||
) | [static] |
static void json_show_tags | ( | WriterContext * | wctx, | |
AVDictionary * | dict | |||
) | [static] |
static av_cold void json_uninit | ( | WriterContext * | wctx | ) | [static] |
static const char* none_escape_str | ( | char ** | dst, | |
size_t * | dst_size, | |||
const char * | src, | |||
const char | sep, | |||
void * | log_ctx | |||
) | [static] |
static int open_input_file | ( | AVFormatContext ** | fmt_ctx_ptr, | |
const char * | filename | |||
) | [static] |
static int opt_format | ( | const char * | opt, | |
const char * | arg | |||
) | [static] |
static int opt_help | ( | const char * | opt, | |
const char * | arg | |||
) | [static] |
static void opt_input_file | ( | void * | optctx, | |
const char * | arg | |||
) | [static] |
static int opt_pretty | ( | const char * | opt, | |
const char * | arg | |||
) | [static] |
static int opt_show_versions | ( | const char * | opt, | |
const char * | arg | |||
) | [static] |
static int probe_file | ( | WriterContext * | wctx, | |
const char * | filename | |||
) | [static] |
static void show_error | ( | WriterContext * | w, | |
int | err | |||
) | [static] |
static void show_format | ( | WriterContext * | w, | |
AVFormatContext * | fmt_ctx | |||
) | [static] |
static void show_frame | ( | WriterContext * | w, | |
AVFrame * | frame, | |||
AVStream * | stream | |||
) | [static] |
static void show_packet | ( | WriterContext * | w, | |
AVFormatContext * | fmt_ctx, | |||
AVPacket * | pkt, | |||
int | packet_idx | |||
) | [static] |
static void show_packets | ( | WriterContext * | w, | |
AVFormatContext * | fmt_ctx | |||
) | [static] |
static void show_stream | ( | WriterContext * | w, | |
AVFormatContext * | fmt_ctx, | |||
int | stream_idx | |||
) | [static] |
static void show_streams | ( | WriterContext * | w, | |
AVFormatContext * | fmt_ctx | |||
) | [static] |
static char* upcase_string | ( | char * | dst, | |
size_t | dst_size, | |||
const char * | src | |||
) | [inline, static] |
Definition at line 421 of file ffprobe.c.
Referenced by default_print_section_footer(), and default_print_section_header().
static char* value_string | ( | char * | buf, | |
int | buf_size, | |||
struct unit_value | uv | |||
) | [static] |
static void writer_close | ( | WriterContext ** | wctx | ) | [static] |
static const Writer* writer_get_by_name | ( | const char * | name | ) | [static] |
static int writer_open | ( | WriterContext ** | wctx, | |
const Writer * | writer, | |||
const char * | args, | |||
void * | opaque | |||
) | [static] |
static void writer_print_chapter_footer | ( | WriterContext * | wctx, | |
const char * | chapter | |||
) | [inline, static] |
Definition at line 247 of file ffprobe.c.
Referenced by ffprobe_show_library_versions(), ffprobe_show_program_version(), probe_file(), and show_error().
static void writer_print_chapter_header | ( | WriterContext * | wctx, | |
const char * | chapter | |||
) | [inline, static] |
Definition at line 239 of file ffprobe.c.
Referenced by ffprobe_show_library_versions(), ffprobe_show_program_version(), probe_file(), and show_error().
static void writer_print_footer | ( | WriterContext * | wctx | ) | [inline, static] |
static void writer_print_header | ( | WriterContext * | wctx | ) | [inline, static] |
static void writer_print_integer | ( | WriterContext * | wctx, | |
const char * | key, | |||
long long int | val | |||
) | [inline, static] |
static void writer_print_section_footer | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [inline, static] |
static void writer_print_section_header | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [inline, static] |
static void writer_print_string | ( | WriterContext * | wctx, | |
const char * | key, | |||
const char * | val, | |||
int | opt | |||
) | [inline, static] |
Definition at line 278 of file ffprobe.c.
Referenced by default_show_tags(), writer_print_time(), and writer_print_ts().
static void writer_print_time | ( | WriterContext * | wctx, | |
const char * | key, | |||
int64_t | ts, | |||
const AVRational * | time_base | |||
) | [static] |
static void writer_print_ts | ( | WriterContext * | wctx, | |
const char * | key, | |||
int64_t | ts | |||
) | [static] |
static int writer_register | ( | const Writer * | writer | ) | [static] |
static void writer_register_all | ( | void | ) | [static] |
static void writer_show_tags | ( | WriterContext * | wctx, | |
AVDictionary * | dict | |||
) | [inline, static] |
static const char* xml_escape_str | ( | char ** | dst, | |
size_t * | dst_size, | |||
const char * | src, | |||
void * | log_ctx | |||
) | [static] |
static av_cold int xml_init | ( | WriterContext * | wctx, | |
const char * | args, | |||
void * | opaque | |||
) | [static] |
static void xml_print_chapter_footer | ( | WriterContext * | wctx, | |
const char * | chapter | |||
) | [static] |
static void xml_print_chapter_header | ( | WriterContext * | wctx, | |
const char * | chapter | |||
) | [static] |
static void xml_print_footer | ( | WriterContext * | wctx | ) | [static] |
static void xml_print_header | ( | WriterContext * | wctx | ) | [static] |
static void xml_print_int | ( | WriterContext * | wctx, | |
const char * | key, | |||
long long int | value | |||
) | [static] |
static void xml_print_section_footer | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [static] |
static void xml_print_section_header | ( | WriterContext * | wctx, | |
const char * | section | |||
) | [static] |
static void xml_print_str | ( | WriterContext * | wctx, | |
const char * | key, | |||
const char * | value | |||
) | [static] |
static void xml_show_tags | ( | WriterContext * | wctx, | |
AVDictionary * | dict | |||
) | [static] |
static av_cold void xml_uninit | ( | WriterContext * | wctx | ) | [static] |
const char* binary_unit_prefixes[] = { "", "Ki", "Mi", "Gi", "Ti", "Pi" } [static] |
const AVClass compact_class [static] |
Initial value:
{ "CompactContext", compact_get_name, compact_options }
const AVOption compact_options[] [static] |
Initial value:
{ {"item_sep", "set item separator", OFFSET(item_sep_str), AV_OPT_TYPE_STRING, {.str="|"}, CHAR_MIN, CHAR_MAX }, {"s", "set item separator", OFFSET(item_sep_str), AV_OPT_TYPE_STRING, {.str="|"}, CHAR_MIN, CHAR_MAX }, {"nokey", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_INT, {.dbl=0}, 0, 1 }, {"nk", "force no key printing", OFFSET(nokey), AV_OPT_TYPE_INT, {.dbl=0}, 0, 1 }, {"escape", "set escape mode", OFFSET(escape_mode_str), AV_OPT_TYPE_STRING, {.str="c"}, CHAR_MIN, CHAR_MAX }, {"e", "set escape mode", OFFSET(escape_mode_str), AV_OPT_TYPE_STRING, {.str="c"}, CHAR_MIN, CHAR_MAX }, {NULL}, }
const Writer compact_writer [static] |
Initial value:
{ .name = "compact", .priv_size = sizeof(CompactContext), .init = compact_init, .uninit = compact_uninit, .print_section_header = compact_print_section_header, .print_section_footer = compact_print_section_footer, .print_integer = compact_print_int, .print_string = compact_print_str, .show_tags = compact_show_tags, .flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS, }
const Writer csv_writer [static] |
Initial value:
{ .name = "csv", .priv_size = sizeof(CompactContext), .init = csv_init, .uninit = compact_uninit, .print_section_header = compact_print_section_header, .print_section_footer = compact_print_section_footer, .print_integer = compact_print_int, .print_string = compact_print_str, .show_tags = compact_show_tags, .flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS, }
const char* decimal_unit_prefixes[] = { "", "K" , "M" , "G" , "T" , "P" } [static] |
const Writer default_writer [static] |
Initial value:
{ .name = "default", .print_footer = default_print_footer, .print_chapter_header = default_print_chapter_header, .print_section_header = default_print_section_header, .print_section_footer = default_print_section_footer, .print_integer = default_print_int, .print_string = default_print_str, .show_tags = default_show_tags, .flags = WRITER_FLAG_DISPLAY_OPTIONAL_FIELDS, }
int do_show_error = 0 [static] |
int do_show_format = 0 [static] |
int do_show_frames = 0 [static] |
Definition at line 46 of file ffprobe.c.
Referenced by probe_file(), show_packets(), and xml_init().
int do_show_library_versions = 0 [static] |
int do_show_packets = 0 [static] |
Definition at line 47 of file ffprobe.c.
Referenced by main(), probe_file(), show_packets(), and xml_init().
int do_show_program_version = 0 [static] |
int do_show_streams = 0 [static] |
AVInputFormat* iformat = NULL [static] |
const char* input_filename [static] |
const AVClass json_class [static] |
Initial value:
{ "JSONContext", json_get_name, json_options }
const AVOption json_options[] [static] |
Initial value:
{ { "compact", "enable compact output", OFFSET(compact), AV_OPT_TYPE_INT, {.dbl=0}, 0, 1 }, { "c", "enable compact output", OFFSET(compact), AV_OPT_TYPE_INT, {.dbl=0}, 0, 1 }, { NULL } }
const Writer json_writer [static] |
Initial value:
{ .name = "json", .priv_size = sizeof(JSONContext), .init = json_init, .uninit = json_uninit, .print_header = json_print_header, .print_footer = json_print_footer, .print_chapter_header = json_print_chapter_header, .print_chapter_footer = json_print_chapter_footer, .print_section_header = json_print_section_header, .print_section_footer = json_print_section_footer, .print_integer = json_print_int, .print_string = json_print_str, .show_tags = json_show_tags, .flags = WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER, }
char* print_format [static] |
const int program_birth_year = 2007 |
program birth year, defined by the program for show_banner()
const char program_name[] = "ffprobe" |
const Writer* registered_writers[MAX_REGISTERED_WRITERS_NB+1] [static] |
int show_private_data = 1 [static] |
int show_value_unit = 0 [static] |
Definition at line 52 of file ffprobe.c.
Referenced by opt_pretty(), value_string(), and xml_init().
const char* unit_bit_per_second_str = "bit/s" [static] |
const char* unit_byte_str = "byte" [static] |
Definition at line 71 of file ffprobe.c.
Referenced by show_format(), show_packet(), and value_string().
const char* unit_hertz_str = "Hz" [static] |
const char* unit_second_str = "s" [static] |
int use_byte_value_binary_prefix = 0 [static] |
int use_value_prefix = 0 [static] |
Definition at line 53 of file ffprobe.c.
Referenced by opt_pretty(), value_string(), and xml_init().
int use_value_sexagesimal_format = 0 [static] |
const AVClass writer_class [static] |
Initial value:
{ "Writer", writer_get_name, NULL, LIBAVUTIL_VERSION_INT, }
Initial value:
{ "XMLContext", xml_get_name, 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_INT, {.dbl=0}, 0, 1 }, {"q", "specify if the output should be fully qualified", OFFSET(fully_qualified), AV_OPT_TYPE_INT, {.dbl=0}, 0, 1 }, {"xsd_strict", "ensure that the output is XSD compliant", OFFSET(xsd_strict), AV_OPT_TYPE_INT, {.dbl=0}, 0, 1 }, {"x", "ensure that the output is XSD compliant", OFFSET(xsd_strict), AV_OPT_TYPE_INT, {.dbl=0}, 0, 1 }, {NULL}, }
Writer xml_writer [static] |
Initial value:
{ .name = "xml", .priv_size = sizeof(XMLContext), .init = xml_init, .uninit = xml_uninit, .print_header = xml_print_header, .print_footer = xml_print_footer, .print_chapter_header = xml_print_chapter_header, .print_chapter_footer = xml_print_chapter_footer, .print_section_header = xml_print_section_header, .print_section_footer = xml_print_section_footer, .print_integer = xml_print_int, .print_string = xml_print_str, .show_tags = xml_show_tags, .flags = WRITER_FLAG_PUT_PACKETS_AND_FRAMES_IN_SAME_CHAPTER, }