FFmpeg
Data Structures | Macros | Enumerations | Functions | Variables
ffprobe.c File Reference
#include "config.h"
#include "libavutil/ffversion.h"
#include <string.h>
#include <math.h>
#include "libavformat/avformat.h"
#include "libavformat/version.h"
#include "libavcodec/avcodec.h"
#include "libavcodec/version.h"
#include "libavutil/ambient_viewing_environment.h"
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/avutil.h"
#include "libavutil/bprint.h"
#include "libavutil/channel_layout.h"
#include "libavutil/display.h"
#include "libavutil/film_grain_params.h"
#include "libavutil/hdr_dynamic_metadata.h"
#include "libavutil/iamf.h"
#include "libavutil/mastering_display_metadata.h"
#include "libavutil/hdr_dynamic_vivid_metadata.h"
#include "libavutil/dovi_meta.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "libavutil/spherical.h"
#include "libavutil/stereo3d.h"
#include "libavutil/dict.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/libm.h"
#include "libavutil/parseutils.h"
#include "libavutil/timecode.h"
#include "libavutil/timestamp.h"
#include "libavdevice/avdevice.h"
#include "libavdevice/version.h"
#include "libswscale/swscale.h"
#include "libswscale/version.h"
#include "libswresample/swresample.h"
#include "libswresample/version.h"
#include "libavfilter/version.h"
#include "textformat/avtextformat.h"
#include "cmdutils.h"
#include "opt_common.h"
#include "libavutil/thread.h"

Go to the source code of this file.

Data Structures

struct  FrameData
 
struct  InputStream
 
struct  InputFile
 
struct  ReadInterval
 
struct  EntrySelection
 
struct  LogBuffer
 

Macros

#define SHOW_OPTIONAL_FIELDS_AUTO   -1
 
#define SHOW_OPTIONAL_FIELDS_NEVER   0
 
#define SHOW_OPTIONAL_FIELDS_ALWAYS   1
 
#define print_fmt(k, f, ...)
 
#define print_list_fmt(k, f, n, m, ...)
 
#define print_int(k, v)   avtext_print_integer(tfc, k, v, 0)
 
#define print_q(k, v, s)   avtext_print_rational(tfc, k, v, s)
 
#define print_str(k, v)   avtext_print_string(tfc, k, v, 0)
 
#define print_str_opt(k, v)   avtext_print_string(tfc, k, v, AV_TEXTFORMAT_PRINT_STRING_OPTIONAL)
 
#define print_str_validate(k, v)   avtext_print_string(tfc, k, v, AV_TEXTFORMAT_PRINT_STRING_VALIDATE)
 
#define print_time(k, v, tb)   avtext_print_time(tfc, k, v, tb, 0)
 
#define print_ts(k, v)   avtext_print_ts(tfc, k, v, 0)
 
#define print_duration_time(k, v, tb)   avtext_print_time(tfc, k, v, tb, 1)
 
#define print_duration_ts(k, v)   avtext_print_ts(tfc, k, v, 1)
 
#define print_val(k, v, u)   avtext_print_unit_integer(tfc, k, v, u)
 
#define REALLOCZ_ARRAY_STREAM(ptr, cur_n, new_n)
 
#define IN_PROGRAM   1
 
#define IN_STREAM_GROUP   2
 
#define GET_DECODER(type_)
 
#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)
 

Enumerations

enum  SectionID {
  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_SIDE_DATA_COMPONENT_LIST, SECTION_ID_FRAME_SIDE_DATA_COMPONENT, SECTION_ID_FRAME_SIDE_DATA_PIECE_LIST,
  SECTION_ID_FRAME_SIDE_DATA_PIECE, 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_STREAM_GROUP_STREAM_DISPOSITION, SECTION_ID_STREAM_GROUP_STREAM_TAGS, SECTION_ID_STREAM_GROUP, SECTION_ID_STREAM_GROUP_COMPONENTS,
  SECTION_ID_STREAM_GROUP_COMPONENT, SECTION_ID_STREAM_GROUP_SUBCOMPONENTS, SECTION_ID_STREAM_GROUP_SUBCOMPONENT, SECTION_ID_STREAM_GROUP_PIECES,
  SECTION_ID_STREAM_GROUP_PIECE, SECTION_ID_STREAM_GROUP_SUBPIECES, SECTION_ID_STREAM_GROUP_SUBPIECE, SECTION_ID_STREAM_GROUP_BLOCKS,
  SECTION_ID_STREAM_GROUP_BLOCK, SECTION_ID_STREAM_GROUP_STREAMS, SECTION_ID_STREAM_GROUP_STREAM, SECTION_ID_STREAM_GROUP_DISPOSITION,
  SECTION_ID_STREAM_GROUP_TAGS, SECTION_ID_STREAM_GROUPS, 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, SECTION_ID_ROOT, SECTION_ID_FILTERGRAPHS,
  SECTION_ID_FILTERGRAPH, SECTION_ID_GRAPH_INPUTS, SECTION_ID_GRAPH_INPUT, SECTION_ID_GRAPH_OUTPUTS,
  SECTION_ID_GRAPH_OUTPUT, SECTION_ID_FILTERS, SECTION_ID_FILTER, SECTION_ID_FILTER_INPUTS,
  SECTION_ID_FILTER_INPUT, SECTION_ID_FILTER_OUTPUTS, SECTION_ID_FILTER_OUTPUT, SECTION_ID_HWFRAMESCONTEXT,
  SECTION_ID_INPUTFILES, SECTION_ID_INPUTFILE, SECTION_ID_INPUTSTREAMS, SECTION_ID_INPUTSTREAM,
  SECTION_ID_OUTPUTFILES, SECTION_ID_OUTPUTFILE, SECTION_ID_OUTPUTSTREAMS, SECTION_ID_OUTPUTSTREAM,
  SECTION_ID_STREAMLINKS, SECTION_ID_STREAMLINK, SECTION_ID_DECODERS, SECTION_ID_DECODER,
  SECTION_ID_ENCODERS, SECTION_ID_ENCODER
}
 

Functions

static const char * get_packet_side_data_type (const void *data)
 
static const char * get_frame_side_data_type (const void *data)
 
static const char * get_raw_string_type (const void *data)
 
static const char * get_stream_group_type (const void *data)
 
