avconv.c File Reference

#include "config.h"
#include <ctype.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>
#include <errno.h>
#include <signal.h>
#include <limits.h>
#include <unistd.h>
#include "libavformat/avformat.h"
#include "libavdevice/avdevice.h"
#include "libswscale/swscale.h"
#include "libavutil/opt.h"
#include "libavcodec/audioconvert.h"
#include "libavutil/audioconvert.h"
#include "libavutil/parseutils.h"
#include "libavutil/samplefmt.h"
#include "libavutil/colorspace.h"
#include "libavutil/fifo.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/dict.h"
#include "libavutil/mathematics.h"
#include "libavutil/pixdesc.h"
#include "libavutil/avstring.h"
#include "libavutil/libm.h"
#include "libavutil/imgutils.h"
#include "libavformat/os_support.h"
#include "libavformat/ffm.h"
#include <time.h>
#include "cmdutils.h"
#include "libavutil/avassert.h"
#include "cmdutils_common_opts.h"

Go to the source code of this file.

Data Structures

struct  StreamMap
struct  MetadataMap
 select an input file for an output file More...
struct  FrameBuffer
struct  InputStream
struct  InputFile
struct  OutputStream
struct  OutputFile
struct  OptionsContext

Defines

#define VSYNC_AUTO   -1
#define VSYNC_PASSTHROUGH   0
#define VSYNC_CFR   1
#define VSYNC_VFR   2
#define MAX_STREAMS   1024
#define DEFAULT_PASS_LOGFILENAME_PREFIX   "av2pass"
#define MATCH_PER_STREAM_OPT(name, type, outvar, fmtctx, st)
#define MAKE_SFMT_PAIR(a, b)   ((a)+AV_SAMPLE_FMT_NB*(b))
#define METADATA_CHECK_INDEX(index, nb_elems, desc)
#define SET_DICT(type, meta, context, index)
#define NEW_STREAM(type, index)
#define OFFSET(x)   offsetof(OptionsContext, x)

Functions

static void reset_options (OptionsContext *o)
static int alloc_buffer (InputStream *ist, FrameBuffer **pbuf)
static void free_buffer_pool (InputStream *ist)
static void unref_buffer (InputStream *ist, FrameBuffer *buf)
static int codec_get_buffer (AVCodecContext *s, AVFrame *frame)
static void codec_release_buffer (AVCodecContext *s, AVFrame *frame)
static void filter_release_buffer (AVFilterBuffer *fb)
static void term_exit (void)
static void sigterm_handler (int sig)
static void term_init (void)
static int read_key (void)
static int decode_interrupt_cb (void *ctx)
void exit_program (int ret)
 Do all the necessary cleanup and abort.
