19 #ifndef FFTOOLS_FFMPEG_H
20 #define FFTOOLS_FFMPEG_H
50 #define VSYNC_PASSTHROUGH 0
53 #define VSYNC_VSCFR 0xfe
54 #define VSYNC_DROP 0xff
56 #define MAX_STREAMS 1024
306 #define DECODING_FOR_OST 1
307 #define DECODING_FOR_FILTER 2
429 int thread_queue_size;
442 #define ABORT_ON_FLAG_EMPTY_OUTPUT (1 << 0)
443 #define ABORT_ON_FLAG_EMPTY_OUTPUT_STREAM (1 << 1)
Libavcodec external API header.
Main libavfilter public API header.
Convenience header that includes libavutil's core.
#define flags(name, subs,...)
static float sub(float src0, float src1)
simple arithmetic expression evaluator
int hw_device_setup_for_encode(OutputStream *ost)
AVIOContext * progress_avio
int ifilter_parameters_from_frame(InputFilter *ifilter, const AVFrame *frame)
char * videotoolbox_pixfmt
const char *const forced_keyframes_const_names[]
int videotoolbox_init(AVCodecContext *s)
int guess_input_channel_layout(InputStream *ist)
int frame_bits_per_raw_sample
const AVIOInterruptCB int_cb
float dts_error_threshold
int hwaccel_decode_init(AVCodecContext *avctx)
int filter_complex_nbthreads
float frame_drop_threshold
FilterGraph ** filtergraphs
int hw_device_setup_for_decode(InputStream *ist)
void hw_device_free_all(void)
int hw_device_setup_for_filter(FilterGraph *fg)
int auto_conversion_filters
int init_simple_filtergraph(InputStream *ist, OutputStream *ost)
void sub2video_update(InputStream *ist, int64_t heartbeat_pts, AVSubtitle *sub)
HWDevice * filter_hw_device
void remove_avoptions(AVDictionary **a, AVDictionary *b)
InputStream ** input_streams
int ffmpeg_parse_options(int argc, char **argv)
int qsv_init(AVCodecContext *s)
float dts_delta_threshold
OutputStream ** output_streams
int filtergraph_is_simple(FilterGraph *fg)
int hw_device_init_from_string(const char *arg, HWDevice **dev)
void check_filter_outputs(void)
OutputFile ** output_files
int configure_filtergraph(FilterGraph *fg)
HWDevice * hw_device_get_by_name(const char *name)
void assert_avoptions(AVDictionary *m)
float audio_drift_threshold
int init_complex_filtergraph(FilterGraph *fg)
const OptionDef options[]
a very simple circular buffer FIFO implementation
AVPixelFormat
Pixel format.
Utilties for rational number calculation.
typedef void(RENAME(mix_any_func_type))
The bitstream filter state.
A reference to a data buffer.
main external API structure.
This struct describes the properties of an encoded stream.
A linked-list of the inputs/outputs of the filter chain.
This structure describes decoded (raw) audio or video data.
Callback for checking whether to abort blocking functions.
This structure stores compressed data.
Rational number (pair of numerator and denominator).
enum AVPixelFormat pix_fmt
int(* init)(AVCodecContext *s)
SpecifierOpt * metadata_map
int nb_copy_initial_nonkeyframes
SpecifierOpt * frame_pix_fmts
SpecifierOpt * dump_attachment
int nb_chroma_intra_matrices
int nb_muxing_queue_data_threshold
SpecifierOpt * frame_aspect_ratios
SpecifierOpt * filter_scripts
SpecifierOpt * copy_initial_nonkeyframes
SpecifierOpt * guess_layout_max
SpecifierOpt * enc_time_bases
SpecifierOpt * max_frame_rates
SpecifierOpt * audio_sample_rate
int nb_audio_channel_maps
SpecifierOpt * max_frames
int metadata_global_manual
SpecifierOpt * frame_sizes
SpecifierOpt * muxing_queue_data_threshold
SpecifierOpt * forced_key_frames
SpecifierOpt * hwaccel_devices
int metadata_streams_manual
SpecifierOpt * autorotate
SpecifierOpt * disposition
int nb_frame_aspect_ratios
SpecifierOpt * sample_fmts
SpecifierOpt * audio_channels
SpecifierOpt * codec_names
SpecifierOpt * canvas_sizes
SpecifierOpt * reinit_filters
SpecifierOpt * passlogfiles
SpecifierOpt * frame_rates
SpecifierOpt * intra_matrices
SpecifierOpt * chroma_intra_matrices
int nb_hwaccel_output_formats
SpecifierOpt * top_field_first
int metadata_chapters_manual
SpecifierOpt * copy_prior_start
SpecifierOpt * max_muxing_queue_size
SpecifierOpt * rc_overrides
const char ** attachments
SpecifierOpt * codec_tags
SpecifierOpt * time_bases
SpecifierOpt * fix_sub_duration
SpecifierOpt * inter_matrices
SpecifierOpt * hwaccel_output_formats
SpecifierOpt * bitstream_filters
int nb_max_muxing_queue_size
AudioChannelMap * audio_channel_maps
int64_t start_time
start time in microseconds == AV_TIME_BASE units
int64_t recording_time
desired length of the resulting file in microseconds == AV_TIME_BASE units
struct OutputStream * ost
uint64_t * channel_layouts
struct FilterGraph * graph
int max_muxing_queue_size
int copy_initial_nonkeyframes
double forced_keyframes_expr_const_values[FKF_NB]
AVRational frame_aspect_ratio
double rotate_override_value
int audio_channels_mapped
size_t muxing_queue_data_threshold
AVDictionary * resample_opts
AVRational max_frame_rate
AVFifoBuffer * muxing_queue
AVCodecParameters * ref_par
const char * attachment_filename
struct InputStream * sync_ist
AVDictionary * encoder_opts
char * filters
filtergraph associated to the -filter option
int64_t forced_kf_ref_pts
char * filters_script
filtergraph script associated to the -filter_script option
AVExpr * forced_keyframes_pexpr
size_t muxing_queue_data_size
libswresample public header