static int is_key_selected_callback (AVTextFormatContext *tctx, const char *key)
 
static void log_callback (void *ptr, int level, const char *fmt, va_list vl)
 
static void print_integers (AVTextFormatContext *tfc, const char *key, const void *data, int size, const char *format, int columns, int bytes, int offset_add)
 
static int show_tags (AVTextFormatContext *tfc, AVDictionary *tags, int section_id)
 
static void print_displaymatrix (AVTextFormatContext *tfc, const int32_t matrix[9])
 
static void print_mastering_display_metadata (AVTextFormatContext *tfc, const AVMasteringDisplayMetadata *metadata)
 
static void print_context_light_level (AVTextFormatContext *tfc, const AVContentLightMetadata *metadata)
 
static void print_dovi_metadata (AVTextFormatContext *tfc, const AVDOVIMetadata *dovi)
 
static void print_dynamic_hdr10_plus (AVTextFormatContext *tfc, const AVDynamicHDRPlus *metadata)
 
static void print_dynamic_hdr_vivid (AVTextFormatContext *tfc, const AVDynamicHDRVivid *metadata)
 
static void print_ambient_viewing_environment (AVTextFormatContext *tfc, const AVAmbientViewingEnvironment *env)
 
static void print_film_grain_params (AVTextFormatContext *tfc, const AVFilmGrainParams *fgp)
 
static void print_pkt_side_data (AVTextFormatContext *tfc, AVCodecParameters *par, const AVPacketSideData *sd, SectionID id_data)
 
static void print_private_data (AVTextFormatContext *tfc, void *priv_data)
 
static void print_pixel_format (AVTextFormatContext *tfc, enum AVPixelFormat pix_fmt)
 
static void print_color_range (AVTextFormatContext *tfc, enum AVColorRange color_range)
 
static void print_color_space (AVTextFormatContext *tfc, enum AVColorSpace color_space)
 
static void print_primaries (AVTextFormatContext *tfc, enum AVColorPrimaries color_primaries)
 
static void print_color_trc (AVTextFormatContext *tfc, enum AVColorTransferCharacteristic color_trc)
 
static void print_chroma_location (AVTextFormatContext *tfc, enum AVChromaLocation chroma_location)
 
static void print_alpha_mode (AVTextFormatContext *tfc, enum AVAlphaMode alpha_mode)
 
static void clear_log (int need_lock)
 
static int show_log (AVTextFormatContext *tfc, int section_ids, int section_id, int log_level)
 
static void show_packet (AVTextFormatContext *tfc, InputFile *ifile, AVPacket *pkt, int packet_idx)
 
static void show_subtitle (AVTextFormatContext *tfc, AVSubtitle *sub, AVStream *stream, AVFormatContext *fmt_ctx)
 
static void print_frame_side_data (AVTextFormatContext *tfc, const AVFrame *frame, const AVStream *stream)
 
static void show_frame (AVTextFormatContext *tfc, AVFrame *frame, AVStream *stream, AVFormatContext *fmt_ctx)
 
static av_always_inline int process_frame (AVTextFormatContext *tfc, InputFile *ifile, AVFrame *frame, const AVPacket *pkt, int *packet_new)
 
static void log_read_interval (const ReadInterval *interval, void *log_ctx, int log_level)
 
static int read_interval_packets (AVTextFormatContext *tfc, InputFile *ifile, const ReadInterval *interval, int64_t *cur_ts)
 
static int read_packets (AVTextFormatContext *tfc, InputFile *ifile)
 
static void print_dispositions (AVTextFormatContext *tfc, uint32_t disposition, SectionID section_id)
 
static int show_stream (AVTextFormatContext *tfc, AVFormatContext *fmt_ctx, int stream_idx, InputStream *ist, int container)
 
static int show_streams (AVTextFormatContext *tfc, InputFile *ifile)
 
static int show_program (AVTextFormatContext *tfc, InputFile *ifile, AVProgram *program)
 
static int show_programs (AVTextFormatContext *tfc, InputFile *ifile)
 
static void print_tile_grid_params (AVTextFormatContext *tfc, const AVStreamGroup *stg, const AVStreamGroupTileGrid *tile_grid)
 
static void print_iamf_param_definition (AVTextFormatContext *tfc, const char *name, const AVIAMFParamDefinition *param, SectionID section_id)
 
static void print_iamf_audio_element_params (AVTextFormatContext *tfc, const AVStreamGroup *stg, const AVIAMFAudioElement *audio_element)
 
static void print_iamf_submix_params (AVTextFormatContext *tfc, const AVIAMFSubmix *submix)
 
static void print_iamf_mix_presentation_params (AVTextFormatContext *tfc, const AVStreamGroup *stg, const AVIAMFMixPresentation *mix_presentation)
 
static void print_stream_group_params (AVTextFormatContext *tfc, AVStreamGroup *stg)
 
static int show_stream_group (AVTextFormatContext *tfc, InputFile *ifile, AVStreamGroup *stg)
 
static int show_stream_groups (AVTextFormatContext *tfc, InputFile *ifile)
 
static int show_chapters (AVTextFormatContext *tfc, InputFile *ifile)
 
static int show_format (AVTextFormatContext *tfc, InputFile *ifile)
 
static void show_error (AVTextFormatContext *tfc, int err)
 
static int get_decoder_by_name (const char *codec_name, const AVCodec **codec)
 
static int set_decoders (AVFormatContext *fmt_ctx)
 
static const AVCodecget_decoder_for_stream (AVFormatContext *fmt_ctx, AVStream *stream)
 
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 (AVTextFormatContext *tfc, const char *filename, const char *print_filename)
 
static void show_usage (void)
 
static void ffprobe_show_program_version (AVTextFormatContext *tfc)
 
static void ffprobe_show_library_versions (AVTextFormatContext *tfc)
 
static void ffprobe_show_pixel_formats (AVTextFormatContext *tfc)
 
static int opt_show_optional_fields (void *optctx, const char *opt, const char *arg)
 
static int opt_format (void *optctx, const char *opt, const char *arg)
 
static void mark_section_show_entries (SectionID section_id, int show_all_entries, AVDictionary *entries)
 
static int match_section (const char *section_name, int show_all_entries, AVDictionary *entries)
 
static int opt_show_entries (void *optctx, const char *opt, const char *arg)
 
