FFmpeg
Data Structures | Macros | Functions | Variables
ffmpeg_mux_init.c File Reference
#include <string.h>
#include "cmdutils.h"
#include "ffmpeg.h"
#include "ffmpeg_mux.h"
#include "fopen_utf8.h"
#include "libavformat/avformat.h"
#include "libavformat/avio.h"
#include "libavcodec/avcodec.h"
#include "libavfilter/avfilter.h"
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/avutil.h"
#include "libavutil/bprint.h"
#include "libavutil/dict.h"
#include "libavutil/getenv_utf8.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/log.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavutil/parseutils.h"
#include "libavutil/pixdesc.h"

Go to the source code of this file.

Data Structures

struct  EncStatsFile
 

Macros

#define DEFAULT_PASS_LOGFILENAME_PREFIX   "ffmpeg2pass"
 
#define IS_AV_ENC(ost, type)   (ost->enc_ctx && (type == AVMEDIA_TYPE_VIDEO || type == AVMEDIA_TYPE_AUDIO))
 
#define IS_INTERLEAVED(type)   (type != AVMEDIA_TYPE_ATTACHMENT)
 
#define METADATA_CHECK_INDEX(index, nb_elems, desc)
 
#define SET_DICT(type, meta, context, index)
 

Functions

static int check_opt_bitexact (void *ctx, const AVDictionary *opts, const char *opt_name, int flag)
 
static int choose_encoder (const OptionsContext *o, AVFormatContext *s, OutputStream *ost, const AVCodec **enc)
 
static char * get_line (AVIOContext *s, AVBPrint *bprint)
 
static int get_preset_file_2 (const char *preset_name, const char *codec_name, AVIOContext **s)
 
static int enc_stats_get_file (AVIOContext **io, const char *path)
 
void of_enc_stats_close (void)
 
static int unescape (char **pdst, size_t *dst_len, const char **pstr, char delim)
 
static int enc_stats_init (OutputStream *ost, EncStats *es, int pre, const char *path, const char *fmt_spec)
 
static const char * output_stream_item_name (void *obj)
 
static MuxStreammux_stream_alloc (Muxer *mux, enum AVMediaType type)
 
static OutputStreamnew_output_stream (Muxer *mux, const OptionsContext *o, enum AVMediaType type, InputStream *ist)
 
static char * get_ost_filters (const OptionsContext *o, AVFormatContext *oc, OutputStream *ost)
 
static void check_streamcopy_filters (const OptionsContext *o, AVFormatContext *oc, OutputStream *ost, enum AVMediaType type)
 
static void parse_matrix_coeffs (void *logctx, uint16_t *dest, const char *str)
 
static OutputStreamnew_video_stream (Muxer *mux, const OptionsContext *o, InputStream *ist)
 
static OutputStreamnew_audio_stream (Muxer *mux, const OptionsContext *o, InputStream *ist)
 
static OutputStreamnew_data_stream (Muxer *mux, const OptionsContext *o, InputStream *ist)
 
static OutputStreamnew_unknown_stream (Muxer *mux, const OptionsContext *o, InputStream *ist)
 
static OutputStreamnew_attachment_stream (Muxer *mux, const OptionsContext *o, InputStream *ist)
 
static OutputStreamnew_subtitle_stream (Muxer *mux, const OptionsContext *o, InputStream *ist)
 
static void init_output_filter (OutputFilter *ofilter, const OptionsContext *o, Muxer *mux)
 
static void map_auto_video (Muxer *mux, const OptionsContext *o)
 
static void map_auto_audio (Muxer *mux, const OptionsContext *o)
 
static void map_auto_subtitle (Muxer *mux, const OptionsContext *o)
 
static void map_auto_data (Muxer *mux, const OptionsContext *o)
 
static void map_manual (Muxer *mux, const OptionsContext *o, const StreamMap *map)
 
static void of_add_attachments (Muxer *mux, const OptionsContext *o)
 
static void create_streams (Muxer *mux, const OptionsContext *o)
 
static int setup_sync_queues (Muxer *mux, AVFormatContext *oc, int64_t buf_size_us)
 
static void of_add_programs (Muxer *mux, const OptionsContext *o)
 
static void parse_meta_type (void *logctx, const char *arg, char *type, int *index, const char **stream_spec)
 Parse a metadata specifier passed as 'arg' parameter. More...
 