static void assert_avoptions (AVDictionary *m)
static void assert_codec_experimental (AVCodecContext *c, int encoder)
static void choose_sample_fmt (AVStream *st, AVCodec *codec)
static void choose_sample_rate (AVStream *st, AVCodec *codec)
static void choose_pixel_fmt (AVStream *st, AVCodec *codec)
static double get_sync_ipts (const OutputStream *ost)
static void write_frame (AVFormatContext *s, AVPacket *pkt, OutputStream *ost)
static void generate_silence (uint8_t *buf, enum AVSampleFormat sample_fmt, size_t size)
static int encode_audio_frame (AVFormatContext *s, OutputStream *ost, const uint8_t *buf, int buf_size)
static void do_audio_out (AVFormatContext *s, OutputStream *ost, InputStream *ist, AVFrame *decoded_frame)
static void pre_process_video_frame (InputStream *ist, AVPicture *picture, void **bufp)
static void do_subtitle_out (AVFormatContext *s, OutputStream *ost, InputStream *ist, AVSubtitle *sub, int64_t pts)
static void do_video_resample (OutputStream *ost, InputStream *ist, AVFrame *in_picture, AVFrame **out_picture)
static void do_video_out (AVFormatContext *s, OutputStream *ost, InputStream *ist, AVFrame *in_picture, int *frame_size, float quality)
static double psnr (double d)
static void do_video_stats (AVFormatContext *os, OutputStream *ost, int frame_size)
static void print_report (OutputFile *output_files, OutputStream *ost_table, int nb_ostreams, int is_last_report, int64_t timer_start)
static void flush_encoders (OutputStream *ost_table, int nb_ostreams)
static int check_output_constraints (InputStream *ist, OutputStream *ost)
static void do_streamcopy (InputStream *ist, OutputStream *ost, const AVPacket *pkt)
static void rate_emu_sleep (InputStream *ist)
static int transcode_audio (InputStream *ist, AVPacket *pkt, int *got_output)
static int transcode_video (InputStream *ist, AVPacket *pkt, int *got_output, int64_t *pkt_pts)
static int transcode_subtitles (InputStream *ist, AVPacket *pkt, int *got_output)
static int output_packet (InputStream *ist, OutputStream *ost_table, int nb_ostreams, const AVPacket *pkt)
static void print_sdp (OutputFile *output_files, int n)
static int init_input_stream (int ist_index, OutputStream *output_streams, int nb_output_streams, char *error, int error_len)
static int transcode_init (OutputFile *output_files, int nb_output_files, InputFile *input_files, int nb_input_files)
static int transcode (OutputFile *output_files, int nb_output_files, InputFile *input_files, int nb_input_files)
static double parse_frame_aspect_ratio (const char *arg)
static int opt_audio_codec (OptionsContext *o, const char *opt, const char *arg)
static int opt_video_codec (OptionsContext *o, const char *opt, const char *arg)
static int opt_subtitle_codec (OptionsContext *o, const char *opt, const char *arg)
static int opt_data_codec (OptionsContext *o, const char *opt, const char *arg)
static int opt_map (OptionsContext *o, const char *opt, const char *arg)
static int opt_attach (OptionsContext *o, const char *opt, const char *arg)
static void parse_meta_type (char *arg, char *type, int *index, const char **stream_spec)
 Parse a metadata specifier in arg.
static int copy_metadata (char *outspec, char *inspec, AVFormatContext *oc, AVFormatContext *ic, OptionsContext *o)
static AVCodecfind_codec_or_die (const char *name, enum AVMediaType type, int encoder)
static AVCodecchoose_decoder (OptionsContext *o, AVFormatContext *s, AVStream *st)
static void add_input_streams (OptionsContext *o, AVFormatContext *ic)
 Add all the streams from the given input file to the global list of input streams.
static void assert_file_overwrite (const char *filename)
static void dump_attachment (AVStream *st, const char *filename)
static int opt_input_file (OptionsContext *o, const char *opt, const char *filename)
static void parse_forced_key_frames (char *kf, OutputStream *ost, AVCodecContext *avctx)
static uint8_t * get_line (AVIOContext *s)
static int get_preset_file_2 (const char *preset_name, const char *codec_name, AVIOContext **s)
static void choose_encoder (OptionsContext *o, AVFormatContext *s, OutputStream *ost)
static OutputStreamnew_output_stream (OptionsContext *o, AVFormatContext *oc, enum AVMediaType type)
static void parse_matrix_coeffs (uint16_t *dest, const char *str)
static OutputStreamnew_video_stream (OptionsContext *o, AVFormatContext *oc)
static OutputStreamnew_audio_stream (OptionsContext *o, AVFormatContext *oc)
static OutputStreamnew_data_stream (OptionsContext *o, AVFormatContext *oc)
static OutputStreamnew_attachment_stream (OptionsContext *o, AVFormatContext *oc)
static OutputStreamnew_subtitle_stream (OptionsContext *o, AVFormatContext *oc)
static int opt_streamid (OptionsContext *o, const char *opt, const char *arg)
static int copy_chapters (InputFile *ifile, OutputFile *ofile, int copy_metadata)
static void opt_output_file (void *optctx, const char *filename)
static int opt_pass (const char *opt, const char *arg)
static int64_t getutime (void)
static int64_t getmaxrss (void)
static int opt_audio_qscale (OptionsContext *o, const char *opt, const char *arg)
static void show_usage (void)
static int opt_help (const char *opt, const char *arg)
static int opt_target (OptionsContext *o, const char *opt, const char *arg)
static int opt_vstats_file (const char *opt, const char *arg)
static int opt_vstats (const char *opt, const char *arg)
static int opt_video_frames (OptionsContext *o, const char *opt, const char *arg)
static int opt_audio_frames (OptionsContext *o, const char *opt, const char *arg)
static int opt_data_frames (OptionsContext *o, const char *opt, const char *arg)
static void log_callback_null (void *ptr, int level, const char *fmt, va_list vl)
static int opt_passlogfile (const char *opt, const char *arg)
static int opt_video_tag (OptionsContext *o, const char *opt, const char *arg)
static int opt_audio_tag (OptionsContext *o, const char *opt, const char *arg)
static int opt_subtitle_tag (OptionsContext *o, const char *opt, const char *arg)
static int opt_video_filters (OptionsContext *o, const char *opt, const char *arg)
static int opt_vsync (const char *opt, const char *arg)
int main (int argc, char **argv)

