| FFmpegKit iOS / macOS / tvOS API 4.5

fftools_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/*
20 * CHANGES 06.2020
21 * - cancel_operation() method signature updated with id
22 *
23 * CHANGES 01.2020
24 * - ffprobe support changes
25 *
26 * CHANGES 12.2019
27 * - Concurrent execution support
28 *
29 * CHANGES 03.2019
30 * --------------------------------------------------------
31 * - config.h include removed
32 *
33 * CHANGES 08.2018
34 * --------------------------------------------------------
35 * - fftools_ prefix added to file name and include guards
36 * - set_report_callback() method declared
37 * - cancel_operation() method declared
38 *
39 * CHANGES 07.2018
40 * --------------------------------------------------------
41 * - Include guards renamed
42 */
43
44#ifndef FFTOOLS_FFMPEG_H
45#define FFTOOLS_FFMPEG_H
46
47#include <stdint.h>
48#include <stdio.h>
49#include <signal.h>
50
51#include "fftools_cmdutils.h"
52
53#include "libavformat/avformat.h"
54#include "libavformat/avio.h"
55
56#include "libavcodec/avcodec.h"
57#include "libavcodec/bsf.h"
58
59#include "libavfilter/avfilter.h"
60
61#include "libavutil/avutil.h"
62#include "libavutil/dict.h"
63#include "libavutil/eval.h"
64#include "libavutil/fifo.h"
65#include "libavutil/hwcontext.h"
66#include "libavutil/pixfmt.h"
67#include "libavutil/rational.h"
68#include "libavutil/thread.h"
69#include "libavutil/threadmessage.h"
70
71#include "libswresample/swresample.h"
72
73#define VSYNC_AUTO -1
74#define VSYNC_PASSTHROUGH 0
75#define VSYNC_CFR 1
76#define VSYNC_VFR 2
77#define VSYNC_VSCFR 0xfe
78#define VSYNC_DROP 0xff
79
80#define MAX_STREAMS 1024 /* arbitrary sanity check value */
81
82 enum HWAccelID {
83 HWACCEL_NONE = 0,
84 HWACCEL_AUTO,
85 HWACCEL_GENERIC,
86 HWACCEL_VIDEOTOOLBOX,
87};
88
89 typedef struct HWAccel {
90 const char *name;
91 int (*init)(AVCodecContext *s);
92 enum HWAccelID id;
93 enum AVPixelFormat pix_fmt;
94} HWAccel;
95
96 typedef struct HWDevice {
97 const char *name;
98 enum AVHWDeviceType type;
99 AVBufferRef *device_ref;
100} HWDevice;
101
102/* select an input stream for an output stream */
103 typedef struct StreamMap {
104 int disabled; /* 1 is this mapping is disabled by a negative map */
105 int file_index;
106 int stream_index;
107 int sync_file_index;
108 int sync_stream_index;
109 char *linklabel; /* name of an output link, for mapping lavfi outputs */
110} StreamMap;
111
112 typedef struct {
113 int file_idx, stream_idx, channel_idx; // input
114 int ofile_idx, ostream_idx; // output
115} AudioChannelMap;
116
117 typedef struct OptionsContext {
118 OptionGroup *g;
119
120 /* input/output options */
121 int64_t start_time;
122 int64_t start_time_eof;
123 int seek_timestamp;
124 const char *format;
125
126 SpecifierOpt *codec_names;
127 int nb_codec_names;
128 SpecifierOpt *audio_channels;
129 int nb_audio_channels;
130 SpecifierOpt *audio_sample_rate;
131 int nb_audio_sample_rate;
132 SpecifierOpt *frame_rates;
133 int nb_frame_rates;
134 SpecifierOpt *max_frame_rates;
135 int nb_max_frame_rates;
136 SpecifierOpt *frame_sizes;
137 int nb_frame_sizes;
138 SpecifierOpt *frame_pix_fmts;
139 int nb_frame_pix_fmts;
140
141 /* input options */
142 int64_t input_ts_offset;
143 int loop;
144 int rate_emu;
145 float readrate;
146 int accurate_seek;
147 int thread_queue_size;
148
149 SpecifierOpt *ts_scale;
150 int nb_ts_scale;
151 SpecifierOpt *dump_attachment;
152 int nb_dump_attachment;
153 SpecifierOpt *hwaccels;
154 int nb_hwaccels;
155 SpecifierOpt *hwaccel_devices;
156 int nb_hwaccel_devices;
157 SpecifierOpt *hwaccel_output_formats;
158 int nb_hwaccel_output_formats;
159 SpecifierOpt *autorotate;
160 int nb_autorotate;
161
162 /* output options */
163 StreamMap *stream_maps;
164 int nb_stream_maps;
165 AudioChannelMap *audio_channel_maps; /* one info entry per -map_channel */
166 int nb_audio_channel_maps; /* number of (valid) -map_channel settings */
167 int metadata_global_manual;
168 int metadata_streams_manual;
169 int metadata_chapters_manual;
170 const char **attachments;
171 int nb_attachments;
172
173 int chapters_input_file;
174
175 int64_t recording_time;
176 int64_t stop_time;
177 uint64_t limit_filesize;
178 float mux_preload;
179 float mux_max_delay;
180 int shortest;
181 int bitexact;
182
183 int video_disable;
184 int audio_disable;
185 int subtitle_disable;
186 int data_disable;
187
188 /* indexed by output file stream index */
189 int *streamid_map;
190 int nb_streamid_map;
191
192 SpecifierOpt *metadata;
193 int nb_metadata;
194 SpecifierOpt *max_frames;
195 int nb_max_frames;
196 SpecifierOpt *bitstream_filters;
197 int nb_bitstream_filters;
198 SpecifierOpt *codec_tags;
199 int nb_codec_tags;
200 SpecifierOpt *sample_fmts;
201 int nb_sample_fmts;
202 SpecifierOpt *qscale;
203 int nb_qscale;
204 SpecifierOpt *forced_key_frames;
205 int nb_forced_key_frames;
206 SpecifierOpt *force_fps;
207 int nb_force_fps;
208 SpecifierOpt *frame_aspect_ratios;
209 int nb_frame_aspect_ratios;
210 SpecifierOpt *rc_overrides;
211 int nb_rc_overrides;
212 SpecifierOpt *intra_matrices;
213 int nb_intra_matrices;
214 SpecifierOpt *inter_matrices;
215 int nb_inter_matrices;
216 SpecifierOpt *chroma_intra_matrices;
217 int nb_chroma_intra_matrices;
218 SpecifierOpt *top_field_first;
219 int nb_top_field_first;
220 SpecifierOpt *metadata_map;
221 int nb_metadata_map;
222 SpecifierOpt *presets;
223 int nb_presets;
224 SpecifierOpt *copy_initial_nonkeyframes;
225 int nb_copy_initial_nonkeyframes;
226 SpecifierOpt *copy_prior_start;
227 int nb_copy_prior_start;
228 SpecifierOpt *filters;
229 int nb_filters;
230 SpecifierOpt *filter_scripts;
231 int nb_filter_scripts;
232 SpecifierOpt *reinit_filters;
233 int nb_reinit_filters;
234 SpecifierOpt *fix_sub_duration;
235 int nb_fix_sub_duration;
236 SpecifierOpt *canvas_sizes;
237 int nb_canvas_sizes;
238 SpecifierOpt *pass;
239 int nb_pass;
240 SpecifierOpt *passlogfiles;
241 int nb_passlogfiles;
242 SpecifierOpt *max_muxing_queue_size;
243 int nb_max_muxing_queue_size;
244 SpecifierOpt *muxing_queue_data_threshold;
245 int nb_muxing_queue_data_threshold;
246 SpecifierOpt *guess_layout_max;
247 int nb_guess_layout_max;
248 SpecifierOpt *apad;
249 int nb_apad;
250 SpecifierOpt *discard;
251 int nb_discard;
252 SpecifierOpt *disposition;
253 int nb_disposition;
254 SpecifierOpt *program;
255 int nb_program;
256 SpecifierOpt *time_bases;
257 int nb_time_bases;
258 SpecifierOpt *enc_time_bases;
259 int nb_enc_time_bases;
260 SpecifierOpt *autoscale;
261 int nb_autoscale;
262} OptionsContext;
263
264 typedef struct InputFilter {
265 AVFilterContext *filter;
266 struct InputStream *ist;
267 struct FilterGraph *graph;
268 uint8_t *name;
269 enum AVMediaType type; // AVMEDIA_TYPE_SUBTITLE for sub2video
270
271 AVFifoBuffer *frame_queue;
272
273 // parameters configured for this input
274 int format;
275
276 int width, height;
277 AVRational sample_aspect_ratio;
278
279 int sample_rate;
280 int channels;
281 uint64_t channel_layout;
282
283 AVBufferRef *hw_frames_ctx;
284
285 int eof;
286} InputFilter;
287
288 typedef struct OutputFilter {
289 AVFilterContext *filter;
290 struct OutputStream *ost;
291 struct FilterGraph *graph;
292 uint8_t *name;
293
294 /* temporary storage until stream maps are processed */
295 AVFilterInOut *out_tmp;
296 enum AVMediaType type;
297
298 /* desired output stream properties */
299 int width, height;
300 AVRational frame_rate;
301 int format;
302 int sample_rate;
303 uint64_t channel_layout;
304
305 // those are only set if no format is specified and the encoder gives us multiple options
306 int *formats;
307 uint64_t *channel_layouts;
308 int *sample_rates;
309} OutputFilter;
310
311 typedef struct FilterGraph {
312 int index;
313 const char *graph_desc;
314
315 AVFilterGraph *graph;
316 int reconfiguration;
317
318 InputFilter **inputs;
319 int nb_inputs;
320 OutputFilter **outputs;
321 int nb_outputs;
322} FilterGraph;
323
324 typedef struct InputStream {
325 int file_index;
326 AVStream *st;
327 int discard; /* true if stream data should be discarded */
328 int user_set_discard;
329 int decoding_needed; /* non zero if the packets must be decoded in 'raw_fifo', see DECODING_FOR_* */
330#define DECODING_FOR_OST 1
331#define DECODING_FOR_FILTER 2
332
333 AVCodecContext *dec_ctx;
334 const AVCodec *dec;
335 AVFrame *decoded_frame;
336 AVFrame *filter_frame; /* a ref of decoded_frame, to be sent to filters */
337 AVPacket *pkt;
338
339 int64_t start; /* time when read started */
340 /* predicted dts of the next packet read for this stream or (when there are
341 * several frames in a packet) of the next frame in current packet (in AV_TIME_BASE units) */
342 int64_t next_dts;
343 int64_t first_dts;
344 int64_t dts;
345
346 int64_t next_pts;
347 int64_t pts;
348 int wrap_correction_done;
349
350 int64_t filter_in_rescale_delta_last;
351
352 int64_t min_pts; /* pts with the smallest value in a current stream */
353 int64_t max_pts; /* pts with the higher value in a current stream */
354
355 // when forcing constant input framerate through -r,
356 // this contains the pts that will be given to the next decoded frame
357 int64_t cfr_next_pts;
358
359 int64_t nb_samples; /* number of samples in the last decoded audio frame before looping */
360
361 double ts_scale;
362 int saw_first_ts;
363 AVDictionary *decoder_opts;
364 AVRational framerate; /* framerate forced with -r */
365 int top_field_first;
366 int guess_layout_max;
367
368 int autorotate;
369
370 int fix_sub_duration;
371 struct { /* previous decoded subtitle and related variables */
372 int got_output;
373 int ret;
374 AVSubtitle subtitle;
375 } prev_sub;
376
377 struct sub2video {
378 int64_t last_pts;
379 int64_t end_pts;
380 AVFifoBuffer *sub_queue;
381 AVFrame *frame;
382 int w, h;
383 unsigned int initialize;
384 } sub2video;
385
386 int dr1;
387
388 /* decoded data from this stream goes into all those filters
389 * currently video and audio only */
390 InputFilter **filters;
391 int nb_filters;
392
393 int reinit_filters;
394
395 /* hwaccel options */
396 enum HWAccelID hwaccel_id;
397 enum AVHWDeviceType hwaccel_device_type;
398 char *hwaccel_device;
399 enum AVPixelFormat hwaccel_output_format;
400
401 /* hwaccel context */
402 void *hwaccel_ctx;
403 void (*hwaccel_uninit)(AVCodecContext *s);
404 int (*hwaccel_get_buffer)(AVCodecContext *s, AVFrame *frame, int flags);
405 int (*hwaccel_retrieve_data)(AVCodecContext *s, AVFrame *frame);
406 enum AVPixelFormat hwaccel_pix_fmt;
407 enum AVPixelFormat hwaccel_retrieved_pix_fmt;
408 AVBufferRef *hw_frames_ctx;
409
410 /* stats */
411 // combined size of all the packets read
412 uint64_t data_size;
413 /* number of packets successfully read for this stream */
414 uint64_t nb_packets;
415 // number of frames/samples retrieved from the decoder
416 uint64_t frames_decoded;
417 uint64_t samples_decoded;
418
419 int64_t *dts_buffer;
420 int nb_dts_buffer;
421
422 int got_output;
423} InputStream;
424
425 typedef struct InputFile {
426 AVFormatContext *ctx;
427 int eof_reached; /* true if eof reached */
428 int eagain; /* true if last read attempt returned EAGAIN */
429 int ist_index; /* index of first stream in input_streams */
430 int loop; /* set number of times input stream should be looped */
431 int64_t duration; /* actual duration of the longest stream in a file
432 at the moment when looping happens */
433 AVRational time_base; /* time base of the duration */
434 int64_t input_ts_offset;
435
436 int64_t ts_offset;
437 int64_t last_ts;
438 int64_t start_time; /* user-specified start time in AV_TIME_BASE or AV_NOPTS_VALUE */
439 int seek_timestamp;
440 int64_t recording_time;
441 int nb_streams; /* number of stream that ffmpeg is aware of; may be different
442 from ctx.nb_streams if new streams appear during av_read_frame() */
443 int nb_streams_warn; /* number of streams that the user was warned of */
444 int rate_emu;
445 float readrate;
446 int accurate_seek;
447
448 AVPacket *pkt;
449
450#if HAVE_THREADS
451 AVThreadMessageQueue *in_thread_queue;
452 pthread_t thread; /* thread reading from this file */
453 int non_blocking; /* reading packets from the thread should not block */
454 int joined; /* the thread has been joined */
455 int thread_queue_size; /* maximum number of queued packets */
456#endif
457} InputFile;
458
459 enum forced_keyframes_const {
460 FKF_N,
461 FKF_N_FORCED,
462 FKF_PREV_FORCED_N,
463 FKF_PREV_FORCED_T,
464 FKF_T,
465 FKF_NB
466};
467
468#define ABORT_ON_FLAG_EMPTY_OUTPUT (1 << 0)
469#define ABORT_ON_FLAG_EMPTY_OUTPUT_STREAM (1 << 1)
470
471 extern const char *const forced_keyframes_const_names[];
472
473 typedef enum {
474 ENCODER_FINISHED = 1,
475 MUXER_FINISHED = 2,
476} OSTFinished ;
477
478 typedef struct OutputStream {
479 int file_index; /* file index */
480 int index; /* stream index in the output file */
481 int source_index; /* InputStream index */
482 AVStream *st; /* stream in the output file */
483 int encoding_needed; /* true if encoding needed for this stream */
484 int frame_number;
485 /* input pts and corresponding output pts
486 for A/V sync */
487 struct InputStream *sync_ist; /* input stream to sync against */
488 int64_t sync_opts; /* output frame counter, could be changed to some true timestamp */ // FIXME look at frame_number
489 /* pts of the first frame encoded for this stream, used for limiting
490 * recording time */
491 int64_t first_pts;
492 /* dts of the last packet sent to the muxer */
493 int64_t last_mux_dts;
494 // the timebase of the packets sent to the muxer
495 AVRational mux_timebase;
496 AVRational enc_timebase;
497
498 AVBSFContext *bsf_ctx;
499
500 AVCodecContext *enc_ctx;
501 AVCodecParameters *ref_par; /* associated input codec parameters with encoders options applied */
502 const AVCodec *enc;
503 int64_t max_frames;
504 AVFrame *filtered_frame;
505 AVFrame *last_frame;
506 AVPacket *pkt;
507 int last_dropped;
508 int last_nb0_frames[3];
509
510 void *hwaccel_ctx;
511
512 /* video only */
513 AVRational frame_rate;
514 AVRational max_frame_rate;
515 int is_cfr;
516 int force_fps;
517 int top_field_first;
518 int rotate_overridden;
519 int autoscale;
520 double rotate_override_value;
521
522 AVRational frame_aspect_ratio;
523
524 /* forced key frames */
525 int64_t forced_kf_ref_pts;
526 int64_t *forced_kf_pts;
527 int forced_kf_count;
528 int forced_kf_index;
529 char *forced_keyframes;
530 AVExpr *forced_keyframes_pexpr;
531 double forced_keyframes_expr_const_values[FKF_NB];
532 int dropped_keyframe;
533
534 /* audio only */
535 int *audio_channels_map; /* list of the channels id to pick from the source stream */
536 int audio_channels_mapped; /* number of channels in audio_channels_map */
537
538 char *logfile_prefix;
539 FILE *logfile;
540
541 OutputFilter *filter;
542 char *avfilter;
543 char *filters;
544 char *filters_script;
545
546 AVDictionary *encoder_opts;
547 AVDictionary *sws_dict;
548 AVDictionary *swr_opts;
549 AVDictionary *resample_opts;
550 char *apad;
551 OSTFinished finished; /* no more packets should be written for this stream */
552 int unavailable; /* true if the steram is unavailable (possibly temporarily) */
553 int stream_copy;
554
555 // init_output_stream() has been called for this stream
556 // The encoder and the bitstream filters have been initialized and the stream
557 // parameters are set in the AVStream.
558 int initialized;
559
560 int inputs_done;
561
562 const char *attachment_filename;
563 int copy_initial_nonkeyframes;
564 int copy_prior_start;
565 char *disposition;
566
567 int keep_pix_fmt;
568
569 /* stats */
570 // combined size of all the packets written
571 uint64_t data_size;
572 // number of packets send to the muxer
573 uint64_t packets_written;
574 // number of frames/samples sent to the encoder
575 uint64_t frames_encoded;
576 uint64_t samples_encoded;
577
578 /* packet quality factor */
579 int quality;
580
581 int max_muxing_queue_size;
582
583 /* the packets are buffered here until the muxer is ready to be initialized */
584 AVFifoBuffer *muxing_queue;
585
586 /*
587 * The size of the AVPackets' buffers in queue.
588 * Updated when a packet is either pushed or pulled from the queue.
589 */
590 size_t muxing_queue_data_size;
591
592 /* Threshold after which max_muxing_queue_size will be in effect */
593 size_t muxing_queue_data_threshold;
594
595 /* packet picture type */
596 int pict_type;
597
598 /* frame encode sum of squared error values */
599 int64_t error[4];
600} OutputStream;
601
602 typedef struct OutputFile {
603 AVFormatContext *ctx;
604 AVDictionary *opts;
605 int ost_index; /* index of the first stream in output_streams */
606 int64_t recording_time;
607 int64_t start_time;
608 uint64_t limit_filesize; /* filesize limit expressed in bytes */
609
610 int shortest;
611
612 int header_written;
613} OutputFile;
614
615 extern __thread InputStream **input_streams;
616 extern __thread int nb_input_streams;
617 extern __thread InputFile **input_files;
618 extern __thread int nb_input_files;
619
620 extern __thread OutputStream **output_streams;
621 extern __thread int nb_output_streams;
622 extern __thread OutputFile **output_files;
623 extern __thread int nb_output_files;
624
625 extern __thread FilterGraph **filtergraphs;
626 extern __thread int nb_filtergraphs;
627
628 extern __thread char *vstats_filename;
629 extern __thread char *sdp_filename;
630
631 extern __thread float audio_drift_threshold;
632 extern __thread float dts_delta_threshold;
633 extern __thread float dts_error_threshold;
634
635 extern __thread int audio_volume;
636 extern __thread int audio_sync_method;
637 extern __thread int video_sync_method;
638 extern __thread float frame_drop_threshold;
639 extern __thread int do_benchmark;
640 extern __thread int do_benchmark_all;
641 extern __thread int do_deinterlace;
642 extern __thread int do_hex_dump;
643 extern __thread int do_pkt_dump;
644 extern __thread int copy_ts;
645 extern __thread int start_at_zero;
646 extern __thread int copy_tb;
647 extern __thread int debug_ts;
648 extern __thread int exit_on_error;
649 extern __thread int abort_on_flags;
650 extern __thread int print_stats;
651 extern __thread int64_t stats_period;
652 extern __thread int qp_hist;
653 extern __thread int stdin_interaction;
654 extern __thread int frame_bits_per_raw_sample;
655 extern __thread AVIOContext *progress_avio;
656 extern __thread float max_error_rate;
657 extern __thread char *videotoolbox_pixfmt;
658
659 extern __thread int filter_nbthreads;
660 extern __thread int filter_complex_nbthreads;
661 extern __thread int vstats_version;
662 extern __thread int auto_conversion_filters;
663
664 extern __thread const AVIOInterruptCB int_cb;
665
666 extern const HWAccel hwaccels[];
667#if CONFIG_QSV
668 extern __thread char *qsv_device;
669#endif
670 extern __thread HWDevice *filter_hw_device;
671
672 void term_init(void);
673 void term_exit(void);
674
675 void reset_options(OptionsContext *o, int is_input);
676 void show_usage(void);
677
678 void opt_output_file(void *optctx, const char *filename);
679
680 void remove_avoptions(AVDictionary **a, AVDictionary *b);
681 void assert_avoptions(AVDictionary *m);
682
683 int guess_input_channel_layout(InputStream *ist);
684
685 enum AVPixelFormat choose_pixel_fmt(AVStream *st, AVCodecContext *avctx, const AVCodec *codec, enum AVPixelFormat target);
686 void choose_sample_fmt(AVStream *st, const AVCodec *codec);
687
688 int configure_filtergraph(FilterGraph *fg);
689 int configure_output_filter(FilterGraph *fg, OutputFilter *ofilter, AVFilterInOut *out);
690 void check_filter_outputs(void);
691 int ist_in_filtergraph(FilterGraph *fg, InputStream *ist);
692 int filtergraph_is_simple(FilterGraph *fg);
693 int init_simple_filtergraph(InputStream *ist, OutputStream *ost);
694 int init_complex_filtergraph(FilterGraph *fg);
695
696 void sub2video_update(InputStream *ist, int64_t heartbeat_pts, AVSubtitle *sub);
697
698 int ifilter_parameters_from_frame(InputFilter *ifilter, const AVFrame *frame);
699
700 int ffmpeg_parse_options(int argc, char **argv);
701
702 int videotoolbox_init(AVCodecContext *s);
703 int qsv_init(AVCodecContext *s);
704
705 HWDevice *hw_device_get_by_name(const char *name);
706 int hw_device_init_from_string(const char *arg, HWDevice **dev);
707 void hw_device_free_all(void);
708
709 int hw_device_setup_for_decode(InputStream *ist);
710 int hw_device_setup_for_encode(OutputStream *ost);
711 int hw_device_setup_for_filter(FilterGraph *fg);
712
713 int hwaccel_decode_init(AVCodecContext *avctx);
714
715 void set_report_callback(void (*callback)(int, float, float, int64_t, int, double, double));
716
717 void cancel_operation(long id);
718
719 int opt_map(void *optctx, const char *opt, const char *arg);
720 int opt_map_channel(void *optctx, const char *opt, const char *arg);
721 int opt_recording_timestamp(void *optctx, const char *opt, const char *arg);
722 int opt_data_frames(void *optctx, const char *opt, const char *arg);
723 int opt_progress(void *optctx, const char *opt, const char *arg);
724 int opt_target(void *optctx, const char *opt, const char *arg);
725 int opt_vsync(void *optctx, const char *opt, const char *arg);
726 int opt_abort_on(void *optctx, const char *opt, const char *arg);
727 int opt_stats_period(void *optctx, const char *opt, const char *arg);
728 int opt_qscale(void *optctx, const char *opt, const char *arg);
729 int opt_profile(void *optctx, const char *opt, const char *arg);
730 int opt_filter_complex(void *optctx, const char *opt, const char *arg);
731 int opt_filter_complex_script(void *optctx, const char *opt, const char *arg);
732 int opt_attach(void *optctx, const char *opt, const char *arg);
733 int opt_video_frames(void *optctx, const char *opt, const char *arg);
734 int opt_video_codec(void *optctx, const char *opt, const char *arg);
735 int opt_sameq(void *optctx, const char *opt, const char *arg);
736 int opt_timecode(void *optctx, const char *opt, const char *arg);
737
738 int opt_vstats_file(void *optctx, const char *opt, const char *arg);
739 int opt_vstats(void *optctx, const char *opt, const char *arg);
740 int opt_video_frames(void *optctx, const char *opt, const char *arg);
741 int opt_old2new(void *optctx, const char *opt, const char *arg);
742 int opt_streamid(void *optctx, const char *opt, const char *arg);
743 int opt_bitrate(void *optctx, const char *opt, const char *arg);
744 int show_hwaccels(void *optctx, const char *opt, const char *arg);
745 int opt_video_filters(void *optctx, const char *opt, const char *arg);
746 int opt_audio_frames(void *optctx, const char *opt, const char *arg);
747 int opt_audio_qscale(void *optctx, const char *opt, const char *arg);
748 int opt_audio_codec(void *optctx, const char *opt, const char *arg);
749 int opt_channel_layout(void *optctx, const char *opt, const char *arg);
750 int opt_preset(void *optctx, const char *opt, const char *arg);
751 int opt_audio_filters(void *optctx, const char *opt, const char *arg);
752 int opt_subtitle_codec(void *optctx, const char *opt, const char *arg);
753 int opt_video_channel(void *optctx, const char *opt, const char *arg);
754 int opt_video_standard(void *optctx, const char *opt, const char *arg);
755 int opt_sdp_file(void *optctx, const char *opt, const char *arg);
756 int opt_data_codec(void *optctx, const char *opt, const char *arg);
757 int opt_init_hw_device(void *optctx, const char *opt, const char *arg);
758 int opt_filter_hw_device(void *optctx, const char *opt, const char *arg);
759 void add_input_streams(OptionsContext *o, AVFormatContext *ic);
760 void assert_file_overwrite(const char *filename);
761 void dump_attachment(AVStream *st, const char *filename);
762uint8_t *get_line(AVIOContext *s);
763 void uninit_options(OptionsContext *o);
764 void init_options(OptionsContext *o);
765AVDictionary *strip_specifiers(AVDictionary *dict);
766 void parse_meta_type(char *arg, char *type, int *index, const char **stream_spec);
767 int fftools_copy_metadata(char *outspec, char *inspec, AVFormatContext *oc, AVFormatContext *ic, OptionsContext *o);
768 const AVCodec *find_codec_or_die(const char *name, enum AVMediaType type, int encoder);
769 const AVCodec *choose_decoder(OptionsContext *o, AVFormatContext *s, AVStream *st);
770 int open_input_file(OptionsContext *o, const char *filename);
771 int get_preset_file_2(const char *preset_name, const char *codec_name, AVIOContext **s);
772 int choose_encoder(OptionsContext *o, AVFormatContext *s, OutputStream *ost);
773 OutputStream *new_output_stream(OptionsContext *o, AVFormatContext *oc, enum AVMediaType type, int source_index);
774 void parse_matrix_coeffs(uint16_t *dest, const char *str);
775uint8_t *fftools_read_file(const char *filename);
776 char *get_ost_filters(OptionsContext *o, AVFormatContext *oc, OutputStream *ost);
777 void check_streamcopy_filters(OptionsContext *o, AVFormatContext *oc, const OutputStream *ost, enum AVMediaType type);
778 OutputStream *new_video_stream(OptionsContext *o, AVFormatContext *oc, int source_index);
779 OutputStream *new_audio_stream(OptionsContext *o, AVFormatContext *oc, int source_index);
780 OutputStream *new_data_stream(OptionsContext *o, AVFormatContext *oc, int source_index);
781 OutputStream *new_unknown_stream(OptionsContext *o, AVFormatContext *oc, int source_index);
782 OutputStream *new_attachment_stream(OptionsContext *o, AVFormatContext *oc, int source_index);
783 OutputStream *new_subtitle_stream(OptionsContext *o, AVFormatContext *oc, int source_index);
784 int copy_chapters(InputFile *ifile, OutputFile *ofile, int copy_metadata);
785 void init_output_filter(OutputFilter *ofilter, OptionsContext *o, AVFormatContext *oc);
786 int init_complex_filters(void);
787 int open_output_file(OptionsContext *o, const char *filename);
788 int opt_default_new(OptionsContext *o, const char *opt, const char *arg);
789 int open_files(OptionGroupList *l, const char *inout, int (*open_file)(OptionsContext*, const char*));
790
791#endif /* FFTOOLS_FFMPEG_H */
fftools_cmdutils.h
dts_delta_threshold
__thread float dts_delta_threshold
Definition: fftools_ffmpeg_opt.c:164
hw_device_setup_for_encode
int hw_device_setup_for_encode(OutputStream *ost)
Definition: fftools_ffmpeg_hw.c:440
opt_channel_layout
int opt_channel_layout(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3222
uninit_options
void uninit_options(OptionsContext *o)
Definition: fftools_ffmpeg_opt.c:207
choose_encoder
int choose_encoder(OptionsContext *o, AVFormatContext *s, OutputStream *ost)
Definition: fftools_ffmpeg_opt.c:1444
configure_output_filter
int configure_output_filter(FilterGraph *fg, OutputFilter *ofilter, AVFilterInOut *out)
Definition: fftools_ffmpeg_filter.c:629
InputFile
struct InputFile InputFile
copy_tb
__thread int copy_tb
Definition: fftools_ffmpeg_opt.c:178
HWAccelID
HWAccelID
Definition: fftools_ffmpeg.h:82
HWACCEL_NONE
@ HWACCEL_NONE
Definition: fftools_ffmpeg.h:83
HWACCEL_GENERIC
@ HWACCEL_GENERIC
Definition: fftools_ffmpeg.h:85
HWACCEL_AUTO
@ HWACCEL_AUTO
Definition: fftools_ffmpeg.h:84
HWACCEL_VIDEOTOOLBOX
@ HWACCEL_VIDEOTOOLBOX
Definition: fftools_ffmpeg.h:86
opt_sdp_file
int opt_sdp_file(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:566
frame_bits_per_raw_sample
__thread int frame_bits_per_raw_sample
Definition: fftools_ffmpeg_opt.c:185
opt_timecode
int opt_timecode(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3208
new_unknown_stream
OutputStream * new_unknown_stream(OptionsContext *o, AVFormatContext *oc, int source_index)
Definition: fftools_ffmpeg_opt.c:2042
ifilter_parameters_from_frame
int ifilter_parameters_from_frame(InputFilter *ifilter, const AVFrame *frame)
Definition: fftools_ffmpeg_filter.c:1141
opt_vstats_file
int opt_vstats_file(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3017
input_streams
__thread InputStream ** input_streams
Definition: fftools_ffmpeg.c:176
parse_meta_type
void parse_meta_type(char *arg, char *type, int *index, const char **stream_spec)
Definition: fftools_ffmpeg_opt.c:641
copy_chapters
int copy_chapters(InputFile *ifile, OutputFile *ofile, int copy_metadata)
Definition: fftools_ffmpeg_opt.c:2113
int_cb
__thread const AVIOInterruptCB int_cb
Definition: fftools_ffmpeg.c:616
reset_options
void reset_options(OptionsContext *o, int is_input)
stats_period
__thread int64_t stats_period
Definition: fftools_ffmpeg_opt.c:191
opt_data_codec
int opt_data_codec(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:357
opt_streamid
int opt_streamid(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:2091
fftools_read_file
uint8_t * fftools_read_file(const char *filename)
Definition: fftools_ffmpeg_opt.c:1683
nb_input_streams
__thread int nb_input_streams
Definition: fftools_ffmpeg.c:177
term_exit
void term_exit(void)
Definition: fftools_ffmpeg.c:429
forced_keyframes_const_names
const char *const forced_keyframes_const_names[]
Definition: fftools_ffmpeg.c:142
opt_qscale
int opt_qscale(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3154
opt_sameq
int opt_sameq(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:318
output_streams
__thread OutputStream ** output_streams
Definition: fftools_ffmpeg.c:181
output_files
__thread OutputFile ** output_files
Definition: fftools_ffmpeg.c:183
opt_filter_complex_script
int opt_filter_complex_script(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3279
sdp_filename
__thread char * sdp_filename
Definition: fftools_ffmpeg_opt.c:161
strip_specifiers
AVDictionary * strip_specifiers(AVDictionary *dict)
Definition: fftools_ffmpeg_opt.c:267
opt_filter_complex
int opt_filter_complex(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3264
videotoolbox_init
int videotoolbox_init(AVCodecContext *s)
Definition: fftools_ffmpeg_videotoolbox.c:129
opt_vsync
int opt_vsync(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3196
nb_output_streams
__thread int nb_output_streams
Definition: fftools_ffmpeg.c:182
guess_input_channel_layout
int guess_input_channel_layout(InputStream *ist)
Definition: fftools_ffmpeg.c:2302
opt_output_file
void opt_output_file(void *optctx, const char *filename)
print_stats
__thread int print_stats
Definition: fftools_ffmpeg_opt.c:182
video_sync_method
__thread int video_sync_method
Definition: fftools_ffmpeg_opt.c:169
filter_complex_nbthreads
__thread int filter_complex_nbthreads
Definition: fftools_ffmpeg_opt.c:188
abort_on_flags
__thread int abort_on_flags
Definition: fftools_ffmpeg_opt.c:181
new_output_stream
OutputStream * new_output_stream(OptionsContext *o, AVFormatContext *oc, enum AVMediaType type, int source_index)
Definition: fftools_ffmpeg_opt.c:1479
nb_input_files
__thread int nb_input_files
Definition: fftools_ffmpeg.c:179
audio_volume
__thread int audio_volume
Definition: fftools_ffmpeg_opt.c:167
max_error_rate
__thread float max_error_rate
Definition: fftools_ffmpeg_opt.c:186
nb_output_files
__thread int nb_output_files
Definition: fftools_ffmpeg.c:184
new_video_stream
OutputStream * new_video_stream(OptionsContext *o, AVFormatContext *oc, int source_index)
Definition: fftools_ffmpeg_opt.c:1745
copy_ts
__thread int copy_ts
Definition: fftools_ffmpeg_opt.c:176
stdin_interaction
__thread int stdin_interaction
Definition: fftools_ffmpeg_opt.c:184
opt_subtitle_codec
int opt_subtitle_codec(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:351
dts_error_threshold
__thread float dts_error_threshold
Definition: fftools_ffmpeg_opt.c:165
opt_video_standard
int opt_video_standard(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:333
set_report_callback
void set_report_callback(void(*callback)(int, float, float, int64_t, int, double, double))
Definition: fftools_ffmpeg.c:5193
new_audio_stream
OutputStream * new_audio_stream(OptionsContext *o, AVFormatContext *oc, int source_index)
Definition: fftools_ffmpeg_opt.c:1956
hwaccel_decode_init
int hwaccel_decode_init(AVCodecContext *avctx)
Definition: fftools_ffmpeg_hw.c:537
hw_device_get_by_name
HWDevice * hw_device_get_by_name(const char *name)
Definition: fftools_ffmpeg_hw.c:53
open_input_file
int open_input_file(OptionsContext *o, const char *filename)
Definition: fftools_ffmpeg_opt.c:1109
opt_profile
int opt_profile(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3172
OSTFinished
OSTFinished
Definition: fftools_ffmpeg.h:473
ENCODER_FINISHED
@ ENCODER_FINISHED
Definition: fftools_ffmpeg.h:474
MUXER_FINISHED
@ MUXER_FINISHED
Definition: fftools_ffmpeg.h:475
filter_nbthreads
__thread int filter_nbthreads
Definition: fftools_ffmpeg_opt.c:187
opt_abort_on
int opt_abort_on(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:284
show_usage
void show_usage(void)
Definition: fftools_ffmpeg_opt.c:3369
choose_pixel_fmt
enum AVPixelFormat choose_pixel_fmt(AVStream *st, AVCodecContext *avctx, const AVCodec *codec, enum AVPixelFormat target)
Definition: fftools_ffmpeg_filter.c:65
opt_video_codec
int opt_video_codec(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:345
OutputFile
struct OutputFile OutputFile
opt_data_frames
int opt_data_frames(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3052
opt_video_filters
int opt_video_filters(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3184
FilterGraph
struct FilterGraph FilterGraph
opt_attach
int opt_attach(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:481
do_benchmark
__thread int do_benchmark
Definition: fftools_ffmpeg_opt.c:172
opt_filter_hw_device
int opt_filter_hw_device(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:620
frame_drop_threshold
__thread float frame_drop_threshold
Definition: fftools_ffmpeg_opt.c:170
vstats_version
__thread int vstats_version
Definition: fftools_ffmpeg_opt.c:189
vstats_filename
__thread char * vstats_filename
Definition: fftools_ffmpeg_opt.c:160
new_attachment_stream
OutputStream * new_attachment_stream(OptionsContext *o, AVFormatContext *oc, int source_index)
Definition: fftools_ffmpeg_opt.c:2055
do_deinterlace
__thread int do_deinterlace
Definition: fftools_ffmpeg_opt.c:171
opt_audio_frames
int opt_audio_frames(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3046
hw_device_setup_for_decode
int hw_device_setup_for_decode(InputStream *ist)
Definition: fftools_ffmpeg_hw.c:312
hw_device_free_all
void hw_device_free_all(void)
Definition: fftools_ffmpeg_hw.c:283
opt_target
int opt_target(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:2873
check_streamcopy_filters
void check_streamcopy_filters(OptionsContext *o, AVFormatContext *oc, const OutputStream *ost, enum AVMediaType type)
Definition: fftools_ffmpeg_opt.c:1731
audio_sync_method
__thread int audio_sync_method
Definition: fftools_ffmpeg_opt.c:168
get_line
uint8_t * get_line(AVIOContext *s)
Definition: fftools_ffmpeg_opt.c:1399
init_complex_filters
int init_complex_filters(void)
Definition: fftools_ffmpeg_opt.c:2198
hw_device_setup_for_filter
int hw_device_setup_for_filter(FilterGraph *fg)
Definition: fftools_ffmpeg_hw.c:546
init_simple_filtergraph
int init_simple_filtergraph(InputStream *ist, OutputStream *ost)
opt_map
int opt_map(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:363
audio_drift_threshold
__thread float audio_drift_threshold
Definition: fftools_ffmpeg_opt.c:163
cancel_operation
void cancel_operation(long id)
Definition: fftools_ffmpeg.c:5198
progress_avio
__thread AVIOContext * progress_avio
Definition: fftools_ffmpeg.c:172
input_files
__thread InputFile ** input_files
Definition: fftools_ffmpeg.c:178
sub2video_update
void sub2video_update(InputStream *ist, int64_t heartbeat_pts, AVSubtitle *sub)
Definition: fftools_ffmpeg.c:333
OutputStream
struct OutputStream OutputStream
do_benchmark_all
__thread int do_benchmark_all
Definition: fftools_ffmpeg_opt.c:173
opt_vstats
int opt_vstats(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3024
opt_video_channel
int opt_video_channel(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:327
filtergraphs
__thread FilterGraph ** filtergraphs
Definition: fftools_ffmpeg.c:186
ist_in_filtergraph
int ist_in_filtergraph(FilterGraph *fg, InputStream *ist)
start_at_zero
__thread int start_at_zero
Definition: fftools_ffmpeg_opt.c:177
parse_matrix_coeffs
void parse_matrix_coeffs(uint16_t *dest, const char *str)
Definition: fftools_ffmpeg_opt.c:1665
open_files
int open_files(OptionGroupList *l, const char *inout, int(*open_file)(OptionsContext *, const char *))
opt_video_frames
int opt_video_frames(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3040
find_codec_or_die
const AVCodec * find_codec_or_die(const char *name, enum AVMediaType type, int encoder)
Definition: fftools_ffmpeg_opt.c:773
assert_file_overwrite
void assert_file_overwrite(const char *filename)
Definition: fftools_ffmpeg_opt.c:1034
InputFilter
struct InputFilter InputFilter
opt_audio_filters
int opt_audio_filters(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3190
get_ost_filters
char * get_ost_filters(OptionsContext *o, AVFormatContext *oc, OutputStream *ost)
Definition: fftools_ffmpeg_opt.c:1711
forced_keyframes_const
forced_keyframes_const
Definition: fftools_ffmpeg.h:459
FKF_NB
@ FKF_NB
Definition: fftools_ffmpeg.h:465
FKF_PREV_FORCED_N
@ FKF_PREV_FORCED_N
Definition: fftools_ffmpeg.h:462
FKF_T
@ FKF_T
Definition: fftools_ffmpeg.h:464
FKF_PREV_FORCED_T
@ FKF_PREV_FORCED_T
Definition: fftools_ffmpeg.h:463
FKF_N_FORCED
@ FKF_N_FORCED
Definition: fftools_ffmpeg.h:461
FKF_N
@ FKF_N
Definition: fftools_ffmpeg.h:460
exit_on_error
__thread int exit_on_error
Definition: fftools_ffmpeg_opt.c:180
remove_avoptions
void remove_avoptions(AVDictionary **a, AVDictionary *b)
Definition: fftools_ffmpeg.c:781
choose_sample_fmt
void choose_sample_fmt(AVStream *st, const AVCodec *codec)
opt_audio_qscale
int opt_audio_qscale(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3258
get_preset_file_2
int get_preset_file_2(const char *preset_name, const char *codec_name, AVIOContext **s)
Definition: fftools_ffmpeg_opt.c:1418
ffmpeg_parse_options
int ffmpeg_parse_options(int argc, char **argv)
init_output_filter
void init_output_filter(OutputFilter *ofilter, OptionsContext *o, AVFormatContext *oc)
Definition: fftools_ffmpeg_opt.c:2156
StreamMap
struct StreamMap StreamMap
show_hwaccels
int show_hwaccels(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:254
filter_hw_device
__thread HWDevice * filter_hw_device
Definition: fftools_ffmpeg_opt.c:158
opt_preset
int opt_preset(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3078
new_data_stream
OutputStream * new_data_stream(OptionsContext *o, AVFormatContext *oc, int source_index)
Definition: fftools_ffmpeg_opt.c:2029
new_subtitle_stream
OutputStream * new_subtitle_stream(OptionsContext *o, AVFormatContext *oc, int source_index)
Definition: fftools_ffmpeg_opt.c:2063
qsv_init
int qsv_init(AVCodecContext *s)
OutputFilter
struct OutputFilter OutputFilter
opt_old2new
int opt_old2new(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3126
nb_filtergraphs
__thread int nb_filtergraphs
Definition: fftools_ffmpeg.c:187
term_init
void term_init(void)
Definition: fftools_ffmpeg.c:494
opt_stats_period
int opt_stats_period(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:303
add_input_streams
void add_input_streams(OptionsContext *o, AVFormatContext *ic)
Definition: fftools_ffmpeg_opt.c:819
qp_hist
__thread int qp_hist
Definition: fftools_ffmpeg_opt.c:183
OptionsContext
struct OptionsContext OptionsContext
opt_bitrate
int opt_bitrate(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3138
filtergraph_is_simple
int filtergraph_is_simple(FilterGraph *fg)
Definition: fftools_ffmpeg_filter.c:1164
hw_device_init_from_string
int hw_device_init_from_string(const char *arg, HWDevice **dev)
Definition: fftools_ffmpeg_hw.c:103
check_filter_outputs
void check_filter_outputs(void)
Definition: fftools_ffmpeg_filter.c:643
fftools_copy_metadata
int fftools_copy_metadata(char *outspec, char *inspec, AVFormatContext *oc, AVFormatContext *ic, OptionsContext *o)
Definition: fftools_ffmpeg_opt.c:668
HWAccel
struct HWAccel HWAccel
opt_default_new
int opt_default_new(OptionsContext *o, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:3058
HWDevice
struct HWDevice HWDevice
configure_filtergraph
int configure_filtergraph(FilterGraph *fg)
Definition: fftools_ffmpeg_filter.c:963
do_hex_dump
__thread int do_hex_dump
Definition: fftools_ffmpeg_opt.c:174
do_pkt_dump
__thread int do_pkt_dump
Definition: fftools_ffmpeg_opt.c:175
hwaccels
const HWAccel hwaccels[]
Definition: fftools_ffmpeg_opt.c:152
dump_attachment
void dump_attachment(AVStream *st, const char *filename)
Definition: fftools_ffmpeg_opt.c:1077
init_options
void init_options(OptionsContext *o)
Definition: fftools_ffmpeg_opt.c:239
debug_ts
__thread int debug_ts
Definition: fftools_ffmpeg_opt.c:179
opt_map_channel
int opt_map_channel(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:489
choose_decoder
const AVCodec * choose_decoder(OptionsContext *o, AVFormatContext *s, AVStream *st)
Definition: fftools_ffmpeg_opt.c:802
opt_progress
int opt_progress(void *optctx, const char *opt, const char *arg)
videotoolbox_pixfmt
__thread char * videotoolbox_pixfmt
Definition: fftools_ffmpeg_videotoolbox.c:35
open_output_file
int open_output_file(OptionsContext *o, const char *filename)
Definition: fftools_ffmpeg_opt.c:2210
opt_audio_codec
int opt_audio_codec(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:339
opt_recording_timestamp
int opt_recording_timestamp(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:758
auto_conversion_filters
__thread int auto_conversion_filters
Definition: fftools_ffmpeg_opt.c:190
assert_avoptions
void assert_avoptions(AVDictionary *m)
Definition: fftools_ffmpeg.c:790
InputStream
struct InputStream InputStream
opt_init_hw_device
int opt_init_hw_device(void *optctx, const char *opt, const char *arg)
Definition: fftools_ffmpeg_opt.c:605
init_complex_filtergraph
int init_complex_filtergraph(FilterGraph *fg)
Definition: fftools_ffmpeg_filter.c:314
ist
fg inputs[0] ist
Definition: fftools_ffmpeg_filter.c:191
ost
OutputStream * ost
Definition: fftools_ffmpeg_filter.c:172
int
int
Definition: fftools_ffmpeg_filter.c:165
index
fg index
Definition: fftools_ffmpeg_filter.c:177
AudioChannelMap
Definition: fftools_ffmpeg.h:112
AudioChannelMap::ofile_idx
int ofile_idx
Definition: fftools_ffmpeg.h:114
AudioChannelMap::channel_idx
int channel_idx
Definition: fftools_ffmpeg.h:113
FilterGraph
Definition: fftools_ffmpeg.h:311
FilterGraph::index
int index
Definition: fftools_ffmpeg.h:312
FilterGraph::reconfiguration
int reconfiguration
Definition: fftools_ffmpeg.h:316
FilterGraph::nb_outputs
int nb_outputs
Definition: fftools_ffmpeg.h:321
FilterGraph::outputs
OutputFilter ** outputs
Definition: fftools_ffmpeg.h:320
FilterGraph::nb_inputs
int nb_inputs
Definition: fftools_ffmpeg.h:319
FilterGraph::graph_desc
const char * graph_desc
Definition: fftools_ffmpeg.h:313
FilterGraph::graph
AVFilterGraph * graph
Definition: fftools_ffmpeg.h:315
FilterGraph::inputs
InputFilter ** inputs
Definition: fftools_ffmpeg.h:318
HWAccel
Definition: fftools_ffmpeg.h:89
HWAccel::id
enum HWAccelID id
Definition: fftools_ffmpeg.h:92
HWAccel::pix_fmt
enum AVPixelFormat pix_fmt
Definition: fftools_ffmpeg.h:93
HWAccel::init
int(* init)(AVCodecContext *s)
Definition: fftools_ffmpeg.h:91
HWAccel::name
const char * name
Definition: fftools_ffmpeg.h:90
HWDevice
Definition: fftools_ffmpeg.h:96
HWDevice::device_ref
AVBufferRef * device_ref
Definition: fftools_ffmpeg.h:99
HWDevice::type
enum AVHWDeviceType type
Definition: fftools_ffmpeg.h:98
HWDevice::name
const char * name
Definition: fftools_ffmpeg.h:97
InputFile
Definition: fftools_ffmpeg.h:425
InputFile::pkt
AVPacket * pkt
Definition: fftools_ffmpeg.h:448
InputFile::eagain
int eagain
Definition: fftools_ffmpeg.h:428
InputFile::ts_offset
int64_t ts_offset
Definition: fftools_ffmpeg.h:436
InputFile::duration
int64_t duration
Definition: fftools_ffmpeg.h:431
InputFile::accurate_seek
int accurate_seek
Definition: fftools_ffmpeg.h:446
InputFile::ctx
AVFormatContext * ctx
Definition: fftools_ffmpeg.h:426
InputFile::rate_emu
int rate_emu
Definition: fftools_ffmpeg.h:444
InputFile::input_ts_offset
int64_t input_ts_offset
Definition: fftools_ffmpeg.h:434
InputFile::loop
int loop
Definition: fftools_ffmpeg.h:430
InputFile::seek_timestamp
int seek_timestamp
Definition: fftools_ffmpeg.h:439
InputFile::recording_time
int64_t recording_time
Definition: fftools_ffmpeg.h:440
InputFile::time_base
AVRational time_base
Definition: fftools_ffmpeg.h:433
InputFile::eof_reached
int eof_reached
Definition: fftools_ffmpeg.h:427
InputFile::nb_streams_warn
int nb_streams_warn
Definition: fftools_ffmpeg.h:443
InputFile::last_ts
int64_t last_ts
Definition: fftools_ffmpeg.h:437
InputFile::ist_index
int ist_index
Definition: fftools_ffmpeg.h:429
InputFile::readrate
float readrate
Definition: fftools_ffmpeg.h:445
InputFile::start_time
int64_t start_time
Definition: fftools_ffmpeg.h:438
InputFile::nb_streams
int nb_streams
Definition: fftools_ffmpeg.h:441
InputFilter
Definition: fftools_ffmpeg.h:264
InputFilter::hw_frames_ctx
AVBufferRef * hw_frames_ctx
Definition: fftools_ffmpeg.h:283
InputFilter::name
uint8_t * name
Definition: fftools_ffmpeg.h:268
InputFilter::sample_rate
int sample_rate
Definition: fftools_ffmpeg.h:279
InputFilter::height
int height
Definition: fftools_ffmpeg.h:276
InputFilter::ist
struct InputStream * ist
Definition: fftools_ffmpeg.h:266
InputFilter::filter
AVFilterContext * filter
Definition: fftools_ffmpeg.h:265
InputFilter::type
enum AVMediaType type
Definition: fftools_ffmpeg.h:269
InputFilter::frame_queue
AVFifoBuffer * frame_queue
Definition: fftools_ffmpeg.h:271
InputFilter::channel_layout
uint64_t channel_layout
Definition: fftools_ffmpeg.h:281
InputFilter::graph
struct FilterGraph * graph
Definition: fftools_ffmpeg.h:267
InputFilter::sample_aspect_ratio
AVRational sample_aspect_ratio
Definition: fftools_ffmpeg.h:277
InputFilter::eof
int eof
Definition: fftools_ffmpeg.h:285
InputFilter::channels
int channels
Definition: fftools_ffmpeg.h:280
InputFilter::format
int format
Definition: fftools_ffmpeg.h:274
InputFilter::width
int width
Definition: fftools_ffmpeg.h:276
InputStream::sub2video
Definition: fftools_ffmpeg.h:377
InputStream::sub2video::w
int w
Definition: fftools_ffmpeg.h:382
InputStream::sub2video::frame
AVFrame * frame
Definition: fftools_ffmpeg.h:381
InputStream::sub2video::initialize
unsigned int initialize
marks if sub2video_update should force an initialization
Definition: fftools_ffmpeg.h:383
InputStream::sub2video::last_pts
int64_t last_pts
Definition: fftools_ffmpeg.h:378
InputStream::sub2video::end_pts
int64_t end_pts
Definition: fftools_ffmpeg.h:379
InputStream::sub2video::sub_queue
AVFifoBuffer * sub_queue
queue of AVSubtitle* before filter init
Definition: fftools_ffmpeg.h:380
InputStream::sub2video::h
int h
Definition: fftools_ffmpeg.h:382
InputStream
Definition: fftools_ffmpeg.h:324
InputStream::hwaccel_pix_fmt
enum AVPixelFormat hwaccel_pix_fmt
Definition: fftools_ffmpeg.h:406
InputStream::saw_first_ts
int saw_first_ts
Definition: fftools_ffmpeg.h:362
InputStream::ts_scale
double ts_scale
Definition: fftools_ffmpeg.h:361
InputStream::decoded_frame
AVFrame * decoded_frame
Definition: fftools_ffmpeg.h:335
InputStream::dts_buffer
int64_t * dts_buffer
Definition: fftools_ffmpeg.h:419
InputStream::dts
int64_t dts
dts of the last packet read for this stream (in AV_TIME_BASE units)
Definition: fftools_ffmpeg.h:344
InputStream::fix_sub_duration
int fix_sub_duration
Definition: fftools_ffmpeg.h:370
InputStream::hwaccel_output_format
enum AVPixelFormat hwaccel_output_format
Definition: fftools_ffmpeg.h:399
InputStream::cfr_next_pts
int64_t cfr_next_pts
Definition: fftools_ffmpeg.h:357
InputStream::got_output
int got_output
Definition: fftools_ffmpeg.h:372
InputStream::hwaccel_uninit
void(* hwaccel_uninit)(AVCodecContext *s)
Definition: fftools_ffmpeg.h:403
InputStream::nb_dts_buffer
int nb_dts_buffer
Definition: fftools_ffmpeg.h:420
InputStream::dec_ctx
AVCodecContext * dec_ctx
Definition: fftools_ffmpeg.h:333
InputStream::pts
int64_t pts
current pts of the decoded frame (in AV_TIME_BASE units)
Definition: fftools_ffmpeg.h:347
InputStream::hw_frames_ctx
AVBufferRef * hw_frames_ctx
Definition: fftools_ffmpeg.h:408
InputStream::prev_sub
struct InputStream::@2 prev_sub
InputStream::start
int64_t start
Definition: fftools_ffmpeg.h:339
InputStream::dr1
int dr1
Definition: fftools_ffmpeg.h:386
InputStream::ret
int ret
Definition: fftools_ffmpeg.h:373
InputStream::hwaccel_id
enum HWAccelID hwaccel_id
Definition: fftools_ffmpeg.h:396
InputStream::data_size
uint64_t data_size
Definition: fftools_ffmpeg.h:412
InputStream::hwaccel_get_buffer
int(* hwaccel_get_buffer)(AVCodecContext *s, AVFrame *frame, int flags)
Definition: fftools_ffmpeg.h:404
InputStream::nb_filters
int nb_filters
Definition: fftools_ffmpeg.h:391
InputStream::filter_in_rescale_delta_last
int64_t filter_in_rescale_delta_last
Definition: fftools_ffmpeg.h:350
InputStream::next_dts
int64_t next_dts
Definition: fftools_ffmpeg.h:342
InputStream::reinit_filters
int reinit_filters
Definition: fftools_ffmpeg.h:393
InputStream::user_set_discard
int user_set_discard
Definition: fftools_ffmpeg.h:328
InputStream::wrap_correction_done
int wrap_correction_done
Definition: fftools_ffmpeg.h:348
InputStream::max_pts
int64_t max_pts
Definition: fftools_ffmpeg.h:353
InputStream::hwaccel_retrieved_pix_fmt
enum AVPixelFormat hwaccel_retrieved_pix_fmt
Definition: fftools_ffmpeg.h:407
InputStream::guess_layout_max
int guess_layout_max
Definition: fftools_ffmpeg.h:366
InputStream::pkt
AVPacket * pkt
Definition: fftools_ffmpeg.h:337
InputStream::filter_frame
AVFrame * filter_frame
Definition: fftools_ffmpeg.h:336
InputStream::hwaccel_ctx
void * hwaccel_ctx
Definition: fftools_ffmpeg.h:402
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:343
InputStream::samples_decoded
uint64_t samples_decoded
Definition: fftools_ffmpeg.h:417
InputStream::next_pts
int64_t next_pts
synthetic pts for the next decode frame (in AV_TIME_BASE units)
Definition: fftools_ffmpeg.h:346
InputStream::top_field_first
int top_field_first
Definition: fftools_ffmpeg.h:365
InputStream::autorotate
int autorotate
Definition: fftools_ffmpeg.h:368
InputStream::discard
int discard
Definition: fftools_ffmpeg.h:327
InputStream::frames_decoded
uint64_t frames_decoded
Definition: fftools_ffmpeg.h:416
InputStream::decoding_needed
int decoding_needed
Definition: fftools_ffmpeg.h:329
InputStream::sub2video
struct InputStream::sub2video sub2video
InputStream::st
AVStream * st
Definition: fftools_ffmpeg.h:326
InputStream::file_index
int file_index
Definition: fftools_ffmpeg.h:325
InputStream::filters
InputFilter ** filters
Definition: fftools_ffmpeg.h:390
InputStream::hwaccel_retrieve_data
int(* hwaccel_retrieve_data)(AVCodecContext *s, AVFrame *frame)
Definition: fftools_ffmpeg.h:405
InputStream::nb_packets
uint64_t nb_packets
Definition: fftools_ffmpeg.h:414
InputStream::subtitle
AVSubtitle subtitle
Definition: fftools_ffmpeg.h:374
InputStream::hwaccel_device
char * hwaccel_device
Definition: fftools_ffmpeg.h:398
InputStream::decoder_opts
AVDictionary * decoder_opts
Definition: fftools_ffmpeg.h:363
InputStream::min_pts
int64_t min_pts
Definition: fftools_ffmpeg.h:352
InputStream::dec
const AVCodec * dec
Definition: fftools_ffmpeg.h:334
InputStream::hwaccel_device_type
enum AVHWDeviceType hwaccel_device_type
Definition: fftools_ffmpeg.h:397
InputStream::nb_samples
int64_t nb_samples
Definition: fftools_ffmpeg.h:359
InputStream::framerate
AVRational framerate
Definition: fftools_ffmpeg.h:364
OptionGroup
Definition: fftools_cmdutils.h:300
OptionGroupList
Definition: fftools_cmdutils.h:318
OptionsContext
Definition: fftools_ffmpeg.h:117
OptionsContext::nb_codec_tags
int nb_codec_tags
Definition: fftools_ffmpeg.h:199
OptionsContext::metadata_map
SpecifierOpt * metadata_map
Definition: fftools_ffmpeg.h:220
OptionsContext::nb_pass
int nb_pass
Definition: fftools_ffmpeg.h:239
OptionsContext::nb_copy_initial_nonkeyframes
int nb_copy_initial_nonkeyframes
Definition: fftools_ffmpeg.h:225
OptionsContext::mux_preload
float mux_preload
Definition: fftools_ffmpeg.h:178
OptionsContext::frame_pix_fmts
SpecifierOpt * frame_pix_fmts
Definition: fftools_ffmpeg.h:138
OptionsContext::dump_attachment
SpecifierOpt * dump_attachment
Definition: fftools_ffmpeg.h:151
OptionsContext::autoscale
SpecifierOpt * autoscale
Definition: fftools_ffmpeg.h:260
OptionsContext::nb_chroma_intra_matrices
int nb_chroma_intra_matrices
Definition: fftools_ffmpeg.h:217
OptionsContext::nb_reinit_filters
int nb_reinit_filters
Definition: fftools_ffmpeg.h:233
OptionsContext::nb_stream_maps
int nb_stream_maps
Definition: fftools_ffmpeg.h:164
OptionsContext::nb_muxing_queue_data_threshold
int nb_muxing_queue_data_threshold
Definition: fftools_ffmpeg.h:245
OptionsContext::nb_max_frame_rates
int nb_max_frame_rates
Definition: fftools_ffmpeg.h:135
OptionsContext::frame_aspect_ratios
SpecifierOpt * frame_aspect_ratios
Definition: fftools_ffmpeg.h:208
OptionsContext::pass
SpecifierOpt * pass
Definition: fftools_ffmpeg.h:238
OptionsContext::bitexact
int bitexact
Definition: fftools_ffmpeg.h:181
OptionsContext::filter_scripts
SpecifierOpt * filter_scripts
Definition: fftools_ffmpeg.h:230
OptionsContext::copy_initial_nonkeyframes
SpecifierOpt * copy_initial_nonkeyframes
Definition: fftools_ffmpeg.h:224
OptionsContext::guess_layout_max
SpecifierOpt * guess_layout_max
Definition: fftools_ffmpeg.h:246
OptionsContext::start_time
int64_t start_time
Definition: fftools_ffmpeg.h:121
OptionsContext::format
const char * format
Definition: fftools_ffmpeg.h:124
OptionsContext::nb_streamid_map
int nb_streamid_map
Definition: fftools_ffmpeg.h:190
OptionsContext::enc_time_bases
SpecifierOpt * enc_time_bases
Definition: fftools_ffmpeg.h:258
OptionsContext::max_frame_rates
SpecifierOpt * max_frame_rates
Definition: fftools_ffmpeg.h:134
OptionsContext::input_ts_offset
int64_t input_ts_offset
Definition: fftools_ffmpeg.h:142
OptionsContext::audio_sample_rate
SpecifierOpt * audio_sample_rate
Definition: fftools_ffmpeg.h:130
OptionsContext::nb_audio_channel_maps
int nb_audio_channel_maps
Definition: fftools_ffmpeg.h:166
OptionsContext::rate_emu
int rate_emu
Definition: fftools_ffmpeg.h:144
OptionsContext::nb_frame_rates
int nb_frame_rates
Definition: fftools_ffmpeg.h:133
OptionsContext::nb_passlogfiles
int nb_passlogfiles
Definition: fftools_ffmpeg.h:241
OptionsContext::nb_time_bases
int nb_time_bases
Definition: fftools_ffmpeg.h:257
OptionsContext::nb_attachments
int nb_attachments
Definition: fftools_ffmpeg.h:171
OptionsContext::max_frames
SpecifierOpt * max_frames
Definition: fftools_ffmpeg.h:194
OptionsContext::nb_intra_matrices
int nb_intra_matrices
Definition: fftools_ffmpeg.h:213
OptionsContext::metadata_global_manual
int metadata_global_manual
Definition: fftools_ffmpeg.h:167
OptionsContext::nb_hwaccel_devices
int nb_hwaccel_devices
Definition: fftools_ffmpeg.h:156
OptionsContext::nb_codec_names
int nb_codec_names
Definition: fftools_ffmpeg.h:127
OptionsContext::stream_maps
StreamMap * stream_maps
Definition: fftools_ffmpeg.h:163
OptionsContext::frame_sizes
SpecifierOpt * frame_sizes
Definition: fftools_ffmpeg.h:136
OptionsContext::muxing_queue_data_threshold
SpecifierOpt * muxing_queue_data_threshold
Definition: fftools_ffmpeg.h:244
OptionsContext::discard
SpecifierOpt * discard
Definition: fftools_ffmpeg.h:250
OptionsContext::forced_key_frames
SpecifierOpt * forced_key_frames
Definition: fftools_ffmpeg.h:204
OptionsContext::nb_max_frames
int nb_max_frames
Definition: fftools_ffmpeg.h:195
OptionsContext::nb_metadata
int nb_metadata
Definition: fftools_ffmpeg.h:193
OptionsContext::nb_rc_overrides
int nb_rc_overrides
Definition: fftools_ffmpeg.h:211
OptionsContext::hwaccel_devices
SpecifierOpt * hwaccel_devices
Definition: fftools_ffmpeg.h:155
OptionsContext::nb_discard
int nb_discard
Definition: fftools_ffmpeg.h:251
OptionsContext::accurate_seek
int accurate_seek
Definition: fftools_ffmpeg.h:146
OptionsContext::metadata_streams_manual
int metadata_streams_manual
Definition: fftools_ffmpeg.h:168
OptionsContext::filters
SpecifierOpt * filters
Definition: fftools_ffmpeg.h:228
OptionsContext::nb_top_field_first
int nb_top_field_first
Definition: fftools_ffmpeg.h:219
OptionsContext::readrate
float readrate
Definition: fftools_ffmpeg.h:145
OptionsContext::nb_autorotate
int nb_autorotate
Definition: fftools_ffmpeg.h:160
OptionsContext::metadata
SpecifierOpt * metadata
Definition: fftools_ffmpeg.h:192
OptionsContext::nb_canvas_sizes
int nb_canvas_sizes
Definition: fftools_ffmpeg.h:237
OptionsContext::nb_frame_sizes
int nb_frame_sizes
Definition: fftools_ffmpeg.h:137
OptionsContext::autorotate
SpecifierOpt * autorotate
Definition: fftools_ffmpeg.h:159
OptionsContext::nb_dump_attachment
int nb_dump_attachment
Definition: fftools_ffmpeg.h:152
OptionsContext::recording_time
int64_t recording_time
Definition: fftools_ffmpeg.h:175
OptionsContext::disposition
SpecifierOpt * disposition
Definition: fftools_ffmpeg.h:252
OptionsContext::nb_frame_aspect_ratios
int nb_frame_aspect_ratios
Definition: fftools_ffmpeg.h:209
OptionsContext::nb_fix_sub_duration
int nb_fix_sub_duration
Definition: fftools_ffmpeg.h:235
OptionsContext::nb_forced_key_frames
int nb_forced_key_frames
Definition: fftools_ffmpeg.h:205
OptionsContext::nb_metadata_map
int nb_metadata_map
Definition: fftools_ffmpeg.h:221
OptionsContext::nb_disposition
int nb_disposition
Definition: fftools_ffmpeg.h:253
OptionsContext::limit_filesize
uint64_t limit_filesize
Definition: fftools_ffmpeg.h:177
OptionsContext::nb_audio_channels
int nb_audio_channels
Definition: fftools_ffmpeg.h:129
OptionsContext::nb_apad
int nb_apad
Definition: fftools_ffmpeg.h:249
OptionsContext::sample_fmts
SpecifierOpt * sample_fmts
Definition: fftools_ffmpeg.h:200
OptionsContext::audio_channels
SpecifierOpt * audio_channels
Definition: fftools_ffmpeg.h:128
OptionsContext::codec_names
SpecifierOpt * codec_names
Definition: fftools_ffmpeg.h:126
OptionsContext::start_time_eof
int64_t start_time_eof
Definition: fftools_ffmpeg.h:122
OptionsContext::canvas_sizes
SpecifierOpt * canvas_sizes
Definition: fftools_ffmpeg.h:236
OptionsContext::reinit_filters
SpecifierOpt * reinit_filters
Definition: fftools_ffmpeg.h:232
OptionsContext::thread_queue_size
int thread_queue_size
Definition: fftools_ffmpeg.h:147
OptionsContext::passlogfiles
SpecifierOpt * passlogfiles
Definition: fftools_ffmpeg.h:240
OptionsContext::data_disable
int data_disable
Definition: fftools_ffmpeg.h:186
OptionsContext::frame_rates
SpecifierOpt * frame_rates
Definition: fftools_ffmpeg.h:132
OptionsContext::chapters_input_file
int chapters_input_file
Definition: fftools_ffmpeg.h:173
OptionsContext::streamid_map
int * streamid_map
Definition: fftools_ffmpeg.h:189
OptionsContext::video_disable
int video_disable
Definition: fftools_ffmpeg.h:183
OptionsContext::nb_force_fps
int nb_force_fps
Definition: fftools_ffmpeg.h:207
OptionsContext::audio_disable
int audio_disable
Definition: fftools_ffmpeg.h:184
OptionsContext::intra_matrices
SpecifierOpt * intra_matrices
Definition: fftools_ffmpeg.h:212
OptionsContext::nb_inter_matrices
int nb_inter_matrices
Definition: fftools_ffmpeg.h:215
OptionsContext::nb_enc_time_bases
int nb_enc_time_bases
Definition: fftools_ffmpeg.h:259
OptionsContext::apad
SpecifierOpt * apad
Definition: fftools_ffmpeg.h:248
OptionsContext::chroma_intra_matrices
SpecifierOpt * chroma_intra_matrices
Definition: fftools_ffmpeg.h:216
OptionsContext::nb_hwaccel_output_formats
int nb_hwaccel_output_formats
Definition: fftools_ffmpeg.h:158
OptionsContext::top_field_first
SpecifierOpt * top_field_first
Definition: fftools_ffmpeg.h:218
OptionsContext::metadata_chapters_manual
int metadata_chapters_manual
Definition: fftools_ffmpeg.h:169
OptionsContext::nb_presets
int nb_presets
Definition: fftools_ffmpeg.h:223
OptionsContext::nb_program
int nb_program
Definition: fftools_ffmpeg.h:255
OptionsContext::force_fps
SpecifierOpt * force_fps
Definition: fftools_ffmpeg.h:206
OptionsContext::qscale
SpecifierOpt * qscale
Definition: fftools_ffmpeg.h:202
OptionsContext::copy_prior_start
SpecifierOpt * copy_prior_start
Definition: fftools_ffmpeg.h:226
OptionsContext::max_muxing_queue_size
SpecifierOpt * max_muxing_queue_size
Definition: fftools_ffmpeg.h:242
OptionsContext::stop_time
int64_t stop_time
Definition: fftools_ffmpeg.h:176
OptionsContext::nb_sample_fmts
int nb_sample_fmts
Definition: fftools_ffmpeg.h:201
OptionsContext::rc_overrides
SpecifierOpt * rc_overrides
Definition: fftools_ffmpeg.h:210
OptionsContext::attachments
const char ** attachments
Definition: fftools_ffmpeg.h:170
OptionsContext::nb_copy_prior_start
int nb_copy_prior_start
Definition: fftools_ffmpeg.h:227
OptionsContext::hwaccels
SpecifierOpt * hwaccels
Definition: fftools_ffmpeg.h:153
OptionsContext::nb_filter_scripts
int nb_filter_scripts
Definition: fftools_ffmpeg.h:231
OptionsContext::nb_qscale
int nb_qscale
Definition: fftools_ffmpeg.h:203
OptionsContext::program
SpecifierOpt * program
Definition: fftools_ffmpeg.h:254
OptionsContext::nb_frame_pix_fmts
int nb_frame_pix_fmts
Definition: fftools_ffmpeg.h:139
OptionsContext::loop
int loop
Definition: fftools_ffmpeg.h:143
OptionsContext::mux_max_delay
float mux_max_delay
Definition: fftools_ffmpeg.h:179
OptionsContext::codec_tags
SpecifierOpt * codec_tags
Definition: fftools_ffmpeg.h:198
OptionsContext::time_bases
SpecifierOpt * time_bases
Definition: fftools_ffmpeg.h:256
OptionsContext::shortest
int shortest
Definition: fftools_ffmpeg.h:180
OptionsContext::presets
SpecifierOpt * presets
Definition: fftools_ffmpeg.h:222
OptionsContext::ts_scale
SpecifierOpt * ts_scale
Definition: fftools_ffmpeg.h:149
OptionsContext::nb_audio_sample_rate
int nb_audio_sample_rate
Definition: fftools_ffmpeg.h:131
OptionsContext::nb_hwaccels
int nb_hwaccels
Definition: fftools_ffmpeg.h:154
OptionsContext::fix_sub_duration
SpecifierOpt * fix_sub_duration
Definition: fftools_ffmpeg.h:234
OptionsContext::inter_matrices
SpecifierOpt * inter_matrices
Definition: fftools_ffmpeg.h:214
OptionsContext::hwaccel_output_formats
SpecifierOpt * hwaccel_output_formats
Definition: fftools_ffmpeg.h:157
OptionsContext::nb_autoscale
int nb_autoscale
Definition: fftools_ffmpeg.h:261
OptionsContext::subtitle_disable
int subtitle_disable
Definition: fftools_ffmpeg.h:185
OptionsContext::nb_bitstream_filters
int nb_bitstream_filters
Definition: fftools_ffmpeg.h:197
OptionsContext::nb_guess_layout_max
int nb_guess_layout_max
Definition: fftools_ffmpeg.h:247
OptionsContext::seek_timestamp
int seek_timestamp
Definition: fftools_ffmpeg.h:123
OptionsContext::bitstream_filters
SpecifierOpt * bitstream_filters
Definition: fftools_ffmpeg.h:196
OptionsContext::nb_max_muxing_queue_size
int nb_max_muxing_queue_size
Definition: fftools_ffmpeg.h:243
OptionsContext::nb_ts_scale
int nb_ts_scale
Definition: fftools_ffmpeg.h:150
OptionsContext::audio_channel_maps
AudioChannelMap * audio_channel_maps
Definition: fftools_ffmpeg.h:165
OptionsContext::g
OptionGroup * g
Definition: fftools_ffmpeg.h:118
OptionsContext::nb_filters
int nb_filters
Definition: fftools_ffmpeg.h:229
OutputFile
Definition: fftools_ffmpeg.h:602
OutputFile::limit_filesize
uint64_t limit_filesize
Definition: fftools_ffmpeg.h:608
OutputFile::ctx
AVFormatContext * ctx
Definition: fftools_ffmpeg.h:603
OutputFile::header_written
int header_written
Definition: fftools_ffmpeg.h:612
OutputFile::start_time
int64_t start_time
start time in microseconds == AV_TIME_BASE units
Definition: fftools_ffmpeg.h:607
OutputFile::opts
AVDictionary * opts
Definition: fftools_ffmpeg.h:604
OutputFile::ost_index
int ost_index
Definition: fftools_ffmpeg.h:605
OutputFile::shortest
int shortest
Definition: fftools_ffmpeg.h:610
OutputFile::recording_time
int64_t recording_time
desired length of the resulting file in microseconds == AV_TIME_BASE units
Definition: fftools_ffmpeg.h:606
OutputFilter
Definition: fftools_ffmpeg.h:288
OutputFilter::width
int width
Definition: fftools_ffmpeg.h:299
OutputFilter::out_tmp
AVFilterInOut * out_tmp
Definition: fftools_ffmpeg.h:295
OutputFilter::ost
struct OutputStream * ost
Definition: fftools_ffmpeg.h:290
OutputFilter::channel_layouts
uint64_t * channel_layouts
Definition: fftools_ffmpeg.h:307
OutputFilter::filter
AVFilterContext * filter
Definition: fftools_ffmpeg.h:289
OutputFilter::name
uint8_t * name
Definition: fftools_ffmpeg.h:292
OutputFilter::sample_rates
int * sample_rates
Definition: fftools_ffmpeg.h:308
OutputFilter::graph
struct FilterGraph * graph
Definition: fftools_ffmpeg.h:291
OutputFilter::height
int height
Definition: fftools_ffmpeg.h:299
OutputFilter::sample_rate
int sample_rate
Definition: fftools_ffmpeg.h:302
OutputFilter::formats
int * formats
Definition: fftools_ffmpeg.h:306
OutputFilter::frame_rate
AVRational frame_rate
Definition: fftools_ffmpeg.h:300
OutputFilter::channel_layout
uint64_t channel_layout
Definition: fftools_ffmpeg.h:303
OutputFilter::format
int format
Definition: fftools_ffmpeg.h:301
OutputFilter::type
enum AVMediaType type
Definition: fftools_ffmpeg.h:296
OutputStream
Definition: fftools_ffmpeg.h:478
OutputStream::max_muxing_queue_size
int max_muxing_queue_size
Definition: fftools_ffmpeg.h:581
OutputStream::last_dropped
int last_dropped
Definition: fftools_ffmpeg.h:507
OutputStream::swr_opts
AVDictionary * swr_opts
Definition: fftools_ffmpeg.h:548
OutputStream::copy_initial_nonkeyframes
int copy_initial_nonkeyframes
Definition: fftools_ffmpeg.h:563
OutputStream::last_mux_dts
int64_t last_mux_dts
Definition: fftools_ffmpeg.h:493
OutputStream::top_field_first
int top_field_first
Definition: fftools_ffmpeg.h:517
OutputStream::mux_timebase
AVRational mux_timebase
Definition: fftools_ffmpeg.h:495
OutputStream::source_index
int source_index
Definition: fftools_ffmpeg.h:481
OutputStream::forced_keyframes_expr_const_values
double forced_keyframes_expr_const_values[FKF_NB]
Definition: fftools_ffmpeg.h:531
OutputStream::finished
OSTFinished finished
Definition: fftools_ffmpeg.h:551
OutputStream::initialized
int initialized
Definition: fftools_ffmpeg.h:558
OutputStream::audio_channels_map
int * audio_channels_map
Definition: fftools_ffmpeg.h:535
OutputStream::pkt
AVPacket * pkt
Definition: fftools_ffmpeg.h:506
OutputStream::frame_aspect_ratio
AVRational frame_aspect_ratio
Definition: fftools_ffmpeg.h:522
OutputStream::rotate_override_value
double rotate_override_value
Definition: fftools_ffmpeg.h:520
OutputStream::last_frame
AVFrame * last_frame
Definition: fftools_ffmpeg.h:505
OutputStream::autoscale
int autoscale
Definition: fftools_ffmpeg.h:519
OutputStream::enc
const AVCodec * enc
Definition: fftools_ffmpeg.h:502
OutputStream::unavailable
int unavailable
Definition: fftools_ffmpeg.h:552
OutputStream::audio_channels_mapped
int audio_channels_mapped
Definition: fftools_ffmpeg.h:536
OutputStream::sync_opts
int64_t sync_opts
Definition: fftools_ffmpeg.h:488
OutputStream::force_fps
int force_fps
Definition: fftools_ffmpeg.h:516
OutputStream::forced_kf_pts
int64_t * forced_kf_pts
Definition: fftools_ffmpeg.h:526
OutputStream::error
int64_t error[4]
Definition: fftools_ffmpeg.h:599
OutputStream::packets_written
uint64_t packets_written
Definition: fftools_ffmpeg.h:573
OutputStream::pict_type
int pict_type
Definition: fftools_ffmpeg.h:596
OutputStream::frames_encoded
uint64_t frames_encoded
Definition: fftools_ffmpeg.h:575
OutputStream::max_frames
int64_t max_frames
Definition: fftools_ffmpeg.h:503
OutputStream::muxing_queue_data_threshold
size_t muxing_queue_data_threshold
Definition: fftools_ffmpeg.h:593
OutputStream::forced_kf_index
int forced_kf_index
Definition: fftools_ffmpeg.h:528
OutputStream::apad
char * apad
Definition: fftools_ffmpeg.h:550
OutputStream::dropped_keyframe
int dropped_keyframe
Definition: fftools_ffmpeg.h:532
OutputStream::inputs_done
int inputs_done
Definition: fftools_ffmpeg.h:560
OutputStream::resample_opts
AVDictionary * resample_opts
Definition: fftools_ffmpeg.h:549
OutputStream::max_frame_rate
AVRational max_frame_rate
Definition: fftools_ffmpeg.h:514
OutputStream::quality
int quality
Definition: fftools_ffmpeg.h:579
OutputStream::enc_timebase
AVRational enc_timebase
Definition: fftools_ffmpeg.h:496
OutputStream::stream_copy
int stream_copy
Definition: fftools_ffmpeg.h:553
OutputStream::muxing_queue
AVFifoBuffer * muxing_queue
Definition: fftools_ffmpeg.h:584
OutputStream::is_cfr
int is_cfr
Definition: fftools_ffmpeg.h:515
OutputStream::ref_par
AVCodecParameters * ref_par
Definition: fftools_ffmpeg.h:501
OutputStream::forced_keyframes
char * forced_keyframes
Definition: fftools_ffmpeg.h:529
OutputStream::filtered_frame
AVFrame * filtered_frame
Definition: fftools_ffmpeg.h:504
OutputStream::attachment_filename
const char * attachment_filename
Definition: fftools_ffmpeg.h:562
OutputStream::frame_rate
AVRational frame_rate
Definition: fftools_ffmpeg.h:513
OutputStream::copy_prior_start
int copy_prior_start
Definition: fftools_ffmpeg.h:564
OutputStream::enc_ctx
AVCodecContext * enc_ctx
Definition: fftools_ffmpeg.h:500
OutputStream::sync_ist
struct InputStream * sync_ist
Definition: fftools_ffmpeg.h:487
OutputStream::encoding_needed
int encoding_needed
Definition: fftools_ffmpeg.h:483
OutputStream::encoder_opts
AVDictionary * encoder_opts
Definition: fftools_ffmpeg.h:546
OutputStream::data_size
uint64_t data_size
Definition: fftools_ffmpeg.h:571
OutputStream::st
AVStream * st
Definition: fftools_ffmpeg.h:482
OutputStream::filters
char * filters
filtergraph associated to the -filter option
Definition: fftools_ffmpeg.h:543
OutputStream::avfilter
char * avfilter
Definition: fftools_ffmpeg.h:542
OutputStream::forced_kf_ref_pts
int64_t forced_kf_ref_pts
Definition: fftools_ffmpeg.h:525
OutputStream::samples_encoded
uint64_t samples_encoded
Definition: fftools_ffmpeg.h:576
OutputStream::filters_script
char * filters_script
filtergraph script associated to the -filter_script option
Definition: fftools_ffmpeg.h:544
OutputStream::bsf_ctx
AVBSFContext * bsf_ctx
Definition: fftools_ffmpeg.h:498
OutputStream::first_pts
int64_t first_pts
Definition: fftools_ffmpeg.h:491
OutputStream::hwaccel_ctx
void * hwaccel_ctx
Definition: fftools_ffmpeg.h:510
OutputStream::sws_dict
AVDictionary * sws_dict
Definition: fftools_ffmpeg.h:547
OutputStream::forced_kf_count
int forced_kf_count
Definition: fftools_ffmpeg.h:527
OutputStream::filter
OutputFilter * filter
Definition: fftools_ffmpeg.h:541
OutputStream::disposition
char * disposition
Definition: fftools_ffmpeg.h:565
OutputStream::index
int index
Definition: fftools_ffmpeg.h:480
OutputStream::rotate_overridden
int rotate_overridden
Definition: fftools_ffmpeg.h:518
OutputStream::forced_keyframes_pexpr
AVExpr * forced_keyframes_pexpr
Definition: fftools_ffmpeg.h:530
OutputStream::keep_pix_fmt
int keep_pix_fmt
Definition: fftools_ffmpeg.h:567
OutputStream::muxing_queue_data_size
size_t muxing_queue_data_size
Definition: fftools_ffmpeg.h:590
OutputStream::logfile
FILE * logfile
Definition: fftools_ffmpeg.h:539
OutputStream::last_nb0_frames
int last_nb0_frames[3]
Definition: fftools_ffmpeg.h:508
OutputStream::file_index
int file_index
Definition: fftools_ffmpeg.h:479
OutputStream::frame_number
int frame_number
Definition: fftools_ffmpeg.h:484
OutputStream::logfile_prefix
char * logfile_prefix
Definition: fftools_ffmpeg.h:538
SpecifierOpt
Definition: fftools_cmdutils.h:178
StreamMap
Definition: fftools_ffmpeg.h:103
StreamMap::stream_index
int stream_index
Definition: fftools_ffmpeg.h:106
StreamMap::disabled
int disabled
Definition: fftools_ffmpeg.h:104
StreamMap::sync_stream_index
int sync_stream_index
Definition: fftools_ffmpeg.h:108
StreamMap::linklabel
char * linklabel
Definition: fftools_ffmpeg.h:109
StreamMap::sync_file_index
int sync_file_index
Definition: fftools_ffmpeg.h:107
StreamMap::file_index
int file_index
Definition: fftools_ffmpeg.h:105