static void of_add_metadata (OutputFile *of, AVFormatContext *oc, const OptionsContext *o)
 
static void set_channel_layout (OutputFilter *f, OutputStream *ost)
 
static int copy_chapters (InputFile *ifile, OutputFile *ofile, AVFormatContext *os, int copy_metadata)
 
static int copy_metadata (Muxer *mux, AVFormatContext *ic, const char *outspec, const char *inspec, int *metadata_global_manual, int *metadata_streams_manual, int *metadata_chapters_manual, const OptionsContext *o)
 
static void copy_meta (Muxer *mux, const OptionsContext *o)
 
static int set_dispositions (Muxer *mux, const OptionsContext *o)
 
static int compare_int64 (const void *a, const void *b)
 
static void parse_forced_key_frames (KeyframeForceCtx *kf, const Muxer *mux, const char *spec)
 
static int process_forced_keyframes (Muxer *mux, const OptionsContext *o)
 
static void validate_enc_avopt (Muxer *mux, const AVDictionary *codec_avopt)
 
static const char * output_file_item_name (void *obj)
 
static Muxermux_alloc (void)
 
int of_open (const OptionsContext *o, const char *filename)
 

Variables

static const char *const opt_name_apad [] = {"apad", NULL}
 
static const char *const opt_name_autoscale [] = {"autoscale", NULL}
 
static const char *const opt_name_bits_per_raw_sample [] = {"bits_per_raw_sample", NULL}
 
static const char *const opt_name_bitstream_filters [] = {"bsf", "absf", "vbsf", NULL}
 
static const char *const opt_name_copy_initial_nonkeyframes [] = {"copyinkf", NULL}
 
static const char *const opt_name_copy_prior_start [] = {"copypriorss", NULL}
 
static const char *const opt_name_disposition [] = {"disposition", NULL}
 
static const char *const opt_name_enc_time_bases [] = {"enc_time_base", NULL}
 
static const char *const opt_name_enc_stats_pre [] = {"enc_stats_pre", NULL}
 
static const char *const opt_name_enc_stats_post [] = {"enc_stats_post", NULL}
 
static const char *const opt_name_mux_stats [] = {"mux_stats", NULL}
 
static const char *const opt_name_enc_stats_pre_fmt [] = {"enc_stats_pre_fmt", NULL}
 
static const char *const opt_name_enc_stats_post_fmt [] = {"enc_stats_post_fmt", NULL}
 
static const char *const opt_name_mux_stats_fmt [] = {"mux_stats_fmt", NULL}
 
static const char *const opt_name_filters [] = {"filter", "af", "vf", NULL}
 
static const char *const opt_name_filter_scripts [] = {"filter_script", NULL}
 
static const char *const opt_name_fix_sub_duration_heartbeat [] = {"fix_sub_duration_heartbeat", NULL}
 
static const char *const opt_name_fps_mode [] = {"fps_mode", NULL}
 
static const char *const opt_name_force_fps [] = {"force_fps", NULL}
 
static const char *const opt_name_forced_key_frames [] = {"forced_key_frames", NULL}
 
static const char *const opt_name_frame_aspect_ratios [] = {"aspect", NULL}
 
static const char *const opt_name_intra_matrices [] = {"intra_matrix", NULL}
 
static const char *const opt_name_inter_matrices [] = {"inter_matrix", NULL}
 
static const char *const opt_name_chroma_intra_matrices [] = {"chroma_intra_matrix", NULL}
 
static const char *const opt_name_max_frame_rates [] = {"fpsmax", NULL}
 
static const char *const opt_name_max_frames [] = {"frames", "aframes", "vframes", "dframes", NULL}
 
static const char *const opt_name_max_muxing_queue_size [] = {"max_muxing_queue_size", NULL}
 
static const char *const opt_name_muxing_queue_data_threshold [] = {"muxing_queue_data_threshold", NULL}
 
static const char *const opt_name_pass [] = {"pass", NULL}
 
static const char *const opt_name_passlogfiles [] = {"passlogfile", NULL}
 
static const char *const opt_name_presets [] = {"pre", "apre", "vpre", "spre", NULL}
 
static const char *const opt_name_qscale [] = {"q", "qscale", NULL}
 
static const char *const opt_name_rc_overrides [] = {"rc_override", NULL}
 