static int opt_input_file (void *optctx, const char *arg)
 
static int opt_input_file_i (void *optctx, const char *opt, const char *arg)
 
static int opt_output_file_o (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 (const char *opt, const char *arg)
 Per-fftool specific help handler. More...
 
static int parse_read_interval (const char *interval_spec, ReadInterval *interval)
 Parse interval specification, according to the format: INTERVAL ::= [START|+START_OFFSET][%[END|+END_OFFSET]] INTERVALS ::= INTERVAL[,INTERVALS]. More...
 
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_codec (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)
 
int main (int argc, char **argv)
 

Variables

const char program_name [] = "ffprobe"
 program name, defined by the program for show_version(). More...
 
const int program_birth_year = 2007
 program birth year, defined by the program for show_banner() More...
 
static int do_analyze_frames = 0
 
static int do_bitexact = 0
 
static int do_count_frames = 0
 
static int do_count_packets = 0
 
static int do_read_frames = 0
 
static int do_read_packets = 0
 
static int do_show_chapters = 0
 
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_programs = 0
 
static int do_show_stream_groups = 0
 
static int do_show_stream_group_components = 0
 
static int do_show_streams = 0
 
static int do_show_stream_disposition = 0
 
static int do_show_stream_group_disposition = 0
 
static int do_show_data = 0
 
static int do_show_program_version = 0
 
static int do_show_library_versions = 0
 
static int do_show_pixel_formats = 0
 
static int do_show_pixel_format_flags = 0
 
static int do_show_pixel_format_components = 0
 
static int do_show_log = 0
 
static int do_show_chapter_tags = 0
 
static int do_show_format_tags = 0
 
static int do_show_frame_tags = 0
 
static int do_show_program_tags = 0
 
static int do_show_stream_group_tags = 0
 
static int do_show_stream_tags = 0
 
static int do_show_packet_tags = 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 const char * audio_codec_name = NULL
 
static const char * data_codec_name = NULL
 
static const char * subtitle_codec_name = NULL
 
static const char * video_codec_name = NULL
 
static int show_optional_fields = SHOW_OPTIONAL_FIELDS_AUTO
 
static char * output_format
 
static char * stream_specifier
 
static char * show_data_hash
 
static ReadIntervalread_intervals
 
static int read_intervals_nb = 0
 
static int find_stream_info = 1
 
static const AVTextFormatSection sections []
 
static EntrySelection selected_entries [FF_ARRAY_ELEMS(sections)] = { 0 }
 
static const OptionDefoptions
 
static const char * input_filename
 
static const char * print_input_filename
 
static const AVInputFormatiformat = NULL
 
static const char * output_filename = NULL
 
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 int nb_streams
 
static uint64_t * nb_streams_packets
 
static uint64_t * nb_streams_frames
 
static int * selected_streams
 
static int * streams_with_closed_captions
 
static int * streams_with_film_grain
 
static AVMutex log_mutex = AV_MUTEX_INITIALIZER
 
static LogBufferlog_buffer
 
static int log_buffer_size
 
static const OptionDef real_options []
 

Detailed Description

simple media prober based on the FFmpeg libraries

Definition in file ffprobe.c.

Macro Definition Documentation

◆ SHOW_OPTIONAL_FIELDS_AUTO

#define SHOW_OPTIONAL_FIELDS_AUTO   -1

Definition at line 139 of file ffprobe.c.

◆ SHOW_OPTIONAL_FIELDS_NEVER

#define SHOW_OPTIONAL_FIELDS_NEVER   0

Definition at line 140 of file ffprobe.c.

◆ SHOW_OPTIONAL_FIELDS_ALWAYS

#define SHOW_OPTIONAL_FIELDS_ALWAYS   1

Definition at line 141 of file ffprobe.c.

◆ print_fmt

#define print_fmt (   k,
  f,
  ... 
)
Value:
do { \
av_bprint_clear(&pbuf); \
av_bprintf(&pbuf, f, __VA_ARGS__); \
avtext_print_string(tfc, k, pbuf.str, 0); \
} while (0)

Definition at line 426 of file ffprobe.c.

◆ print_list_fmt

#define print_list_fmt (   k,
  f,
  n,
  m,
  ... 
)
Value:
do { \
av_bprint_clear(&pbuf); \
for (int idx = 0; idx < n; idx++) { \
for (int idx2 = 0; idx2 < m; idx2++) { \
if (idx > 0 || idx2 > 0) \
av_bprint_chars(&pbuf, ' ', 1); \
av_bprintf(&pbuf, f, __VA_ARGS__); \
} \
} \
avtext_print_string(tfc, k, pbuf.str, 0); \
} while (0)

Definition at line 432 of file ffprobe.c.

◆ print_int

#define print_int (   k,
 
)    avtext_print_integer(tfc, k, v, 0)

Definition at line 444 of file ffprobe.c.

◆ print_q

#define print_q (   k,
  v,
  s 
)    avtext_print_rational(tfc, k, v, s)

Definition at line 445 of file ffprobe.c.

◆ print_str

#define print_str (   k,
 
)    avtext_print_string(tfc, k, v, 0)

Definition at line 446 of file ffprobe.c.

◆ print_str_opt

#define print_str_opt (   k,
 
)    avtext_print_string(tfc, k, v, AV_TEXTFORMAT_PRINT_STRING_OPTIONAL)

Definition at line 447 of file ffprobe.c.

◆ print_str_validate

#define print_str_validate (   k,
 
)    avtext_print_string(tfc, k, v, AV_TEXTFORMAT_PRINT_STRING_VALIDATE)

Definition at line 448 of file ffprobe.c.

◆ print_time

#define print_time (   k,
  v,
  tb 
)    avtext_print_time(tfc, k, v, tb, 0)

Definition at line 449 of file ffprobe.c.

◆ print_ts

#define print_ts (   k,
 
)    avtext_print_ts(tfc, k, v, 0)

Definition at line 450 of file ffprobe.c.

◆ print_duration_time

#define print_duration_time (   k,
  v,
  tb 
)    avtext_print_time(tfc, k, v, tb, 1)

Definition at line 451 of file ffprobe.c.

◆ print_duration_ts

#define print_duration_ts (   k,
 
)    avtext_print_ts(tfc, k, v, 1)

Definition at line 452 of file ffprobe.c.

◆ print_val