Variables

const char program_name [] = "avconv"
 program name, defined by the program for show_version().
const int program_birth_year = 2000
 program birth year, defined by the program for show_banner()
static const OptionDef options []
static int frame_bits_per_raw_sample = 0
static int video_discard = 0
static int same_quant = 0
static int do_deinterlace = 0
static int intra_dc_precision = 8
static int qp_hist = 0
static int file_overwrite = 0
static int no_file_overwrite = 0
static int do_benchmark = 0
static int do_hex_dump = 0
static int do_pkt_dump = 0
static int do_pass = 0
static const char * pass_logfilename_prefix
static int video_sync_method = VSYNC_AUTO
static int audio_sync_method = 0
static float audio_drift_threshold = 0.1
static int copy_ts = 0
static int copy_tb = 1
static int opt_shortest = 0
static char * vstats_filename
static FILE * vstats_file
static int audio_volume = 256
static int exit_on_error = 0
static int using_stdin = 0
static int run_as_daemon = 0
static int q_pressed = 0
static int64_t video_size = 0
static int64_t audio_size = 0
static int64_t extra_size = 0
static int nb_frames_dup = 0
static int nb_frames_drop = 0
static int input_sync
static float dts_delta_threshold = 10
static int print_stats = 1
static uint8_t * audio_buf
static unsigned int allocated_audio_buf_size
static InputStreaminput_streams = NULL
static int nb_input_streams = 0
static InputFileinput_files = NULL
static int nb_input_files = 0
static OutputStreamoutput_streams = NULL
static int nb_output_streams = 0
static OutputFileoutput_files = NULL
static int nb_output_files = 0
static volatile int received_sigterm = 0
static const AVIOInterruptCB int_cb = { decode_interrupt_cb, NULL }
static int bit_buffer_size = 1024 * 256
static uint8_t * bit_buffer = NULL


Define Documentation

#define DEFAULT_PASS_LOGFILENAME_PREFIX   "av2pass"

Definition at line 164 of file avconv.c.

Referenced by transcode_init().

#define MAKE_SFMT_PAIR ( a,
 )     ((a)+AV_SAMPLE_FMT_NB*(b))

Referenced by do_audio_out(), and transcode_init().

#define MATCH_PER_STREAM_OPT ( name,
type,
outvar,
fmtctx,
st   ) 

Value:

{\
    int i, ret;\
    for (i = 0; i < o->nb_ ## name; i++) {\
        char *spec = o->name[i].specifier;\
        if ((ret = check_stream_specifier(fmtctx, st, spec)) > 0)\
            outvar = o->name[i].u.type;\
        else if (ret < 0)\
            exit_program(1);\
    }\
}

Definition at line 392 of file avconv.c.

Referenced by add_input_streams(), choose_decoder(), choose_encoder(), new_audio_stream(), new_output_stream(), and new_video_stream().

#define MAX_STREAMS   1024

Definition at line 119 of file avconv.c.

Referenced by opt_streamid().

#define METADATA_CHECK_INDEX ( index,
nb_elems,
desc   ) 

Value:

if ((index) < 0 || (index) >= (nb_elems)) {\
        av_log(NULL, AV_LOG_FATAL, "Invalid %s index %d while processing metadata maps.\n",\
                (desc), (index));\
        exit_program(1);\
    }

#define NEW_STREAM ( type,
index   ) 

Value:

if (index >= 0) {\
            ost = new_ ## type ## _stream(o, oc);\
            ost->source_index = index;\
            ost->sync_ist     = &input_streams[index];\
            input_streams[index].discard = 0;\
        }

Referenced by opt_output_file().

#define OFFSET (  )     offsetof(OptionsContext, x)

Definition at line 4494 of file avconv.c.

#define SET_DICT ( type,
meta,
context,
index   ) 

Value:

