Libav
avconv.h
Go to the documentation of this file.
1 /*
2  * This file is part of Libav.
3  *
4  * Libav 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  * Libav 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 Libav; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17  */
18 
19 #ifndef AVCONV_H
20 #define AVCONV_H
21 
22 #include "config.h"
23 
24 #include <stdint.h>
25 #include <stdio.h>
26 
27 #if HAVE_PTHREADS
28 #include <pthread.h>
29 #endif
30 
31 #include "cmdutils.h"
32 
33 #include "libavformat/avformat.h"
34 #include "libavformat/avio.h"
35 
36 #include "libavcodec/avcodec.h"
37 
38 #include "libavfilter/avfilter.h"
39 
40 #include "libavutil/avutil.h"
41 #include "libavutil/dict.h"
42 #include "libavutil/fifo.h"
43 #include "libavutil/pixfmt.h"
44 #include "libavutil/rational.h"
45 
46 #define VSYNC_AUTO -1
47 #define VSYNC_PASSTHROUGH 0
48 #define VSYNC_CFR 1
49 #define VSYNC_VFR 2
50 
51 enum HWAccelID {
59 };
60 
61 typedef struct HWAccel {
62  const char *name;
63  int (*init)(AVCodecContext *s);
64  enum HWAccelID id;
66 } HWAccel;
67 
68 /* select an input stream for an output stream */
69 typedef struct StreamMap {
70  int disabled; /* 1 is this mapping is disabled by a negative map */
75  char *linklabel; /* name of an output link, for mapping lavfi outputs */
76 } StreamMap;
77 
78 /* select an input file for an output file */
79 typedef struct MetadataMap {
80  int file; // file index
81  char type; // type of metadata to copy -- (g)lobal, (s)tream, (c)hapter or (p)rogram
82  int index; // stream/chapter/program number
83 } MetadataMap;
84 
85 typedef struct OptionsContext {
87 
88  /* input/output options */
89  int64_t start_time;
90  const char *format;
91 
104 
105  /* input options */
107  int loop;
108  int rate_emu;
110 
123 
124  /* output options */
127  /* first item specifies output metadata, second is input */
128  MetadataMap (*meta_data_maps)[2];
133  const char **attachments;
135 
137 
138  int64_t recording_time;
139  uint64_t limit_filesize;
140  float mux_preload;
142  int shortest;
143 
148 
149  /* indexed by output file stream index */
152 
190  int nb_pass;
196 
197 typedef struct InputFilter {
199  struct InputStream *ist;
202 
204 
205  // parameters configured for this input
206  int format;
207 
208  int width, height;
210 
212  uint64_t channel_layout;
213 
215 
216  int eof;
217 } InputFilter;
218 
219 typedef struct OutputFilter {
221  struct OutputStream *ost;
224 
225  /* temporary storage until stream maps are processed */
227  enum AVMediaType type;
228 
229  /* desired output stream properties */
230  int width, height;
232  int format;
234  uint64_t channel_layout;
235 
236  // those are only set if no format is specified and the encoder gives us multiple options
237  int *formats;
238  uint64_t *channel_layouts;
240 } OutputFilter;
241 
242 typedef struct FilterGraph {
243  int index;
244  const char *graph_desc;
245 
247 
252 } FilterGraph;
253 
254 typedef struct InputStream {
257  int discard; /* true if stream data should be discarded */
258  int decoding_needed; /* true if the packets must be decoded in 'raw_fifo' */
262  AVFrame *filter_frame; /* a ref of decoded_frame, to be sent to filters */
263 
264  int64_t start; /* time when read started */
265  /* predicted dts of the next packet read for this stream or (when there are
266  * several frames in a packet) of the next frame in current packet */
267  int64_t next_dts;
268  /* dts of the last packet read for this stream */
269  int64_t last_dts;
270  int64_t min_pts; /* pts with the smallest value in a current stream */
271  int64_t max_pts; /* pts with the higher value in a current stream */
272 
273  // when forcing constant input framerate through -r,
274  // this contains the pts that will be given to the next decoded frame
275  int64_t cfr_next_pts;
276 
277  int64_t nb_samples; /* number of samples in the last decoded audio frame before looping */
279  double ts_scale;
281  AVRational framerate; /* framerate forced with -r */
282 
284 
285  /* decoded data from this stream goes into all those filters
286  * currently video and audio only */
289 
290  /* hwaccel options */
291  enum HWAccelID hwaccel_id;
293  enum AVPixelFormat hwaccel_output_format;
294 
295  /* hwaccel context */
296  enum HWAccelID active_hwaccel_id;
297  void *hwaccel_ctx;
298  void (*hwaccel_uninit)(AVCodecContext *s);
299  int (*hwaccel_get_buffer)(AVCodecContext *s, AVFrame *frame, int flags);
300  int (*hwaccel_retrieve_data)(AVCodecContext *s, AVFrame *frame);
301  enum AVPixelFormat hwaccel_pix_fmt;
302  enum AVPixelFormat hwaccel_retrieved_pix_fmt;
304 
305  /* stats */
306  // combined size of all the packets read
307  uint64_t data_size;
308  /* number of packets successfully read for this stream */
309  uint64_t nb_packets;
310  // number of frames/samples retrieved from the decoder
311  uint64_t frames_decoded;
312  uint64_t samples_decoded;
313 } InputStream;
314 
315 typedef struct InputFile {
317  int eof_reached; /* true if eof reached */
318  int eagain; /* true if last read attempt returned EAGAIN */
319  int ist_index; /* index of first stream in ist_table */
320  int loop; /* set number of times input stream should be looped */
321  int64_t duration; /* actual duration of the longest stream in a file
322  at the moment when looping happens */
323  AVRational time_base; /* time base of the duration */
324  int64_t ts_offset;
325  int64_t start_time; /* user-specified start time in AV_TIME_BASE or AV_NOPTS_VALUE */
326  int64_t recording_time;
327  int nb_streams; /* number of stream that avconv is aware of; may be different
328  from ctx.nb_streams if new streams appear during av_read_frame() */
329  int rate_emu;
331 
332 #if HAVE_PTHREADS
333  pthread_t thread; /* thread reading from this file */
334  int finished; /* the thread has exited */
335  int joined; /* the thread has been joined */
336  pthread_mutex_t fifo_lock; /* lock for access to fifo */
337  pthread_cond_t fifo_cond; /* the main thread will signal on this cond after reading from fifo */
338  AVFifoBuffer *fifo; /* demuxed packets are stored here; freed by the main thread */
339 #endif
340 } InputFile;
341 
342 typedef struct OutputStream {
343  int file_index; /* file index */
344  int index; /* stream index in the output file */
345  int source_index; /* InputStream index */
346  AVStream *st; /* stream in the output file */
347  int encoding_needed; /* true if encoding needed for this stream */
349  /* input pts and corresponding output pts
350  for A/V sync */
351  // double sync_ipts; /* dts from the AVPacket of the demuxer in second units */
352  struct InputStream *sync_ist; /* input stream to sync against */
353  int64_t sync_opts; /* output frame counter, could be changed to some true timestamp */ // FIXME look at frame_number
354  /* pts of the first frame encoded for this stream, used for limiting
355  * recording time */
356  int64_t first_pts;
357  /* dts of the last packet sent to the muxer */
358  int64_t last_mux_dts;
359  // the timebase of the packets sent to the muxer
361 
365 
368  int64_t max_frames;
370 
371  void *hwaccel_ctx;
372 
373  /* video only */
377 
379 
380  /* forced key frames */
381  int64_t *forced_kf_pts;
385 
387  FILE *logfile;
388 
390  char *avfilter;
391 
392  int64_t sws_flags;
395  int finished; /* no more packets should be written for this stream */
397 
398  // init_output_stream() has been called for this stream
399  // The encoder and the bistream filters have been initialized and the stream
400  // parameters are set in the AVStream.
402 
403  const char *attachment_filename;
405 
407 
410 
411  /* stats */
412  // combined size of all the packets written
413  uint64_t data_size;
414  // number of packets send to the muxer
415  uint64_t packets_written;
416  // number of frames/samples sent to the encoder
417  uint64_t frames_encoded;
418  uint64_t samples_encoded;
419 
420  /* packet quality factor */
421  int quality;
422 
424 
425  /* the packets are buffered here until the muxer is ready to be initialized */
427 } OutputStream;
428 
429 typedef struct OutputFile {
432  int ost_index; /* index of the first stream in output_streams */
433  int64_t recording_time; /* desired length of the resulting file in microseconds */
434  int64_t start_time; /* start time in microseconds */
435  uint64_t limit_filesize;
436 
437  int shortest;
438 
440 } OutputFile;
441 
442 extern InputStream **input_streams;
443 extern int nb_input_streams;
444 extern InputFile **input_files;
445 extern int nb_input_files;
446 
448 extern int nb_output_streams;
449 extern OutputFile **output_files;
450 extern int nb_output_files;
451 
452 extern FilterGraph **filtergraphs;
453 extern int nb_filtergraphs;
454 
455 extern char *vstats_filename;
456 
457 extern float audio_drift_threshold;
458 extern float dts_delta_threshold;
459 
460 extern int audio_volume;
461 extern int audio_sync_method;
462 extern int video_sync_method;
463 extern int do_benchmark;
464 extern int do_deinterlace;
465 extern int do_hex_dump;
466 extern int do_pkt_dump;
467 extern int copy_ts;
468 extern int copy_tb;
469 extern int exit_on_error;
470 extern int print_stats;
471 extern int qp_hist;
472 
473 extern const AVIOInterruptCB int_cb;
474 
475 extern const OptionDef options[];
476 
477 extern const HWAccel hwaccels[];
478 extern int hwaccel_lax_profile_check;
479 extern AVBufferRef *hw_device_ctx;
480 
482 void show_usage(void);
483 
484 void opt_output_file(void *optctx, const char *filename);
485 
487 
489 
496 
497 int ifilter_parameters_from_frame(InputFilter *ifilter, const AVFrame *frame);
498 
499 int avconv_parse_options(int argc, char **argv);
500 
501 int vdpau_init(AVCodecContext *s);
502 int dxva2_init(AVCodecContext *s);
503 int vda_init(AVCodecContext *s);
504 int qsv_init(AVCodecContext *s);
507 int vaapi_device_init(const char *device);
508 
509 #endif /* AVCONV_H */
int nb_bitstream_filters
Definition: avconv.h:362
SpecifierOpt * passlogfiles
Definition: avconv.h:191
int nb_dump_attachment
Definition: avconv.h:114
int nb_metadata
Definition: avconv.h:154
int nb_streamid_map
Definition: avconv.h:151
int frame_number
Definition: avconv.h:348
int width
Definition: avconv.h:230
float mux_preload
Definition: avconv.h:140
int64_t recording_time
Definition: avconv.h:433
Buffered I/O operations.
uint8_t * name
Definition: avconv.h:223
int nb_outputs
Definition: avconv.h:251
This structure describes decoded (raw) audio or video data.
Definition: frame.h:140
int stream_copy
Definition: avconv.h:396
AVRational frame_rate
Definition: avconv.h:374
int64_t * forced_kf_pts
Definition: avconv.h:381
AVBufferRef * hw_frames_ctx
Definition: avconv.h:303
SpecifierOpt * hwaccel_output_formats
Definition: avconv.h:119
int data_disable
Definition: avconv.h:147
float mux_max_delay
Definition: avconv.h:141
int64_t cfr_next_pts
Definition: avconv.h:275
int accurate_seek
Definition: avconv.h:330
int nb_forced_key_frames
Definition: avconv.h:166
int * streamid_map
Definition: avconv.h:150
Main libavfilter public API header.
int nb_stream_maps
Definition: avconv.h:126
SpecifierOpt * copy_initial_nonkeyframes
Definition: avconv.h:183
AVRational framerate
Definition: avconv.h:281
PtsCorrectionContext pts_ctx
Definition: avconv.h:278
SpecifierOpt * ts_scale
Definition: avconv.h:111
int ist_in_filtergraph(FilterGraph *fg, InputStream *ist)
int init_complex_filtergraph(FilterGraph *fg)
AVCodecParserContext * parser
Definition: avconv.h:408
int64_t max_pts
Definition: avconv.h:271
AVFilterInOut * out_tmp
Definition: avconv.h:226
int decoding_needed
Definition: avconv.h:258
int guess_input_channel_layout(InputStream *ist)
Definition: avconv.c:1311
The bitstream filter state.
Definition: avcodec.h:4990
int max_muxing_queue_size
Definition: avconv.h:423
int nb_frame_pix_fmts
Definition: avconv.h:103
void * hwaccel_ctx
Definition: avconv.h:371
SpecifierOpt * sample_fmts
Definition: avconv.h:161
int eagain
Definition: avconv.h:318
external API header
int quality
Definition: avconv.h:421
AVFrame * filter_frame
Definition: avconv.h:262
int copy_ts
Definition: avconv_opt.c:90
int print_stats
Definition: avconv_opt.c:93
const AVBitStreamFilter ** bitstream_filters
Definition: avconv.h:363
int nb_filter_scripts
Definition: avconv.h:188
const char * name
Definition: avconv.h:62
int nb_filtergraphs
Definition: avconv.c:108
uint64_t packets_written
Definition: avconv.h:415
AVCodec.
Definition: avcodec.h:3120
SpecifierOpt * filters
Definition: avconv.h:185
int64_t start_time
Definition: avconv.h:434
int index
Definition: avconv.h:243
uint64_t data_size
Definition: avconv.h:413
SpecifierOpt * qscale
Definition: avconv.h:163
AVBSFContext ** bsf_ctx
Definition: avconv.h:364
FilterGraph ** filtergraphs
Definition: avconv.c:107
int64_t last_dts
Definition: avconv.h:269
int video_sync_method
Definition: avconv_opt.c:86
SpecifierOpt * frame_pix_fmts
Definition: avconv.h:102
int filtergraph_is_simple(FilterGraph *fg)
struct FilterGraph * graph
Definition: avconv.h:200
float dts_delta_threshold
Definition: avconv_opt.c:82
SpecifierOpt * intra_matrices
Definition: avconv.h:173
int encoding_needed
Definition: avconv.h:347
Format I/O context.
Definition: avformat.h:940
uint64_t samples_decoded
Definition: avconv.h:312
struct InputStream * ist
Definition: avconv.h:199
enum HWAccelID id
Definition: avconv.h:64
uint64_t frames_decoded
Definition: avconv.h:311
int header_written
Definition: avconv.h:439
AVFilterGraph * graph
Definition: avconv.h:246
Public dictionary API.
char * logfile_prefix
Definition: avconv.h:386
int copy_initial_nonkeyframes
Definition: avconv.h:404
uint8_t
float audio_drift_threshold
Definition: avconv_opt.c:81
FILE * logfile
Definition: avconv.h:387
AVDictionary * opts
Definition: avconv.h:431
HWAccelID
Definition: avconv.h:51
CRITICAL_SECTION pthread_mutex_t
Definition: w32pthreads.h:60
void assert_avoptions(AVDictionary *m)
Definition: avconv.c:255
int nb_max_frames
Definition: avconv.h:156
int shortest
Definition: avconv.h:437
int nb_meta_data_maps
Definition: avconv.h:129
InputFile ** input_files
Definition: avconv.c:99
int nb_streams
Definition: avconv.h:327
pthread_t thread
Definition: avconv.h:333
int sync_file_index
Definition: avconv.h:73
AVDictionary * resample_opts
Definition: avconv.h:394
static int flags
Definition: log.c:50
AVFilterContext * filter
Definition: avconv.h:220
int * formats
Definition: avconv.h:237
SpecifierOpt * bitstream_filters
Definition: avconv.h:157
OutputFile ** output_files
Definition: avconv.c:104
int vaapi_device_init(const char *device)
Definition: avconv_vaapi.c:526
AVCodec * dec
Definition: avconv.h:260
int file_index
Definition: avconv.h:255
int64_t next_dts
Definition: avconv.h:267
int configure_filtergraph(FilterGraph *fg)
const OptionDef options[]
Definition: avconv_opt.c:2447
uint64_t channel_layout
Definition: avconv.h:234
Callback for checking whether to abort blocking functions.
Definition: avio.h:51
int nb_top_field_first
Definition: avconv.h:178
AVRational sample_aspect_ratio
Definition: avconv.h:209
int rate_emu
Definition: avconv.h:329
int do_deinterlace
void opt_output_file(void *optctx, const char *filename)
int sample_rate
Definition: avconv.h:211
AVFilterContext * filter
Definition: avconv.h:198
int nb_filters
Definition: avconv.h:186
int64_t start_time
Definition: avconv.h:89
int64_t start
Definition: avconv.h:264
int loop
Definition: avconv.h:320
uint64_t nb_packets
Definition: avconv.h:309
int64_t last_mux_dts
Definition: avconv.h:358
int format
Definition: avconv.h:206
int64_t sws_flags
Definition: avconv.h:392
int nb_hwaccel_devices
Definition: avconv.h:118
int finished
Definition: avconv.h:395
SpecifierOpt * codec_tags
Definition: avconv.h:159
SpecifierOpt * rc_overrides
Definition: avconv.h:171
int video_disable
Definition: avconv.h:144
int eof
Definition: avconv.h:216
int force_fps
Definition: avconv.h:375
char type
Definition: avconv.h:81
int nb_codec_names
Definition: avconv.h:93
StreamMap * stream_maps
Definition: avconv.h:125
uint64_t limit_filesize
Definition: avconv.h:139
const char * format
Definition: avconv.h:90
int nb_passlogfiles
Definition: avconv.h:192
int nb_force_fps
Definition: avconv.h:168
OutputFilter * filter
Definition: avconv.h:389
int nb_sample_fmts
Definition: avconv.h:162
int qsv_init(AVCodecContext *s)
Definition: avconv_qsv.c:58
int file_index
Definition: avconv.h:71
AVRational mux_timebase
Definition: avconv.h:360
SpecifierOpt * filter_scripts
Definition: avconv.h:187
int nb_attachments
Definition: avconv.h:134
int qsv_transcode_init(OutputStream *ost)
AVCodecContext * parser_avctx
Definition: avconv.h:409
int copy_tb
Definition: avconv_opt.c:91
char * linklabel
Definition: avconv.h:75
int nb_hwaccel_output_formats
Definition: avconv.h:120
int nb_ts_scale
Definition: avconv.h:112
int vaapi_decode_init(AVCodecContext *avctx)
Definition: avconv_vaapi.c:411
SpecifierOpt * audio_channels
Definition: avconv.h:94
uint64_t * channel_layouts
Definition: avconv.h:238
int nb_audio_sample_rate
Definition: avconv.h:97
int metadata_chapters_manual
Definition: avconv.h:132
struct OutputStream * ost
Definition: avconv.h:221
int accurate_seek
Definition: avconv.h:109
AVFifoBuffer * fifo
Definition: avconv.h:338
SpecifierOpt * pass
Definition: avconv.h:189
int64_t nb_samples
Definition: avconv.h:277
SpecifierOpt * audio_sample_rate
Definition: avconv.h:96
int64_t duration
Definition: avconv.h:321
int width
Definition: avconv.h:208
SpecifierOpt * dump_attachment
Definition: avconv.h:113
int nb_codec_tags
Definition: avconv.h:160
SpecifierOpt * metadata_map
Definition: avconv.h:179
int64_t max_frames
Definition: avconv.h:368
int init_simple_filtergraph(InputStream *ist, OutputStream *ost)
SpecifierOpt * frame_aspect_ratios
Definition: avconv.h:169
SpecifierOpt * frame_sizes
Definition: avconv.h:100
int sample_rate
Definition: avconv.h:233
int vdpau_init(AVCodecContext *s)
Definition: avconv_vdpau.c:145
int nb_hwaccels
Definition: avconv.h:116
int do_benchmark
Definition: avconv_opt.c:87
int nb_output_files
Definition: avconv.c:105
int finished
Definition: avconv.h:334
AVBufferRef * hw_device_ctx
Definition: avconv_opt.c:77
OutputStream ** output_streams
Definition: avconv.c:102
Stream structure.
Definition: avformat.h:705
int ifilter_parameters_from_frame(InputFilter *ifilter, const AVFrame *frame)
A linked-list of the inputs/outputs of the filter chain.
Definition: avfilter.h:747
int audio_sync_method
Definition: avconv_opt.c:85
InputFilter ** filters
Definition: avconv.h:287
int64_t recording_time
Definition: avconv.h:326
SpecifierOpt * hwaccels
Definition: avconv.h:115
Definition: avconv.h:61
int(* init)(AVCodecContext *s)
Definition: avconv.h:63
SpecifierOpt * frame_rates
Definition: avconv.h:98
AVStream * st
Definition: avconv.h:256
pthread_mutex_t fifo_lock
Definition: avconv.h:336
int nb_presets
Definition: avconv.h:182
int ost_index
Definition: avconv.h:432
struct InputStream * sync_ist
Definition: avconv.h:352
int exit_on_error
Definition: avconv_opt.c:92
Libavcodec external API header.
double ts_scale
Definition: avconv.h:279
int64_t recording_time
Definition: avconv.h:138
const AVIOInterruptCB int_cb
Definition: avconv.c:140
int chapters_input_file
Definition: avconv.h:136
uint64_t frames_encoded
Definition: avconv.h:417
AVFifoBuffer * muxing_queue
Definition: avconv.h:426
int ist_index
Definition: avconv.h:319
const char * graph_desc
Definition: avconv.h:244
int64_t start_time
Definition: avconv.h:325
void reset_options(OptionsContext *o)
main external API structure.
Definition: avcodec.h:1409
static void(WINAPI *cond_broadcast)(pthread_cond_t *cond)
int rate_emu
Definition: avconv.h:108
int * sample_rates
Definition: avconv.h:239
int metadata_streams_manual
Definition: avconv.h:131
const char * attachment_filename
Definition: avconv.h:403
a very simple circular buffer FIFO implementation
AVRational time_base
Definition: avconv.h:323
AVCodecContext * enc_ctx
Definition: avconv.h:366
int audio_disable
Definition: avconv.h:145
int64_t input_ts_offset
Definition: avconv.h:106
AVFrame * decoded_frame
Definition: avconv.h:261
AVBufferRef * hw_frames_ctx
Definition: avconv.h:214
int nb_bitstream_filters
Definition: avconv.h:158
int avconv_parse_options(int argc, char **argv)
Definition: avconv_opt.c:2393
SpecifierOpt * top_field_first
Definition: avconv.h:177
int nb_input_files
Definition: avconv.c:100
int index
Definition: avconv.h:82
rational number numerator/denominator
Definition: rational.h:43
int file_index
Definition: avconv.h:343
int metadata_global_manual
Definition: avconv.h:130
int64_t sync_opts
Definition: avconv.h:353
AVCodecContext * dec_ctx
Definition: avconv.h:259
SpecifierOpt * force_fps
Definition: avconv.h:167
AVMediaType
Definition: avutil.h:192
int nb_inter_matrices
Definition: avconv.h:176
AVDictionary * decoder_opts
Definition: avconv.h:280
int shortest
Definition: avconv.h:142
int autorotate
Definition: avconv.h:283
int64_t ts_offset
Definition: avconv.h:324
int nb_qscale
Definition: avconv.h:164
SpecifierOpt * hwaccel_devices
Definition: avconv.h:117
static enum AVPixelFormat pix_fmts[]
Definition: libkvazaar.c:257
AVFrame * filtered_frame
Definition: avconv.h:369
int nb_autorotate
Definition: avconv.h:122
int nb_audio_channels
Definition: avconv.h:95
int source_index
Definition: avconv.h:345
SpecifierOpt * metadata
Definition: avconv.h:153
int nb_filters
Definition: avconv.h:288
int qp_hist
Definition: avconv_opt.c:94
int forced_kf_count
Definition: avconv.h:382
int nb_intra_matrices
Definition: avconv.h:174
int height
Definition: gxfenc.c:72
char * forced_keyframes
Definition: avconv.h:384
int nb_frame_rates
Definition: avconv.h:99
uint64_t data_size
Definition: avconv.h:307
A reference to a data buffer.
Definition: buffer.h:81
Main libavformat public API header.
SpecifierOpt * max_muxing_queue_size
Definition: avconv.h:193
int file
Definition: avconv.h:80
struct FilterGraph * graph
Definition: avconv.h:222
uint64_t limit_filesize
Definition: avconv.h:435
SpecifierOpt * presets
Definition: avconv.h:181
int nb_frame_sizes
Definition: avconv.h:101
rational numbers
OptionGroup * g
Definition: avconv.h:86
SpecifierOpt * inter_matrices
Definition: avconv.h:175
int do_pkt_dump
Definition: avconv_opt.c:89
AVStream * st
Definition: avconv.h:346
const HWAccel hwaccels[]
Definition: avconv_opt.c:58
SpecifierOpt * forced_key_frames
Definition: avconv.h:165
int vda_init(AVCodecContext *s)
Definition: avconv_vda.c:105
uint64_t samples_encoded
Definition: avconv.h:418
const char ** attachments
Definition: avconv.h:133
char * vstats_filename
Definition: avconv_opt.c:79
int hwaccel_lax_profile_check
Definition: avconv_opt.c:76
int nb_max_muxing_queue_size
Definition: avconv.h:194
uint64_t channel_layout
Definition: avconv.h:212
void show_usage(void)
Definition: avconv_opt.c:2343
AVFormatContext * ctx
Definition: avconv.h:316
int stream_index
Definition: avconv.h:72
AVCodec * enc
Definition: avconv.h:367
enum AVPixelFormat pix_fmt
Definition: avconv.h:65
int eof_reached
Definition: avconv.h:317
int nb_metadata_map
Definition: avconv.h:180
int forced_kf_index
Definition: avconv.h:383
int nb_rc_overrides
Definition: avconv.h:172
InputStream ** input_streams
Definition: avconv.c:97
pixel format definitions
char * avfilter
Definition: avconv.h:390
SpecifierOpt * autorotate
Definition: avconv.h:121
uint8_t * name
Definition: avconv.h:201
int audio_volume
Definition: avconv_opt.c:84
void * hwaccel_ctx
Definition: avconv.h:297
int top_field_first
Definition: avconv.h:376
OutputFilter ** outputs
Definition: avconv.h:250
SpecifierOpt * max_frames
Definition: avconv.h:155
int nb_copy_initial_nonkeyframes
Definition: avconv.h:184
int configure_output_filter(FilterGraph *fg, OutputFilter *ofilter, AVFilterInOut *out)
int disabled
Definition: avconv.h:70
int nb_input_streams
Definition: avconv.c:98
AVRational frame_rate
Definition: avconv.h:231
AVFormatContext * ctx
Definition: avconv.h:430
pthread_cond_t fifo_cond
Definition: avconv.h:337
SpecifierOpt * codec_names
Definition: avconv.h:92
An instance of a filter.
Definition: avfilter.h:262
char * hwaccel_device
Definition: avconv.h:292
AVDictionary * encoder_opts
Definition: avconv.h:393
int do_hex_dump
Definition: avconv_opt.c:88
FILE * out
Definition: movenc.c:54
InputFilter ** inputs
Definition: avconv.h:248
float frame_aspect_ratio
Definition: avconv.h:378
int sync_stream_index
Definition: avconv.h:74
int dxva2_init(AVCodecContext *s)
Definition: avconv_dxva2.c:405
int format
Definition: avconv.h:232
int64_t min_pts
Definition: avconv.h:270
int initialized
Definition: avconv.h:401
int discard
Definition: avconv.h:257
int64_t first_pts
Definition: avconv.h:356
int nb_inputs
Definition: avconv.h:249
int index
Definition: avconv.h:344
AVPixelFormat
Pixel format.
Definition: pixfmt.h:57
int nb_output_streams
Definition: avconv.c:103
AVFifoBuffer * frame_queue
Definition: avconv.h:203
int joined
Definition: avconv.h:335
int nb_frame_aspect_ratios
Definition: avconv.h:170
int subtitle_disable
Definition: avconv.h:146