#define print_val (   k,
  v,
  u 
)    avtext_print_unit_integer(tfc, k, v, u)

Definition at line 453 of file 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 479 of file ffprobe.c.

◆ IN_PROGRAM

#define IN_PROGRAM   1

Definition at line 1745 of file ffprobe.c.

◆ IN_STREAM_GROUP

#define IN_STREAM_GROUP   2

Definition at line 1746 of file ffprobe.c.

◆ GET_DECODER

#define GET_DECODER (   type_)
Value:
ret = get_decoder_by_name(type_##_codec_name, &fmt_ctx->type_##_codec); \
if (ret < 0) return ret;

◆ CHECK_END

#define CHECK_END   if (ret < 0) goto end

◆ SHOW_LIB_VERSION

#define SHOW_LIB_VERSION (   libname,
  LIBNAME 
)
Value:
do { \
if (CONFIG_##LIBNAME) { \
unsigned int version = libname##_version(); \
avtext_print_section_header(tfc, NULL, 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); \
avtext_print_section_footer(tfc); \
} \
} while (0)

Definition at line 2670 of file 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 2698 of file ffprobe.c.

◆ 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; \
}

Definition at line 3135 of file 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)

Definition at line 3222 of file ffprobe.c.

Enumeration Type Documentation

◆ SectionID

enum SectionID
Enumerator
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_SIDE_DATA_COMPONENT_LIST 
SECTION_ID_FRAME_SIDE_DATA_COMPONENT 
SECTION_ID_FRAME_SIDE_DATA_PIECE_LIST 
SECTION_ID_FRAME_SIDE_DATA_PIECE 
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_STREAM_GROUP_STREAM_DISPOSITION 
SECTION_ID_STREAM_GROUP_STREAM_TAGS 
SECTION_ID_STREAM_GROUP 
SECTION_ID_STREAM_GROUP_COMPONENTS 
SECTION_ID_STREAM_GROUP_COMPONENT 
SECTION_ID_STREAM_GROUP_SUBCOMPONENTS 
SECTION_ID_STREAM_GROUP_SUBCOMPONENT 
SECTION_ID_STREAM_GROUP_PIECES 
SECTION_ID_STREAM_GROUP_PIECE 
SECTION_ID_STREAM_GROUP_SUBPIECES 
SECTION_ID_STREAM_GROUP_SUBPIECE 
SECTION_ID_STREAM_GROUP_BLOCKS 
SECTION_ID_STREAM_GROUP_BLOCK 
SECTION_ID_STREAM_GROUP_STREAMS 
SECTION_ID_STREAM_GROUP_STREAM 
SECTION_ID_STREAM_GROUP_DISPOSITION 
SECTION_ID_STREAM_GROUP_TAGS 
SECTION_ID_STREAM_GROUPS 
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 
SECTION_ID_ROOT 
SECTION_ID_FILTERGRAPHS 
SECTION_ID_FILTERGRAPH 
SECTION_ID_GRAPH_INPUTS 
SECTION_ID_GRAPH_INPUT 
SECTION_ID_GRAPH_OUTPUTS 
SECTION_ID_GRAPH_OUTPUT 
SECTION_ID_FILTERS 
SECTION_ID_FILTER 
SECTION_ID_FILTER_INPUTS 
SECTION_ID_FILTER_INPUT 
SECTION_ID_FILTER_OUTPUTS 
SECTION_ID_FILTER_OUTPUT 
SECTION_ID_HWFRAMESCONTEXT 
SECTION_ID_INPUTFILES 
SECTION_ID_INPUTFILE 
SECTION_ID_INPUTSTREAMS 
SECTION_ID_INPUTSTREAM 
SECTION_ID_OUTPUTFILES 
SECTION_ID_OUTPUTFILE 
SECTION_ID_OUTPUTSTREAMS 
SECTION_ID_OUTPUTSTREAM 
SECTION_ID_STREAMLINKS 
SECTION_ID_STREAMLINK 
SECTION_ID_DECODERS 
SECTION_ID_DECODER 
SECTION_ID_ENCODERS 
SECTION_ID_ENCODER 

Definition at line 163 of file ffprobe.c.

Function Documentation

◆ get_packet_side_data_type()

static const char* get_packet_side_data_type ( const void *  data)
static

Definition at line 232 of file ffprobe.c.

◆ get_frame_side_data_type()

static const char* get_frame_side_data_type ( const void *  data)
static

Definition at line 238 of file ffprobe.c.

◆ get_raw_string_type()

static const char* get_raw_string_type ( const void *  data)
static

Definition at line 244 of file ffprobe.c.

◆ get_stream_group_type()

static const char* get_stream_group_type ( const void *  data)
static

Definition at line 249 of file ffprobe.c.

◆ is_key_selected_callback()

static int is_key_selected_callback ( AVTextFormatContext tctx,
const char *  key 
)
static

Definition at line 368 of file ffprobe.c.

Referenced by main().

◆ log_callback()

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

Definition at line 376 of file ffprobe.c.

Referenced by av_vlog(), and main().

◆ print_integers()

static void print_integers ( AVTextFormatContext tfc,
const char *  key,
const void *  data,
int  size,
const char *  format,
int  columns,
int  bytes,
int  offset_add 
)
static

Definition at line 455 of file ffprobe.c.

Referenced by print_displaymatrix().

◆ show_tags()

static int show_tags ( AVTextFormatContext tfc,
AVDictionary tags,
int  section_id 
)
inlinestatic

◆ print_displaymatrix()

static void print_displaymatrix ( AVTextFormatContext tfc,
const int32_t  matrix[9] 
)
static

Definition at line 505 of file ffprobe.c.

Referenced by print_frame_side_data(), and print_pkt_side_data().

◆ print_mastering_display_metadata()

static void print_mastering_display_metadata ( AVTextFormatContext tfc,
const AVMasteringDisplayMetadata metadata 
)
static

Definition at line 514 of file ffprobe.c.

Referenced by print_frame_side_data(), and print_pkt_side_data().

◆ print_context_light_level()

static void print_context_light_level ( AVTextFormatContext tfc,
const AVContentLightMetadata metadata 
)
static

Definition at line 535 of file ffprobe.c.

Referenced by print_frame_side_data(), and print_pkt_side_data().

◆ print_dovi_metadata()