static const char *const opt_name_time_bases [] = {"time_base", NULL}
 
static const char *const opt_name_audio_channels [] = {"ac", NULL}
 
static const char *const opt_name_audio_ch_layouts [] = {"channel_layout", "ch_layout", NULL}
 
static const char *const opt_name_audio_sample_rate [] = {"ar", NULL}
 
static const char *const opt_name_frame_sizes [] = {"s", NULL}
 
static const char *const opt_name_frame_pix_fmts [] = {"pix_fmt", NULL}
 
static const char *const opt_name_sample_fmts [] = {"sample_fmt", NULL}
 
static EncStatsFileenc_stats_files
 
static int nb_enc_stats_files
 
static const AVClass output_stream_class
 
const char *const forced_keyframes_const_names []
 
static const AVClass output_file_class
 

Macro Definition Documentation

◆ DEFAULT_PASS_LOGFILENAME_PREFIX

#define DEFAULT_PASS_LOGFILENAME_PREFIX   "ffmpeg2pass"

Definition at line 48 of file ffmpeg_mux_init.c.

◆ IS_AV_ENC

#define IS_AV_ENC (   ost,
  type 
)    (ost->enc_ctx && (type == AVMEDIA_TYPE_VIDEO || type == AVMEDIA_TYPE_AUDIO))

◆ IS_INTERLEAVED

#define IS_INTERLEAVED (   type)    (type != AVMEDIA_TYPE_ATTACHMENT)

◆ METADATA_CHECK_INDEX

#define METADATA_CHECK_INDEX (   index,
  nb_elems,
  desc 
)
Value:
if ((index) < 0 || (index) >= (nb_elems)) {\
av_log(mux, AV_LOG_FATAL, "Invalid %s index %d while processing metadata maps.\n",\
(desc), (index));\
exit_program(1);\
}

◆ SET_DICT

#define SET_DICT (   type,
  meta,
  context,
  index 
)
Value:
switch (type) {\
case 'g':\
meta = &context->metadata;\
break;\
case 'c':\
METADATA_CHECK_INDEX(index, context->nb_chapters, "chapter")\
meta = &context->chapters[index]->metadata;\
break;\
case 'p':\
METADATA_CHECK_INDEX(index, context->nb_programs, "program")\
meta = &context->programs[index]->metadata;\
break;\
case 's':\
break; /* handled separately below */ \
default: av_assert0(0);\
}\

Function Documentation

◆ check_opt_bitexact()

static int check_opt_bitexact ( void *  ctx,
const AVDictionary opts,
const char *  opt_name,
int  flag 
)
static

Definition at line 91 of file ffmpeg_mux_init.c.

Referenced by new_output_stream(), and of_open().

◆ choose_encoder()

static int choose_encoder ( const OptionsContext o,
AVFormatContext s,
OutputStream ost,
const AVCodec **  enc 
)
static

Definition at line 107 of file ffmpeg_mux_init.c.

Referenced by new_output_stream().

◆ get_line()

static char* get_line ( AVIOContext s,
AVBPrint *  bprint 
)
static

Definition at line 137 of file ffmpeg_mux_init.c.

Referenced by new_output_stream().

◆ get_preset_file_2()

static int get_preset_file_2 ( const char *  preset_name,
const char *  codec_name,
AVIOContext **  s 
)
static

Definition at line 149 of file ffmpeg_mux_init.c.

Referenced by new_output_stream().

◆ enc_stats_get_file()

static int enc_stats_get_file ( AVIOContext **  io,
const char *  path 
)
static

Definition at line 187 of file ffmpeg_mux_init.c.

Referenced by enc_stats_init().

◆ of_enc_stats_close()

void of_enc_stats_close ( void  )

Definition at line 218 of file ffmpeg_mux_init.c.

Referenced by ffmpeg_cleanup().

◆ unescape()

static int unescape ( char **  pdst,
size_t *  dst_len,
const char **  pstr,
char  delim 
)
static

Definition at line 228 of file ffmpeg_mux_init.c.

Referenced by enc_stats_init().

◆ enc_stats_init()

static int enc_stats_init ( OutputStream ost,
EncStats es,
int  pre,
const char *  path,
const char *  fmt_spec 
)
static

Definition at line 267 of file ffmpeg_mux_init.c.

Referenced by new_output_stream().

◆ output_stream_item_name()