switch (type) {\
        case 'g':\
            meta = &context->metadata;\
            break;\
        case 'c':\
            METADATA_CHECK_INDEX(index, context->nb_chapters, "chapter")\
            meta = &context->chapters[index]->metadata;\
            break;\
        case 'p':\
            METADATA_CHECK_INDEX(index, context->nb_programs, "program")\
            meta = &context->programs[index]->metadata;\
            break;\
        }\

Referenced by copy_metadata().

#define VSYNC_AUTO   -1

Definition at line 91 of file avconv.c.

Referenced by do_video_out(), and opt_vsync().

#define VSYNC_CFR   1

Definition at line 93 of file avconv.c.

Referenced by do_video_out(), and opt_vsync().

#define VSYNC_PASSTHROUGH   0

Definition at line 92 of file avconv.c.

Referenced by do_video_out(), and opt_vsync().

#define VSYNC_VFR   2

Definition at line 94 of file avconv.c.

Referenced by do_video_out(), and opt_vsync().


Function Documentation

static void add_input_streams ( OptionsContext o,
AVFormatContext ic 
) [static]

Add all the streams from the given input file to the global list of input streams.

Definition at line 3251 of file avconv.c.

Referenced by opt_input_file().

static int alloc_buffer ( InputStream ist,
FrameBuffer **  pbuf 
) [static]

static void assert_avoptions ( AVDictionary m  )  [static]

Definition at line 818 of file avconv.c.

Referenced by init_input_stream(), opt_input_file(), and transcode_init().

static void assert_codec_experimental ( AVCodecContext c,
int  encoder 
) [static]

Definition at line 827 of file avconv.c.

Referenced by init_input_stream(), and transcode_init().

static void assert_file_overwrite ( const char *  filename  )  [static]

Definition at line 3308 of file avconv.c.

Referenced by dump_attachment(), and opt_output_file().

static int check_output_constraints ( InputStream ist,
OutputStream ost 
) [static]

Definition at line 1798 of file avconv.c.

Referenced by output_packet(), transcode_audio(), transcode_subtitles(), and transcode_video().

static AVCodec* choose_decoder ( OptionsContext o,
AVFormatContext s,
AVStream st 
) [static]

Definition at line 3234 of file avconv.c.

Referenced by add_input_streams(), and opt_input_file().

static void choose_encoder ( OptionsContext o,
AVFormatContext s,
OutputStream ost 
) [static]

Definition at line 3550 of file avconv.c.

Referenced by new_output_stream().

static void choose_pixel_fmt ( AVStream st,
AVCodec codec 
) [static]

Definition at line 886 of file avconv.c.

Referenced by read_ffserver_streams(), and transcode_init().

static void choose_sample_fmt ( AVStream st,
AVCodec codec 
) [static]

Definition at line 844 of file avconv.c.

Referenced by read_ffserver_streams(), and transcode_init().

static void choose_sample_rate ( AVStream st,
AVCodec codec 
) [static]

Definition at line 866 of file avconv.c.

Referenced by transcode_init().

static int codec_get_buffer ( AVCodecContext s,
AVFrame frame 
) [static]

Definition at line 514 of file avconv.c.

Referenced by init_input_stream().

static void codec_release_buffer ( AVCodecContext s,
AVFrame frame 
) [static]

Definition at line 548 of file avconv.c.

Referenced by init_input_stream().

static int copy_chapters ( InputFile ifile,
OutputFile ofile,
int  copy_metadata 
) [static]

Definition at line 3887 of file avconv.c.

Referenced by opt_output_file().

static int copy_metadata ( char *  outspec,
char *  inspec,
AVFormatContext oc,
AVFormatContext ic,
OptionsContext o 
) [static]

Definition at line 3142 of file avconv.c.

Referenced by opt_output_file().

static int decode_interrupt_cb ( void *  ctx  )  [static]

Definition at line 741 of file avconv.c.

Referenced by read_thread(), and transcode().

static void do_audio_out ( AVFormatContext s,
OutputStream ost,
InputStream ist,
AVFrame decoded_frame 
) [static]

Definition at line 1036 of file avconv.c.

Referenced by transcode_audio().

static void do_streamcopy ( InputStream ist,
OutputStream ost,
const AVPacket pkt 
) [static]

Definition at line 1819 of file avconv.c.

Referenced by output_packet().