static void print_dovi_metadata ( AVTextFormatContext tfc,
const AVDOVIMetadata dovi 
)
static

Definition at line 542 of file ffprobe.c.

Referenced by print_frame_side_data().

◆ print_dynamic_hdr10_plus()

static void print_dynamic_hdr10_plus ( AVTextFormatContext tfc,
const AVDynamicHDRPlus metadata 
)
static

Definition at line 704 of file ffprobe.c.

Referenced by print_frame_side_data(), and print_pkt_side_data().

◆ print_dynamic_hdr_vivid()

static void print_dynamic_hdr_vivid ( AVTextFormatContext tfc,
const AVDynamicHDRVivid metadata 
)
static

Definition at line 803 of file ffprobe.c.

Referenced by print_frame_side_data().

◆ print_ambient_viewing_environment()

static void print_ambient_viewing_environment ( AVTextFormatContext tfc,
const AVAmbientViewingEnvironment env 
)
static

Definition at line 873 of file ffprobe.c.

Referenced by print_frame_side_data(), and print_pkt_side_data().

◆ print_film_grain_params()

static void print_film_grain_params ( AVTextFormatContext tfc,
const AVFilmGrainParams fgp 
)
static

Definition at line 884 of file ffprobe.c.

Referenced by print_frame_side_data().

◆ print_pkt_side_data()

static void print_pkt_side_data ( AVTextFormatContext tfc,
AVCodecParameters par,
const AVPacketSideData sd,
SectionID  id_data 
)
static

Definition at line 1009 of file ffprobe.c.

Referenced by show_packet(), and show_stream().

◆ print_private_data()

static void print_private_data ( AVTextFormatContext tfc,
void *  priv_data 
)
static

Definition at line 1110 of file ffprobe.c.

Referenced by show_stream().

◆ print_pixel_format()

static void print_pixel_format ( AVTextFormatContext tfc,
enum AVPixelFormat  pix_fmt 
)
static

Definition at line 1123 of file ffprobe.c.

Referenced by show_frame(), and show_stream().

◆ print_color_range()

static void print_color_range ( AVTextFormatContext tfc,
enum AVColorRange  color_range 
)
static

Definition at line 1148 of file ffprobe.c.

Referenced by show_frame(), and show_stream().

◆ print_color_space()

static void print_color_space ( AVTextFormatContext tfc,
enum AVColorSpace  color_space 
)
static

Definition at line 1158 of file ffprobe.c.

Referenced by show_frame(), and show_stream().

◆ print_primaries()

static void print_primaries ( AVTextFormatContext tfc,
enum AVColorPrimaries  color_primaries 
)
static

Definition at line 1168 of file ffprobe.c.

Referenced by show_frame(), and show_stream().

◆ print_color_trc()

static void print_color_trc ( AVTextFormatContext tfc,
enum AVColorTransferCharacteristic  color_trc 
)
static

Definition at line 1178 of file ffprobe.c.

Referenced by show_frame(), and show_stream().

◆ print_chroma_location()

static void print_chroma_location ( AVTextFormatContext tfc,
enum AVChromaLocation  chroma_location 
)
static

Definition at line 1188 of file ffprobe.c.

Referenced by show_frame(), and show_stream().

◆ print_alpha_mode()

static void print_alpha_mode ( AVTextFormatContext tfc,
enum AVAlphaMode  alpha_mode 
)
static

Definition at line 1198 of file ffprobe.c.

Referenced by show_frame().

◆ clear_log()

static void clear_log ( int  need_lock)
static

Definition at line 1208 of file ffprobe.c.

Referenced by process_frame(), and show_log().

◆ show_log()

static int show_log ( AVTextFormatContext tfc,
int  section_ids,
int  section_id,
int  log_level 
)
static

Definition at line 1224 of file ffprobe.c.

Referenced by show_frame().

◆ show_packet()

static void show_packet ( AVTextFormatContext tfc,
InputFile ifile,
AVPacket pkt,
int  packet_idx 
)
static

Definition at line 1259 of file ffprobe.c.

Referenced by read_interval_packets().

◆ show_subtitle()

static void show_subtitle ( AVTextFormatContext tfc,
AVSubtitle sub,
AVStream stream,
AVFormatContext fmt_ctx 
)
static

Definition at line 1316 of file ffprobe.c.

Referenced by process_frame().

◆ print_frame_side_data()

static void print_frame_side_data ( AVTextFormatContext tfc,
const AVFrame frame,
const AVStream stream 
)
static

Definition at line 1339 of file ffprobe.c.

Referenced by show_frame().

◆ show_frame()

static void show_frame ( AVTextFormatContext tfc,
AVFrame frame,
AVStream stream,
AVFormatContext fmt_ctx 
)
static

◆ process_frame()

static av_always_inline int process_frame ( AVTextFormatContext tfc,
InputFile ifile,
AVFrame frame,
const AVPacket pkt,
int *  packet_new 
)
static

Definition at line 1491 of file ffprobe.c.

Referenced by init_framesync(), and read_interval_packets().

◆ log_read_interval()

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

Definition at line 1564 of file ffprobe.c.

Referenced by parse_read_intervals(), and read_interval_packets().

◆ read_interval_packets()

static int read_interval_packets ( AVTextFormatContext tfc,
InputFile ifile,
const ReadInterval interval,
int64_t cur_ts 
)
static

Definition at line 1588 of file ffprobe.c.

Referenced by read_packets().

◆ read_packets()

static int read_packets ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 1713 of file ffprobe.c.

Referenced by probe_file().

◆ print_dispositions()

static void print_dispositions ( AVTextFormatContext tfc,
uint32_t  disposition,
SectionID  section_id 
)
static

Definition at line 1733 of file ffprobe.c.

Referenced by show_stream(), and show_stream_group().

◆ show_stream()

static int show_stream ( AVTextFormatContext tfc,
AVFormatContext fmt_ctx,
int  stream_idx,
InputStream ist,
int  container 
)
static

Definition at line 1748 of file ffprobe.c.

Referenced by show_program(), show_stream_group(), and show_streams().

◆ show_streams()

static int show_streams ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 1973 of file ffprobe.c.

Referenced by probe_file().

◆ show_program()

static int show_program ( AVTextFormatContext tfc,
InputFile ifile,
AVProgram program 
)
static

Definition at line 1990 of file ffprobe.c.

