# FFmpegKit Android API: fftools_ffmpeg.h Source File

fftools_ffmpeg.h
Go to the documentation of this file.
/*
* This file is part of FFmpeg.
* Copyright (c) 2018 Taner Sener ( tanersener gmail com )
*
* FFmpeg is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* FFmpeg is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*
* This file is the modified version of ffmpeg.h file living in ffmpeg source code under the fftools folder. We
* manually update it each time we depend on a new ffmpeg version. Below you can see the list of changes applied
* by us to develop mobile-ffmpeg and later ffmpeg-kit libraries.
*
* mobile-ffmpeg / ffmpeg-kit changes by Taner Sener
*
* 09.2022
* --------------------------------------------------------
* - config.h include added back
* - volatile dropped from thread local variables
* - dropped signatures of ffmpeg_opt.c methods called by both ffmpeg and ffprobe
*
* 06.2020
* --------------------------------------------------------
* - cancel_operation() method signature updated with id
*
* 12.2019
* --------------------------------------------------------
* - concurrent execution support ("__thread" specifier added to variables used by multiple threads,
* signatures of ffmpeg_opt.c methods called by both ffmpeg and ffprobe added)
*
* 03.2019
* --------------------------------------------------------
* - config.h include removed
*
* 08.2018
* --------------------------------------------------------
* - fftools_ prefix added to file name and include guards
* - set_report_callback() method declared
* - cancel_operation() method declared
*
* 07.2018
* --------------------------------------------------------
* - include guards renamed
*/
#ifndef FFTOOLS_FFMPEG_H
#define FFTOOLS_FFMPEG_H
#include "config.h"
#include <stdint.h>
#include <stdio.h>
#include <signal.h>
#include "fftools_cmdutils.h"
#include "libavformat/avformat.h"
#include "libavformat/avio.h"
#include "libavcodec/avcodec.h"
#include "libavcodec/bsf.h"
#include "libavfilter/avfilter.h"
#include "libavutil/avutil.h"
#include "libavutil/dict.h"
#include "libavutil/eval.h"
#include "libavutil/fifo.h"
#include "libavutil/hwcontext.h"
#include "libavutil/pixfmt.h"
#include "libavutil/rational.h"
#include "libavutil/thread.h"
#include "libavutil/threadmessage.h"
#include "libswresample/swresample.h"
enum VideoSyncMethod {
VSYNC_AUTO = -1,
VSYNC_PASSTHROUGH,
VSYNC_CFR,
VSYNC_VFR,
VSYNC_VSCFR,
VSYNC_DROP,
};
#define MAX_STREAMS 1024 /* arbitrary sanity check value */
enum HWAccelID {
HWACCEL_NONE = 0,
HWACCEL_AUTO,
HWACCEL_GENERIC,
};
typedef struct HWDevice {
const char *name;
enum AVHWDeviceType type;
AVBufferRef *device_ref;
} HWDevice;
/* select an input stream for an output stream */
typedef struct StreamMap {
int disabled; /* 1 is this mapping is disabled by a negative map */
int file_index;
int stream_index;
int sync_file_index;
int sync_stream_index;
char *linklabel; /* name of an output link, for mapping lavfi outputs */
} StreamMap;
typedef struct {
int file_idx, stream_idx, channel_idx; // input
int ofile_idx, ostream_idx; // output
} AudioChannelMap;
typedef struct OptionsContext {
OptionGroup *g;
/* input/output options */
int64_t start_time;
int64_t start_time_eof;
int seek_timestamp;
const char *format;
SpecifierOpt *codec_names;
int nb_codec_names;
SpecifierOpt *audio_ch_layouts;
int nb_audio_ch_layouts;
SpecifierOpt *audio_channels;
int nb_audio_channels;
SpecifierOpt *audio_sample_rate;
int nb_audio_sample_rate;
SpecifierOpt *frame_rates;
int nb_frame_rates;
SpecifierOpt *max_frame_rates;
int nb_max_frame_rates;
SpecifierOpt *frame_sizes;
int nb_frame_sizes;
SpecifierOpt *frame_pix_fmts;
int nb_frame_pix_fmts;
/* input options */
int64_t input_ts_offset;
int loop;
int rate_emu;
float readrate;
int accurate_seek;
int thread_queue_size;
int input_sync_ref;
SpecifierOpt *ts_scale;
int nb_ts_scale;
SpecifierOpt *dump_attachment;
int nb_dump_attachment;
SpecifierOpt *hwaccels;
int nb_hwaccels;
SpecifierOpt *hwaccel_devices;
int nb_hwaccel_devices;
SpecifierOpt *hwaccel_output_formats;
int nb_hwaccel_output_formats;
SpecifierOpt *autorotate;
int nb_autorotate;
/* output options */
StreamMap *stream_maps;
int nb_stream_maps;
AudioChannelMap *audio_channel_maps; /* one info entry per -map_channel */
int nb_audio_channel_maps; /* number of (valid) -map_channel settings */
int metadata_global_manual;
int metadata_streams_manual;
int metadata_chapters_manual;
const char **attachments;
int nb_attachments;
int chapters_input_file;
int64_t recording_time;
int64_t stop_time;
uint64_t limit_filesize;
float mux_preload;
float mux_max_delay;
int shortest;
int bitexact;
int video_disable;
int audio_disable;
int subtitle_disable;
int data_disable;
/* indexed by output file stream index */
int *streamid_map;
int nb_streamid_map;
SpecifierOpt *metadata;
int nb_metadata;
SpecifierOpt *max_frames;
int nb_max_frames;
SpecifierOpt *bitstream_filters;
int nb_bitstream_filters;
SpecifierOpt *codec_tags;
int nb_codec_tags;
SpecifierOpt *sample_fmts;
int nb_sample_fmts;
SpecifierOpt *qscale;
int nb_qscale;
SpecifierOpt *forced_key_frames;
int nb_forced_key_frames;
SpecifierOpt *fps_mode;
int nb_fps_mode;
SpecifierOpt *force_fps;
int nb_force_fps;
SpecifierOpt *frame_aspect_ratios;
int nb_frame_aspect_ratios;
SpecifierOpt *rc_overrides;
int nb_rc_overrides;
SpecifierOpt *intra_matrices;
int nb_intra_matrices;
SpecifierOpt *inter_matrices;
int nb_inter_matrices;
SpecifierOpt *chroma_intra_matrices;
int nb_chroma_intra_matrices;
SpecifierOpt *top_field_first;
int nb_top_field_first;
SpecifierOpt *metadata_map;
int nb_metadata_map;
SpecifierOpt *presets;
int nb_presets;
SpecifierOpt *copy_initial_nonkeyframes;
int nb_copy_initial_nonkeyframes;
SpecifierOpt *copy_prior_start;
int nb_copy_prior_start;
SpecifierOpt *filters;
int nb_filters;
SpecifierOpt *filter_scripts;
int nb_filter_scripts;
SpecifierOpt *reinit_filters;
int nb_reinit_filters;
SpecifierOpt *fix_sub_duration;
int nb_fix_sub_duration;
SpecifierOpt *canvas_sizes;
int nb_canvas_sizes;
SpecifierOpt *pass;
int nb_pass;
SpecifierOpt *passlogfiles;
int nb_passlogfiles;
SpecifierOpt *max_muxing_queue_size;
int nb_max_muxing_queue_size;
SpecifierOpt *muxing_queue_data_threshold;
int nb_muxing_queue_data_threshold;
SpecifierOpt *guess_layout_max;
int nb_guess_layout_max;
SpecifierOpt *apad;
int nb_apad;
SpecifierOpt *discard;
int nb_discard;
SpecifierOpt *disposition;
int nb_disposition;
SpecifierOpt *program;
int nb_program;
SpecifierOpt *time_bases;
int nb_time_bases;
SpecifierOpt *enc_time_bases;
int nb_enc_time_bases;
SpecifierOpt *autoscale;
int nb_autoscale;
SpecifierOpt *bits_per_raw_sample;
int nb_bits_per_raw_sample;
} OptionsContext;
typedef struct InputFilter {
AVFilterContext *filter;
struct InputStream *ist;
struct FilterGraph *graph;
uint8_t *name;
enum AVMediaType type; // AVMEDIA_TYPE_SUBTITLE for sub2video
AVFifo *frame_queue;
// parameters configured for this input
int format;
int width, height;
AVRational sample_aspect_ratio;
int sample_rate;
AVChannelLayout ch_layout;
AVBufferRef *hw_frames_ctx;
int32_t *displaymatrix;
int eof;
} InputFilter;
typedef struct OutputFilter {
AVFilterContext *filter;
struct OutputStream *ost;
struct FilterGraph *graph;
uint8_t *name;
/* temporary storage until stream maps are processed */
AVFilterInOut *out_tmp;
enum AVMediaType type;
/* desired output stream properties */
int width, height;
AVRational frame_rate;
int format;
int sample_rate;
AVChannelLayout ch_layout;
// those are only set if no format is specified and the encoder gives us multiple options
// They point directly to the relevant lists of the encoder.
const int *formats;
const AVChannelLayout *ch_layouts;
const int *sample_rates;
} OutputFilter;
typedef struct FilterGraph {
int index;
const char *graph_desc;
AVFilterGraph *graph;
int reconfiguration;
// true when the filtergraph contains only meta filters
// that do not modify the frame data
int is_meta;
InputFilter **inputs;
int nb_inputs;
OutputFilter **outputs;
int nb_outputs;
} FilterGraph;
typedef struct InputStream {
int file_index;
AVStream *st;
int discard; /* true if stream data should be discarded */
int user_set_discard;
int decoding_needed; /* non zero if the packets must be decoded in 'raw_fifo', see DECODING_FOR_* */
#define DECODING_FOR_OST 1
#define DECODING_FOR_FILTER 2
int processing_needed; /* non zero if the packets must be processed */
AVCodecContext *dec_ctx;
const AVCodec *dec;
AVFrame *decoded_frame;
AVPacket *pkt;
int64_t prev_pkt_pts;
int64_t start; /* time when read started */
/* predicted dts of the next packet read for this stream or (when there are
* several frames in a packet) of the next frame in current packet (in AV_TIME_BASE units) */
int64_t next_dts;
int64_t first_dts;
int64_t dts;
int64_t next_pts;
int64_t pts;
int wrap_correction_done;
int64_t filter_in_rescale_delta_last;
int64_t min_pts; /* pts with the smallest value in a current stream */
int64_t max_pts; /* pts with the higher value in a current stream */
// when forcing constant input framerate through -r,
// this contains the pts that will be given to the next decoded frame
int64_t cfr_next_pts;
int64_t nb_samples; /* number of samples in the last decoded audio frame before looping */
double ts_scale;
int saw_first_ts;
AVDictionary *decoder_opts;
AVRational framerate; /* framerate forced with -r */
int top_field_first;
int guess_layout_max;
int autorotate;
int fix_sub_duration;
struct { /* previous decoded subtitle and related variables */
int got_output;
int ret;
AVSubtitle subtitle;
} prev_sub;
struct sub2video {
int64_t last_pts;
int64_t end_pts;
AVFifo *sub_queue;
AVFrame *frame;
int w, h;
unsigned int initialize;
} sub2video;
/* decoded data from this stream goes into all those filters
* currently video and audio only */
InputFilter **filters;
int nb_filters;
int reinit_filters;
/* hwaccel options */
enum HWAccelID hwaccel_id;
enum AVHWDeviceType hwaccel_device_type;
char *hwaccel_device;
enum AVPixelFormat hwaccel_output_format;
/* hwaccel context */
void *hwaccel_ctx;
void (*hwaccel_uninit)(AVCodecContext *s);
int (*hwaccel_retrieve_data)(AVCodecContext *s, AVFrame *frame);
enum AVPixelFormat hwaccel_pix_fmt;
enum AVPixelFormat hwaccel_retrieved_pix_fmt;
/* stats */
// combined size of all the packets read
uint64_t data_size;
/* number of packets successfully read for this stream */
uint64_t nb_packets;
// number of frames/samples retrieved from the decoder
uint64_t frames_decoded;
uint64_t samples_decoded;
int64_t *dts_buffer;
int nb_dts_buffer;
int got_output;
} InputStream;
typedef struct InputFile {
AVFormatContext *ctx;
int eof_reached; /* true if eof reached */
int eagain; /* true if last read attempt returned EAGAIN */
int ist_index; /* index of first stream in input_streams */
int loop; /* set number of times input stream should be looped */
int64_t duration; /* actual duration of the longest stream in a file
at the moment when looping happens */
AVRational time_base; /* time base of the duration */
int64_t input_ts_offset;
int input_sync_ref;
int64_t ts_offset;
int64_t last_ts;
int64_t start_time; /* user-specified start time in AV_TIME_BASE or AV_NOPTS_VALUE */
int64_t recording_time;
int nb_streams; /* number of stream that ffmpeg is aware of; may be different
from ctx.nb_streams if new streams appear during av_read_frame() */
int nb_streams_warn; /* number of streams that the user was warned of */
int rate_emu;
float readrate;
int accurate_seek;
AVPacket *pkt;
#if HAVE_THREADS
AVThreadMessageQueue *in_thread_queue;
pthread_t thread; /* thread reading from this file */
int non_blocking; /* reading packets from the thread should not block */
int joined; /* the thread has been joined */
int thread_queue_size; /* maximum number of queued packets */
#endif
} InputFile;
enum forced_keyframes_const {
FKF_N,
FKF_N_FORCED,
FKF_PREV_FORCED_N,
FKF_PREV_FORCED_T,
FKF_T,
FKF_NB
};
#define ABORT_ON_FLAG_EMPTY_OUTPUT (1 << 0)
#define ABORT_ON_FLAG_EMPTY_OUTPUT_STREAM (1 << 1)
extern const char *const forced_keyframes_const_names[];
typedef enum {
ENCODER_FINISHED = 1,
MUXER_FINISHED = 2,
} OSTFinished ;
typedef struct OutputStream {
int file_index; /* file index */
int index; /* stream index in the output file */
int source_index; /* InputStream index */
AVStream *st; /* stream in the output file */
int encoding_needed; /* true if encoding needed for this stream */
int64_t frame_number;
/* input pts and corresponding output pts
for A/V sync */
struct InputStream *sync_ist; /* input stream to sync against */
int64_t sync_opts; /* output frame counter, could be changed to some true timestamp */ // FIXME look at frame_number
/* pts of the first frame encoded for this stream, used for limiting
* recording time */
int64_t first_pts;
/* dts of the last packet sent to the muxer */
int64_t last_mux_dts;
// the timebase of the packets sent to the muxer
AVRational mux_timebase;
AVRational enc_timebase;
AVBSFContext *bsf_ctx;
AVCodecContext *enc_ctx;
AVCodecParameters *ref_par; /* associated input codec parameters with encoders options applied */
const AVCodec *enc;
int64_t max_frames;
AVFrame *filtered_frame;
AVFrame *last_frame;
AVPacket *pkt;
int64_t last_dropped;
int64_t last_nb0_frames[3];
void *hwaccel_ctx;
/* video only */
AVRational frame_rate;
AVRational max_frame_rate;
enum VideoSyncMethod vsync_method;
int is_cfr;
const char *fps_mode;
int force_fps;
int top_field_first;
int rotate_overridden;
int autoscale;
int bits_per_raw_sample;
double rotate_override_value;
AVRational frame_aspect_ratio;
/* forced key frames */
int64_t forced_kf_ref_pts;
int64_t *forced_kf_pts;
int forced_kf_count;
int forced_kf_index;
char *forced_keyframes;
AVExpr *forced_keyframes_pexpr;
double forced_keyframes_expr_const_values[FKF_NB];
int dropped_keyframe;
/* audio only */
int *audio_channels_map; /* list of the channels id to pick from the source stream */
int audio_channels_mapped; /* number of channels in audio_channels_map */
char *logfile_prefix;
FILE *logfile;
OutputFilter *filter;
char *avfilter;
char *filters;
char *filters_script;
AVDictionary *encoder_opts;
AVDictionary *sws_dict;
AVDictionary *swr_opts;
char *apad;
OSTFinished finished; /* no more packets should be written for this stream */
int unavailable; /* true if the steram is unavailable (possibly temporarily) */
int stream_copy;
// init_output_stream() has been called for this stream
// The encoder and the bitstream filters have been initialized and the stream
// parameters are set in the AVStream.
int initialized;
int inputs_done;
const char *attachment_filename;
int streamcopy_started;
int copy_initial_nonkeyframes;
int copy_prior_start;
char *disposition;
int keep_pix_fmt;
/* stats */
// combined size of all the packets written
uint64_t data_size;
// number of packets send to the muxer
uint64_t packets_written;
// number of frames/samples sent to the encoder
uint64_t frames_encoded;
uint64_t samples_encoded;
// number of packets received from the encoder
uint64_t packets_encoded;
/* packet quality factor */
int quality;
int max_muxing_queue_size;
/* the packets are buffered here until the muxer is ready to be initialized */
AVFifo *muxing_queue;
/*
* The size of the AVPackets' buffers in queue.
* Updated when a packet is either pushed or pulled from the queue.
*/
size_t muxing_queue_data_size;
/* Threshold after which max_muxing_queue_size will be in effect */
size_t muxing_queue_data_threshold;
/* packet picture type */
int pict_type;
/* frame encode sum of squared error values */
int64_t error[4];
} OutputStream;
typedef struct OutputFile {
int index;
const AVOutputFormat *format;
AVFormatContext *ctx;
AVDictionary *opts;
int ost_index; /* index of the first stream in output_streams */
int64_t recording_time;
int64_t start_time;
uint64_t limit_filesize; /* filesize limit expressed in bytes */
int shortest;
int header_written;
} OutputFile;
extern __thread InputStream **input_streams;
extern __thread int nb_input_streams;
extern __thread InputFile **input_files;
extern __thread int nb_input_files;
extern __thread OutputStream **output_streams;
extern __thread int nb_output_streams;
extern __thread OutputFile **output_files;
extern __thread int nb_output_files;
extern __thread FilterGraph **filtergraphs;
extern __thread int nb_filtergraphs;
extern __thread char *vstats_filename;
extern __thread char *sdp_filename;
extern __thread float audio_drift_threshold;
extern __thread float dts_delta_threshold;
extern __thread float dts_error_threshold;
extern __thread int audio_volume;
extern __thread int audio_sync_method;
extern __thread enum VideoSyncMethod video_sync_method;
extern __thread float frame_drop_threshold;
extern __thread int do_benchmark;
extern __thread int do_benchmark_all;
extern __thread int do_deinterlace;
extern __thread int do_hex_dump;
extern __thread int do_pkt_dump;
extern __thread int copy_ts;
extern __thread int start_at_zero;
extern __thread int copy_tb;
extern __thread int debug_ts;
extern __thread int exit_on_error;
extern __thread int abort_on_flags;
extern __thread int print_stats;
extern __thread int64_t stats_period;
extern __thread int qp_hist;
extern __thread int stdin_interaction;
extern __thread int frame_bits_per_raw_sample;
extern __thread AVIOContext *progress_avio;
extern __thread float max_error_rate;
extern __thread char *filter_nbthreads;
extern __thread int filter_complex_nbthreads;
extern __thread int vstats_version;
extern __thread int auto_conversion_filters;
extern __thread const AVIOInterruptCB int_cb;
#if CONFIG_QSV
extern __thread char *qsv_device;
#endif
extern __thread HWDevice *filter_hw_device;
extern __thread int want_sdp;
extern __thread unsigned nb_output_dumped;
extern __thread int main_ffmpeg_return_code;
void term_init(void);
void term_exit(void);
void show_usage(void);
void remove_avoptions(AVDictionary **a, AVDictionary *b);
void assert_avoptions(AVDictionary *m);
int guess_input_channel_layout(InputStream *ist);
int configure_filtergraph(FilterGraph *fg);
void check_filter_outputs(void);
int filtergraph_is_simple(FilterGraph *fg);
int init_simple_filtergraph(InputStream *ist, OutputStream *ost);
int init_complex_filtergraph(FilterGraph *fg);
void sub2video_update(InputStream *ist, int64_t heartbeat_pts, AVSubtitle *sub);
int ifilter_parameters_from_frame(InputFilter *ifilter, const AVFrame *frame);
int ffmpeg_parse_options(int argc, char **argv);
int videotoolbox_init(AVCodecContext *s);
int qsv_init(AVCodecContext *s);
HWDevice *hw_device_get_by_name(const char *name);
int hw_device_init_from_string(const char *arg, HWDevice **dev);
void hw_device_free_all(void);
int hw_device_setup_for_decode(InputStream *ist);
int hw_device_setup_for_encode(OutputStream *ost);
int hw_device_setup_for_filter(FilterGraph *fg);
int hwaccel_decode_init(AVCodecContext *avctx);
/* open the muxer when all the streams are initialized */
int of_check_init(OutputFile *of);
int of_write_trailer(OutputFile *of);
void of_close(OutputFile **pof);
void of_write_packet(OutputFile *of, AVPacket *pkt, OutputStream *ost,
int unqueue);
void set_report_callback(void (*callback)(int, float, float, int64_t, int, double, double));
void cancel_operation(long id);
#endif /* FFTOOLS_FFMPEG_H */
fftools_cmdutils.h
dts_delta_threshold
__thread float dts_delta_threshold
Definition: fftools_ffmpeg_opt.c:187
hw_device_setup_for_encode
int hw_device_setup_for_encode(OutputStream *ost)
Definition: fftools_ffmpeg_hw.c:463
InputFile
struct InputFile InputFile
copy_tb
__thread int copy_tb
Definition: fftools_ffmpeg_opt.c:200
HWAccelID
HWAccelID
Definition: fftools_ffmpeg.h:99
HWACCEL_NONE
@ HWACCEL_NONE
Definition: fftools_ffmpeg.h:100
HWACCEL_GENERIC
@ HWACCEL_GENERIC
Definition: fftools_ffmpeg.h:102
HWACCEL_AUTO
@ HWACCEL_AUTO
Definition: fftools_ffmpeg.h:101
frame_bits_per_raw_sample
__thread int frame_bits_per_raw_sample
ifilter_parameters_from_frame
int ifilter_parameters_from_frame(InputFilter *ifilter, const AVFrame *frame)
Definition: fftools_ffmpeg_filter.c:1186
input_streams
__thread InputStream ** input_streams
Definition: fftools_ffmpeg.c:199
of_close
void of_close(OutputFile **pof)
Definition: fftools_ffmpeg_mux.c:316
int_cb
__thread const AVIOInterruptCB int_cb
Definition: fftools_ffmpeg.c:646
stats_period
__thread int64_t stats_period
Definition: fftools_ffmpeg_opt.c:212
nb_input_streams
__thread int nb_input_streams
Definition: fftools_ffmpeg.c:200
term_exit
void term_exit(void)
Definition: fftools_ffmpeg.c:459
forced_keyframes_const_names
const char *const forced_keyframes_const_names[]
Definition: fftools_ffmpeg.c:167
output_streams
__thread OutputStream ** output_streams
Definition: fftools_ffmpeg.c:204
output_files
__thread OutputFile ** output_files
Definition: fftools_ffmpeg.c:206
sdp_filename
__thread char * sdp_filename
Definition: fftools_ffmpeg_opt.c:184
video_sync_method
__thread enum VideoSyncMethod video_sync_method
Definition: fftools_ffmpeg_opt.c:192
videotoolbox_init
int videotoolbox_init(AVCodecContext *s)
nb_output_streams
__thread int nb_output_streams
Definition: fftools_ffmpeg.c:205
guess_input_channel_layout
int guess_input_channel_layout(InputStream *ist)
Definition: fftools_ffmpeg.c:2090
print_stats
__thread int print_stats
Definition: fftools_ffmpeg_opt.c:204
filter_complex_nbthreads
__thread int filter_complex_nbthreads
Definition: fftools_ffmpeg_opt.c:209
abort_on_flags
__thread int abort_on_flags
Definition: fftools_ffmpeg_opt.c:203
nb_input_files
__thread int nb_input_files
Definition: fftools_ffmpeg.c:202
audio_volume
__thread int audio_volume
Definition: fftools_ffmpeg_opt.c:190
max_error_rate
__thread float max_error_rate
Definition: fftools_ffmpeg_opt.c:207
nb_output_files
__thread int nb_output_files
Definition: fftools_ffmpeg.c:207
copy_ts
__thread int copy_ts
Definition: fftools_ffmpeg_opt.c:198
stdin_interaction
__thread int stdin_interaction
Definition: fftools_ffmpeg_opt.c:206
dts_error_threshold
__thread float dts_error_threshold
Definition: fftools_ffmpeg_opt.c:188
set_report_callback
void set_report_callback(void(*callback)(int, float, float, int64_t, int, double, double))
Definition: fftools_ffmpeg.c:4759
hwaccel_decode_init
int hwaccel_decode_init(AVCodecContext *avctx)
Definition: fftools_ffmpeg_hw.c:560
hw_device_get_by_name
HWDevice * hw_device_get_by_name(const char *name)
Definition: fftools_ffmpeg_hw.c:62
OSTFinished
OSTFinished
Definition: fftools_ffmpeg.h:490
ENCODER_FINISHED
@ ENCODER_FINISHED
Definition: fftools_ffmpeg.h:491
MUXER_FINISHED
@ MUXER_FINISHED
Definition: fftools_ffmpeg.h:492
show_usage
void show_usage(void)
Definition: fftools_ffmpeg_opt.c:3534
of_check_init
int of_check_init(OutputFile *of)
Definition: fftools_ffmpeg_mux.c:244
OutputFile
struct OutputFile OutputFile
filter_nbthreads
__thread char * filter_nbthreads
Definition: fftools_ffmpeg_opt.c:208
FilterGraph
struct FilterGraph FilterGraph
do_benchmark
__thread int do_benchmark
Definition: fftools_ffmpeg_opt.c:194
frame_drop_threshold
__thread float frame_drop_threshold
Definition: fftools_ffmpeg_opt.c:193
vstats_version
__thread int vstats_version
Definition: fftools_ffmpeg_opt.c:210
vstats_filename
__thread char * vstats_filename
Definition: fftools_ffmpeg_opt.c:183
do_deinterlace
__thread int do_deinterlace
hw_device_setup_for_decode
int hw_device_setup_for_decode(InputStream *ist)
Definition: fftools_ffmpeg_hw.c:335
hw_device_free_all
void hw_device_free_all(void)
Definition: fftools_ffmpeg_hw.c:306
audio_sync_method
__thread int audio_sync_method
Definition: fftools_ffmpeg_opt.c:191
hw_device_setup_for_filter
int hw_device_setup_for_filter(FilterGraph *fg)
Definition: fftools_ffmpeg_hw.c:569
init_simple_filtergraph
int init_simple_filtergraph(InputStream *ist, OutputStream *ost)
Definition: fftools_ffmpeg_filter.c:193
audio_drift_threshold
__thread float audio_drift_threshold
Definition: fftools_ffmpeg_opt.c:186
cancel_operation
void cancel_operation(long id)
Definition: fftools_ffmpeg.c:4764
progress_avio
__thread AVIOContext * progress_avio
Definition: fftools_ffmpeg.c:195
input_files
__thread InputFile ** input_files
Definition: fftools_ffmpeg.c:201
sub2video_update
void sub2video_update(InputStream *ist, int64_t heartbeat_pts, AVSubtitle *sub)
Definition: fftools_ffmpeg.c:363
of_write_trailer
int of_write_trailer(OutputFile *of)
Definition: fftools_ffmpeg_mux.c:295
OutputStream
struct OutputStream OutputStream
do_benchmark_all
__thread int do_benchmark_all
Definition: fftools_ffmpeg_opt.c:195
filtergraphs
__thread FilterGraph ** filtergraphs
Definition: fftools_ffmpeg.c:209
start_at_zero
__thread int start_at_zero
Definition: fftools_ffmpeg_opt.c:199
nb_output_dumped
__thread unsigned nb_output_dumped
Definition: fftools_ffmpeg.c:190
InputFilter
struct InputFilter InputFilter
main_ffmpeg_return_code
__thread int main_ffmpeg_return_code
Definition: fftools_ffmpeg.c:469
forced_keyframes_const
forced_keyframes_const
Definition: fftools_ffmpeg.h:476
FKF_NB
@ FKF_NB
Definition: fftools_ffmpeg.h:482
FKF_PREV_FORCED_N
@ FKF_PREV_FORCED_N
Definition: fftools_ffmpeg.h:479
FKF_T
@ FKF_T
Definition: fftools_ffmpeg.h:481
FKF_PREV_FORCED_T
@ FKF_PREV_FORCED_T
Definition: fftools_ffmpeg.h:480
FKF_N_FORCED
@ FKF_N_FORCED
Definition: fftools_ffmpeg.h:478
FKF_N
@ FKF_N
Definition: fftools_ffmpeg.h:477
exit_on_error
__thread int exit_on_error
Definition: fftools_ffmpeg_opt.c:202
remove_avoptions
void remove_avoptions(AVDictionary **a, AVDictionary *b)
Definition: fftools_ffmpeg.c:794
ffmpeg_parse_options
int ffmpeg_parse_options(int argc, char **argv)
Definition: fftools_ffmpeg_opt.c:3585
VideoSyncMethod
VideoSyncMethod
Definition: fftools_ffmpeg.h:88
VSYNC_VFR
@ VSYNC_VFR
Definition: fftools_ffmpeg.h:92
VSYNC_AUTO
@ VSYNC_AUTO
Definition: fftools_ffmpeg.h:89
VSYNC_PASSTHROUGH
@ VSYNC_PASSTHROUGH
Definition: fftools_ffmpeg.h:90
VSYNC_CFR
@ VSYNC_CFR
Definition: fftools_ffmpeg.h:91
VSYNC_DROP
@ VSYNC_DROP
Definition: fftools_ffmpeg.h:94
VSYNC_VSCFR
@ VSYNC_VSCFR
Definition: fftools_ffmpeg.h:93
StreamMap
struct StreamMap StreamMap
filter_hw_device
__thread HWDevice * filter_hw_device
Definition: fftools_ffmpeg_opt.c:181
qsv_init
int qsv_init(AVCodecContext *s)
OutputFilter
struct OutputFilter OutputFilter
nb_filtergraphs
__thread int nb_filtergraphs
Definition: fftools_ffmpeg.c:210
term_init
void term_init(void)
Definition: fftools_ffmpeg.c:524
qp_hist
__thread int qp_hist
Definition: fftools_ffmpeg_opt.c:205
OptionsContext
struct OptionsContext OptionsContext
filtergraph_is_simple
int filtergraph_is_simple(FilterGraph *fg)
Definition: fftools_ffmpeg_filter.c:1218
hw_device_init_from_string
int hw_device_init_from_string(const char *arg, HWDevice **dev)
Definition: fftools_ffmpeg_hw.c:112
check_filter_outputs
void check_filter_outputs(void)
Definition: fftools_ffmpeg_filter.c:662
HWDevice
struct HWDevice HWDevice
configure_filtergraph
int configure_filtergraph(FilterGraph *fg)
Definition: fftools_ffmpeg_filter.c:1010
do_hex_dump
__thread int do_hex_dump
Definition: fftools_ffmpeg_opt.c:196
do_pkt_dump
__thread int do_pkt_dump
Definition: fftools_ffmpeg_opt.c:197
debug_ts
__thread int debug_ts
Definition: fftools_ffmpeg_opt.c:201
of_write_packet
void of_write_packet(OutputFile *of, AVPacket *pkt, OutputStream *ost, int unqueue)
Definition: fftools_ffmpeg_mux.c:58
auto_conversion_filters
__thread int auto_conversion_filters
Definition: fftools_ffmpeg_opt.c:211
assert_avoptions
void assert_avoptions(AVDictionary *m)
Definition: fftools_ffmpeg.c:803
want_sdp
__thread int want_sdp
Definition: fftools_ffmpeg.c:192
InputStream
struct InputStream InputStream
init_complex_filtergraph
int init_complex_filtergraph(FilterGraph *fg)
Definition: fftools_ffmpeg_filter.c:332
int
int
Definition: fftools_ffmpeg_filter.c:170
AudioChannelMap
Definition: fftools_ffmpeg.h:121
AudioChannelMap::ofile_idx
int ofile_idx
Definition: fftools_ffmpeg.h:123
AudioChannelMap::channel_idx
int channel_idx
Definition: fftools_ffmpeg.h:122
FilterGraph
Definition: fftools_ffmpeg.h:328
FilterGraph::is_meta
int is_meta
Definition: fftools_ffmpeg.h:336
FilterGraph::index
int index
Definition: fftools_ffmpeg.h:329
FilterGraph::reconfiguration
int reconfiguration
Definition: fftools_ffmpeg.h:333
FilterGraph::nb_outputs
int nb_outputs
Definition: fftools_ffmpeg.h:341
FilterGraph::outputs
OutputFilter ** outputs
Definition: fftools_ffmpeg.h:340
FilterGraph::nb_inputs
int nb_inputs
Definition: fftools_ffmpeg.h:339
FilterGraph::graph_desc
const char * graph_desc
Definition: fftools_ffmpeg.h:330
FilterGraph::graph
AVFilterGraph * graph
Definition: fftools_ffmpeg.h:332
FilterGraph::inputs
InputFilter ** inputs
Definition: fftools_ffmpeg.h:338
HWDevice
Definition: fftools_ffmpeg.h:105
HWDevice::device_ref
AVBufferRef * device_ref
Definition: fftools_ffmpeg.h:108
HWDevice::type
enum AVHWDeviceType type
Definition: fftools_ffmpeg.h:107
HWDevice::name
const char * name
Definition: fftools_ffmpeg.h:106
InputFile
Definition: fftools_ffmpeg.h:442
InputFile::pkt
AVPacket * pkt
Definition: fftools_ffmpeg.h:465
InputFile::eagain
int eagain
Definition: fftools_ffmpeg.h:445
InputFile::ts_offset
int64_t ts_offset
Definition: fftools_ffmpeg.h:454
InputFile::duration
int64_t duration
Definition: fftools_ffmpeg.h:448
InputFile::accurate_seek
int accurate_seek
Definition: fftools_ffmpeg.h:463
InputFile::ctx
AVFormatContext * ctx
Definition: fftools_ffmpeg.h:443
InputFile::rate_emu
int rate_emu
Definition: fftools_ffmpeg.h:461
InputFile::input_ts_offset
int64_t input_ts_offset
Definition: fftools_ffmpeg.h:451
InputFile::loop
int loop
Definition: fftools_ffmpeg.h:447
InputFile::recording_time
int64_t recording_time
Definition: fftools_ffmpeg.h:457
InputFile::time_base
AVRational time_base
Definition: fftools_ffmpeg.h:450
InputFile::input_sync_ref
int input_sync_ref
Definition: fftools_ffmpeg.h:452
InputFile::eof_reached
int eof_reached
Definition: fftools_ffmpeg.h:444
InputFile::nb_streams_warn
int nb_streams_warn
Definition: fftools_ffmpeg.h:460
InputFile::last_ts
int64_t last_ts
Definition: fftools_ffmpeg.h:455
InputFile::ist_index
int ist_index
Definition: fftools_ffmpeg.h:446
InputFile::readrate
float readrate
Definition: fftools_ffmpeg.h:462
InputFile::start_time
int64_t start_time
Definition: fftools_ffmpeg.h:456
InputFile::nb_streams
int nb_streams
Definition: fftools_ffmpeg.h:458
InputFilter
Definition: fftools_ffmpeg.h:280
InputFilter::hw_frames_ctx
AVBufferRef * hw_frames_ctx
Definition: fftools_ffmpeg.h:298
InputFilter::name
uint8_t * name
Definition: fftools_ffmpeg.h:284
InputFilter::sample_rate
int sample_rate
Definition: fftools_ffmpeg.h:295
InputFilter::height
int height
Definition: fftools_ffmpeg.h:292
InputFilter::ist
struct InputStream * ist
Definition: fftools_ffmpeg.h:282
InputFilter::displaymatrix
int32_t * displaymatrix
Definition: fftools_ffmpeg.h:299
InputFilter::frame_queue
AVFifo * frame_queue
Definition: fftools_ffmpeg.h:287
InputFilter::filter
AVFilterContext * filter
Definition: fftools_ffmpeg.h:281
InputFilter::ch_layout
AVChannelLayout ch_layout
Definition: fftools_ffmpeg.h:296
InputFilter::type
enum AVMediaType type
Definition: fftools_ffmpeg.h:285
InputFilter::graph
struct FilterGraph * graph
Definition: fftools_ffmpeg.h:283
InputFilter::sample_aspect_ratio
AVRational sample_aspect_ratio
Definition: fftools_ffmpeg.h:293
InputFilter::eof
int eof
Definition: fftools_ffmpeg.h:301
InputFilter::format
int format
Definition: fftools_ffmpeg.h:290
InputFilter::width
int width
Definition: fftools_ffmpeg.h:292
InputStream::sub2video
Definition: fftools_ffmpeg.h:398
InputStream::sub2video::w
int w
Definition: fftools_ffmpeg.h:403
InputStream::sub2video::frame
AVFrame * frame
Definition: fftools_ffmpeg.h:402
InputStream::sub2video::initialize
unsigned int initialize
marks if sub2video_update should force an initialization
Definition: fftools_ffmpeg.h:404
InputStream::sub2video::sub_queue
AVFifo * sub_queue
queue of AVSubtitle* before filter init
Definition: fftools_ffmpeg.h:401
InputStream::sub2video::last_pts
int64_t last_pts
Definition: fftools_ffmpeg.h:399
InputStream::sub2video::end_pts
int64_t end_pts
Definition: fftools_ffmpeg.h:400
InputStream::sub2video::h
int h
Definition: fftools_ffmpeg.h:403
InputStream
Definition: fftools_ffmpeg.h:344
InputStream::hwaccel_pix_fmt
enum AVPixelFormat hwaccel_pix_fmt
Definition: fftools_ffmpeg.h:424
InputStream::saw_first_ts
int saw_first_ts
Definition: fftools_ffmpeg.h:383
InputStream::ts_scale
double ts_scale
Definition: fftools_ffmpeg.h:382
InputStream::decoded_frame
AVFrame * decoded_frame
Definition: fftools_ffmpeg.h:356
InputStream::dts_buffer
int64_t * dts_buffer
Definition: fftools_ffmpeg.h:436
InputStream::dts
int64_t dts
dts of the last packet read for this stream (in AV_TIME_BASE units)
Definition: fftools_ffmpeg.h:365
InputStream::fix_sub_duration
int fix_sub_duration
Definition: fftools_ffmpeg.h:391
InputStream::hwaccel_output_format
enum AVPixelFormat hwaccel_output_format
Definition: fftools_ffmpeg.h:418
InputStream::cfr_next_pts
int64_t cfr_next_pts
Definition: fftools_ffmpeg.h:378
InputStream::got_output
int got_output
Definition: fftools_ffmpeg.h:393
InputStream::hwaccel_uninit
void(* hwaccel_uninit)(AVCodecContext *s)
Definition: fftools_ffmpeg.h:422
InputStream::nb_dts_buffer
int nb_dts_buffer
Definition: fftools_ffmpeg.h:437
InputStream::dec_ctx
AVCodecContext * dec_ctx
Definition: fftools_ffmpeg.h:354
InputStream::pts
int64_t pts
current pts of the decoded frame (in AV_TIME_BASE units)
Definition: fftools_ffmpeg.h:368
InputStream::prev_sub
struct InputStream::@2 prev_sub
InputStream::start
int64_t start
Definition: fftools_ffmpeg.h:360
InputStream::ret
int ret
Definition: fftools_ffmpeg.h:394
InputStream::hwaccel_id
enum HWAccelID hwaccel_id
Definition: fftools_ffmpeg.h:415
InputStream::processing_needed
int processing_needed
Definition: fftools_ffmpeg.h:352
InputStream::data_size
uint64_t data_size
Definition: fftools_ffmpeg.h:429
InputStream::nb_filters
int nb_filters
Definition: fftools_ffmpeg.h:410
InputStream::filter_in_rescale_delta_last
int64_t filter_in_rescale_delta_last
Definition: fftools_ffmpeg.h:371
InputStream::next_dts
int64_t next_dts
Definition: fftools_ffmpeg.h:363
InputStream::reinit_filters
int reinit_filters
Definition: fftools_ffmpeg.h:412
InputStream::user_set_discard
int user_set_discard
Definition: fftools_ffmpeg.h:348
InputStream::wrap_correction_done
int wrap_correction_done
Definition: fftools_ffmpeg.h:369
InputStream::max_pts
int64_t max_pts
Definition: fftools_ffmpeg.h:374
InputStream::hwaccel_retrieved_pix_fmt
enum AVPixelFormat hwaccel_retrieved_pix_fmt
Definition: fftools_ffmpeg.h:425
InputStream::guess_layout_max
int guess_layout_max
Definition: fftools_ffmpeg.h:387
InputStream::pkt
AVPacket * pkt
Definition: fftools_ffmpeg.h:357
InputStream::hwaccel_ctx
void * hwaccel_ctx
Definition: fftools_ffmpeg.h:421
InputStream::first_dts
int64_t first_dts
dts of the first packet read for this stream (in AV_TIME_BASE units)
Definition: fftools_ffmpeg.h:364
InputStream::samples_decoded
uint64_t samples_decoded
Definition: fftools_ffmpeg.h:434
InputStream::next_pts
int64_t next_pts
synthetic pts for the next decode frame (in AV_TIME_BASE units)
Definition: fftools_ffmpeg.h:367
InputStream::top_field_first
int top_field_first
Definition: fftools_ffmpeg.h:386
InputStream::autorotate
int autorotate
Definition: fftools_ffmpeg.h:389
InputStream::discard
int discard
Definition: fftools_ffmpeg.h:347
InputStream::frames_decoded
uint64_t frames_decoded
Definition: fftools_ffmpeg.h:433
InputStream::decoding_needed
int decoding_needed
Definition: fftools_ffmpeg.h:349
InputStream::sub2video
struct InputStream::sub2video sub2video
InputStream::st
AVStream * st
Definition: fftools_ffmpeg.h:346
InputStream::file_index
int file_index
Definition: fftools_ffmpeg.h:345
InputStream::filters
InputFilter ** filters
Definition: fftools_ffmpeg.h:409
InputStream::hwaccel_retrieve_data
int(* hwaccel_retrieve_data)(AVCodecContext *s, AVFrame *frame)
Definition: fftools_ffmpeg.h:423
InputStream::nb_packets
uint64_t nb_packets
Definition: fftools_ffmpeg.h:431
InputStream::subtitle
AVSubtitle subtitle
Definition: fftools_ffmpeg.h:395
InputStream::hwaccel_device
char * hwaccel_device
Definition: fftools_ffmpeg.h:417
InputStream::prev_pkt_pts
int64_t prev_pkt_pts
Definition: fftools_ffmpeg.h:359
InputStream::decoder_opts
AVDictionary * decoder_opts
Definition: fftools_ffmpeg.h:384
InputStream::min_pts
int64_t min_pts
Definition: fftools_ffmpeg.h:373
InputStream::dec
const AVCodec * dec
Definition: fftools_ffmpeg.h:355
InputStream::hwaccel_device_type
enum AVHWDeviceType hwaccel_device_type
Definition: fftools_ffmpeg.h:416
InputStream::nb_samples
int64_t nb_samples
Definition: fftools_ffmpeg.h:380
InputStream::framerate
AVRational framerate
Definition: fftools_ffmpeg.h:385
OptionGroup
Definition: fftools_cmdutils.h:286
OptionsContext
Definition: fftools_ffmpeg.h:126
OptionsContext::fps_mode
SpecifierOpt * fps_mode
Definition: fftools_ffmpeg.h:218
OptionsContext::nb_codec_tags
int nb_codec_tags
Definition: fftools_ffmpeg.h:211
OptionsContext::metadata_map
SpecifierOpt * metadata_map
Definition: fftools_ffmpeg.h:234
OptionsContext::nb_pass
int nb_pass
Definition: fftools_ffmpeg.h:253
OptionsContext::nb_copy_initial_nonkeyframes
int nb_copy_initial_nonkeyframes
Definition: fftools_ffmpeg.h:239
OptionsContext::mux_preload
float mux_preload
Definition: fftools_ffmpeg.h:190
OptionsContext::frame_pix_fmts
SpecifierOpt * frame_pix_fmts
Definition: fftools_ffmpeg.h:149
OptionsContext::dump_attachment
SpecifierOpt * dump_attachment
Definition: fftools_ffmpeg.h:163
OptionsContext::autoscale
SpecifierOpt * autoscale
Definition: fftools_ffmpeg.h:274
OptionsContext::nb_chroma_intra_matrices
int nb_chroma_intra_matrices
Definition: fftools_ffmpeg.h:231
OptionsContext::nb_reinit_filters
int nb_reinit_filters
Definition: fftools_ffmpeg.h:247
OptionsContext::nb_bits_per_raw_sample
int nb_bits_per_raw_sample
Definition: fftools_ffmpeg.h:277
OptionsContext::nb_stream_maps
int nb_stream_maps
Definition: fftools_ffmpeg.h:176
OptionsContext::nb_muxing_queue_data_threshold
int nb_muxing_queue_data_threshold
Definition: fftools_ffmpeg.h:259
OptionsContext::nb_max_frame_rates
int nb_max_frame_rates
Definition: fftools_ffmpeg.h:146
OptionsContext::frame_aspect_ratios
SpecifierOpt * frame_aspect_ratios
Definition: fftools_ffmpeg.h:222
OptionsContext::pass
SpecifierOpt * pass
Definition: fftools_ffmpeg.h:252
OptionsContext::bitexact
int bitexact
Definition: fftools_ffmpeg.h:193
OptionsContext::filter_scripts
SpecifierOpt * filter_scripts
Definition: fftools_ffmpeg.h:244
OptionsContext::copy_initial_nonkeyframes
SpecifierOpt * copy_initial_nonkeyframes
Definition: fftools_ffmpeg.h:238
OptionsContext::guess_layout_max
SpecifierOpt * guess_layout_max
Definition: fftools_ffmpeg.h:260
OptionsContext::start_time
int64_t start_time
Definition: fftools_ffmpeg.h:130
OptionsContext::format
const char * format
Definition: fftools_ffmpeg.h:133
OptionsContext::nb_streamid_map
int nb_streamid_map
Definition: fftools_ffmpeg.h:202
OptionsContext::enc_time_bases
SpecifierOpt * enc_time_bases
Definition: fftools_ffmpeg.h:272
OptionsContext::max_frame_rates
SpecifierOpt * max_frame_rates
Definition: fftools_ffmpeg.h:145
OptionsContext::input_ts_offset
int64_t input_ts_offset
Definition: fftools_ffmpeg.h:153
OptionsContext::audio_sample_rate
SpecifierOpt * audio_sample_rate
Definition: fftools_ffmpeg.h:141
OptionsContext::nb_audio_channel_maps
int nb_audio_channel_maps
Definition: fftools_ffmpeg.h:178
OptionsContext::rate_emu
int rate_emu
Definition: fftools_ffmpeg.h:155
OptionsContext::nb_frame_rates
int nb_frame_rates
Definition: fftools_ffmpeg.h:144
OptionsContext::nb_passlogfiles
int nb_passlogfiles
Definition: fftools_ffmpeg.h:255
OptionsContext::nb_time_bases
int nb_time_bases
Definition: fftools_ffmpeg.h:271
OptionsContext::nb_attachments
int nb_attachments
Definition: fftools_ffmpeg.h:183
OptionsContext::max_frames
SpecifierOpt * max_frames
Definition: fftools_ffmpeg.h:206
OptionsContext::nb_intra_matrices
int nb_intra_matrices
Definition: fftools_ffmpeg.h:227
OptionsContext::input_sync_ref
int input_sync_ref
Definition: fftools_ffmpeg.h:159
OptionsContext::metadata_global_manual
int metadata_global_manual
Definition: fftools_ffmpeg.h:179
OptionsContext::nb_hwaccel_devices
int nb_hwaccel_devices
Definition: fftools_ffmpeg.h:168
OptionsContext::nb_codec_names
int nb_codec_names
Definition: fftools_ffmpeg.h:136
OptionsContext::stream_maps
StreamMap * stream_maps
Definition: fftools_ffmpeg.h:175
OptionsContext::frame_sizes
SpecifierOpt * frame_sizes
Definition: fftools_ffmpeg.h:147
OptionsContext::muxing_queue_data_threshold
SpecifierOpt * muxing_queue_data_threshold
Definition: fftools_ffmpeg.h:258
OptionsContext::discard
SpecifierOpt * discard
Definition: fftools_ffmpeg.h:264
OptionsContext::forced_key_frames
SpecifierOpt * forced_key_frames
Definition: fftools_ffmpeg.h:216
OptionsContext::nb_max_frames
int nb_max_frames
Definition: fftools_ffmpeg.h:207
OptionsContext::nb_audio_ch_layouts
int nb_audio_ch_layouts
Definition: fftools_ffmpeg.h:138
OptionsContext::nb_metadata
int nb_metadata
Definition: fftools_ffmpeg.h:205
OptionsContext::nb_rc_overrides
int nb_rc_overrides
Definition: fftools_ffmpeg.h:225
OptionsContext::hwaccel_devices
SpecifierOpt * hwaccel_devices
Definition: fftools_ffmpeg.h:167
OptionsContext::nb_discard
int nb_discard
Definition: fftools_ffmpeg.h:265
OptionsContext::accurate_seek
int accurate_seek
Definition: fftools_ffmpeg.h:157
OptionsContext::metadata_streams_manual
int metadata_streams_manual
Definition: fftools_ffmpeg.h:180
OptionsContext::filters
SpecifierOpt * filters
Definition: fftools_ffmpeg.h:242
OptionsContext::nb_top_field_first
int nb_top_field_first
Definition: fftools_ffmpeg.h:233
OptionsContext::readrate
float readrate
Definition: fftools_ffmpeg.h:156
OptionsContext::nb_autorotate
int nb_autorotate
Definition: fftools_ffmpeg.h:172
OptionsContext::metadata
SpecifierOpt * metadata
Definition: fftools_ffmpeg.h:204
OptionsContext::nb_canvas_sizes
int nb_canvas_sizes
Definition: fftools_ffmpeg.h:251
OptionsContext::nb_frame_sizes
int nb_frame_sizes
Definition: fftools_ffmpeg.h:148
OptionsContext::autorotate
SpecifierOpt * autorotate
Definition: fftools_ffmpeg.h:171
OptionsContext::nb_dump_attachment
int nb_dump_attachment
Definition: fftools_ffmpeg.h:164
OptionsContext::recording_time
int64_t recording_time
Definition: fftools_ffmpeg.h:187
OptionsContext::disposition
SpecifierOpt * disposition
Definition: fftools_ffmpeg.h:266
OptionsContext::nb_frame_aspect_ratios
int nb_frame_aspect_ratios
Definition: fftools_ffmpeg.h:223
OptionsContext::nb_fix_sub_duration
int nb_fix_sub_duration
Definition: fftools_ffmpeg.h:249
OptionsContext::nb_forced_key_frames
int nb_forced_key_frames
Definition: fftools_ffmpeg.h:217
OptionsContext::nb_metadata_map
int nb_metadata_map
Definition: fftools_ffmpeg.h:235
OptionsContext::nb_disposition
int nb_disposition
Definition: fftools_ffmpeg.h:267
OptionsContext::nb_fps_mode
int nb_fps_mode
Definition: fftools_ffmpeg.h:219
OptionsContext::limit_filesize
uint64_t limit_filesize
Definition: fftools_ffmpeg.h:189
OptionsContext::nb_audio_channels
int nb_audio_channels
Definition: fftools_ffmpeg.h:140
OptionsContext::nb_apad
int nb_apad
Definition: fftools_ffmpeg.h:263
OptionsContext::sample_fmts
SpecifierOpt * sample_fmts
Definition: fftools_ffmpeg.h:212
OptionsContext::audio_channels
SpecifierOpt * audio_channels
Definition: fftools_ffmpeg.h:139
OptionsContext::codec_names
SpecifierOpt * codec_names
Definition: fftools_ffmpeg.h:135
OptionsContext::start_time_eof
int64_t start_time_eof
Definition: fftools_ffmpeg.h:131
OptionsContext::canvas_sizes
SpecifierOpt * canvas_sizes
Definition: fftools_ffmpeg.h:250
OptionsContext::reinit_filters
SpecifierOpt * reinit_filters
Definition: fftools_ffmpeg.h:246
OptionsContext::thread_queue_size
int thread_queue_size
Definition: fftools_ffmpeg.h:158
OptionsContext::passlogfiles
SpecifierOpt * passlogfiles
Definition: fftools_ffmpeg.h:254
OptionsContext::data_disable
int data_disable
Definition: fftools_ffmpeg.h:198
OptionsContext::frame_rates
SpecifierOpt * frame_rates
Definition: fftools_ffmpeg.h:143
OptionsContext::bits_per_raw_sample
SpecifierOpt * bits_per_raw_sample
Definition: fftools_ffmpeg.h:276
OptionsContext::chapters_input_file
int chapters_input_file
Definition: fftools_ffmpeg.h:185
OptionsContext::streamid_map
int * streamid_map
Definition: fftools_ffmpeg.h:201
OptionsContext::video_disable
int video_disable
Definition: fftools_ffmpeg.h:195
OptionsContext::nb_force_fps
int nb_force_fps
Definition: fftools_ffmpeg.h:221
OptionsContext::audio_disable
int audio_disable
Definition: fftools_ffmpeg.h:196
OptionsContext::intra_matrices
SpecifierOpt * intra_matrices
Definition: fftools_ffmpeg.h:226
OptionsContext::nb_inter_matrices
int nb_inter_matrices
Definition: fftools_ffmpeg.h:229
OptionsContext::nb_enc_time_bases
int nb_enc_time_bases
Definition: fftools_ffmpeg.h:273
OptionsContext::apad
SpecifierOpt * apad
Definition: fftools_ffmpeg.h:262
OptionsContext::chroma_intra_matrices
SpecifierOpt * chroma_intra_matrices
Definition: fftools_ffmpeg.h:230
OptionsContext::nb_hwaccel_output_formats
int nb_hwaccel_output_formats
Definition: fftools_ffmpeg.h:170
OptionsContext::top_field_first
SpecifierOpt * top_field_first
Definition: fftools_ffmpeg.h:232
OptionsContext::metadata_chapters_manual
int metadata_chapters_manual
Definition: fftools_ffmpeg.h:181
OptionsContext::nb_presets
int nb_presets
Definition: fftools_ffmpeg.h:237
OptionsContext::nb_program
int nb_program
Definition: fftools_ffmpeg.h:269
OptionsContext::audio_ch_layouts
SpecifierOpt * audio_ch_layouts
Definition: fftools_ffmpeg.h:137
OptionsContext::force_fps
SpecifierOpt * force_fps
Definition: fftools_ffmpeg.h:220
OptionsContext::qscale
SpecifierOpt * qscale
Definition: fftools_ffmpeg.h:214
OptionsContext::copy_prior_start
SpecifierOpt * copy_prior_start
Definition: fftools_ffmpeg.h:240
OptionsContext::max_muxing_queue_size
SpecifierOpt * max_muxing_queue_size
Definition: fftools_ffmpeg.h:256
OptionsContext::stop_time
int64_t stop_time
Definition: fftools_ffmpeg.h:188
OptionsContext::nb_sample_fmts
int nb_sample_fmts
Definition: fftools_ffmpeg.h:213
OptionsContext::rc_overrides
SpecifierOpt * rc_overrides
Definition: fftools_ffmpeg.h:224
OptionsContext::attachments
const char ** attachments
Definition: fftools_ffmpeg.h:182
OptionsContext::nb_copy_prior_start
int nb_copy_prior_start
Definition: fftools_ffmpeg.h:241
OptionsContext::hwaccels
SpecifierOpt * hwaccels
Definition: fftools_ffmpeg.h:165
OptionsContext::nb_filter_scripts
int nb_filter_scripts
Definition: fftools_ffmpeg.h:245
OptionsContext::nb_qscale
int nb_qscale
Definition: fftools_ffmpeg.h:215
OptionsContext::program
SpecifierOpt * program
Definition: fftools_ffmpeg.h:268
OptionsContext::nb_frame_pix_fmts
int nb_frame_pix_fmts
Definition: fftools_ffmpeg.h:150
OptionsContext::loop
int loop
Definition: fftools_ffmpeg.h:154
OptionsContext::mux_max_delay
float mux_max_delay
Definition: fftools_ffmpeg.h:191
OptionsContext::codec_tags
SpecifierOpt * codec_tags
Definition: fftools_ffmpeg.h:210
OptionsContext::time_bases
SpecifierOpt * time_bases
Definition: fftools_ffmpeg.h:270
OptionsContext::shortest
int shortest
Definition: fftools_ffmpeg.h:192
OptionsContext::presets
SpecifierOpt * presets
Definition: fftools_ffmpeg.h:236
OptionsContext::ts_scale
SpecifierOpt * ts_scale
Definition: fftools_ffmpeg.h:161
OptionsContext::nb_audio_sample_rate
int nb_audio_sample_rate
Definition: fftools_ffmpeg.h:142
OptionsContext::nb_hwaccels
int nb_hwaccels
Definition: fftools_ffmpeg.h:166
OptionsContext::fix_sub_duration
SpecifierOpt * fix_sub_duration
Definition: fftools_ffmpeg.h:248
OptionsContext::inter_matrices
SpecifierOpt * inter_matrices
Definition: fftools_ffmpeg.h:228
OptionsContext::hwaccel_output_formats
SpecifierOpt * hwaccel_output_formats
Definition: fftools_ffmpeg.h:169
OptionsContext::nb_autoscale
int nb_autoscale
Definition: fftools_ffmpeg.h:275
OptionsContext::subtitle_disable
int subtitle_disable
Definition: fftools_ffmpeg.h:197
OptionsContext::nb_bitstream_filters
int nb_bitstream_filters
Definition: fftools_ffmpeg.h:209
OptionsContext::nb_guess_layout_max
int nb_guess_layout_max
Definition: fftools_ffmpeg.h:261
OptionsContext::seek_timestamp
int seek_timestamp
Definition: fftools_ffmpeg.h:132
OptionsContext::bitstream_filters
SpecifierOpt * bitstream_filters
Definition: fftools_ffmpeg.h:208
OptionsContext::nb_max_muxing_queue_size
int nb_max_muxing_queue_size
Definition: fftools_ffmpeg.h:257
OptionsContext::nb_ts_scale
int nb_ts_scale
Definition: fftools_ffmpeg.h:162
OptionsContext::audio_channel_maps
AudioChannelMap * audio_channel_maps
Definition: fftools_ffmpeg.h:177
OptionsContext::g
OptionGroup * g
Definition: fftools_ffmpeg.h:127
OptionsContext::nb_filters
int nb_filters
Definition: fftools_ffmpeg.h:243
OutputFile
Definition: fftools_ffmpeg.h:624
OutputFile::format
const AVOutputFormat * format
Definition: fftools_ffmpeg.h:627
OutputFile::index
int index
Definition: fftools_ffmpeg.h:625
OutputFile::limit_filesize
uint64_t limit_filesize
Definition: fftools_ffmpeg.h:634
OutputFile::ctx
AVFormatContext * ctx
Definition: fftools_ffmpeg.h:629
OutputFile::header_written
int header_written
Definition: fftools_ffmpeg.h:638
OutputFile::start_time
int64_t start_time
start time in microseconds == AV_TIME_BASE units
Definition: fftools_ffmpeg.h:633
OutputFile::opts
AVDictionary * opts
Definition: fftools_ffmpeg.h:630
OutputFile::ost_index
int ost_index
Definition: fftools_ffmpeg.h:631
OutputFile::shortest
int shortest
Definition: fftools_ffmpeg.h:636
OutputFile::recording_time
int64_t recording_time
desired length of the resulting file in microseconds == AV_TIME_BASE units
Definition: fftools_ffmpeg.h:632
OutputFilter
Definition: fftools_ffmpeg.h:304
OutputFilter::width
int width
Definition: fftools_ffmpeg.h:315
OutputFilter::out_tmp
AVFilterInOut * out_tmp
Definition: fftools_ffmpeg.h:311
OutputFilter::ost
struct OutputStream * ost
Definition: fftools_ffmpeg.h:306
OutputFilter::filter
AVFilterContext * filter
Definition: fftools_ffmpeg.h:305
OutputFilter::name
uint8_t * name
Definition: fftools_ffmpeg.h:308
OutputFilter::formats
const int * formats
Definition: fftools_ffmpeg.h:323
OutputFilter::ch_layouts
const AVChannelLayout * ch_layouts
Definition: fftools_ffmpeg.h:324
OutputFilter::graph
struct FilterGraph * graph
Definition: fftools_ffmpeg.h:307
OutputFilter::ch_layout
AVChannelLayout ch_layout
Definition: fftools_ffmpeg.h:319
OutputFilter::height
int height
Definition: fftools_ffmpeg.h:315
OutputFilter::sample_rate
int sample_rate
Definition: fftools_ffmpeg.h:318
OutputFilter::sample_rates
const int * sample_rates
Definition: fftools_ffmpeg.h:325
OutputFilter::frame_rate
AVRational frame_rate
Definition: fftools_ffmpeg.h:316
OutputFilter::format
int format
Definition: fftools_ffmpeg.h:317
OutputFilter::type
enum AVMediaType type
Definition: fftools_ffmpeg.h:312
OutputStream
Definition: fftools_ffmpeg.h:495
OutputStream::max_muxing_queue_size
int max_muxing_queue_size
Definition: fftools_ffmpeg.h:603
OutputStream::swr_opts
AVDictionary * swr_opts
Definition: fftools_ffmpeg.h:568
OutputStream::copy_initial_nonkeyframes
int copy_initial_nonkeyframes
Definition: fftools_ffmpeg.h:583
OutputStream::last_mux_dts
int64_t last_mux_dts
Definition: fftools_ffmpeg.h:510
OutputStream::top_field_first
int top_field_first
Definition: fftools_ffmpeg.h:536
OutputStream::mux_timebase
AVRational mux_timebase
Definition: fftools_ffmpeg.h:512
OutputStream::source_index
int source_index
Definition: fftools_ffmpeg.h:498
OutputStream::forced_keyframes_expr_const_values
double forced_keyframes_expr_const_values[FKF_NB]
Definition: fftools_ffmpeg.h:551
OutputStream::finished
OSTFinished finished
Definition: fftools_ffmpeg.h:570
OutputStream::initialized
int initialized
Definition: fftools_ffmpeg.h:577
OutputStream::audio_channels_map
int * audio_channels_map
Definition: fftools_ffmpeg.h:555
OutputStream::pkt
AVPacket * pkt
Definition: fftools_ffmpeg.h:523
OutputStream::frame_aspect_ratio
AVRational frame_aspect_ratio
Definition: fftools_ffmpeg.h:542
OutputStream::rotate_override_value
double rotate_override_value
Definition: fftools_ffmpeg.h:540
OutputStream::last_frame
AVFrame * last_frame
Definition: fftools_ffmpeg.h:522
OutputStream::autoscale
int autoscale
Definition: fftools_ffmpeg.h:538
OutputStream::enc
const AVCodec * enc
Definition: fftools_ffmpeg.h:519
OutputStream::unavailable
int unavailable
Definition: fftools_ffmpeg.h:571
OutputStream::audio_channels_mapped
int audio_channels_mapped
Definition: fftools_ffmpeg.h:556
OutputStream::sync_opts
int64_t sync_opts
Definition: fftools_ffmpeg.h:505
OutputStream::force_fps
int force_fps
Definition: fftools_ffmpeg.h:535
OutputStream::forced_kf_pts
int64_t * forced_kf_pts
Definition: fftools_ffmpeg.h:546
OutputStream::error
int64_t error[4]
Definition: fftools_ffmpeg.h:621
OutputStream::packets_written
uint64_t packets_written
Definition: fftools_ffmpeg.h:593
OutputStream::pict_type
int pict_type
Definition: fftools_ffmpeg.h:618
OutputStream::frames_encoded
uint64_t frames_encoded
Definition: fftools_ffmpeg.h:595
OutputStream::max_frames
int64_t max_frames
Definition: fftools_ffmpeg.h:520
OutputStream::muxing_queue_data_threshold
size_t muxing_queue_data_threshold
Definition: fftools_ffmpeg.h:615
OutputStream::bits_per_raw_sample
int bits_per_raw_sample
Definition: fftools_ffmpeg.h:539
OutputStream::forced_kf_index
int forced_kf_index
Definition: fftools_ffmpeg.h:548
OutputStream::apad
char * apad
Definition: fftools_ffmpeg.h:569
OutputStream::dropped_keyframe
int dropped_keyframe
Definition: fftools_ffmpeg.h:552
OutputStream::inputs_done
int inputs_done
Definition: fftools_ffmpeg.h:579
OutputStream::vsync_method
enum VideoSyncMethod vsync_method
Definition: fftools_ffmpeg.h:532
OutputStream::max_frame_rate
AVRational max_frame_rate
Definition: fftools_ffmpeg.h:531
OutputStream::quality
int quality
Definition: fftools_ffmpeg.h:601
OutputStream::enc_timebase
AVRational enc_timebase
Definition: fftools_ffmpeg.h:513
OutputStream::frame_number
int64_t frame_number
Definition: fftools_ffmpeg.h:501
OutputStream::stream_copy
int stream_copy
Definition: fftools_ffmpeg.h:572
OutputStream::is_cfr
int is_cfr
Definition: fftools_ffmpeg.h:533
OutputStream::ref_par
AVCodecParameters * ref_par
Definition: fftools_ffmpeg.h:518
OutputStream::forced_keyframes
char * forced_keyframes
Definition: fftools_ffmpeg.h:549
OutputStream::filtered_frame
AVFrame * filtered_frame
Definition: fftools_ffmpeg.h:521
OutputStream::attachment_filename
const char * attachment_filename
Definition: fftools_ffmpeg.h:581
OutputStream::frame_rate
AVRational frame_rate
Definition: fftools_ffmpeg.h:530
OutputStream::copy_prior_start
int copy_prior_start
Definition: fftools_ffmpeg.h:584
OutputStream::last_nb0_frames
int64_t last_nb0_frames[3]
Definition: fftools_ffmpeg.h:525
OutputStream::enc_ctx
AVCodecContext * enc_ctx
Definition: fftools_ffmpeg.h:517
OutputStream::sync_ist
struct InputStream * sync_ist
Definition: fftools_ffmpeg.h:504
OutputStream::encoding_needed
int encoding_needed
Definition: fftools_ffmpeg.h:500
OutputStream::encoder_opts
AVDictionary * encoder_opts
Definition: fftools_ffmpeg.h:566
OutputStream::data_size
uint64_t data_size
Definition: fftools_ffmpeg.h:591
OutputStream::st
AVStream * st
Definition: fftools_ffmpeg.h:499
OutputStream::filters
char * filters
filtergraph associated to the -filter option
Definition: fftools_ffmpeg.h:563
OutputStream::avfilter
char * avfilter
Definition: fftools_ffmpeg.h:562
OutputStream::forced_kf_ref_pts
int64_t forced_kf_ref_pts
Definition: fftools_ffmpeg.h:545
OutputStream::samples_encoded
uint64_t samples_encoded
Definition: fftools_ffmpeg.h:596
OutputStream::filters_script
char * filters_script
filtergraph script associated to the -filter_script option
Definition: fftools_ffmpeg.h:564
OutputStream::bsf_ctx
AVBSFContext * bsf_ctx
Definition: fftools_ffmpeg.h:515
OutputStream::first_pts
int64_t first_pts
Definition: fftools_ffmpeg.h:508
OutputStream::hwaccel_ctx
void * hwaccel_ctx
Definition: fftools_ffmpeg.h:527
OutputStream::sws_dict
AVDictionary * sws_dict
Definition: fftools_ffmpeg.h:567
OutputStream::forced_kf_count
int forced_kf_count
Definition: fftools_ffmpeg.h:547
OutputStream::filter
OutputFilter * filter
Definition: fftools_ffmpeg.h:561
OutputStream::streamcopy_started
int streamcopy_started
Definition: fftools_ffmpeg.h:582
OutputStream::disposition
char * disposition
Definition: fftools_ffmpeg.h:585
OutputStream::muxing_queue
AVFifo * muxing_queue
Definition: fftools_ffmpeg.h:606
OutputStream::index
int index
Definition: fftools_ffmpeg.h:497
OutputStream::rotate_overridden
int rotate_overridden
Definition: fftools_ffmpeg.h:537
OutputStream::packets_encoded
uint64_t packets_encoded
Definition: fftools_ffmpeg.h:598
OutputStream::forced_keyframes_pexpr
AVExpr * forced_keyframes_pexpr
Definition: fftools_ffmpeg.h:550
OutputStream::keep_pix_fmt
int keep_pix_fmt
Definition: fftools_ffmpeg.h:587
OutputStream::fps_mode
const char * fps_mode
Definition: fftools_ffmpeg.h:534
OutputStream::muxing_queue_data_size
size_t muxing_queue_data_size
Definition: fftools_ffmpeg.h:612
OutputStream::logfile
FILE * logfile
Definition: fftools_ffmpeg.h:559
OutputStream::file_index
int file_index
Definition: fftools_ffmpeg.h:496
OutputStream::last_dropped
int64_t last_dropped
Definition: fftools_ffmpeg.h:524
OutputStream::logfile_prefix
char * logfile_prefix
Definition: fftools_ffmpeg.h:558
SpecifierOpt
Definition: fftools_cmdutils.h:164
StreamMap
Definition: fftools_ffmpeg.h:112
StreamMap::stream_index
int stream_index
Definition: fftools_ffmpeg.h:115
StreamMap::disabled
int disabled
Definition: fftools_ffmpeg.h:113
StreamMap::sync_stream_index
int sync_stream_index
Definition: fftools_ffmpeg.h:117
StreamMap::linklabel
char * linklabel
Definition: fftools_ffmpeg.h:118
StreamMap::sync_file_index
int sync_file_index
Definition: fftools_ffmpeg.h:116
StreamMap::file_index
int file_index
Definition: fftools_ffmpeg.h:114