static void do_subtitle_out ( AVFormatContext s,
OutputStream ost,
InputStream ist,
AVSubtitle sub,
int64_t  pts 
) [static]

Definition at line 1260 of file avconv.c.

Referenced by transcode_subtitles().

static void do_video_out ( AVFormatContext s,
OutputStream ost,
InputStream ist,
AVFrame in_picture,
int *  frame_size,
float  quality 
) [static]

Definition at line 1392 of file avconv.c.

Referenced by transcode_video().

static void do_video_resample ( OutputStream ost,
InputStream ist,
AVFrame in_picture,
AVFrame **  out_picture 
) [static]

Definition at line 1327 of file avconv.c.

Referenced by do_video_out().

static void do_video_stats ( AVFormatContext os,
OutputStream ost,
int  frame_size 
) [static]

Definition at line 1542 of file avconv.c.

Referenced by transcode_video().

static void dump_attachment ( AVStream st,
const char *  filename 
) [static]

Definition at line 3330 of file avconv.c.

Referenced by opt_input_file().

static int encode_audio_frame ( AVFormatContext s,
OutputStream ost,
const uint8_t *  buf,
int  buf_size 
) [static]

Definition at line 978 of file avconv.c.

Referenced by do_audio_out(), and flush_encoders().

void exit_program ( int  ret  ) 

static void filter_release_buffer ( AVFilterBuffer fb  )  [static]

Definition at line 560 of file avconv.c.

Referenced by transcode_video().

static AVCodec* find_codec_or_die ( const char *  name,
enum AVMediaType  type,
int  encoder 
) [static]

Definition at line 3215 of file avconv.c.

Referenced by choose_decoder(), choose_encoder(), and opt_input_file().

static void flush_encoders ( OutputStream ost_table,
int  nb_ostreams 
) [static]

Definition at line 1711 of file avconv.c.

Referenced by transcode().

static void free_buffer_pool ( InputStream ist  )  [static]

Definition at line 493 of file avconv.c.

Referenced by exit_program().

static void generate_silence ( uint8_t *  buf,
enum AVSampleFormat  sample_fmt,
size_t  size 
) [static]

Definition at line 970 of file avconv.c.

Referenced by do_audio_out(), and flush_encoders().

static uint8_t* get_line ( AVIOContext s  )  [static]

Definition at line 3505 of file avconv.c.

Referenced by new_output_stream(), read_chapter(), and read_header().

static int get_preset_file_2 ( const char *  preset_name,
const char *  codec_name,
AVIOContext **  s 
) [static]

Definition at line 3524 of file avconv.c.

Referenced by new_output_stream().

static double get_sync_ipts ( const OutputStream ost  )  [static]

Definition at line 915 of file avconv.c.

Referenced by do_audio_out(), and do_video_out().

static int64_t getmaxrss ( void   )  [static]

Definition at line 4214 of file avconv.c.

Referenced by main().

static int64_t getutime ( void   )  [static]

Definition at line 4196 of file avconv.c.

Referenced by main().

static int init_input_stream ( int  ist_index,
OutputStream output_streams,
int  nb_output_streams,
char *  error,
int  error_len 
) [static]

Definition at line 2268 of file avconv.c.

Referenced by transcode_init().

static void log_callback_null ( void *  ptr,
int  level,
const char *  fmt,
va_list  vl 
) [static]

Definition at line 4449 of file avconv.c.

Referenced by main().

int main ( int  argc,
char **  argv 
)

Definition at line 4609 of file avconv.c.

static OutputStream* new_attachment_stream ( OptionsContext o,
AVFormatContext oc 
) [static]

Definition at line 3843 of file avconv.c.

Referenced by opt_output_file().

static OutputStream* new_audio_stream ( OptionsContext o,
AVFormatContext oc 
) [static]

Definition at line 3800 of file avconv.c.

Referenced by opt_output_file().

static OutputStream* new_data_stream ( OptionsContext o,
AVFormatContext oc 
) [static]

Definition at line 3830 of file avconv.c.

Referenced by opt_output_file().

static OutputStream* new_output_stream ( OptionsContext o,
AVFormatContext oc,
enum AVMediaType  type 
) [static]

static OutputStream* new_subtitle_stream ( OptionsContext o,
AVFormatContext oc 
) [static]

Definition at line 3850 of file avconv.c.

Referenced by opt_output_file().