Referenced by show_programs().

◆ show_programs()

static int show_programs ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 2021 of file ffprobe.c.

Referenced by probe_file().

◆ print_tile_grid_params()

static void print_tile_grid_params ( AVTextFormatContext tfc,
const AVStreamGroup stg,
const AVStreamGroupTileGrid tile_grid 
)
static

Definition at line 2039 of file ffprobe.c.

Referenced by print_stream_group_params().

◆ print_iamf_param_definition()

static void print_iamf_param_definition ( AVTextFormatContext tfc,
const char *  name,
const AVIAMFParamDefinition param,
SectionID  section_id 
)
static

Definition at line 2062 of file ffprobe.c.

Referenced by print_iamf_audio_element_params(), and print_iamf_submix_params().

◆ print_iamf_audio_element_params()

static void print_iamf_audio_element_params ( AVTextFormatContext tfc,
const AVStreamGroup stg,
const AVIAMFAudioElement audio_element 
)
static

Definition at line 2117 of file ffprobe.c.

Referenced by print_stream_group_params().

◆ print_iamf_submix_params()

static void print_iamf_submix_params ( AVTextFormatContext tfc,
const AVIAMFSubmix submix 
)
static

Definition at line 2158 of file ffprobe.c.

Referenced by print_iamf_mix_presentation_params().

◆ print_iamf_mix_presentation_params()

static void print_iamf_mix_presentation_params ( AVTextFormatContext tfc,
const AVStreamGroup stg,
const AVIAMFMixPresentation mix_presentation 
)
static

Definition at line 2205 of file ffprobe.c.

Referenced by print_stream_group_params().

◆ print_stream_group_params()

static void print_stream_group_params ( AVTextFormatContext tfc,
AVStreamGroup stg 
)
static

Definition at line 2224 of file ffprobe.c.

Referenced by show_stream_group().

◆ show_stream_group()

static int show_stream_group ( AVTextFormatContext tfc,
InputFile ifile,
AVStreamGroup stg 
)
static

Definition at line 2236 of file ffprobe.c.

Referenced by show_stream_groups().

◆ show_stream_groups()

static int show_stream_groups ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 2280 of file ffprobe.c.

Referenced by probe_file().

◆ show_chapters()

static int show_chapters ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 2297 of file ffprobe.c.

Referenced by probe_file().

◆ show_format()

static int show_format ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 2322 of file ffprobe.c.

Referenced by probe_file().

◆ show_error()

static void show_error ( AVTextFormatContext tfc,
int  err 
)
static

Definition at line 2353 of file ffprobe.c.

Referenced by main().

◆ get_decoder_by_name()

static int get_decoder_by_name ( const char *  codec_name,
const AVCodec **  codec 
)
static

Definition at line 2361 of file ffprobe.c.

◆ set_decoders()

static int set_decoders ( AVFormatContext fmt_ctx)
static

Definition at line 2375 of file ffprobe.c.

Referenced by open_input_file().

◆ get_decoder_for_stream()

static const AVCodec* get_decoder_for_stream ( AVFormatContext fmt_ctx,
AVStream stream 
)
static

Definition at line 2390 of file ffprobe.c.

Referenced by open_input_file().

◆ open_input_file()

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

Definition at line 2420 of file ffprobe.c.

Referenced by probe_file().

◆ close_input_file()

static void close_input_file ( InputFile ifile)
static

Definition at line 2538 of file ffprobe.c.

Referenced by probe_file().

◆ probe_file()

static int probe_file ( AVTextFormatContext tfc,
const char *  filename,
const char *  print_filename 
)
static

Definition at line 2552 of file ffprobe.c.

Referenced by main().

◆ show_usage()

static void show_usage ( void  )
static

Definition at line 2647 of file ffprobe.c.

Referenced by main(), and show_help_default().

◆ ffprobe_show_program_version()

static void ffprobe_show_program_version ( AVTextFormatContext tfc)
static

Definition at line 2654 of file ffprobe.c.

Referenced by main().

◆ ffprobe_show_library_versions()

static void ffprobe_show_library_versions ( AVTextFormatContext tfc)
static

Definition at line 2685 of file ffprobe.c.

Referenced by main().

◆ ffprobe_show_pixel_formats()

static void ffprobe_show_pixel_formats ( AVTextFormatContext tfc)
static

Definition at line 2703 of file ffprobe.c.

Referenced by main().

◆ opt_show_optional_fields()

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

Definition at line 2749 of file ffprobe.c.

◆ opt_format()

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

Definition at line 2766 of file 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 2776 of file ffprobe.c.

Referenced by match_section(), and opt_show_versions().

◆ match_section()

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

Definition at line 2791 of file ffprobe.c.

Referenced by opt_show_entries().

◆ opt_show_entries()

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

Definition at line 2810 of file ffprobe.c.

◆ opt_input_file()

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

Definition at line 2860 of file ffprobe.c.

Referenced by main(), and opt_input_file_i().

◆ opt_input_file_i()

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

Definition at line 2877 of file ffprobe.c.

◆ opt_output_file_o()

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

Definition at line 2883 of file ffprobe.c.

◆ opt_print_filename()

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

Definition at line 2900 of file ffprobe.c.

◆ show_help_default()

void show_help_default ( const char *  opt,
const char *  arg 
)

Per-fftool specific help handler.

Implemented in each fftool, called by show_help().

Definition at line 2907 of file ffprobe.c.

Referenced by show_help().

◆ 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 2923 of file ffprobe.c.

Referenced by parse_read_intervals().

◆ parse_read_intervals()

static int parse_read_intervals ( const char *  intervals_spec)
static

Definition at line 3005 of file ffprobe.c.

Referenced by opt_read_intervals().

◆ opt_read_intervals()

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

Definition at line 3053 of file ffprobe.c.

◆ opt_pretty()

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

Definition at line 3058 of file ffprobe.c.

◆ print_section()

static void print_section ( SectionID  id,
int  level 
)
static

Definition at line 3067 of file ffprobe.c.

Referenced by opt_sections().

◆ opt_sections()

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

Definition at line 3085 of file ffprobe.c.

◆ opt_codec()

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

Definition at line 3098 of file ffprobe.c.

◆ opt_show_versions()

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

Definition at line 3128 of file ffprobe.c.

◆ check_section_show_entries()

