FFmpeg
ffmpeg.h
Go to the documentation of this file.
1 /*
2  * This file is part of FFmpeg.
3  *
4  * FFmpeg is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * FFmpeg is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with FFmpeg; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17  */
18 
19 #ifndef FFTOOLS_FFMPEG_H
20 #define FFTOOLS_FFMPEG_H
21 
22 #include "config.h"
23 
24 #include <stdatomic.h>
25 #include <stdint.h>
26 #include <stdio.h>
27 #include <signal.h>
28 
29 #include "cmdutils.h"
30 #include "ffmpeg_sched.h"
31 #include "sync_queue.h"
32 
33 #include "libavformat/avformat.h"
34 #include "libavformat/avio.h"
35 
36 #include "libavcodec/avcodec.h"
37 #include "libavcodec/bsf.h"
38 
39 #include "libavfilter/avfilter.h"
40 
41 #include "libavutil/avutil.h"
42 #include "libavutil/bprint.h"
43 #include "libavutil/dict.h"
44 #include "libavutil/eval.h"
45 #include "libavutil/fifo.h"
46 #include "libavutil/hwcontext.h"
47 #include "libavutil/pixfmt.h"
48 #include "libavutil/rational.h"
49 #include "libavutil/thread.h"
51 
53 
54 // deprecated features
55 #define FFMPEG_OPT_QPHIST 1
56 #define FFMPEG_OPT_ADRIFT_THRESHOLD 1
57 #define FFMPEG_OPT_ENC_TIME_BASE_NUM 1
58 #define FFMPEG_OPT_TOP 1
59 #define FFMPEG_OPT_FORCE_KF_SOURCE_NO_DROP 1
60 #define FFMPEG_OPT_VSYNC_DROP 1
61 #define FFMPEG_OPT_VSYNC 1
62 #define FFMPEG_OPT_FILTER_SCRIPT 1
63 
64 #define FFMPEG_ERROR_RATE_EXCEEDED FFERRTAG('E', 'R', 'E', 'D')
65 
67  VSYNC_AUTO = -1,
72 #if FFMPEG_OPT_VSYNC_DROP
74 #endif
75 };
76 
80 };
81 
82 enum HWAccelID {
86 };
87 
92 };
93 
97 };
98 
108 };
109 
110 typedef struct HWDevice {
111  const char *name;
114 } HWDevice;
115 
117  // no specifier given
119  // val is view index
121  // val is view ID
123  // specify view by its position, val is AV_STEREO3D_VIEW_LEFT/RIGHT
125  // use all views, val is ignored
127 };
128 
129 typedef struct ViewSpecifier {
131  unsigned val;
132 } ViewSpecifier;
133 
134 /* select an input stream for an output stream */
135 typedef struct StreamMap {
136  int disabled; /* 1 is this mapping is disabled by a negative map */
140  char *linklabel; /* name of an output link, for mapping lavfi outputs */
141 
143 } StreamMap;
144 
145 typedef struct OptionsContext {
147 
148  /* input/output options */
152  const char *format;
153 
162 
163  /* input options */
165  int loop;
166  int rate_emu;
167  float readrate;
174 
182 
183  /* output options */
186  const char **attachments;
188 
190 
194  float mux_preload;
197  int shortest;
198  int bitexact;
199 
204 
205  // keys are stream indices
207 
225 #if FFMPEG_OPT_TOP
227 #endif
233 #if FFMPEG_OPT_FILTER_SCRIPT
235 #endif
262 
266  IFILTER_FLAG_CFR = (1 << 2),
267  IFILTER_FLAG_CROP = (1 << 3),
269 };
270 
271 typedef struct InputFilterOptions {
274 
275  uint8_t *name;
276 
277  /* When IFILTER_FLAG_CFR is set, the stream is guaranteed to be CFR with
278  * this framerate.
279  *
280  * Otherwise, this is an estimate that should not be relied upon to be
281  * accurate */
283 
284  unsigned crop_top;
285  unsigned crop_bottom;
286  unsigned crop_left;
287  unsigned crop_right;
288 
291 
292  // a combination of IFILTER_FLAG_*
293  unsigned flags;
294 
297 
300  // produce 24-bit audio
304  OFILTER_FLAG_CROP = (1 << 4),
305 };
306 
307 typedef struct OutputFilterOptions {
308  // Caller-provided name for this output
309  char *name;
310 
311  // Codec used for encoding, may be NULL
312  const AVCodec *enc;
313 
317 
318  /* Desired output timebase.
319  * Numerator can be one of EncTimeBase values, or 0 when no preference.
320  */
322 
325 
327 
328  // A combination of OFilterFlags.
329  unsigned flags;
330 
331  int format;
332  int width;
333  int height;
337 
338  unsigned crop_top;
339  unsigned crop_bottom;
340  unsigned crop_left;
341  unsigned crop_right;
342 
346 
349 
350  union {
351  const enum AVPixelFormat *pix_fmts;
353  };
354  const int *sample_rates;
360 
363 
364  // for simple filtergraphs only, view specifier passed
365  // along to the decoder
368 
369 typedef struct InputFilter {
371  uint8_t *name;
372  int index;
373 
374  // filter data type
376 
378 
379  char *input_name;
380 
381  /* for filters that are not yet bound to an input stream,
382  * this stores the input linklabel, if any */
383  uint8_t *linklabel;
384 } InputFilter;
385 
386 typedef struct OutputFilter {
387  const AVClass *class;
388 
390  uint8_t *name;
391  int index;
392 
394 
395  char *output_name;
396 
397  /* for filters that are not yet bound to an output stream,
398  * this stores the output linklabel, if any */
399  int bound;
400  uint8_t *linklabel;
401 
402  char *apad;
403 
405 
408 } OutputFilter;
409 
410 typedef struct FilterGraph {
411  const AVClass *class;
412  int index;
413 
418 
419  // true when the filtergraph is created internally for
420  // purposes like stream group merging. Meant to be freed
421  // if unbound.
423 
424  const char *graph_desc;
425  struct AVBPrint graph_print_buf;
426 } FilterGraph;
427 
430  // input timestamps are unreliable (guessed by demuxer)
432  // decoder should override timestamps by fixed framerate
433  // from DecoderOpts.framerate
435 #if FFMPEG_OPT_TOP
437 #endif
439  // force bitexact decoding
441 };
442 
443 typedef struct DecoderOpts {
444  int flags;
445 
446  char *name;
447  void *log_parent;
448 
449  const AVCodec *codec;
451 
452  /* hwaccel options */
457 
459 
460  // Either forced (when DECODER_FLAG_FRAMERATE_FORCED is set) or
461  // estimated (otherwise) video framerate.
463 } DecoderOpts;
464 
465 typedef struct Decoder {
466  const AVClass *class;
467 
469 
470  const uint8_t *subtitle_header;
472 
473  // number of frames/samples retrieved from the decoder
474  uint64_t frames_decoded;
475  uint64_t samples_decoded;
476  uint64_t decode_errors;
477 } Decoder;
478 
479 typedef struct InputStream {
480  const AVClass *class;
481 
482  /* parent source */
483  struct InputFile *file;
484 
485  int index;
486 
489 
490  /**
491  * Codec parameters - to be used by the decoding/streamcopy code.
492  * st->codecpar should not be accessed, because it may be modified
493  * concurrently by the demuxing thread.
494  */
497  const AVCodec *dec;
498 
499  /* framerate forced with -r */
501 #if FFMPEG_OPT_TOP
503 #endif
504 
506 
507  /* decoded data from this stream goes into all those filters
508  * currently video and audio only */
511 } InputStream;
512 
513 typedef struct InputStreamGroup {
514  const AVClass *class;
515 
516  /* parent source */
517  struct InputFile *file;
518 
519  int index;
520 
524 
525 typedef struct InputFile {
526  const AVClass *class;
527 
528  int index;
529 
533  /**
534  * Effective format start time based on enabled streams.
535  */
538  /* user-specified start time in AV_TIME_BASE or AV_NOPTS_VALUE */
540 
541  /* streams that ffmpeg is aware of;
542  * there may be extra streams in ctx that are not mapped to an InputStream
543  * if new streams appear dynamically during demuxing */
546 
547  /* stream groups that ffmpeg is aware of; */
550 } InputFile;
551 
559 };
560 
561 #define ABORT_ON_FLAG_EMPTY_OUTPUT (1 << 0)
562 #define ABORT_ON_FLAG_EMPTY_OUTPUT_STREAM (1 << 1)
563 
584 };
585 
586 typedef struct EncStatsComponent {
588 
589  uint8_t *str;
590  size_t str_len;
592 
593 typedef struct EncStats {
596 
598 
601 } EncStats;
602 
603 enum {
605 #if FFMPEG_OPT_FORCE_KF_SOURCE_NO_DROP
607 #endif
608  // force keyframe if lavfi.scd.time metadata is set
610 };
611 
612 typedef struct KeyframeForceCtx {
613  int type;
614 
616 
617  // timestamps of the forced keyframes, in AV_TIME_BASE_Q
619  int nb_pts;
620  int index;
621 
624 
627 
628 typedef struct Encoder {
629  const AVClass *class;
630 
632 
633  // number of frames/samples sent to the encoder
634  uint64_t frames_encoded;
635  uint64_t samples_encoded;
636 } Encoder;
637 
643 };
644 
645 typedef struct OutputStream {
646  const AVClass *class;
647 
649 
650  /* parent muxer */
651  struct OutputFile *file;
652 
653  int index; /* stream index in the output file */
654 
655  /* input stream that is the source for this output stream;
656  * may be NULL for streams with no well-defined source, e.g.
657  * attachments or outputs from complex filtergraphs */
659 
660  AVStream *st; /* stream in the output file */
661 
663 
664  /* video only */
665 #if FFMPEG_OPT_TOP
667 #endif
668  int bitexact;
670 
672 
674 
675  const char *logfile_prefix;
676  FILE *logfile;
677 
678  // simple filtergraph feeding this stream, if any
681 
683 
684  /* stats */
685  // number of packets send to the muxer
687 
688  /* packet quality factor */
690 
693 
694  /*
695  * bool on whether this stream should be utilized for splitting
696  * subtitles utilizing fix_sub_duration at random access points.
697  */
699 } OutputStream;
700 
701 typedef struct OutputFile {
702  const AVClass *class;
703 
704  int index;
705 
706  const char *url;
707 
710 
711  int64_t recording_time; ///< desired length of the resulting file in microseconds == AV_TIME_BASE units
712  int64_t start_time; ///< start time in microseconds == AV_TIME_BASE units
713 
714  int bitexact;
715 } OutputFile;
716 
717 // optionally attached as opaque_ref to decoded AVFrames
718 typedef struct FrameData {
719  // demuxer-estimated dts in AV_TIME_BASE_Q,
720  // to be used when real dts is missing
722 
723  // properties that come from the decoder
724  struct {
725  uint64_t frame_num;
726 
729  } dec;
730 
732 
734 
736 
738 
741 } FrameData;
742 
743 extern InputFile **input_files;
744 extern int nb_input_files;
745 
746 extern OutputFile **output_files;
747 extern int nb_output_files;
748 
749 // complex filtergraphs
750 extern FilterGraph **filtergraphs;
751 extern int nb_filtergraphs;
752 
753 // standalone decoders (not tied to demuxed streams)
754 extern Decoder **decoders;
755 extern int nb_decoders;
756 
757 extern char *vstats_filename;
758 
759 extern float dts_delta_threshold;
760 extern float dts_error_threshold;
761 
763 extern float frame_drop_threshold;
764 extern int do_benchmark;
765 extern int do_benchmark_all;
766 extern int do_hex_dump;
767 extern int do_pkt_dump;
768 extern int copy_ts;
769 extern int start_at_zero;
770 extern int copy_tb;
771 extern int debug_ts;
772 extern int exit_on_error;
773 extern int abort_on_flags;
774 extern int print_stats;
775 extern int64_t stats_period;
776 extern int stdin_interaction;
777 extern AVIOContext *progress_avio;
778 extern float max_error_rate;
779 
780 extern char *filter_nbthreads;
781 extern int filter_complex_nbthreads;
782 extern int filter_buffered_frames;
783 extern int vstats_version;
784 extern int print_graphs;
785 extern char *print_graphs_file;
786 extern char *print_graphs_format;
787 extern int auto_conversion_filters;
788 
789 extern const AVIOInterruptCB int_cb;
790 
791 extern const OptionDef options[];
792 extern HWDevice *filter_hw_device;
793 
795 
796 extern int ignore_unknown_streams;
797 extern int copy_unknown_streams;
798 
799 extern int recast_media;
800 
801 extern FILE *vstats_file;
802 
803 void term_init(void);
804 void term_exit(void);
805 
806 void show_usage(void);
807 
808 int check_avoptions_used(const AVDictionary *opts, const AVDictionary *opts_used,
809  void *logctx, int decode);
810 
811 int assert_file_overwrite(const char *filename);
812 int find_codec(void *logctx, const char *name,
813  enum AVMediaType type, int encoder, const AVCodec **codec);
814 int parse_and_set_vsync(const char *arg, enum VideoSyncMethod *vsync_var, int file_idx, int st_idx, int is_global);
815 
816 int filtergraph_is_simple(const FilterGraph *fg);
817 int fg_create_simple(FilterGraph **pfg,
818  InputStream *ist,
819  char **graph_desc,
820  Scheduler *sch, unsigned sched_idx_enc,
821  const OutputFilterOptions *opts);
822 int fg_finalise_bindings(void);
823 
824 /**
825  * Get our axiliary frame data attached to the frame, allocating it
826  * if needed.
827  */
829 
831 
834 
835 int ofilter_bind_enc(OutputFilter *ofilter,
836  unsigned sched_idx_enc,
837  const OutputFilterOptions *opts);
838 
839 /**
840  * Create a new filtergraph in the global filtergraph list.
841  *
842  * @param graph_desc Pointer to graph description; an av_malloc()ed string, filtergraph
843  * takes ownership of it.
844  */
845 int fg_create(FilterGraph **pfg, char **graph_desc, Scheduler *sch,
846  const OutputFilterOptions *opts);
847 
848 void fg_free(FilterGraph **pfg);
849 
850 void fg_send_command(FilterGraph *fg, double time, const char *target,
851  const char *command, const char *arg, int all_filters);
852 
853 int ffmpeg_parse_options(int argc, char **argv, Scheduler *sch);
854 
856  const AVFrame *frame, const AVPacket *pkt,
857  uint64_t frame_num);
858 
859 HWDevice *hw_device_get_by_name(const char *name);
861 int hw_device_init_from_string(const char *arg, HWDevice **dev);
863  const char *device,
864  HWDevice **dev_out);
865 void hw_device_free_all(void);
866 
867 /**
868  * Get a hardware device to be used with this filtergraph.
869  * The returned reference is owned by the callee, the caller
870  * must ref it explicitly for long-term use.
871  */
873 
874 /**
875  * Create a standalone decoder.
876  */
877 int dec_create(const OptionsContext *o, const char *arg, Scheduler *sch);
878 
879 /**
880  * @param dec_opts Dictionary filled with decoder options. Its ownership
881  * is transferred to the decoder.
882  * @param param_out If non-NULL, media properties after opening the decoder
883  * are written here.
884  *
885  * @retval ">=0" non-negative scheduler index on success
886  * @retval "<0" an error code on failure
887  */
888 int dec_init(Decoder **pdec, Scheduler *sch,
889  AVDictionary **dec_opts, const DecoderOpts *o,
890  AVFrame *param_out);
891 void dec_free(Decoder **pdec);
892 
893 /*
894  * Called by filters to connect decoder's output to given filtergraph input.
895  *
896  * @param opts filtergraph input options, to be filled by this function
897  */
899  const ViewSpecifier *vs, SchedulerNode *src);
900 
901 /*
902  * For multiview video, request output of the view(s) determined by vs.
903  * May be called multiple times.
904  *
905  * If this function is never called, only the base view is output. If it is
906  * called at least once, only the views requested are output.
907  *
908  * @param src scheduler node from which the frames corresponding vs
909  * will originate
910  */
911 int dec_request_view(Decoder *dec, const ViewSpecifier *vs,
912  SchedulerNode *src);
913 
914 int enc_alloc(Encoder **penc, const AVCodec *codec,
915  Scheduler *sch, unsigned sch_idx, void *log_parent);
916 void enc_free(Encoder **penc);
917 
918 int enc_open(void *opaque, const AVFrame *frame);
919 
920 int enc_loopback(Encoder *enc);
921 
922 /*
923  * Initialize muxing state for the given stream, should be called
924  * after the codec/streamcopy setup has been done.
925  *
926  * Open the muxer once all the streams have been initialized.
927  */
929  const AVCodecContext *enc_ctx);
931 int of_open(const OptionsContext *o, const char *filename, Scheduler *sch);
932 void of_free(OutputFile **pof);
933 
934 void of_enc_stats_close(void);
935 
937 
938 int ifile_open(const OptionsContext *o, const char *filename, Scheduler *sch);
939 void ifile_close(InputFile **f);
940 
941 int ist_use(InputStream *ist, int decoding_needed,
942  const ViewSpecifier *vs, SchedulerNode *src);
943 int ist_filter_add(InputStream *ist, InputFilter *ifilter, int is_simple,
945  SchedulerNode *src);
946 
947 /**
948  * Find an unused input stream of given type.
949  */
951 
952 /* iterate over all input streams in all input files;
953  * pass NULL to start iteration */
955 
956 /* iterate over all output streams in all output files;
957  * pass NULL to start iteration */
959 
960 void update_benchmark(const char *fmt, ...);
961 
962 const char *opt_match_per_type_str(const SpecifierOptList *sol,
963  char mediatype);
964 void opt_match_per_stream_str(void *logctx, const SpecifierOptList *sol,
965  AVFormatContext *fc, AVStream *st, const char **out);
966 void opt_match_per_stream_int(void *logctx, const SpecifierOptList *sol,
967  AVFormatContext *fc, AVStream *st, int *out);
968 void opt_match_per_stream_int64(void *logctx, const SpecifierOptList *sol,
970 void opt_match_per_stream_dbl(void *logctx, const SpecifierOptList *sol,
971  AVFormatContext *fc, AVStream *st, double *out);
972 
973 void opt_match_per_stream_group_str(void *logctx, const SpecifierOptList *sol,
974  AVFormatContext *fc, AVStreamGroup *stg, const char **out);
975 void opt_match_per_stream_group_int(void *logctx, const SpecifierOptList *sol,
976  AVFormatContext *fc, AVStreamGroup *stg, int *out);
977 void opt_match_per_stream_group_int64(void *logctx, const SpecifierOptList *sol,
979 void opt_match_per_stream_group_dbl(void *logctx, const SpecifierOptList *sol,
980  AVFormatContext *fc, AVStreamGroup *stg, double *out);
981 
982 int view_specifier_parse(const char **pspec, ViewSpecifier *vs);
983 
984 int muxer_thread(void *arg);
985 int encoder_thread(void *arg);
986 
987 #endif /* FFTOOLS_FFMPEG_H */
OptionsContext::readrate
float readrate
Definition: ffmpeg.h:167
KeyframeForceCtx::pts
int64_t * pts
Definition: ffmpeg.h:618
Decoder::subtitle_header
const uint8_t * subtitle_header
Definition: ffmpeg.h:470
pthread_mutex_t
_fmutex pthread_mutex_t
Definition: os2threads.h:53
FrameData::par_enc
AVCodecParameters * par_enc
Definition: ffmpeg.h:737
AVCodec
AVCodec.
Definition: codec.h:172
OptionsContext::input_ts_offset
int64_t input_ts_offset
Definition: ffmpeg.h:164
InputFile::start_time
int64_t start_time
Definition: ffmpeg.h:539
AVPixelFormat
AVPixelFormat
Pixel format.
Definition: pixfmt.h:71
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
OptionsContext::stop_time
int64_t stop_time
Definition: ffmpeg.h:192
StreamMap::file_index
int file_index
Definition: ffmpeg.h:137
KeyframeForceCtx::dropped_keyframe
int dropped_keyframe
Definition: ffmpeg.h:625
OutputFilter::graph
struct FilterGraph * graph
Definition: ffmpeg.h:389
FKF_PREV_FORCED_T
@ FKF_PREV_FORCED_T
Definition: ffmpeg.h:556
InputFile::nb_stream_groups
int nb_stream_groups
Definition: ffmpeg.h:549
OptionsContext::force_fps
SpecifierOptList force_fps
Definition: ffmpeg.h:216
OptionsContext::forced_key_frames
SpecifierOptList forced_key_frames
Definition: ffmpeg.h:214
ist_use
int ist_use(InputStream *ist, int decoding_needed, const ViewSpecifier *vs, SchedulerNode *src)
Definition: ffmpeg_demux.c:935
view_specifier_parse
int view_specifier_parse(const char **pspec, ViewSpecifier *vs)
Definition: ffmpeg_opt.c:309
OutputFilterOptions::nb_threads
int64_t nb_threads
Definition: ffmpeg.h:326
VSYNC_VFR
@ VSYNC_VFR
Definition: ffmpeg.h:70
EncStatsComponent::type
enum EncStatsType type
Definition: ffmpeg.h:587
OutputFilterOptions::ch_layout
AVChannelLayout ch_layout
Definition: ffmpeg.h:348
FrameData::nb_side_data
int nb_side_data
Definition: ffmpeg.h:740
Encoder::samples_encoded
uint64_t samples_encoded
Definition: ffmpeg.h:635
nb_filtergraphs
int nb_filtergraphs
Definition: ffmpeg.c:115
KF_FORCE_SCD_METADATA
@ KF_FORCE_SCD_METADATA
Definition: ffmpeg.h:609
FrameData
Definition: ffmpeg.h:718
ENC_STATS_PTS
@ ENC_STATS_PTS
Definition: ffmpeg.h:572
InputFilterOptions::crop_right
unsigned crop_right
Definition: ffmpeg.h:287
OutputFilter::apad
char * apad
Definition: ffmpeg.h:402
out
FILE * out
Definition: movenc.c:55
ENC_STATS_FRAME_NUM_IN
@ ENC_STATS_FRAME_NUM_IN
Definition: ffmpeg.h:569
FKF_PREV_FORCED_N
@ FKF_PREV_FORCED_N
Definition: ffmpeg.h:555
DecoderOpts
Definition: ffmpeg.h:443
FilterGraph::graph_desc
const char * graph_desc
Definition: ffmpeg.h:424
AVCodecParameters
This struct describes the properties of an encoded stream.
Definition: codec_par.h:47
DECODER_FLAG_SEND_END_TS
@ DECODER_FLAG_SEND_END_TS
Definition: ffmpeg.h:438
thread.h
enc_open
int enc_open(void *opaque, const AVFrame *frame)
Definition: ffmpeg_enc.c:184
FilterGraph::inputs
InputFilter ** inputs
Definition: ffmpeg.h:414
ENC_STATS_DTS
@ ENC_STATS_DTS
Definition: ffmpeg.h:576
InputFilterOptions::crop_bottom
unsigned crop_bottom
Definition: ffmpeg.h:285
fg_free
void fg_free(FilterGraph **pfg)
Definition: ffmpeg_filter.c:1016
FrameData::dts_est
int64_t dts_est
Definition: ffmpeg.h:721
LATENCY_PROBE_DEC_POST
@ LATENCY_PROBE_DEC_POST
Definition: ffmpeg.h:102
vstats_file
FILE * vstats_file
Definition: ffmpeg.c:92
KeyframeForceCtx::nb_pts
int nb_pts
Definition: ffmpeg.h:619
frame_drop_threshold
float frame_drop_threshold
Definition: ffmpeg_opt.c:62
rational.h
OutputFilterOptions::frame_rates
const AVRational * frame_rates
Definition: ffmpeg.h:356
ist_filter_add
int ist_filter_add(InputStream *ist, InputFilter *ifilter, int is_simple, const ViewSpecifier *vs, InputFilterOptions *opts, SchedulerNode *src)
Definition: ffmpeg_demux.c:1045
int64_t
long long int64_t
Definition: coverity.c:34
InputStream::user_set_discard
int user_set_discard
Definition: ffmpeg.h:488
OutputStream::packets_written
atomic_uint_least64_t packets_written
Definition: ffmpeg.h:686
dec_filter_add
int dec_filter_add(Decoder *dec, InputFilter *ifilter, InputFilterOptions *opts, const ViewSpecifier *vs, SchedulerNode *src)
Definition: ffmpeg_dec.c:1757
OptionsContext::bits_per_raw_sample
SpecifierOptList bits_per_raw_sample
Definition: ffmpeg.h:254
ENC_STATS_AVG_BITRATE
@ ENC_STATS_AVG_BITRATE
Definition: ffmpeg.h:582
OptionsContext::audio_ch_layouts
SpecifierOptList audio_ch_layouts
Definition: ffmpeg.h:155
OptionsContext::qscale
SpecifierOptList qscale
Definition: ffmpeg.h:213
OptionsContext::nb_attachments
int nb_attachments
Definition: ffmpeg.h:187
OutputFile::start_time
int64_t start_time
start time in microseconds == AV_TIME_BASE units
Definition: ffmpeg.h:712
progress_avio
AVIOContext * progress_avio
Definition: ffmpeg.c:106
InputFile::index
int index
Definition: ffmpeg.h:528
OutputFilterOptions::flags
unsigned flags
Definition: ffmpeg.h:329
AVFrame
This structure describes decoded (raw) audio or video data.
Definition: frame.h:427
OptionsContext::presets
SpecifierOptList presets
Definition: ffmpeg.h:229
DECODER_FLAG_FRAMERATE_FORCED
@ DECODER_FLAG_FRAMERATE_FORCED
Definition: ffmpeg.h:434
of_filesize
int64_t of_filesize(OutputFile *of)
Definition: ffmpeg_mux.c:888
OptionsContext::mux_max_delay
float mux_max_delay
Definition: ffmpeg.h:195
OptionsContext::display_hflips
SpecifierOptList display_hflips
Definition: ffmpeg.h:219
DecoderOpts::par
const AVCodecParameters * par
Definition: ffmpeg.h:450
FKF_T
@ FKF_T
Definition: ffmpeg.h:557
sync_queue.h
ENC_STATS_LITERAL
@ ENC_STATS_LITERAL
Definition: ffmpeg.h:565
OptionsContext::subtitle_disable
int subtitle_disable
Definition: ffmpeg.h:202
OptionsContext::readrate_catchup
float readrate_catchup
Definition: ffmpeg.h:168
OptionsContext::passlogfiles
SpecifierOptList passlogfiles
Definition: ffmpeg.h:242
OutputStream::index
int index
Definition: ffmpeg.h:653
ofilter_bind_enc
int ofilter_bind_enc(OutputFilter *ofilter, unsigned sched_idx_enc, const OutputFilterOptions *opts)
Definition: ffmpeg_filter.c:813
FilterGraph::index
int index
Definition: ffmpeg.h:412
OutputFilter::index
int index
Definition: ffmpeg.h:391
KeyframeForceCtx::type
int type
Definition: ffmpeg.h:613
InputFilter::index
int index
Definition: ffmpeg.h:372
OutputFilterOptions::sws_opts
AVDictionary * sws_opts
Definition: ffmpeg.h:323
DecoderOpts::hwaccel_id
enum HWAccelID hwaccel_id
Definition: ffmpeg.h:453
InputStream::nb_filters
int nb_filters
Definition: ffmpeg.h:510
int_cb
const AVIOInterruptCB int_cb
Definition: ffmpeg.c:311
atomic_int
intptr_t atomic_int
Definition: stdatomic.h:55
nb_output_files
int nb_output_files
Definition: ffmpeg.c:112
show_usage
void show_usage(void)
Definition: ffmpeg_opt.c:1416
FilterGraph::nb_inputs
int nb_inputs
Definition: ffmpeg.h:415
OptionsContext::bitexact
int bitexact
Definition: ffmpeg.h:198
ViewSpecifier
Definition: ffmpeg.h:129
AVDictionary
Definition: dict.c:32
HWDevice
Definition: ffmpeg.h:110
hw_device_init_from_string
int hw_device_init_from_string(const char *arg, HWDevice **dev)
Definition: ffmpeg_hw.c:92
VIEW_SPECIFIER_TYPE_ALL
@ VIEW_SPECIFIER_TYPE_ALL
Definition: ffmpeg.h:126
nb_input_files
int nb_input_files
Definition: ffmpeg.c:109
OutputFilterOptions::sample_rate
int sample_rate
Definition: ffmpeg.h:347
enc_stats_write
void enc_stats_write(OutputStream *ost, EncStats *es, const AVFrame *frame, const AVPacket *pkt, uint64_t frame_num)
Definition: ffmpeg_enc.c:467
IFILTER_FLAG_AUTOROTATE
@ IFILTER_FLAG_AUTOROTATE
Definition: ffmpeg.h:264
LATENCY_PROBE_ENC_POST
@ LATENCY_PROBE_ENC_POST
Definition: ffmpeg.h:106
OptionsContext::format
const char * format
Definition: ffmpeg.h:152
InputFile::input_sync_ref
int input_sync_ref
Definition: ffmpeg.h:532
DECODER_FLAG_BITEXACT
@ DECODER_FLAG_BITEXACT
Definition: ffmpeg.h:440
ost
static AVStream * ost
Definition: vaapi_transcode.c:42
OutputStream::fix_sub_duration_heartbeat
unsigned int fix_sub_duration_heartbeat
Definition: ffmpeg.h:698
OutputFilterOptions::sample_rates
const int * sample_rates
Definition: ffmpeg.h:354
enc_loopback
int enc_loopback(Encoder *enc)
Definition: ffmpeg_enc.c:942
OutputStream::ist
InputStream * ist
Definition: ffmpeg.h:658
OptionsContext::frame_pix_fmts
SpecifierOptList frame_pix_fmts
Definition: ffmpeg.h:161
OutputStream::file
struct OutputFile * file
Definition: ffmpeg.h:651
OptionsContext::canvas_sizes
SpecifierOptList canvas_sizes
Definition: ffmpeg.h:240
ENC_STATS_TIMEBASE_IN
@ ENC_STATS_TIMEBASE_IN
Definition: ffmpeg.h:571
AVIOInterruptCB
Callback for checking whether to abort blocking functions.
Definition: avio.h:59
OptionDef
Definition: cmdutils.h:195
FrameData::frame_num
uint64_t frame_num
Definition: ffmpeg.h:725
OutputFile::nb_streams
int nb_streams
Definition: ffmpeg.h:709
InputStream
Definition: ffmpeg.h:479
filter_nbthreads
char * filter_nbthreads
Definition: ffmpeg_opt.c:76
OptionsContext::chapters_input_file
int chapters_input_file
Definition: ffmpeg.h:189
DecoderOpts::hwaccel_output_format
enum AVPixelFormat hwaccel_output_format
Definition: ffmpeg.h:456
debug_ts
int debug_ts
Definition: ffmpeg_opt.c:70
OutputFilterOptions
Definition: ffmpeg.h:307
stats_period
int64_t stats_period
Definition: ffmpeg_opt.c:84
InputFilterOptions::trim_start_us
int64_t trim_start_us
Definition: ffmpeg.h:272
OptionsContext::rate_emu
int rate_emu
Definition: ffmpeg.h:166
CROP_CODEC
@ CROP_CODEC
Definition: ffmpeg.h:641
InputFilterOptions::flags
unsigned flags
Definition: ffmpeg.h:293
OptionsContext::max_frame_rates
SpecifierOptList max_frame_rates
Definition: ffmpeg.h:159
dts_delta_threshold
float dts_delta_threshold
Definition: ffmpeg_opt.c:56
fifo.h
bsf.h
vstats_version
int vstats_version
Definition: ffmpeg_opt.c:79
FRAME_OPAQUE_SUB_HEARTBEAT
@ FRAME_OPAQUE_SUB_HEARTBEAT
Definition: ffmpeg.h:89
FrameData::dec
struct FrameData::@6 dec
InputStreamGroup
Definition: ffmpeg.h:513
OptionsContext::g
OptionGroup * g
Definition: ffmpeg.h:146
Decoder::frames_decoded
uint64_t frames_decoded
Definition: ffmpeg.h:474
opt_match_per_stream_int
void opt_match_per_stream_int(void *logctx, const SpecifierOptList *sol, AVFormatContext *fc, AVStream *st, int *out)
OptionsContext::enc_stats_pre_fmt
SpecifierOptList enc_stats_pre_fmt
Definition: ffmpeg.h:258
InputFilter::type
enum AVMediaType type
Definition: ffmpeg.h:375
StreamMap::disabled
int disabled
Definition: ffmpeg.h:136
OptionsContext::mux_stats_fmt
SpecifierOptList mux_stats_fmt
Definition: ffmpeg.h:260
EncStatsComponent::str_len
size_t str_len
Definition: ffmpeg.h:590
VIEW_SPECIFIER_TYPE_POS
@ VIEW_SPECIFIER_TYPE_POS
Definition: ffmpeg.h:124
ifile_open
int ifile_open(const OptionsContext *o, const char *filename, Scheduler *sch)
Definition: ffmpeg_demux.c:1818
DecoderOpts::log_parent
void * log_parent
Definition: ffmpeg.h:447
LatencyProbe
LatencyProbe
Definition: ffmpeg.h:99
InputStreamGroup::index
int index
Definition: ffmpeg.h:519
KeyframeForceCtx::ref_pts
int64_t ref_pts
Definition: ffmpeg.h:615
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
OptionsContext
Definition: ffmpeg.h:145
FrameData::tb
AVRational tb
Definition: ffmpeg.h:728
do_pkt_dump
int do_pkt_dump
Definition: ffmpeg_opt.c:66
OutputFilter::bound
int bound
Definition: ffmpeg.h:399
fg_send_command
void fg_send_command(FilterGraph *fg, double time, const char *target, const char *command, const char *arg, int all_filters)
Definition: ffmpeg_filter.c:3426
LATENCY_PROBE_FILTER_PRE
@ LATENCY_PROBE_FILTER_PRE
Definition: ffmpeg.h:103
Decoder::samples_decoded
uint64_t samples_decoded
Definition: ffmpeg.h:475
InputFilterOptions::trim_end_us
int64_t trim_end_us
Definition: ffmpeg.h:273
InputFile
Definition: ffmpeg.h:525
OutputFilterOptions::frame_rate
AVRational frame_rate
Definition: ffmpeg.h:344
OptionsContext::recording_time
int64_t recording_time
Definition: ffmpeg.h:191
input_files
InputFile ** input_files
Definition: ffmpeg.c:108
LATENCY_PROBE_DEMUX
@ LATENCY_PROBE_DEMUX
Definition: ffmpeg.h:100
OptionsContext::nb_stream_maps
int nb_stream_maps
Definition: ffmpeg.h:185
OptionsContext::audio_disable
int audio_disable
Definition: ffmpeg.h:201
opt_match_per_stream_int64
void opt_match_per_stream_int64(void *logctx, const SpecifierOptList *sol, AVFormatContext *fc, AVStream *st, int64_t *out)
FrameData::frame_rate_filter
AVRational frame_rate_filter
Definition: ffmpeg.h:731
pkt
AVPacket * pkt
Definition: movenc.c:60
OutputStream::enc
Encoder * enc
Definition: ffmpeg.h:662
fg_create
int fg_create(FilterGraph **pfg, char **graph_desc, Scheduler *sch, const OutputFilterOptions *opts)
Create a new filtergraph in the global filtergraph list.
Definition: ffmpeg_filter.c:1088
OptionsContext::hwaccel_output_formats
SpecifierOptList hwaccel_output_formats
Definition: ffmpeg.h:179
ENC_STATS_PTS_IN
@ ENC_STATS_PTS_IN
Definition: ffmpeg.h:574
OptionsContext::metadata
SpecifierOptList metadata
Definition: ffmpeg.h:208
StreamMap::vs
ViewSpecifier vs
Definition: ffmpeg.h:142
CROP_DISABLED
@ CROP_DISABLED
Definition: ffmpeg.h:639
opt_match_per_stream_group_str
void opt_match_per_stream_group_str(void *logctx, const SpecifierOptList *sol, AVFormatContext *fc, AVStreamGroup *stg, const char **out)
OptionsContext::filters
SpecifierOptList filters
Definition: ffmpeg.h:232
OutputFilterOptions::ch_layouts
const AVChannelLayout * ch_layouts
Definition: ffmpeg.h:355
nb_output_dumped
atomic_uint nb_output_dumped
Definition: ffmpeg.c:103
ViewSpecifierType
ViewSpecifierType
Definition: ffmpeg.h:116
term_init
void term_init(void)
Definition: ffmpeg.c:205
StreamMap::linklabel
char * linklabel
Definition: ffmpeg.h:140
decode
static void decode(AVCodecContext *dec_ctx, AVPacket *pkt, AVFrame *frame, FILE *outfile)
Definition: decode_audio.c:72
of_free
void of_free(OutputFile **pof)
Definition: ffmpeg_mux.c:861
HWACCEL_GENERIC
@ HWACCEL_GENERIC
Definition: ffmpeg.h:85
OutputStream::fg_simple
FilterGraph * fg_simple
Definition: ffmpeg.h:679
VSYNC_VSCFR
@ VSYNC_VSCFR
Definition: ffmpeg.h:71
EncStats::components
EncStatsComponent * components
Definition: ffmpeg.h:594
assert_file_overwrite
int assert_file_overwrite(const char *filename)
Definition: ffmpeg_opt.c:837
OptionsContext::intra_matrices
SpecifierOptList intra_matrices
Definition: ffmpeg.h:222
OptionsContext::stream_groups
SpecifierOptList stream_groups
Definition: ffmpeg.h:250
FilterGraph::outputs
OutputFilter ** outputs
Definition: ffmpeg.h:416
vstats_filename
char * vstats_filename
Definition: ffmpeg_opt.c:54
OutputStream::frame_aspect_ratio
AVRational frame_aspect_ratio
Definition: ffmpeg.h:671
InputStream::framerate
AVRational framerate
Definition: ffmpeg.h:500
OutputStream::quality
atomic_int quality
Definition: ffmpeg.h:689
KF_FORCE_SOURCE_NO_DROP
@ KF_FORCE_SOURCE_NO_DROP
Definition: ffmpeg.h:606
dec_init
int dec_init(Decoder **pdec, Scheduler *sch, AVDictionary **dec_opts, const DecoderOpts *o, AVFrame *param_out)
Definition: ffmpeg_dec.c:1656
OutputFilterOptions::sample_fmts
enum AVSampleFormat * sample_fmts
Definition: ffmpeg.h:352
ENC_STATS_FILE_IDX
@ ENC_STATS_FILE_IDX
Definition: ffmpeg.h:566
OptionsContext::limit_filesize
int64_t limit_filesize
Definition: ffmpeg.h:193
OptionsContext::hwaccel_devices
SpecifierOptList hwaccel_devices
Definition: ffmpeg.h:178
VIEW_SPECIFIER_TYPE_NONE
@ VIEW_SPECIFIER_TYPE_NONE
Definition: ffmpeg.h:118
OptionsContext::autoscale
SpecifierOptList autoscale
Definition: ffmpeg.h:253
OutputFilter::linklabel
uint8_t * linklabel
Definition: ffmpeg.h:400
InputFilter
Definition: ffmpeg.h:369
fc
#define fc(width, name, range_min, range_max)
Definition: cbs_av1.c:494
ENC_STATS_BITRATE
@ ENC_STATS_BITRATE
Definition: ffmpeg.h:581
Encoder::frames_encoded
uint64_t frames_encoded
Definition: ffmpeg.h:634
AVHWDeviceType
AVHWDeviceType
Definition: hwcontext.h:27
OptionsContext::sample_fmts
SpecifierOptList sample_fmts
Definition: ffmpeg.h:212
LATENCY_PROBE_ENC_PRE
@ LATENCY_PROBE_ENC_PRE
Definition: ffmpeg.h:105
forced_keyframes_const
forced_keyframes_const
Definition: ffmpeg.h:552
ignore_unknown_streams
int ignore_unknown_streams
Definition: ffmpeg_opt.c:89
InputStream::filters
InputFilter ** filters
Definition: ffmpeg.h:509
OFILTER_FLAG_AUTOSCALE
@ OFILTER_FLAG_AUTOSCALE
Definition: ffmpeg.h:302
print_graphs_file
char * print_graphs_file
Definition: ffmpeg_opt.c:81
InputFilter::linklabel
uint8_t * linklabel
Definition: ffmpeg.h:383
max_error_rate
float max_error_rate
Definition: ffmpeg_opt.c:75
KF_FORCE_SOURCE
@ KF_FORCE_SOURCE
Definition: ffmpeg.h:604
AVExpr
Definition: eval.c:158
Encoder::enc_ctx
AVCodecContext * enc_ctx
Definition: ffmpeg.h:631
OutputFilterOptions::swr_opts
AVDictionary * swr_opts
Definition: ffmpeg.h:324
encoder_thread
int encoder_thread(void *arg)
Definition: ffmpeg_enc.c:860
OptionsContext::fix_sub_duration
SpecifierOptList fix_sub_duration
Definition: ffmpeg.h:238
DecoderOpts::hwaccel_device
char * hwaccel_device
Definition: ffmpeg.h:455
InputFilterOptions::name
uint8_t * name
Definition: ffmpeg.h:275
OptionsContext::shortest
int shortest
Definition: ffmpeg.h:197
InputFilterOptions::crop_top
unsigned crop_top
Definition: ffmpeg.h:284
InputFilter::graph
struct FilterGraph * graph
Definition: ffmpeg.h:370
OptionsContext::accurate_seek
int accurate_seek
Definition: ffmpeg.h:170
InputStreamGroup::stg
AVStreamGroup * stg
Definition: ffmpeg.h:522
InputStreamGroup::file
struct InputFile * file
Definition: ffmpeg.h:517
OutputFilterOptions::width
int width
Definition: ffmpeg.h:332
OutputStream::enc_stats_pre
EncStats enc_stats_pre
Definition: ffmpeg.h:691
command
static int command(AVFilterContext *ctx, const char *cmd, const char *arg, char *res, int res_len, int flags)
Definition: vf_drawtext.c:1187
OutputStream::bitexact
int bitexact
Definition: ffmpeg.h:668
CroppingType
CroppingType
Definition: ffmpeg.h:638
arg
const char * arg
Definition: jacosubdec.c:65
KeyframeForceCtx::expr_const_values
double expr_const_values[FKF_NB]
Definition: ffmpeg.h:623
of_enc_stats_close
void of_enc_stats_close(void)
Definition: ffmpeg_mux_init.c:197
OutputFilterOptions::format
int format
Definition: ffmpeg.h:331
InputFilterOptions::crop_left
unsigned crop_left
Definition: ffmpeg.h:286
OptionsContext::start_time
int64_t start_time
Definition: ffmpeg.h:149
AVFormatContext
Format I/O context.
Definition: avformat.h:1264
ENC_STATS_KEYFRAME
@ ENC_STATS_KEYFRAME
Definition: ffmpeg.h:583
opts
AVDictionary * opts
Definition: movenc.c:51
AVClass
Describe the class of an AVClass context structure.
Definition: log.h:76
dec_create
int dec_create(const OptionsContext *o, const char *arg, Scheduler *sch)
Create a standalone decoder.
Definition: ffmpeg_dec.c:1683
OutputFilter::name
uint8_t * name
Definition: ffmpeg.h:390
OutputFilterOptions::alpha_mode
enum AVAlphaMode alpha_mode
Definition: ffmpeg.h:336
dec_request_view
int dec_request_view(Decoder *dec, const ViewSpecifier *vs, SchedulerNode *src)
Definition: ffmpeg_dec.c:1029
Decoder::decode_errors
uint64_t decode_errors
Definition: ffmpeg.h:476
InputStream::top_field_first
int top_field_first
Definition: ffmpeg.h:502
InputStream::st
AVStream * st
Definition: ffmpeg.h:487
StreamMap::group_index
int group_index
Definition: ffmpeg.h:139
OptionsContext::audio_channels
SpecifierOptList audio_channels
Definition: ffmpeg.h:156
InputFile::start_time_effective
int64_t start_time_effective
Effective format start time based on enabled streams.
Definition: ffmpeg.h:536
Decoder
Definition: ffmpeg.h:465
ENC_STATS_PTS_TIME
@ ENC_STATS_PTS_TIME
Definition: ffmpeg.h:573
OptionsContext::fix_sub_duration_heartbeat
SpecifierOptList fix_sub_duration_heartbeat
Definition: ffmpeg.h:239
hw_device_init_from_type
int hw_device_init_from_type(enum AVHWDeviceType type, const char *device, HWDevice **dev_out)
Definition: ffmpeg_hw.c:243
AVRational
Rational number (pair of numerator and denominator).
Definition: rational.h:58
OFILTER_FLAG_AUDIO_24BIT
@ OFILTER_FLAG_AUDIO_24BIT
Definition: ffmpeg.h:301
EncStats::lock
pthread_mutex_t lock
Definition: ffmpeg.h:599
OutputFilterOptions::color_spaces
enum AVColorSpace * color_spaces
Definition: ffmpeg.h:357
OptionsContext::copy_prior_start
SpecifierOptList copy_prior_start
Definition: ffmpeg.h:231
EncStats
Definition: ffmpeg.h:593
OptionsContext::program
SpecifierOptList program
Definition: ffmpeg.h:249
copy_unknown_streams
int copy_unknown_streams
Definition: ffmpeg_opt.c:90
options
Definition: swscale.c:43
ViewSpecifier::val
unsigned val
Definition: ffmpeg.h:131
OptionsContext::frame_aspect_ratios
SpecifierOptList frame_aspect_ratios
Definition: ffmpeg.h:217
OptionsContext::reinit_filters
SpecifierOptList reinit_filters
Definition: ffmpeg.h:236
OptionsContext::dump_attachment
SpecifierOptList dump_attachment
Definition: ffmpeg.h:176
InputStream::fix_sub_duration
int fix_sub_duration
Definition: ffmpeg.h:505
OutputStream::top_field_first
int top_field_first
Definition: ffmpeg.h:666
FrameData::wallclock
int64_t wallclock[LATENCY_PROBE_NB]
Definition: ffmpeg.h:735
packet_data_c
const FrameData * packet_data_c(AVPacket *pkt)
Definition: ffmpeg.c:494
of_stream_init
int of_stream_init(OutputFile *of, OutputStream *ost, const AVCodecContext *enc_ctx)
Definition: ffmpeg_mux.c:611
update_benchmark
void update_benchmark(const char *fmt,...)
Definition: ffmpeg.c:550
OptionsContext::display_vflips
SpecifierOptList display_vflips
Definition: ffmpeg.h:220
OutputStream::logfile_prefix
const char * logfile_prefix
Definition: ffmpeg.h:675
OptionsContext::max_frames
SpecifierOptList max_frames
Definition: ffmpeg.h:209
do_benchmark_all
int do_benchmark_all
Definition: ffmpeg_opt.c:64
filtergraphs
FilterGraph ** filtergraphs
Definition: ffmpeg.c:114
InputFilterOptions
Definition: ffmpeg.h:271
OptionsContext::input_sync_ref
int input_sync_ref
Definition: ffmpeg.h:172
OutputFile::index
int index
Definition: ffmpeg.h:704
OptionGroup
Definition: cmdutils.h:340
DECODER_FLAG_FIX_SUB_DURATION
@ DECODER_FLAG_FIX_SUB_DURATION
Definition: ffmpeg.h:429
ENC_STATS_PTS_TIME_IN
@ ENC_STATS_PTS_TIME_IN
Definition: ffmpeg.h:575
FilterGraph::nb_outputs
int nb_outputs
Definition: ffmpeg.h:417
OutputStream::logfile
FILE * logfile
Definition: ffmpeg.h:676
OutputFilterOptions::vsync_method
enum VideoSyncMethod vsync_method
Definition: ffmpeg.h:343
swresample.h
find_codec
int find_codec(void *logctx, const char *name, enum AVMediaType type, int encoder, const AVCodec **codec)
Definition: ffmpeg_opt.c:804
opt_match_per_stream_group_int64
void opt_match_per_stream_group_int64(void *logctx, const SpecifierOptList *sol, AVFormatContext *fc, AVStreamGroup *stg, int64_t *out)
InputStream::par
AVCodecParameters * par
Codec parameters - to be used by the decoding/streamcopy code.
Definition: ffmpeg.h:495
print_graphs_format
char * print_graphs_format
Definition: ffmpeg_opt.c:82
OutputFile::streams
OutputStream ** streams
Definition: ffmpeg.h:708
OutputFilterOptions::color_ranges
enum AVColorRange * color_ranges
Definition: ffmpeg.h:358
Scheduler
Definition: ffmpeg_sched.c:273
recast_media
int recast_media
Definition: ffmpeg_opt.c:91
FilterGraph
Definition: ffmpeg.h:410
print_stats
int print_stats
Definition: ffmpeg_opt.c:73
OutputFilterOptions::vs
const ViewSpecifier * vs
Definition: ffmpeg.h:366
ENC_TIME_BASE_DEMUX
@ ENC_TIME_BASE_DEMUX
Definition: ffmpeg.h:78
InputFilterOptions::sub2video_width
int sub2video_width
Definition: ffmpeg.h:289
InputFilter::filter
AVFilterContext * filter
Definition: ffmpeg.h:377
OutputFilterOptions::pix_fmts
enum AVPixelFormat * pix_fmts
Definition: ffmpeg.h:351
AVAlphaMode
AVAlphaMode
Correlation between the alpha channel and color values.
Definition: pixfmt.h:810
parse_and_set_vsync
int parse_and_set_vsync(const char *arg, enum VideoSyncMethod *vsync_var, int file_idx, int st_idx, int is_global)
Definition: ffmpeg_opt.c:362
OutputFilterOptions::name
char * name
Definition: ffmpeg.h:309
VideoSyncMethod
VideoSyncMethod
Definition: ffmpeg.h:66
eval.h
OptionsContext::discard
SpecifierOptList discard
Definition: ffmpeg.h:247
OptionsContext::apad
SpecifierOptList apad
Definition: ffmpeg.h:246
FrameData::side_data
AVFrameSideData ** side_data
Definition: ffmpeg.h:739
OptionsContext::enc_stats_post_fmt
SpecifierOptList enc_stats_post_fmt
Definition: ffmpeg.h:259
OutputStream::filter
OutputFilter * filter
Definition: ffmpeg.h:680
IFILTER_FLAG_REINIT
@ IFILTER_FLAG_REINIT
Definition: ffmpeg.h:265
OutputFilterOptions::crop_right
unsigned crop_right
Definition: ffmpeg.h:341
f
f
Definition: af_crystalizer.c:122
OutputFilter::output_name
char * output_name
Definition: ffmpeg.h:395
AVIOContext
Bytestream IO Context.
Definition: avio.h:160
OptionsContext::thread_queue_size
int thread_queue_size
Definition: ffmpeg.h:171
AVMediaType
AVMediaType
Definition: avutil.h:198
FRAME_OPAQUE_SEND_COMMAND
@ FRAME_OPAQUE_SEND_COMMAND
Definition: ffmpeg.h:91
InputStreamGroup::fg
FilterGraph * fg
Definition: ffmpeg.h:521
SpecifierOptList
Definition: cmdutils.h:183
AVChannelLayout
An AVChannelLayout holds information about the channel layout of audio data.
Definition: channel_layout.h:319
threadmessage.h
OptionsContext::enc_stats_pre
SpecifierOptList enc_stats_pre
Definition: ffmpeg.h:255
FFMPEG_OPT_TOP
#define FFMPEG_OPT_TOP
Definition: ffmpeg.h:58
OutputFilterOptions::side_data
AVFrameSideData ** side_data
Definition: ffmpeg.h:361
filtergraph_is_simple
int filtergraph_is_simple(const FilterGraph *fg)
Definition: ffmpeg_filter.c:2322
EncStatsType
EncStatsType
Definition: ffmpeg.h:564
OptionsContext::apply_cropping
SpecifierOptList apply_cropping
Definition: ffmpeg.h:181
StreamMap
Definition: ffmpeg.h:135
ENC_STATS_NB_SAMPLES
@ ENC_STATS_NB_SAMPLES
Definition: ffmpeg.h:579
copy_ts
int copy_ts
Definition: ffmpeg_opt.c:67
avio.h
copy_tb
int copy_tb
Definition: ffmpeg_opt.c:69
OptionsContext::seek_timestamp
int seek_timestamp
Definition: ffmpeg.h:151
OutputFilterOptions::max_frame_rate
AVRational max_frame_rate
Definition: ffmpeg.h:345
LATENCY_PROBE_NB
@ LATENCY_PROBE_NB
Definition: ffmpeg.h:107
OptionsContext::streamid
AVDictionary * streamid
Definition: ffmpeg.h:206
enc_alloc
int enc_alloc(Encoder **penc, const AVCodec *codec, Scheduler *sch, unsigned sch_idx, void *log_parent)
Definition: ffmpeg_enc.c:99
nb_decoders
int nb_decoders
Definition: ffmpeg.c:118
OptionsContext::pass
SpecifierOptList pass
Definition: ffmpeg.h:241
HWDevice::device_ref
AVBufferRef * device_ref
Definition: ffmpeg.h:113
OutputStream::type
enum AVMediaType type
Definition: ffmpeg.h:648
OutputFile::url
const char * url
Definition: ffmpeg.h:706
hw_device_get_by_type
HWDevice * hw_device_get_by_type(enum AVHWDeviceType type)
Definition: ffmpeg_hw.c:28
IFilterFlags
IFilterFlags
Definition: ffmpeg.h:263
OutputFilterOptions::color_space
enum AVColorSpace color_space
Definition: ffmpeg.h:334
OptionsContext::disposition
SpecifierOptList disposition
Definition: ffmpeg.h:248
fg_finalise_bindings
int fg_finalise_bindings(void)
Definition: ffmpeg_filter.c:1491
LATENCY_PROBE_DEC_PRE
@ LATENCY_PROBE_DEC_PRE
Definition: ffmpeg.h:101
OptionsContext::readrate_initial_burst
double readrate_initial_burst
Definition: ffmpeg.h:169
FilterGraph::graph_print_buf
struct AVBPrint graph_print_buf
Definition: ffmpeg.h:425
OutputFilter::filter
AVFilterContext * filter
Definition: ffmpeg.h:393
FrameData::pts
int64_t pts
Definition: ffmpeg.h:727
OptionsContext::find_stream_info
int find_stream_info
Definition: ffmpeg.h:173
OptionsContext::display_rotations
SpecifierOptList display_rotations
Definition: ffmpeg.h:218
OutputFilterOptions::enc
const AVCodec * enc
Definition: ffmpeg.h:312
opt_match_per_stream_dbl
void opt_match_per_stream_dbl(void *logctx, const SpecifierOptList *sol, AVFormatContext *fc, AVStream *st, double *out)
OutputStream::kf
KeyframeForceCtx kf
Definition: ffmpeg.h:673
do_benchmark
int do_benchmark
Definition: ffmpeg_opt.c:63
InputFilterOptions::sub2video_height
int sub2video_height
Definition: ffmpeg.h:290
Encoder
Definition: ffmpeg.h:628
OptionsContext::ts_scale
SpecifierOptList ts_scale
Definition: ffmpeg.h:175
ENC_STATS_FRAME_NUM
@ ENC_STATS_FRAME_NUM
Definition: ffmpeg.h:568
KeyframeForceCtx
Definition: ffmpeg.h:612
OutputFilter::type
enum AVMediaType type
Definition: ffmpeg.h:404
OptionsContext::chroma_intra_matrices
SpecifierOptList chroma_intra_matrices
Definition: ffmpeg.h:224
fg_create_simple
int fg_create_simple(FilterGraph **pfg, InputStream *ist, char **graph_desc, Scheduler *sch, unsigned sched_idx_enc, const OutputFilterOptions *opts)
Definition: ffmpeg_filter.c:1248
CROP_CONTAINER
@ CROP_CONTAINER
Definition: ffmpeg.h:642
HWACCEL_AUTO
@ HWACCEL_AUTO
Definition: ffmpeg.h:84
PacketOpaque
PacketOpaque
Definition: ffmpeg.h:94
CROP_ALL
@ CROP_ALL
Definition: ffmpeg.h:640
bprint.h
filter_buffered_frames
int filter_buffered_frames
Definition: ffmpeg_opt.c:78
FrameData::bits_per_raw_sample
int bits_per_raw_sample
Definition: ffmpeg.h:733
OptionsContext::frame_rates
SpecifierOptList frame_rates
Definition: ffmpeg.h:158
StreamMap::stream_index
int stream_index
Definition: ffmpeg.h:138
decoders
Decoder ** decoders
Definition: ffmpeg.c:117
OptionsContext::codec_names
SpecifierOptList codec_names
Definition: ffmpeg.h:154
OptionsContext::stream_maps
StreamMap * stream_maps
Definition: ffmpeg.h:184
OptionsContext::autorotate
SpecifierOptList autorotate
Definition: ffmpeg.h:180
OptionsContext::fps_mode
SpecifierOptList fps_mode
Definition: ffmpeg.h:215
DecoderOpts::time_base
AVRational time_base
Definition: ffmpeg.h:458
InputFilterOptions::fallback
AVFrame * fallback
Definition: ffmpeg.h:295
opt_match_per_stream_group_int
void opt_match_per_stream_group_int(void *logctx, const SpecifierOptList *sol, AVFormatContext *fc, AVStreamGroup *stg, int *out)
OptionsContext::start_time_eof
int64_t start_time_eof
Definition: ffmpeg.h:150
VSYNC_CFR
@ VSYNC_CFR
Definition: ffmpeg.h:69
OptionsContext::shortest_buf_duration
float shortest_buf_duration
Definition: ffmpeg.h:196
AVColorSpace
AVColorSpace
YUV colorspace type.
Definition: pixfmt.h:700
OutputFile::bitexact
int bitexact
Definition: ffmpeg.h:714
exit_on_error
int exit_on_error
Definition: ffmpeg_opt.c:71
OptionsContext::mux_stats
SpecifierOptList mux_stats
Definition: ffmpeg.h:257
output_files
OutputFile ** output_files
Definition: ffmpeg.c:111
AVSampleFormat
AVSampleFormat
Audio sample formats.
Definition: samplefmt.h:55
OptionsContext::muxing_queue_data_threshold
SpecifierOptList muxing_queue_data_threshold
Definition: ffmpeg.h:244
OutputFilterOptions::nb_side_data
int nb_side_data
Definition: ffmpeg.h:362
print_graphs
int print_graphs
Definition: ffmpeg_opt.c:80
FRAME_OPAQUE_EOF
@ FRAME_OPAQUE_EOF
Definition: ffmpeg.h:90
InputFile::ctx
AVFormatContext * ctx
Definition: ffmpeg.h:530
OptionsContext::hwaccels
SpecifierOptList hwaccels
Definition: ffmpeg.h:177
ost_iter
OutputStream * ost_iter(OutputStream *prev)
Definition: ffmpeg.c:370
OptionsContext::enc_stats_post
SpecifierOptList enc_stats_post
Definition: ffmpeg.h:256
OutputStream::attachment_filename
char * attachment_filename
Definition: ffmpeg.h:682
IFILTER_FLAG_DROPCHANGED
@ IFILTER_FLAG_DROPCHANGED
Definition: ffmpeg.h:268
SchedulerNode
Definition: ffmpeg_sched.h:103
ENC_STATS_STREAM_IDX
@ ENC_STATS_STREAM_IDX
Definition: ffmpeg.h:567
InputFile::stream_groups
InputStreamGroup ** stream_groups
Definition: ffmpeg.h:548
ENC_STATS_SAMPLE_NUM
@ ENC_STATS_SAMPLE_NUM
Definition: ffmpeg.h:578
OFILTER_FLAG_CROP
@ OFILTER_FLAG_CROP
Definition: ffmpeg.h:304
OFilterFlags
OFilterFlags
Definition: ffmpeg.h:298
avcodec.h
InputStream::decoder
Decoder * decoder
Definition: ffmpeg.h:496
OFILTER_FLAG_AUTOROTATE
@ OFILTER_FLAG_AUTOROTATE
Definition: ffmpeg.h:303
OptionsContext::metadata_map
SpecifierOptList metadata_map
Definition: ffmpeg.h:228
AVStream
Stream structure.
Definition: avformat.h:744
dec_free
void dec_free(Decoder **pdec)
Definition: ffmpeg_dec.c:118
OutputFilterOptions::trim_start_us
int64_t trim_start_us
Definition: ffmpeg.h:314
enc_free
void enc_free(Encoder **penc)
Definition: ffmpeg_enc.c:71
pixfmt.h
abort_on_flags
int abort_on_flags
Definition: ffmpeg_opt.c:72
frame
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 frame
Definition: filter_design.txt:265
InputFilter::name
uint8_t * name
Definition: ffmpeg.h:371
VIEW_SPECIFIER_TYPE_IDX
@ VIEW_SPECIFIER_TYPE_IDX
Definition: ffmpeg.h:120
VSYNC_DROP
@ VSYNC_DROP
Definition: ffmpeg.h:73
packet_data
FrameData * packet_data(AVPacket *pkt)
Definition: ffmpeg.c:488
InputFile::streams
InputStream ** streams
Definition: ffmpeg.h:544
DECODER_FLAG_TOP_FIELD_FIRST
@ DECODER_FLAG_TOP_FIELD_FIRST
Definition: ffmpeg.h:436
hw_device_free_all
void hw_device_free_all(void)
Definition: ffmpeg_hw.c:286
avformat.h
HWAccelID
HWAccelID
Definition: ffmpeg.h:82
dict.h
OptionsContext::drop_changed
SpecifierOptList drop_changed
Definition: ffmpeg.h:237
ifile_close
void ifile_close(InputFile **f)
Definition: ffmpeg_demux.c:909
OptionsContext::max_muxing_queue_size
SpecifierOptList max_muxing_queue_size
Definition: ffmpeg.h:243
FrameOpaque
FrameOpaque
Definition: ffmpeg.h:88
AVStreamGroup
Definition: avformat.h:1098
opt_match_per_stream_group_dbl
void opt_match_per_stream_group_dbl(void *logctx, const SpecifierOptList *sol, AVFormatContext *fc, AVStreamGroup *stg, double *out)
filter_hw_device
HWDevice * filter_hw_device
Definition: ffmpeg_opt.c:52
AVCodecContext
main external API structure.
Definition: avcodec.h:439
OptionsContext::inter_matrices
SpecifierOptList inter_matrices
Definition: ffmpeg.h:223
OutputFilterOptions::crop_bottom
unsigned crop_bottom
Definition: ffmpeg.h:339
IFILTER_FLAG_CROP
@ IFILTER_FLAG_CROP
Definition: ffmpeg.h:267
OptionsContext::audio_sample_rate
SpecifierOptList audio_sample_rate
Definition: ffmpeg.h:157
OptionsContext::mux_preload
float mux_preload
Definition: ffmpeg.h:194
PKT_OPAQUE_SUB_HEARTBEAT
@ PKT_OPAQUE_SUB_HEARTBEAT
Definition: ffmpeg.h:95
HWDevice::name
const char * name
Definition: ffmpeg.h:111
KeyframeForceCtx::index
int index
Definition: ffmpeg.h:620
frame_data_c
const FrameData * frame_data_c(AVFrame *frame)
Definition: ffmpeg.c:482
InputStream::file
struct InputFile * file
Definition: ffmpeg.h:483
avfilter.h
IFILTER_FLAG_CFR
@ IFILTER_FLAG_CFR
Definition: ffmpeg.h:266
OptionsContext::frame_sizes
SpecifierOptList frame_sizes
Definition: ffmpeg.h:160
OptionsContext::video_disable
int video_disable
Definition: ffmpeg.h:200
atomic_uint
intptr_t atomic_uint
Definition: stdatomic.h:56
OutputStream::bits_per_raw_sample
int bits_per_raw_sample
Definition: ffmpeg.h:669
OutputStream::enc_stats_post
EncStats enc_stats_post
Definition: ffmpeg.h:692
Decoder::subtitle_header_size
int subtitle_header_size
Definition: ffmpeg.h:471
frame_data
FrameData * frame_data(AVFrame *frame)
Get our axiliary frame data attached to the frame, allocating it if needed.
Definition: ffmpeg.c:476
ffmpeg_parse_options
int ffmpeg_parse_options(int argc, char **argv, Scheduler *sch)
EncStats::lock_initialized
int lock_initialized
Definition: ffmpeg.h:600
video_sync_method
enum VideoSyncMethod video_sync_method
Definition: ffmpeg_opt.c:60
HWACCEL_NONE
@ HWACCEL_NONE
Definition: ffmpeg.h:83
OutputFilterOptions::crop_left
unsigned crop_left
Definition: ffmpeg.h:340
InputFile::ts_offset
int64_t ts_offset
Definition: ffmpeg.h:537
AVFilterContext
An instance of a filter.
Definition: avfilter.h:274
VSYNC_AUTO
@ VSYNC_AUTO
Definition: ffmpeg.h:67
OutputFilter
Definition: ffmpeg.h:386
OptionsContext::codec_tags
SpecifierOptList codec_tags
Definition: ffmpeg.h:211
OptionsContext::filter_scripts
SpecifierOptList filter_scripts
Definition: ffmpeg.h:234
DecoderOpts::flags
int flags
Definition: ffmpeg.h:444
OptionsContext::time_bases
SpecifierOptList time_bases
Definition: ffmpeg.h:251
avutil.h
ViewSpecifier::type
enum ViewSpecifierType type
Definition: ffmpeg.h:130
start_at_zero
int start_at_zero
Definition: ffmpeg_opt.c:68
AVBufferRef
A reference to a data buffer.
Definition: buffer.h:82
OutputFilterOptions::height
int height
Definition: ffmpeg.h:333
EncTimeBase
EncTimeBase
Definition: ffmpeg.h:77
ist_iter
InputStream * ist_iter(InputStream *prev)
Definition: ffmpeg.c:386
DECODER_FLAG_TS_UNRELIABLE
@ DECODER_FLAG_TS_UNRELIABLE
Definition: ffmpeg.h:431
OutputFilter::nb_frames_drop
atomic_uint_least64_t nb_frames_drop
Definition: ffmpeg.h:407
auto_conversion_filters
int auto_conversion_filters
Definition: ffmpeg_opt.c:83
OptionsContext::rc_overrides
SpecifierOptList rc_overrides
Definition: ffmpeg.h:221
of_open
int of_open(const OptionsContext *o, const char *filename, Scheduler *sch)
Definition: ffmpeg_mux_init.c:3328
DecoderOpts::codec
const AVCodec * codec
Definition: ffmpeg.h:449
KeyframeForceCtx::pexpr
AVExpr * pexpr
Definition: ffmpeg.h:622
AVFrameSideData
Structure to hold side data for an AVFrame.
Definition: frame.h:282
InputStream::index
int index
Definition: ffmpeg.h:485
ffmpeg_sched.h
OptionsContext::copy_initial_nonkeyframes
SpecifierOptList copy_initial_nonkeyframes
Definition: ffmpeg.h:230
FKF_N_FORCED
@ FKF_N_FORCED
Definition: ffmpeg.h:554
OptionsContext::attachments
const char ** attachments
Definition: ffmpeg.h:186
ENC_TIME_BASE_FILTER
@ ENC_TIME_BASE_FILTER
Definition: ffmpeg.h:79
stdin_interaction
int stdin_interaction
Definition: ffmpeg_opt.c:74
do_hex_dump
int do_hex_dump
Definition: ffmpeg_opt.c:65
AVPacket
This structure stores compressed data.
Definition: packet.h:565
VIEW_SPECIFIER_TYPE_ID
@ VIEW_SPECIFIER_TYPE_ID
Definition: ffmpeg.h:122
EncStatsComponent
Definition: ffmpeg.h:586
OutputFilterOptions::trim_duration_us
int64_t trim_duration_us
Definition: ffmpeg.h:315
HWDevice::type
enum AVHWDeviceType type
Definition: ffmpeg.h:112
OutputFilterOptions::ts_offset
int64_t ts_offset
Definition: ffmpeg.h:316
OFILTER_FLAG_DISABLE_CONVERT
@ OFILTER_FLAG_DISABLE_CONVERT
Definition: ffmpeg.h:299
Decoder::type
enum AVMediaType type
Definition: ffmpeg.h:468
cmdutils.h
InputFile::input_ts_offset
int64_t input_ts_offset
Definition: ffmpeg.h:531
EncStats::nb_components
int nb_components
Definition: ffmpeg.h:595
OptionsContext::data_disable
int data_disable
Definition: ffmpeg.h:203
OutputFilterOptions::color_range
enum AVColorRange color_range
Definition: ffmpeg.h:335
muxer_thread
int muxer_thread(void *arg)
Definition: ffmpeg_mux.c:407
FKF_NB
@ FKF_NB
Definition: ffmpeg.h:558
ENC_STATS_PKT_SIZE
@ ENC_STATS_PKT_SIZE
Definition: ffmpeg.h:580
check_avoptions_used
int check_avoptions_used(const AVDictionary *opts, const AVDictionary *opts_used, void *logctx, int decode)
Definition: ffmpeg.c:500
OutputStream
Definition: mux.c:53
hwcontext.h
OutputStream::st
AVStream * st
Definition: mux.c:54
DecoderOpts::framerate
AVRational framerate
Definition: ffmpeg.h:462
EncStatsComponent::str
uint8_t * str
Definition: ffmpeg.h:589
dts_error_threshold
float dts_error_threshold
Definition: ffmpeg_opt.c:57
OutputFilterOptions::crop_top
unsigned crop_top
Definition: ffmpeg.h:338
hw_device_for_filter
AVBufferRef * hw_device_for_filter(void)
Get a hardware device to be used with this filtergraph.
Definition: ffmpeg_hw.c:298
OutputFilterOptions::output_tb
AVRational output_tb
Definition: ffmpeg.h:321
opt_match_per_type_str
const char * opt_match_per_type_str(const SpecifierOptList *sol, char mediatype)
Definition: ffmpeg_opt.c:168
opt_match_per_stream_str
void opt_match_per_stream_str(void *logctx, const SpecifierOptList *sol, AVFormatContext *fc, AVStream *st, const char **out)
InputFile::nb_streams
int nb_streams
Definition: ffmpeg.h:545
FKF_N
@ FKF_N
Definition: ffmpeg.h:553
OptionsContext::guess_layout_max
SpecifierOptList guess_layout_max
Definition: ffmpeg.h:245
AVColorRange
AVColorRange
Visual content value range.
Definition: pixfmt.h:742
ENC_STATS_DTS_TIME
@ ENC_STATS_DTS_TIME
Definition: ffmpeg.h:577
OutputFile::recording_time
int64_t recording_time
desired length of the resulting file in microseconds == AV_TIME_BASE units
Definition: ffmpeg.h:711
hw_device_get_by_name
HWDevice * hw_device_get_by_name(const char *name)
Definition: ffmpeg_hw.c:42
VSYNC_PASSTHROUGH
@ VSYNC_PASSTHROUGH
Definition: ffmpeg.h:68
InputStream::dec
const AVCodec * dec
Definition: ffmpeg.h:497
PKT_OPAQUE_FIX_SUB_DURATION
@ PKT_OPAQUE_FIX_SUB_DURATION
Definition: ffmpeg.h:96
EncStats::io
AVIOContext * io
Definition: ffmpeg.h:597
DecoderOpts::hwaccel_device_type
enum AVHWDeviceType hwaccel_device_type
Definition: ffmpeg.h:454
of_write_trailer
int of_write_trailer(OutputFile *of)
Definition: ffmpeg_mux.c:757
ist_find_unused
InputStream * ist_find_unused(enum AVMediaType type)
Find an unused input stream of given type.
Definition: ffmpeg_demux.c:173
FilterGraph::is_internal
int is_internal
Definition: ffmpeg.h:422
OptionsContext::bitstream_filters
SpecifierOptList bitstream_filters
Definition: ffmpeg.h:210
src
#define src
Definition: vp8dsp.c:248
atomic_uint_least64_t
intptr_t atomic_uint_least64_t
Definition: stdatomic.h:69
OptionsContext::enc_time_bases
SpecifierOptList enc_time_bases
Definition: ffmpeg.h:252
ENC_STATS_TIMEBASE
@ ENC_STATS_TIMEBASE
Definition: ffmpeg.h:570
DecoderFlags
DecoderFlags
Definition: ffmpeg.h:428
OptionsContext::top_field_first
SpecifierOptList top_field_first
Definition: ffmpeg.h:226
term_exit
void term_exit(void)
Definition: ffmpeg.c:135
OutputFilter::nb_frames_dup
atomic_uint_least64_t nb_frames_dup
Definition: ffmpeg.h:406
filter_complex_nbthreads
int filter_complex_nbthreads
Definition: ffmpeg_opt.c:77
OutputFile
Definition: ffmpeg.h:701
InputFilterOptions::framerate
AVRational framerate
Definition: ffmpeg.h:282
OptionsContext::loop
int loop
Definition: ffmpeg.h:165
InputFilter::input_name
char * input_name
Definition: ffmpeg.h:379
LATENCY_PROBE_FILTER_POST
@ LATENCY_PROBE_FILTER_POST
Definition: ffmpeg.h:104
OutputFilterOptions::alpha_modes
enum AVAlphaMode * alpha_modes
Definition: ffmpeg.h:359
DecoderOpts::name
char * name
Definition: ffmpeg.h:446