static OutputStream* new_video_stream ( OptionsContext o,
AVFormatContext oc 
) [static]

Definition at line 3684 of file avconv.c.

Referenced by opt_output_file().

static int opt_attach ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 3101 of file avconv.c.

static int opt_audio_codec ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 2998 of file avconv.c.

Referenced by ffserver_opt_preset(), opt_preset(), opt_target(), and parse_ffconfig().

static int opt_audio_frames ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4439 of file avconv.c.

static int opt_audio_qscale ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4232 of file avconv.c.

static int opt_audio_tag ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4468 of file avconv.c.

static int opt_data_codec ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 3013 of file avconv.c.

Referenced by opt_preset().

static int opt_data_frames ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4444 of file avconv.c.

static int opt_help ( const char *  opt,
const char *  arg 
) [static]

Definition at line 4244 of file avconv.c.

static int opt_input_file ( OptionsContext o,
const char *  opt,
const char *  filename 
) [static]

Definition at line 3362 of file avconv.c.

Referenced by main().

static int opt_map ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 3018 of file avconv.c.

static void opt_output_file ( void *  optctx,
const char *  filename 
) [static]

Definition at line 3927 of file avconv.c.

Referenced by main().

static int opt_pass ( const char *  opt,
const char *  arg 
) [static]

Definition at line 4190 of file avconv.c.

static int opt_passlogfile ( const char *  opt,
const char *  arg 
) [static]

Definition at line 4453 of file avconv.c.

static int opt_streamid ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 3866 of file avconv.c.

static int opt_subtitle_codec ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 3008 of file avconv.c.

Referenced by opt_preset().

static int opt_subtitle_tag ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4473 of file avconv.c.

static int opt_target ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4280 of file avconv.c.

static int opt_video_codec ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 3003 of file avconv.c.

Referenced by ffserver_opt_preset(), opt_preset(), opt_target(), and parse_ffconfig().

static int opt_video_filters ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4478 of file avconv.c.

static int opt_video_frames ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4434 of file avconv.c.

static int opt_video_tag ( OptionsContext o,
const char *  opt,
const char *  arg 
) [static]

Definition at line 4463 of file avconv.c.

static int opt_vstats ( const char *  opt,
const char *  arg 
) [static]

Definition at line 4423 of file avconv.c.

static int opt_vstats_file ( const char *  opt,
const char *  arg 
) [static]

Definition at line 4416 of file avconv.c.

Referenced by opt_vstats().

static int opt_vsync ( const char *  opt,
const char *  arg 
) [static]

Definition at line 4483 of file avconv.c.

static int output_packet ( InputStream ist,
OutputStream ost_table,
int  nb_ostreams,
const AVPacket pkt 
) [static]

Definition at line 2154 of file avconv.c.

Referenced by mpeg_mux_end(), mpeg_mux_write_packet(), and transcode().

static void parse_forced_key_frames ( char *  kf,
OutputStream ost,
AVCodecContext avctx 
) [static]

Definition at line 3482 of file avconv.c.

Referenced by new_video_stream().

static double parse_frame_aspect_ratio ( const char *  arg  )  [static]

Definition at line 2974 of file avconv.c.

Referenced by new_video_stream().

static void parse_matrix_coeffs ( uint16_t *  dest,
const char *  str 
) [static]

Definition at line 3667 of file avconv.c.

Referenced by new_video_stream().

static void parse_meta_type ( char *  arg,
char *  type,
int *  index,
const char **  stream_spec 
) [static]

Parse a metadata specifier in arg.

Parameters:
type metadata type is written here -- g(lobal)/s(tream)/c(hapter)/p(rogram)
index for type c/p, chapter/program index is written here
stream_spec for type s, the stream specifier is written here

Definition at line 3115 of file avconv.c.

Referenced by copy_metadata(), and opt_output_file().

static void pre_process_video_frame ( InputStream ist,
AVPicture picture,
void **  bufp 
) [static]

Definition at line 1221 of file avconv.c.

Referenced by transcode_video().

static void print_report ( OutputFile output_files,
OutputStream ost_table,
int  nb_ostreams,
int  is_last_report,
int64_t  timer_start 
) [static]

Definition at line 1579 of file avconv.c.

Referenced by transcode().

static void print_sdp ( OutputFile output_files,
int  n 
) [static]

Definition at line 2251 of file avconv.c.