static int check_section_show_entries ( int  section_id)
inlinestatic

Definition at line 3208 of file ffprobe.c.

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 3227 of file ffprobe.c.

Variable Documentation

◆ program_name

const char program_name[] = "ffprobe"

program name, defined by the program for show_version().

Definition at line 92 of file ffprobe.c.

Referenced by expand_filename_template(), init_report(), main(), print_program_info(), show_help_default(), show_license(), show_usage(), and usage().

◆ program_birth_year

const int program_birth_year = 2007

program birth year, defined by the program for show_banner()

Definition at line 93 of file ffprobe.c.

Referenced by ffprobe_show_program_version(), and print_program_info().

◆ do_analyze_frames

int do_analyze_frames = 0
static

Definition at line 95 of file ffprobe.c.

Referenced by probe_file(), process_frame(), and show_stream().

◆ do_bitexact

int do_bitexact = 0
static

Definition at line 96 of file ffprobe.c.

Referenced by main(), print_pixel_format(), show_format(), and show_stream().

◆ do_count_frames

int do_count_frames = 0
static

Definition at line 97 of file ffprobe.c.

Referenced by probe_file().

◆ do_count_packets

int do_count_packets = 0
static

Definition at line 98 of file ffprobe.c.

Referenced by probe_file().

◆ do_read_frames

int do_read_frames = 0
static

Definition at line 99 of file ffprobe.c.

Referenced by probe_file(), and read_interval_packets().

◆ do_read_packets

int do_read_packets = 0
static

Definition at line 100 of file ffprobe.c.

Referenced by probe_file(), and read_interval_packets().

◆ do_show_chapters

int do_show_chapters = 0
static

Definition at line 101 of file ffprobe.c.

Referenced by main(), and probe_file().

◆ do_show_error

int do_show_error = 0
static

Definition at line 102 of file ffprobe.c.

Referenced by main().

◆ do_show_format

int do_show_format = 0
static

Definition at line 103 of file ffprobe.c.

Referenced by main(), and probe_file().

◆ do_show_frames

int do_show_frames = 0
static

Definition at line 104 of file ffprobe.c.

Referenced by probe_file(), and process_frame().

◆ do_show_packets

int do_show_packets = 0
static

Definition at line 105 of file ffprobe.c.

Referenced by main(), probe_file(), and read_interval_packets().

◆ do_show_programs

int do_show_programs = 0
static

Definition at line 106 of file ffprobe.c.

Referenced by main(), and probe_file().

◆ do_show_stream_groups

int do_show_stream_groups = 0
static

Definition at line 107 of file ffprobe.c.

Referenced by main(), and probe_file().

◆ do_show_stream_group_components

int do_show_stream_group_components = 0
static

Definition at line 108 of file ffprobe.c.

Referenced by show_stream_group().

◆ do_show_streams

int do_show_streams = 0
static

Definition at line 109 of file ffprobe.c.

Referenced by main(), and probe_file().

◆ do_show_stream_disposition

int do_show_stream_disposition = 0
static

Definition at line 110 of file ffprobe.c.

Referenced by show_stream().

◆ do_show_stream_group_disposition

int do_show_stream_group_disposition = 0
static

Definition at line 111 of file ffprobe.c.

Referenced by show_stream_group().

◆ do_show_data

int do_show_data = 0
static

Definition at line 112 of file ffprobe.c.

Referenced by print_pkt_side_data(), show_packet(), and show_stream().

◆ do_show_program_version

int do_show_program_version = 0
static

Definition at line 113 of file ffprobe.c.

Referenced by main().

◆ do_show_library_versions

int do_show_library_versions = 0
static

Definition at line 114 of file ffprobe.c.

Referenced by main().

◆ do_show_pixel_formats

int do_show_pixel_formats = 0
static

Definition at line 115 of file ffprobe.c.

Referenced by main().

◆ do_show_pixel_format_flags

int do_show_pixel_format_flags = 0
static

Definition at line 116 of file ffprobe.c.

Referenced by ffprobe_show_pixel_formats().

◆ do_show_pixel_format_components

int do_show_pixel_format_components = 0
static

Definition at line 117 of file ffprobe.c.

Referenced by ffprobe_show_pixel_formats().

◆ do_show_log

int do_show_log = 0
static

Definition at line 118 of file ffprobe.c.

Referenced by main(), open_input_file(), and show_frame().

◆ do_show_chapter_tags

int do_show_chapter_tags = 0
static

Definition at line 120 of file ffprobe.c.

Referenced by show_chapters().

◆ do_show_format_tags

int do_show_format_tags = 0
static

Definition at line 121 of file ffprobe.c.

Referenced by show_format().

◆ do_show_frame_tags

int do_show_frame_tags = 0
static

Definition at line 122 of file ffprobe.c.

Referenced by show_frame().

◆ do_show_program_tags

int do_show_program_tags = 0
static

Definition at line 123 of file ffprobe.c.

Referenced by show_program().

◆ do_show_stream_group_tags

int do_show_stream_group_tags = 0
static

Definition at line 124 of file ffprobe.c.

Referenced by show_stream_group().

◆ do_show_stream_tags

int do_show_stream_tags = 0
static

Definition at line 125 of file ffprobe.c.

Referenced by show_stream().

◆ do_show_packet_tags

int do_show_packet_tags = 0
static

Definition at line 126 of file ffprobe.c.

Referenced by show_packet().

◆ show_value_unit

int show_value_unit = 0
static

Definition at line 128 of file ffprobe.c.

Referenced by main(), and opt_pretty().

◆ use_value_prefix

int use_value_prefix = 0
static

Definition at line 129 of file ffprobe.c.

Referenced by main(), and opt_pretty().

◆ use_byte_value_binary_prefix

int use_byte_value_binary_prefix = 0
static

Definition at line 130 of file ffprobe.c.

Referenced by main(), and opt_pretty().

◆ use_value_sexagesimal_format

int use_value_sexagesimal_format = 0
static

Definition at line 131 of file ffprobe.c.

Referenced by main(), and opt_pretty().

◆ show_private_data

int show_private_data = 1
static

Definition at line 132 of file ffprobe.c.

Referenced by show_stream().

◆ audio_codec_name

const char* audio_codec_name = NULL
static

Definition at line 134 of file ffprobe.c.