static const char* output_stream_item_name ( void *  obj)
static

Definition at line 390 of file ffmpeg_mux_init.c.

◆ mux_stream_alloc()

static MuxStream* mux_stream_alloc ( Muxer mux,
enum AVMediaType  type 
)
static

Definition at line 404 of file ffmpeg_mux_init.c.

Referenced by new_output_stream().

◆ new_output_stream()

static OutputStream* new_output_stream ( Muxer mux,
const OptionsContext o,
enum AVMediaType  type,
InputStream ist 
)
static

◆ get_ost_filters()

static char* get_ost_filters ( const OptionsContext o,
AVFormatContext oc,
OutputStream ost 
)
static

Definition at line 656 of file ffmpeg_mux_init.c.

Referenced by new_audio_stream(), and new_video_stream().

◆ check_streamcopy_filters()

static void check_streamcopy_filters ( const OptionsContext o,
AVFormatContext oc,
OutputStream ost,
enum AVMediaType  type 
)
static

Definition at line 675 of file ffmpeg_mux_init.c.

Referenced by new_audio_stream(), and new_video_stream().

◆ parse_matrix_coeffs()

static void parse_matrix_coeffs ( void *  logctx,
uint16_t *  dest,
const char *  str 
)
static

Definition at line 688 of file ffmpeg_mux_init.c.

Referenced by new_video_stream().

◆ new_video_stream()

static OutputStream* new_video_stream ( Muxer mux,
const OptionsContext o,
InputStream ist 
)
static

Definition at line 706 of file ffmpeg_mux_init.c.

Referenced by init_output_filter(), map_auto_video(), and map_manual().

◆ new_audio_stream()

static OutputStream* new_audio_stream ( Muxer mux,
const OptionsContext o,
InputStream ist 
)
static

Definition at line 946 of file ffmpeg_mux_init.c.

Referenced by init_output_filter(), map_auto_audio(), and map_manual().

◆ new_data_stream()

static OutputStream* new_data_stream ( Muxer mux,
const OptionsContext o,
InputStream ist 
)
static

Definition at line 1044 of file ffmpeg_mux_init.c.

Referenced by map_auto_data(), and map_manual().

◆ new_unknown_stream()

static OutputStream* new_unknown_stream ( Muxer mux,
const OptionsContext o,
InputStream ist 
)
static

Definition at line 1057 of file ffmpeg_mux_init.c.

Referenced by map_manual().

◆ new_attachment_stream()

static OutputStream* new_attachment_stream ( Muxer mux,
const OptionsContext o,
InputStream ist 
)
static

Definition at line 1070 of file ffmpeg_mux_init.c.

Referenced by map_manual(), and of_add_attachments().

◆ new_subtitle_stream()

static OutputStream* new_subtitle_stream ( Muxer mux,
const OptionsContext o,
InputStream ist 
)
static

Definition at line 1077 of file ffmpeg_mux_init.c.

Referenced by map_auto_subtitle(), and map_manual().

◆ init_output_filter()

static void init_output_filter ( OutputFilter ofilter,
const OptionsContext o,
Muxer mux 
)
static

Definition at line 1099 of file ffmpeg_mux_init.c.

Referenced by create_streams(), and map_manual().

◆ map_auto_video()

static void map_auto_video ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1140 of file ffmpeg_mux_init.c.

Referenced by create_streams().

◆ map_auto_audio()

static void map_auto_audio ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1191 of file ffmpeg_mux_init.c.

Referenced by create_streams().

◆ map_auto_subtitle()

static void map_auto_subtitle ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1233 of file ffmpeg_mux_init.c.

Referenced by create_streams().

◆ map_auto_data()

static void map_auto_data ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1271 of file ffmpeg_mux_init.c.

Referenced by create_streams().

◆ map_manual()

static void map_manual ( Muxer mux,
const OptionsContext o,
const StreamMap map 
)
static

Definition at line 1289 of file ffmpeg_mux_init.c.

Referenced by create_streams().

◆ of_add_attachments()

static void of_add_attachments ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1360 of file ffmpeg_mux_init.c.

Referenced by create_streams().

◆ create_streams()

static void create_streams ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1401 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ setup_sync_queues()

static int setup_sync_queues ( Muxer mux,
AVFormatContext oc,
int64_t  buf_size_us 
)
static