Referenced by transcode_init().

static double psnr ( double  d  )  [static]

Definition at line 1537 of file avconv.c.

Referenced by do_video_stats(), main(), and print_report().

static void rate_emu_sleep ( InputStream ist  )  [static]

Definition at line 1879 of file avconv.c.

Referenced by output_packet(), transcode_audio(), transcode_subtitles(), and transcode_video().

static int read_key ( void   )  [static]

Definition at line 711 of file avconv.c.

Referenced by decode_interrupt_cb(), and transcode().

static void reset_options ( OptionsContext o  )  [static]

Definition at line 404 of file avconv.c.

Referenced by main(), opt_input_file(), and opt_output_file().

static void show_usage ( void   )  [static]

Definition at line 4237 of file avconv.c.

Referenced by main(), and opt_help().

static void sigterm_handler ( int  sig  )  [static]

Definition at line 672 of file avconv.c.

Referenced by main(), and term_init().

static void term_exit ( void   )  [static]

Definition at line 660 of file avconv.c.

Referenced by assert_file_overwrite(), sigterm_handler(), term_init(), and transcode().

static void term_init ( void   )  [static]

Definition at line 679 of file avconv.c.

Referenced by assert_file_overwrite(), main(), and transcode().

static int transcode ( OutputFile output_files,
int  nb_output_files,
InputFile input_files,
int  nb_input_files 
) [static]

Definition at line 2686 of file avconv.c.

Referenced by main().

static int transcode_audio ( InputStream ist,
AVPacket pkt,
int *  got_output 
) [static]

Definition at line 1889 of file avconv.c.

Referenced by output_packet().

static int transcode_init ( OutputFile output_files,
int  nb_output_files,
InputFile input_files,
int  nb_input_files 
) [static]

Definition at line 2305 of file avconv.c.

Referenced by transcode().

static int transcode_subtitles ( InputStream ist,
AVPacket pkt,
int *  got_output 
) [static]

Definition at line 2128 of file avconv.c.

Referenced by output_packet().

static int transcode_video ( InputStream ist,
AVPacket pkt,
int *  got_output,
int64_t *  pkt_pts 
) [static]

Definition at line 1993 of file avconv.c.

Referenced by output_packet().

static void unref_buffer ( InputStream ist,
FrameBuffer buf 
) [static]

Definition at line 504 of file avconv.c.

Referenced by codec_release_buffer(), and filter_release_buffer().

static void write_frame ( AVFormatContext s,
AVPacket pkt,
OutputStream ost 
) [static]


Variable Documentation

unsigned int allocated_audio_buf_size [static]

Definition at line 162 of file avconv.c.

Referenced by do_audio_out(), exit_program(), and flush_encoders().

uint8_t* audio_buf [static]

Definition at line 161 of file avconv.c.

Referenced by do_audio_out(), exit_program(), and flush_encoders().

float audio_drift_threshold = 0.1 [static]

Definition at line 137 of file avconv.c.

Referenced by do_audio_out().

int64_t audio_size = 0 [static]

int audio_sync_method = 0 [static]

Definition at line 136 of file avconv.c.

Referenced by do_audio_out(), and transcode_init().

int audio_volume = 256 [static]

Definition at line 144 of file avconv.c.

Referenced by transcode_audio(), and transcode_init().

uint8_t* bit_buffer = NULL [static]

Definition at line 1324 of file avconv.c.

Referenced by transcode(), and transcode_init().

int bit_buffer_size = 1024 * 256 [static]

Definition at line 1323 of file avconv.c.

Referenced by transcode_init().

int copy_tb = 1 [static]

Definition at line 139 of file avconv.c.

Referenced by transcode_init().

int copy_ts = 0 [static]

Definition at line 138 of file avconv.c.

Referenced by opt_input_file(), and transcode().

int do_benchmark = 0 [static]

Definition at line 130 of file avconv.c.

Referenced by main().

int do_deinterlace = 0 [static]

Definition at line 124 of file avconv.c.

Referenced by pre_process_video_frame().

int do_hex_dump = 0 [static]

Definition at line 131 of file avconv.c.

Referenced by transcode().

int do_pass = 0 [static]

Definition at line 133 of file avconv.c.

Referenced by new_video_stream(), and opt_pass().

int do_pkt_dump = 0 [static]

Definition at line 132 of file avconv.c.

Referenced by transcode().

