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  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 void log_callback (void *ptr, int level, const char *fmt, va_list vl)
 
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 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 struct AVTextFormatSection sections []
 
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 411 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 417 of file ffprobe.c.

◆ print_int

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

Definition at line 429 of file ffprobe.c.

◆ print_q

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

Definition at line 430 of file ffprobe.c.

◆ print_str

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

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

◆ print_time

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

Definition at line 434 of file ffprobe.c.

◆ print_ts

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

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

◆ print_duration_ts

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

Definition at line 437 of file ffprobe.c.

◆ print_val

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

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

◆ IN_PROGRAM

#define IN_PROGRAM   1

Definition at line 1695 of file ffprobe.c.

◆ IN_STREAM_GROUP

#define IN_STREAM_GROUP   2

Definition at line 1696 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 2606 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 2634 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 3070 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 3154 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.

◆ log_callback()

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

Definition at line 361 of file ffprobe.c.

Referenced by av_vlog(), and main().

◆ 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 466 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 475 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 496 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 503 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 665 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 764 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 834 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 845 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 970 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 1071 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 1084 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 1109 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 1119 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 1129 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 1139 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 1149 of file ffprobe.c.

Referenced by show_frame(), and show_stream().

◆ clear_log()

static void clear_log ( int  need_lock)
static

Definition at line 1159 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 1175 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 1210 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 1267 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 1290 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 1441 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 1514 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 1538 of file ffprobe.c.

Referenced by read_packets().

◆ read_packets()

static int read_packets ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 1663 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 1683 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 1698 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 1919 of file ffprobe.c.

Referenced by probe_file().

◆ show_program()

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

Definition at line 1936 of file ffprobe.c.

Referenced by show_programs().

◆ show_programs()

static int show_programs ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 1967 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 1985 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 2008 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 2063 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 2094 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 2141 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 2160 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 2172 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 2216 of file ffprobe.c.

Referenced by probe_file().

◆ show_chapters()

static int show_chapters ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 2233 of file ffprobe.c.

Referenced by probe_file().

◆ show_format()

static int show_format ( AVTextFormatContext tfc,
InputFile ifile 
)
static

Definition at line 2258 of file ffprobe.c.

Referenced by probe_file().

◆ show_error()

static void show_error ( AVTextFormatContext tfc,
int  err 
)
static

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

◆ set_decoders()

static int set_decoders ( AVFormatContext fmt_ctx)
static

Definition at line 2311 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 2326 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 2356 of file ffprobe.c.

Referenced by probe_file().

◆ close_input_file()

static void close_input_file ( InputFile ifile)
static

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

Referenced by main().

◆ show_usage()

static void show_usage ( void  )
static

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

Referenced by main().

◆ ffprobe_show_library_versions()

static void ffprobe_show_library_versions ( AVTextFormatContext tfc)
static

Definition at line 2621 of file ffprobe.c.

Referenced by main().

◆ ffprobe_show_pixel_formats()

static void ffprobe_show_pixel_formats ( AVTextFormatContext tfc)
static

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

◆ opt_format()

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

Definition at line 2702 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 2712 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 2726 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 2745 of file ffprobe.c.

◆ opt_input_file()

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

Definition at line 2795 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 2812 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 2818 of file ffprobe.c.

◆ opt_print_filename()

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

Definition at line 2835 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 2842 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 2858 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 2940 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 2988 of file ffprobe.c.

◆ opt_pretty()

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

Definition at line 2993 of file ffprobe.c.

◆ print_section()

static void print_section ( SectionID  id,
int  level 
)
static

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

◆ opt_codec()

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

Definition at line 3033 of file ffprobe.c.

◆ opt_show_versions()

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

Definition at line 3063 of file ffprobe.c.

◆ check_section_show_entries()

static int check_section_show_entries ( int  section_id)
inlinestatic

Definition at line 3143 of file ffprobe.c.

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 3159 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

struct AVTextFormatSection sections[]
static

◆ options

const OptionDef* options
static

Definition at line 327 of file ffprobe.c.

◆ input_filename

const char* input_filename
static

Definition at line 330 of file ffprobe.c.

Referenced by main(), and opt_input_file().

◆ print_input_filename

const char* print_input_filename
static

Definition at line 331 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 333 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 335 of file ffprobe.c.

◆ unit_hertz_str

const char unit_hertz_str[] = "Hz"
static

Definition at line 336 of file ffprobe.c.

Referenced by show_stream().

◆ unit_byte_str

const char unit_byte_str[] = "byte"
static

Definition at line 337 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 338 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 341 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 342 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 344 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 345 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 347 of file ffprobe.c.

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

◆ log_buffer

LogBuffer* log_buffer
static

Definition at line 358 of file ffprobe.c.

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

◆ log_buffer_size

int log_buffer_size
static

Definition at line 359 of file ffprobe.c.

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

◆ real_options

const OptionDef real_options[]
static

Definition at line 3089 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:3143
get_decoder_by_name
static int get_decoder_by_name(const char *codec_name, const AVCodec **codec)
Definition: ffprobe.c:2297
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:67
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:315
ret
ret
Definition: filter_design.txt:187