Definition at line 1451 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ of_add_programs()

static void of_add_programs ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1545 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ parse_meta_type()

static void parse_meta_type ( void *  logctx,
const char *  arg,
char *  type,
int index,
const char **  stream_spec 
)
static

Parse a metadata specifier passed as 'arg' parameter.

Parameters
argmetadata string to parse
typemetadata type is written here – g(lobal)/s(tream)/c(hapter)/p(rogram)
indexfor type c/p, chapter/program index is written here
stream_specfor type s, the stream specifier is written here

Definition at line 1624 of file ffmpeg_mux_init.c.

Referenced by copy_metadata(), and of_add_metadata().

◆ of_add_metadata()

static void of_add_metadata ( OutputFile of,
AVFormatContext oc,
const OptionsContext o 
)
static

Definition at line 1652 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ set_channel_layout()

static void set_channel_layout ( OutputFilter f,
OutputStream ost 
)
static

Definition at line 1725 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ copy_chapters()

static int copy_chapters ( InputFile ifile,
OutputFile ofile,
AVFormatContext os,
int  copy_metadata 
)
static

Definition at line 1763 of file ffmpeg_mux_init.c.

Referenced by copy_meta().

◆ copy_metadata()

static int copy_metadata ( Muxer mux,
AVFormatContext ic,
const char *  outspec,
const char *  inspec,
int metadata_global_manual,
int metadata_streams_manual,
int metadata_chapters_manual,
const OptionsContext o 
)
static

Definition at line 1806 of file ffmpeg_mux_init.c.

Referenced by copy_chapters(), and copy_meta().

◆ copy_meta()

static void copy_meta ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1890 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ set_dispositions()

static int set_dispositions ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 1960 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ compare_int64()

static int compare_int64 ( const void *  a,
const void *  b 
)
static

Definition at line 2039 of file ffmpeg_mux_init.c.

Referenced by parse_forced_key_frames().

◆ parse_forced_key_frames()

static void parse_forced_key_frames ( KeyframeForceCtx kf,
const Muxer mux,
const char *  spec 
)
static

Definition at line 2044 of file ffmpeg_mux_init.c.

Referenced by process_forced_keyframes().

◆ process_forced_keyframes()

static int process_forced_keyframes ( Muxer mux,
const OptionsContext o 
)
static

Definition at line 2098 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ validate_enc_avopt()

static void validate_enc_avopt ( Muxer mux,
const AVDictionary codec_avopt 
)
static

Definition at line 2137 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ output_file_item_name()

static const char* output_file_item_name ( void *  obj)
static

Definition at line 2181 of file ffmpeg_mux_init.c.

◆ mux_alloc()

static Muxer* mux_alloc ( void  )
static

Definition at line 2195 of file ffmpeg_mux_init.c.

Referenced by of_open().

◆ of_open()

int of_open ( const OptionsContext o,
const char *  filename 
)

Definition at line 2207 of file ffmpeg_mux_init.c.

Variable Documentation

◆ opt_name_apad

const char* const opt_name_apad[] = {"apad", NULL}
static

Definition at line 50 of file ffmpeg_mux_init.c.

◆ opt_name_autoscale

const char* const opt_name_autoscale[] = {"autoscale", NULL}
static

Definition at line 51 of file ffmpeg_mux_init.c.

◆ opt_name_bits_per_raw_sample

const char* const opt_name_bits_per_raw_sample[] = {"bits_per_raw_sample", NULL}
static

Definition at line 52 of file ffmpeg_mux_init.c.

◆ opt_name_bitstream_filters

const char* const opt_name_bitstream_filters[] = {"bsf", "absf", "vbsf", NULL}
static

Definition at line 53 of file ffmpeg_mux_init.c.

◆ opt_name_copy_initial_nonkeyframes

const char* const opt_name_copy_initial_nonkeyframes[] = {"copyinkf", NULL}
static

Definition at line 54 of file ffmpeg_mux_init.c.

◆ opt_name_copy_prior_start

const char* const opt_name_copy_prior_start[] = {"copypriorss", NULL}
static

Definition at line 55 of file ffmpeg_mux_init.c.

◆ opt_name_disposition

const char* const opt_name_disposition[] = {"disposition", NULL}
static

Definition at line 56 of file ffmpeg_mux_init.c.

◆ opt_name_enc_time_bases