Referenced by opt_codec(), and probe_file().

◆ data_codec_name

const char* data_codec_name = NULL
static

Definition at line 135 of file ffprobe.c.

Referenced by ifile_open(), opt_codec(), and probe_file().

◆ subtitle_codec_name

const char* subtitle_codec_name = NULL
static

Definition at line 136 of file ffprobe.c.

Referenced by opt_codec(), and probe_file().

◆ video_codec_name

const char* video_codec_name = NULL
static

Definition at line 137 of file ffprobe.c.

Referenced by opt_codec(), and probe_file().

◆ show_optional_fields

int show_optional_fields = SHOW_OPTIONAL_FIELDS_AUTO
static

Definition at line 142 of file ffprobe.c.

Referenced by main(), and opt_show_optional_fields().

◆ output_format

char* output_format
static

Definition at line 144 of file ffprobe.c.

Referenced by ff_nvdec_decode_init(), hwaccel_retrieve_data(), and main().

◆ stream_specifier

char* stream_specifier
static

Definition at line 145 of file ffprobe.c.

Referenced by probe_file().

◆ show_data_hash

char* show_data_hash
static

Definition at line 146 of file ffprobe.c.

Referenced by avtext_context_open(), and main().

◆ read_intervals

ReadInterval* read_intervals
static

Definition at line 156 of file ffprobe.c.

Referenced by main(), parse_read_intervals(), and read_packets().

◆ read_intervals_nb

int read_intervals_nb = 0
static

Definition at line 157 of file ffprobe.c.

Referenced by parse_read_intervals(), and read_packets().

◆ find_stream_info

int find_stream_info = 1
static

Definition at line 159 of file ffprobe.c.

Referenced by open_input_file().

◆ sections

const AVTextFormatSection sections[]
static

◆ selected_entries

EntrySelection selected_entries[FF_ARRAY_ELEMS(sections)] = { 0 }
static

◆ options

const OptionDef* options
static

Definition at line 334 of file ffprobe.c.

◆ input_filename

const char* input_filename
static

Definition at line 337 of file ffprobe.c.

Referenced by main(), and opt_input_file().

◆ print_input_filename

const char* print_input_filename
static

Definition at line 338 of file ffprobe.c.

Referenced by main(), and opt_print_filename().

◆ iformat

const AVInputFormat* iformat = NULL
static

◆ output_filename

const char* output_filename = NULL
static

Definition at line 340 of file ffprobe.c.

Referenced by avtextwriter_create_file(), main(), and opt_output_file_o().

◆ unit_second_str

const char unit_second_str[] = "s"
static

Definition at line 342 of file ffprobe.c.

◆ unit_hertz_str

const char unit_hertz_str[] = "Hz"
static

Definition at line 343 of file ffprobe.c.

Referenced by show_stream().

◆ unit_byte_str

const char unit_byte_str[] = "byte"
static

Definition at line 344 of file ffprobe.c.

Referenced by show_format(), show_frame(), and show_packet().

◆ unit_bit_per_second_str

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

Definition at line 345 of file ffprobe.c.

Referenced by show_format(), and show_stream().

◆ nb_streams

int nb_streams
static

◆ nb_streams_packets

uint64_t* nb_streams_packets
static

Definition at line 348 of file ffprobe.c.

Referenced by probe_file(), read_interval_packets(), and show_stream().

◆ nb_streams_frames

uint64_t* nb_streams_frames
static

Definition at line 349 of file ffprobe.c.

Referenced by probe_file(), process_frame(), read_interval_packets(), and show_stream().

◆ selected_streams

int* selected_streams
static

◆ streams_with_closed_captions

int* streams_with_closed_captions
static

Definition at line 351 of file ffprobe.c.

Referenced by probe_file(), process_frame(), read_interval_packets(), and show_stream().

◆ streams_with_film_grain

int* streams_with_film_grain
static

Definition at line 352 of file ffprobe.c.

Referenced by probe_file(), process_frame(), read_interval_packets(), and show_stream().

◆ log_mutex

AVMutex log_mutex = AV_MUTEX_INITIALIZER
static

Definition at line 354 of file ffprobe.c.

Referenced by clear_log(), log_callback(), and show_log().

◆ log_buffer

LogBuffer* log_buffer
static

Definition at line 365 of file ffprobe.c.

Referenced by clear_log(), log_callback(), and show_log().

◆ log_buffer_size

int log_buffer_size
static

Definition at line 366 of file ffprobe.c.

Referenced by clear_log(), log_callback(), and show_log().

◆ real_options

const OptionDef real_options[]
static

Definition at line 3154 of file ffprobe.c.

Referenced by main().

name
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf default minimum maximum flags name is the option name
Definition: writing_filters.txt:88
check_section_show_entries
static int check_section_show_entries(int section_id)
Definition: ffprobe.c:3208
get_decoder_by_name
static int get_decoder_by_name(const char *codec_name, const AVCodec **codec)
Definition: ffprobe.c:2361
return
these buffered frames must be flushed immediately if a new input produces new the filter must not call request_frame to get more It must just process the frame or queue it The task of requesting more frames is left to the filter s request_frame method or the application If a filter has several the filter must be ready for frames arriving randomly on any input any filter with several inputs will most likely require some kind of queuing mechanism It is perfectly acceptable to have a limited queue and to drop frames when the inputs are too unbalanced request_frame For filters that do not use the this method is called when a frame is wanted on an output For a it should directly call filter_frame on the corresponding output For a if there are queued frames already one of these frames should be pushed If the filter should request a frame on one of its repeatedly until at least one frame has been pushed Return or at least make progress towards producing a it should return
Definition: filter_design.txt:265
arg
const char * arg
Definition: jacosubdec.c:65
NULL
#define NULL
Definition: coverity.c:32
SECTION_ID_LIBRARY_VERSION
@ SECTION_ID_LIBRARY_VERSION
Definition: ffprobe.c:183
fmt_ctx
static AVFormatContext * fmt_ctx
Definition: decode_filter_audio.c:44
f
f
Definition: af_crystalizer.c:122
av_reallocp_array
int av_reallocp_array(void *ptr, size_t nmemb, size_t size)
Allocate, reallocate an array through a pointer to a pointer.
Definition: mem.c:225
version
version
Definition: libkvazaar.c:313
ret
ret
Definition: filter_design.txt:187