float dts_delta_threshold = 10 [static]

Definition at line 157 of file avconv.c.

Referenced by transcode().

int exit_on_error = 0 [static]

Definition at line 146 of file avconv.c.

Referenced by do_audio_out(), do_subtitle_out(), transcode(), and write_frame().

int64_t extra_size = 0 [static]

Definition at line 152 of file avconv.c.

Referenced by ape_read_packet(), asf_write_header1(), print_report(), and transcode_init().

int file_overwrite = 0 [static]

Definition at line 128 of file avconv.c.

Referenced by assert_file_overwrite().

int frame_bits_per_raw_sample = 0 [static]

Definition at line 121 of file avconv.c.

Referenced by new_video_stream(), and transcode_init().

InputFile* input_files = NULL [static]

Definition at line 291 of file avconv.c.

Definition at line 289 of file avconv.c.

int input_sync [static]

Definition at line 155 of file avconv.c.

Referenced by transcode().

const AVIOInterruptCB int_cb = { decode_interrupt_cb, NULL } [static]

int intra_dc_precision = 8 [static]

Definition at line 125 of file avconv.c.

Referenced by new_video_stream().

int nb_frames_drop = 0 [static]

Definition at line 154 of file avconv.c.

Referenced by do_video_out(), and print_report().

int nb_frames_dup = 0 [static]

Definition at line 153 of file avconv.c.

Referenced by do_video_out(), and print_report().

int nb_input_files = 0 [static]

int nb_input_streams = 0 [static]

int nb_output_files = 0 [static]

Definition at line 297 of file avconv.c.

Referenced by exit_program(), main(), new_output_stream(), and opt_output_file().

int nb_output_streams = 0 [static]

int no_file_overwrite = 0 [static]

Definition at line 129 of file avconv.c.

Referenced by assert_file_overwrite().

int opt_shortest = 0 [static]

Definition at line 140 of file avconv.c.

Referenced by transcode().

static const OptionDef options [static]

Definition at line 117 of file avconv.c.

Referenced by pp_get_mode_by_name_and_quality().

Definition at line 296 of file avconv.c.

Definition at line 294 of file avconv.c.

const char* pass_logfilename_prefix [static]

Definition at line 134 of file avconv.c.

Referenced by opt_passlogfile(), and transcode_init().

int print_stats = 1 [static]

Definition at line 159 of file avconv.c.

Referenced by print_report().

const int program_birth_year = 2000

program birth year, defined by the program for show_banner()

Definition at line 97 of file avconv.c.

Referenced by ffprobe_show_program_version(), and print_program_info().

const char program_name[] = "avconv"

program name, defined by the program for show_version().

Definition at line 96 of file avconv.c.

Referenced by compute_status(), main(), opt_license(), opt_report(), print_program_info(), and show_usage().

int q_pressed = 0 [static]

Definition at line 149 of file avconv.c.

Referenced by decode_interrupt_cb(), sigterm_handler(), and transcode().

int qp_hist = 0 [static]

Definition at line 126 of file avconv.c.

Referenced by print_report(), and transcode().

volatile int received_sigterm = 0 [static]

Definition at line 669 of file avconv.c.

Referenced by transcode().

int run_as_daemon = 0 [static]

Definition at line 148 of file avconv.c.

Referenced by main(), read_key(), term_exit(), term_init(), and transcode().

int same_quant = 0 [static]

Definition at line 123 of file avconv.c.

Referenced by new_output_stream(), and transcode_video().

int using_stdin = 0 [static]

Definition at line 147 of file avconv.c.

Referenced by assert_file_overwrite(), opt_input_file(), and transcode().

int video_discard = 0 [static]

Definition at line 122 of file avconv.c.

Referenced by add_input_streams().

int64_t video_size = 0 [static]

int video_sync_method = VSYNC_AUTO [static]

Definition at line 135 of file avconv.c.

Referenced by do_video_out(), opt_vsync(), and transcode_init().

FILE* vstats_file [static]

Definition at line 142 of file avconv.c.

Referenced by do_video_stats(), and exit_program().

char* vstats_filename [static]

Definition at line 141 of file avconv.c.

Referenced by do_video_stats(), exit_program(), opt_vstats_file(), and transcode_video().


Generated on Wed Jan 25 19:22:07 2012 for FFmpeg by  doxygen 1.5.8