const char* const opt_name_enc_time_bases[] = {"enc_time_base", NULL}
static

Definition at line 57 of file ffmpeg_mux_init.c.

◆ opt_name_enc_stats_pre

const char* const opt_name_enc_stats_pre[] = {"enc_stats_pre", NULL}
static

Definition at line 58 of file ffmpeg_mux_init.c.

◆ opt_name_enc_stats_post

const char* const opt_name_enc_stats_post[] = {"enc_stats_post", NULL}
static

Definition at line 59 of file ffmpeg_mux_init.c.

◆ opt_name_mux_stats

const char* const opt_name_mux_stats[] = {"mux_stats", NULL}
static

Definition at line 60 of file ffmpeg_mux_init.c.

◆ opt_name_enc_stats_pre_fmt

const char* const opt_name_enc_stats_pre_fmt[] = {"enc_stats_pre_fmt", NULL}
static

Definition at line 61 of file ffmpeg_mux_init.c.

◆ opt_name_enc_stats_post_fmt

const char* const opt_name_enc_stats_post_fmt[] = {"enc_stats_post_fmt", NULL}
static

Definition at line 62 of file ffmpeg_mux_init.c.

◆ opt_name_mux_stats_fmt

const char* const opt_name_mux_stats_fmt[] = {"mux_stats_fmt", NULL}
static

Definition at line 63 of file ffmpeg_mux_init.c.

◆ opt_name_filters

const char* const opt_name_filters[] = {"filter", "af", "vf", NULL}
static

Definition at line 64 of file ffmpeg_mux_init.c.

◆ opt_name_filter_scripts

const char* const opt_name_filter_scripts[] = {"filter_script", NULL}
static

Definition at line 65 of file ffmpeg_mux_init.c.

◆ opt_name_fix_sub_duration_heartbeat

const char* const opt_name_fix_sub_duration_heartbeat[] = {"fix_sub_duration_heartbeat", NULL}
static

Definition at line 66 of file ffmpeg_mux_init.c.

◆ opt_name_fps_mode

const char* const opt_name_fps_mode[] = {"fps_mode", NULL}
static

Definition at line 67 of file ffmpeg_mux_init.c.

◆ opt_name_force_fps

const char* const opt_name_force_fps[] = {"force_fps", NULL}
static

Definition at line 68 of file ffmpeg_mux_init.c.

◆ opt_name_forced_key_frames

const char* const opt_name_forced_key_frames[] = {"forced_key_frames", NULL}
static

Definition at line 69 of file ffmpeg_mux_init.c.

◆ opt_name_frame_aspect_ratios

const char* const opt_name_frame_aspect_ratios[] = {"aspect", NULL}
static

Definition at line 70 of file ffmpeg_mux_init.c.

◆ opt_name_intra_matrices

const char* const opt_name_intra_matrices[] = {"intra_matrix", NULL}
static

Definition at line 71 of file ffmpeg_mux_init.c.

◆ opt_name_inter_matrices

const char* const opt_name_inter_matrices[] = {"inter_matrix", NULL}
static

Definition at line 72 of file ffmpeg_mux_init.c.

◆ opt_name_chroma_intra_matrices

const char* const opt_name_chroma_intra_matrices[] = {"chroma_intra_matrix", NULL}
static

Definition at line 73 of file ffmpeg_mux_init.c.

◆ opt_name_max_frame_rates

const char* const opt_name_max_frame_rates[] = {"fpsmax", NULL}
static

Definition at line 74 of file ffmpeg_mux_init.c.

◆ opt_name_max_frames

const char* const opt_name_max_frames[] = {"frames", "aframes", "vframes", "dframes", NULL}
static

Definition at line 75 of file ffmpeg_mux_init.c.

◆ opt_name_max_muxing_queue_size

const char* const opt_name_max_muxing_queue_size[] = {"max_muxing_queue_size", NULL}
static

Definition at line 76 of file ffmpeg_mux_init.c.

◆ opt_name_muxing_queue_data_threshold

const char* const opt_name_muxing_queue_data_threshold[] = {"muxing_queue_data_threshold", NULL}
static

Definition at line 77 of file ffmpeg_mux_init.c.

◆ opt_name_pass

const char* const opt_name_pass[] = {"pass", NULL}
static

Definition at line 78 of file ffmpeg_mux_init.c.

◆ opt_name_passlogfiles

const char* const opt_name_passlogfiles[] = {"passlogfile", NULL}
static

Definition at line 79 of file ffmpeg_mux_init.c.

◆ opt_name_presets

const char* const opt_name_presets[] = {"pre", "apre", "vpre", "spre", NULL}
static

Definition at line 80 of file ffmpeg_mux_init.c.

◆ opt_name_qscale

const char* const opt_name_qscale[] = {"q", "qscale", NULL}
static

Definition at line 81 of file ffmpeg_mux_init.c.

◆ opt_name_rc_overrides

const char* const opt_name_rc_overrides[] = {"rc_override", NULL}
static

Definition at line 82 of file ffmpeg_mux_init.c.

◆ opt_name_time_bases

const char* const opt_name_time_bases[] = {"time_base", NULL}
static

Definition at line 83 of file ffmpeg_mux_init.c.

◆ opt_name_audio_channels

const char* const opt_name_audio_channels[] = {"ac", NULL}
static

Definition at line 84 of file ffmpeg_mux_init.c.

◆ opt_name_audio_ch_layouts

const char* const opt_name_audio_ch_layouts[] = {"channel_layout", "ch_layout", NULL}
static

Definition at line 85 of file ffmpeg_mux_init.c.

◆ opt_name_audio_sample_rate

const char* const opt_name_audio_sample_rate[] = {"ar", NULL}
static

Definition at line 86 of file ffmpeg_mux_init.c.

◆ opt_name_frame_sizes

const char* const opt_name_frame_sizes[] = {"s", NULL}
static

Definition at line 87 of file ffmpeg_mux_init.c.

◆ opt_name_frame_pix_fmts

const char* const opt_name_frame_pix_fmts[] = {"pix_fmt", NULL}
static

Definition at line 88 of file ffmpeg_mux_init.c.

◆ opt_name_sample_fmts

const char* const opt_name_sample_fmts[] = {"sample_fmt", NULL}
static

Definition at line 89 of file ffmpeg_mux_init.c.

◆ enc_stats_files

EncStatsFile* enc_stats_files
static

Definition at line 184 of file ffmpeg_mux_init.c.

Referenced by enc_stats_get_file(), and of_enc_stats_close().

◆ nb_enc_stats_files

int nb_enc_stats_files
static

Definition at line 185 of file ffmpeg_mux_init.c.

Referenced by enc_stats_get_file(), and of_enc_stats_close().

◆ output_stream_class

const AVClass output_stream_class
static
Initial value:
= {
.class_name = "OutputStream",
}

Definition at line 397 of file ffmpeg_mux_init.c.

Referenced by mux_stream_alloc().

◆ forced_keyframes_const_names

const char* const forced_keyframes_const_names[]
Initial value:
= {
"n",
"n_forced",
"prev_forced_n",
"prev_forced_t",
"t",
}

Definition at line 2030 of file ffmpeg_mux_init.c.

Referenced by process_forced_keyframes().

◆ output_file_class

const AVClass output_file_class
static
Initial value:
= {
.class_name = "OutputFile",
.item_name = output_file_item_name,
}

Definition at line 2188 of file ffmpeg_mux_init.c.

Referenced by mux_alloc().

type
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 type
Definition: writing_filters.txt:86
av_assert0
#define av_assert0(cond)
assert() equivalent, that is always enabled.
Definition: avassert.h:37
output_stream_item_name
static const char * output_stream_item_name(void *obj)
Definition: ffmpeg_mux_init.c:390
context
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 keep it simple and lowercase description are in without and describe what they for example set the foo of the bar offset is the offset of the field in your context
Definition: writing_filters.txt:91
LIBAVUTIL_VERSION_INT
#define LIBAVUTIL_VERSION_INT
Definition: version.h:85
NULL
#define NULL
Definition: coverity.c:32
index
int index
Definition: gxfenc.c:89
AV_LOG_FATAL
#define AV_LOG_FATAL
Something went wrong and recovery is not possible.
Definition: log.h:174
output_file_item_name
static const char * output_file_item_name(void *obj)
Definition: ffmpeg_mux_init.c:2181
AV_CLASS_CATEGORY_MUXER
@ AV_CLASS_CATEGORY_MUXER
Definition: log.h:32
desc
const char * desc
Definition: libsvtav1.c:83