annotate options.c @ 8566:48a4d9f4c6f8 libavcodec

RV30 decoder passes possible frame sizes in extradata and selects an appropriate frame size from them in slice, make my decoder do that as well. This fixes issue 779
author kostya
date Sun, 11 Jan 2009 08:03:45 +0000
parents 0a7fd7dbea1a
children 7a463923ecd1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8559
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
1 /*
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
2 * Copyright (c) 2001 Fabrice Bellard.
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
3 * Copyright (c) 2002-2004 Michael Niedermayer <michaelni@gmx.at>
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
4 *
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
5 * This file is part of FFmpeg.
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
6 *
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
7 * FFmpeg is free software; you can redistribute it and/or
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
8 * modify it under the terms of the GNU Lesser General Public
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
9 * License as published by the Free Software Foundation; either
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
10 * version 2.1 of the License, or (at your option) any later version.
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
11 *
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
12 * FFmpeg is distributed in the hope that it will be useful,
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
15 * Lesser General Public License for more details.
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
16 *
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
17 * You should have received a copy of the GNU Lesser General Public
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
18 * License along with FFmpeg; if not, write to the Free Software
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
20 */
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
21
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
22 /**
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
23 * @file options.c
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
24 * Options definition for AVCodecContext.
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
25 */
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
26
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
27 #include "avcodec.h"
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
28 #include "opt.h"
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
29 #include <float.h> /* FLT_MIN, FLT_MAX */
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
30
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
31 static const char* context_to_name(void* ptr) {
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
32 AVCodecContext *avc= ptr;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
33
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
34 if(avc && avc->codec && avc->codec->name)
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
35 return avc->codec->name;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
36 else
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
37 return "NULL";
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
38 }
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
39
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
40 #define OFFSET(x) offsetof(AVCodecContext,x)
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
41 #define DEFAULT 0 //should be NAN but it does not work as it is not a constant in glibc as required by ANSI/ISO C
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
42 //these names are too long to be readable
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
43 #define V AV_OPT_FLAG_VIDEO_PARAM
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
44 #define A AV_OPT_FLAG_AUDIO_PARAM
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
45 #define S AV_OPT_FLAG_SUBTITLE_PARAM
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
46 #define E AV_OPT_FLAG_ENCODING_PARAM
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
47 #define D AV_OPT_FLAG_DECODING_PARAM
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
48
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
49 #define AV_CODEC_DEFAULT_BITRATE 200*1000
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
50
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
51 static const AVOption options[]={
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
52 {"b", "set bitrate (in bits/s)", OFFSET(bit_rate), FF_OPT_TYPE_INT, AV_CODEC_DEFAULT_BITRATE, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
53 {"ab", "set bitrate (in bits/s)", OFFSET(bit_rate), FF_OPT_TYPE_INT, 64*1000, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
54 {"bt", "set video bitrate tolerance (in bits/s)", OFFSET(bit_rate_tolerance), FF_OPT_TYPE_INT, AV_CODEC_DEFAULT_BITRATE*20, 1, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
55 {"flags", NULL, OFFSET(flags), FF_OPT_TYPE_FLAGS, DEFAULT, 0, UINT_MAX, V|A|E|D, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
56 {"mv4", "use four motion vector by macroblock (mpeg4)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_4MV, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
57 {"obmc", "use overlapped block motion compensation (h263+)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_OBMC, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
58 {"qpel", "use 1/4 pel motion compensation", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_QPEL, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
59 {"loop", "use loop filter", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_LOOP_FILTER, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
60 {"qscale", "use fixed qscale", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_QSCALE, INT_MIN, INT_MAX, 0, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
61 {"gmc", "use gmc", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_GMC, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
62 {"mv0", "always try a mb with mv=<0,0>", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_MV0, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
63 {"part", "use data partitioning", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_PART, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
64 {"input_preserved", NULL, 0, FF_OPT_TYPE_CONST, CODEC_FLAG_INPUT_PRESERVED, INT_MIN, INT_MAX, 0, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
65 {"pass1", "use internal 2pass ratecontrol in first pass mode", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_PASS1, INT_MIN, INT_MAX, 0, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
66 {"pass2", "use internal 2pass ratecontrol in second pass mode", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_PASS2, INT_MIN, INT_MAX, 0, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
67 {"extern_huff", "use external huffman table (for mjpeg)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_EXTERN_HUFF, INT_MIN, INT_MAX, 0, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
68 {"gray", "only decode/encode grayscale", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_GRAY, INT_MIN, INT_MAX, V|E|D, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
69 {"emu_edge", "don't draw edges", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_EMU_EDGE, INT_MIN, INT_MAX, 0, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
70 {"psnr", "error[?] variables will be set during encoding", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_PSNR, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
71 {"truncated", NULL, 0, FF_OPT_TYPE_CONST, CODEC_FLAG_TRUNCATED, INT_MIN, INT_MAX, 0, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
72 {"naq", "normalize adaptive quantization", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_NORMALIZE_AQP, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
73 {"ildct", "use interlaced dct", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_INTERLACED_DCT, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
74 {"low_delay", "force low delay", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_LOW_DELAY, INT_MIN, INT_MAX, V|D|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
75 {"alt", "enable alternate scantable (mpeg2/mpeg4)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_ALT_SCAN, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
76 {"global_header", "place global headers in extradata instead of every keyframe", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_GLOBAL_HEADER, INT_MIN, INT_MAX, V|A|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
77 {"bitexact", "use only bitexact stuff (except (i)dct)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_BITEXACT, INT_MIN, INT_MAX, A|V|S|D|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
78 {"aic", "h263 advanced intra coding / mpeg4 ac prediction", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_AC_PRED, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
79 {"umv", "use unlimited motion vectors", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_H263P_UMV, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
80 {"cbp", "use rate distortion optimization for cbp", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_CBP_RD, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
81 {"qprd", "use rate distortion optimization for qp selection", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_QP_RD, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
82 {"aiv", "h263 alternative inter vlc", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_H263P_AIV, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
83 {"slice", NULL, 0, FF_OPT_TYPE_CONST, CODEC_FLAG_H263P_SLICE_STRUCT, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
84 {"ilme", "interlaced motion estimation", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_INTERLACED_ME, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
85 {"scan_offset", "will reserve space for svcd scan offset user data", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_SVCD_SCAN_OFFSET, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
86 {"cgop", "closed gop", 0, FF_OPT_TYPE_CONST, CODEC_FLAG_CLOSED_GOP, INT_MIN, INT_MAX, V|E, "flags"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
87 {"fast", "allow non spec compliant speedup tricks", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_FAST, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
88 {"sgop", "strictly enforce gop size", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_STRICT_GOP, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
89 {"noout", "skip bitstream encoding", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_NO_OUTPUT, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
90 {"local_header", "place global headers at every keyframe instead of in extradata", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_LOCAL_HEADER, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
91 {"sub_id", NULL, OFFSET(sub_id), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
92 {"me_method", "set motion estimation method", OFFSET(me_method), FF_OPT_TYPE_INT, ME_EPZS, INT_MIN, INT_MAX, V|E, "me_method"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
93 {"zero", "zero motion estimation (fastest)", 0, FF_OPT_TYPE_CONST, ME_ZERO, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
94 {"full", "full motion estimation (slowest)", 0, FF_OPT_TYPE_CONST, ME_FULL, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
95 {"epzs", "EPZS motion estimation (default)", 0, FF_OPT_TYPE_CONST, ME_EPZS, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
96 {"esa", "esa motion estimation (alias for full)", 0, FF_OPT_TYPE_CONST, ME_FULL, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
97 {"tesa", "tesa motion estimation", 0, FF_OPT_TYPE_CONST, ME_TESA, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
98 {"dia", "dia motion estimation (alias for epzs)", 0, FF_OPT_TYPE_CONST, ME_EPZS, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
99 {"log", "log motion estimation", 0, FF_OPT_TYPE_CONST, ME_LOG, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
100 {"phods", "phods motion estimation", 0, FF_OPT_TYPE_CONST, ME_PHODS, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
101 {"x1", "X1 motion estimation", 0, FF_OPT_TYPE_CONST, ME_X1, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
102 {"hex", "hex motion estimation", 0, FF_OPT_TYPE_CONST, ME_HEX, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
103 {"umh", "umh motion estimation", 0, FF_OPT_TYPE_CONST, ME_UMH, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
104 {"iter", "iter motion estimation", 0, FF_OPT_TYPE_CONST, ME_ITER, INT_MIN, INT_MAX, V|E, "me_method" },
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
105 {"extradata_size", NULL, OFFSET(extradata_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
106 {"time_base", NULL, OFFSET(time_base), FF_OPT_TYPE_RATIONAL, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
107 {"g", "set the group of picture size", OFFSET(gop_size), FF_OPT_TYPE_INT, 12, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
108 {"rate_emu", "frame rate emulation", OFFSET(rate_emu), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
109 {"ar", "set audio sampling rate (in Hz)", OFFSET(sample_rate), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
110 {"ac", "set number of audio channels", OFFSET(channels), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
111 {"cutoff", "set cutoff bandwidth", OFFSET(cutoff), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
112 {"frame_size", NULL, OFFSET(frame_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
113 {"frame_number", NULL, OFFSET(frame_number), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
114 {"real_pict_num", NULL, OFFSET(real_pict_num), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
115 {"delay", NULL, OFFSET(delay), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
116 {"qcomp", "video quantizer scale compression (VBR)", OFFSET(qcompress), FF_OPT_TYPE_FLOAT, 0.5, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
117 {"qblur", "video quantizer scale blur (VBR)", OFFSET(qblur), FF_OPT_TYPE_FLOAT, 0.5, 0, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
118 {"qmin", "min video quantizer scale (VBR)", OFFSET(qmin), FF_OPT_TYPE_INT, 2, 1, 51, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
119 {"qmax", "max video quantizer scale (VBR)", OFFSET(qmax), FF_OPT_TYPE_INT, 31, 1, 51, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
120 {"qdiff", "max difference between the quantizer scale (VBR)", OFFSET(max_qdiff), FF_OPT_TYPE_INT, 3, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
121 {"bf", "use 'frames' B frames", OFFSET(max_b_frames), FF_OPT_TYPE_INT, DEFAULT, 0, FF_MAX_B_FRAMES, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
122 {"b_qfactor", "qp factor between p and b frames", OFFSET(b_quant_factor), FF_OPT_TYPE_FLOAT, 1.25, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
123 {"rc_strategy", "ratecontrol method", OFFSET(rc_strategy), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
124 {"b_strategy", "strategy to choose between I/P/B-frames", OFFSET(b_frame_strategy), FF_OPT_TYPE_INT, 0, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
125 {"hurry_up", NULL, OFFSET(hurry_up), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|D},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
126 {"ps", "rtp payload size in bits", OFFSET(rtp_payload_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
127 {"mv_bits", NULL, OFFSET(mv_bits), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
128 {"header_bits", NULL, OFFSET(header_bits), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
129 {"i_tex_bits", NULL, OFFSET(i_tex_bits), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
130 {"p_tex_bits", NULL, OFFSET(p_tex_bits), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
131 {"i_count", NULL, OFFSET(i_count), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
132 {"p_count", NULL, OFFSET(p_count), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
133 {"skip_count", NULL, OFFSET(skip_count), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
134 {"misc_bits", NULL, OFFSET(misc_bits), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
135 {"frame_bits", NULL, OFFSET(frame_bits), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
136 {"codec_tag", NULL, OFFSET(codec_tag), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
137 {"bug", "workaround not auto detected encoder bugs", OFFSET(workaround_bugs), FF_OPT_TYPE_FLAGS, FF_BUG_AUTODETECT, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
138 {"autodetect", NULL, 0, FF_OPT_TYPE_CONST, FF_BUG_AUTODETECT, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
139 {"old_msmpeg4", "some old lavc generated msmpeg4v3 files (no autodetection)", 0, FF_OPT_TYPE_CONST, FF_BUG_OLD_MSMPEG4, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
140 {"xvid_ilace", "Xvid interlacing bug (autodetected if fourcc==XVIX)", 0, FF_OPT_TYPE_CONST, FF_BUG_XVID_ILACE, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
141 {"ump4", "(autodetected if fourcc==UMP4)", 0, FF_OPT_TYPE_CONST, FF_BUG_UMP4, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
142 {"no_padding", "padding bug (autodetected)", 0, FF_OPT_TYPE_CONST, FF_BUG_NO_PADDING, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
143 {"amv", NULL, 0, FF_OPT_TYPE_CONST, FF_BUG_AMV, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
144 {"ac_vlc", "illegal vlc bug (autodetected per fourcc)", 0, FF_OPT_TYPE_CONST, FF_BUG_AC_VLC, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
145 {"qpel_chroma", NULL, 0, FF_OPT_TYPE_CONST, FF_BUG_QPEL_CHROMA, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
146 {"std_qpel", "old standard qpel (autodetected per fourcc/version)", 0, FF_OPT_TYPE_CONST, FF_BUG_STD_QPEL, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
147 {"qpel_chroma2", NULL, 0, FF_OPT_TYPE_CONST, FF_BUG_QPEL_CHROMA2, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
148 {"direct_blocksize", "direct-qpel-blocksize bug (autodetected per fourcc/version)", 0, FF_OPT_TYPE_CONST, FF_BUG_DIRECT_BLOCKSIZE, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
149 {"edge", "edge padding bug (autodetected per fourcc/version)", 0, FF_OPT_TYPE_CONST, FF_BUG_EDGE, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
150 {"hpel_chroma", NULL, 0, FF_OPT_TYPE_CONST, FF_BUG_HPEL_CHROMA, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
151 {"dc_clip", NULL, 0, FF_OPT_TYPE_CONST, FF_BUG_DC_CLIP, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
152 {"ms", "workaround various bugs in microsofts broken decoders", 0, FF_OPT_TYPE_CONST, FF_BUG_MS, INT_MIN, INT_MAX, V|D, "bug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
153 {"lelim", "single coefficient elimination threshold for luminance (negative values also consider dc coefficient)", OFFSET(luma_elim_threshold), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
154 {"celim", "single coefficient elimination threshold for chrominance (negative values also consider dc coefficient)", OFFSET(chroma_elim_threshold), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
155 {"strict", "how strictly to follow the standards", OFFSET(strict_std_compliance), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, A|V|D|E, "strict"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
156 {"very", "strictly conform to a older more strict version of the spec or reference software", 0, FF_OPT_TYPE_CONST, FF_COMPLIANCE_VERY_STRICT, INT_MIN, INT_MAX, V|D|E, "strict"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
157 {"strict", "strictly conform to all the things in the spec no matter what consequences", 0, FF_OPT_TYPE_CONST, FF_COMPLIANCE_STRICT, INT_MIN, INT_MAX, V|D|E, "strict"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
158 {"normal", NULL, 0, FF_OPT_TYPE_CONST, FF_COMPLIANCE_NORMAL, INT_MIN, INT_MAX, V|D|E, "strict"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
159 {"inofficial", "allow inofficial extensions", 0, FF_OPT_TYPE_CONST, FF_COMPLIANCE_INOFFICIAL, INT_MIN, INT_MAX, V|D|E, "strict"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
160 {"experimental", "allow non standardized experimental things", 0, FF_OPT_TYPE_CONST, FF_COMPLIANCE_EXPERIMENTAL, INT_MIN, INT_MAX, V|D|E, "strict"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
161 {"b_qoffset", "qp offset between P and B frames", OFFSET(b_quant_offset), FF_OPT_TYPE_FLOAT, 1.25, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
162 {"er", "set error detection aggressivity", OFFSET(error_recognition), FF_OPT_TYPE_INT, FF_ER_CAREFUL, INT_MIN, INT_MAX, A|V|D, "er"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
163 {"careful", NULL, 0, FF_OPT_TYPE_CONST, FF_ER_CAREFUL, INT_MIN, INT_MAX, V|D, "er"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
164 {"compliant", NULL, 0, FF_OPT_TYPE_CONST, FF_ER_COMPLIANT, INT_MIN, INT_MAX, V|D, "er"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
165 {"aggressive", NULL, 0, FF_OPT_TYPE_CONST, FF_ER_AGGRESSIVE, INT_MIN, INT_MAX, V|D, "er"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
166 {"very_aggressive", NULL, 0, FF_OPT_TYPE_CONST, FF_ER_VERY_AGGRESSIVE, INT_MIN, INT_MAX, V|D, "er"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
167 {"has_b_frames", NULL, OFFSET(has_b_frames), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
168 {"block_align", NULL, OFFSET(block_align), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
169 {"parse_only", NULL, OFFSET(parse_only), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
170 {"mpeg_quant", "use MPEG quantizers instead of H.263", OFFSET(mpeg_quant), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
171 {"stats_out", NULL, OFFSET(stats_out), FF_OPT_TYPE_STRING, DEFAULT, CHAR_MIN, CHAR_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
172 {"stats_in", NULL, OFFSET(stats_in), FF_OPT_TYPE_STRING, DEFAULT, CHAR_MIN, CHAR_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
173 {"qsquish", "how to keep quantizer between qmin and qmax (0 = clip, 1 = use differentiable function)", OFFSET(rc_qsquish), FF_OPT_TYPE_FLOAT, DEFAULT, 0, 99, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
174 {"rc_qmod_amp", "experimental quantizer modulation", OFFSET(rc_qmod_amp), FF_OPT_TYPE_FLOAT, DEFAULT, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
175 {"rc_qmod_freq", "experimental quantizer modulation", OFFSET(rc_qmod_freq), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
176 {"rc_override_count", NULL, OFFSET(rc_override_count), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
177 {"rc_eq", "set rate control equation", OFFSET(rc_eq), FF_OPT_TYPE_STRING, DEFAULT, CHAR_MIN, CHAR_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
178 {"maxrate", "set max video bitrate tolerance (in bits/s)", OFFSET(rc_max_rate), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
179 {"minrate", "set min video bitrate tolerance (in bits/s)", OFFSET(rc_min_rate), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
180 {"bufsize", "set ratecontrol buffer size (in bits)", OFFSET(rc_buffer_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, A|V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
181 {"rc_buf_aggressivity", "currently useless", OFFSET(rc_buffer_aggressivity), FF_OPT_TYPE_FLOAT, 1.0, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
182 {"i_qfactor", "qp factor between P and I frames", OFFSET(i_quant_factor), FF_OPT_TYPE_FLOAT, -0.8, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
183 {"i_qoffset", "qp offset between P and I frames", OFFSET(i_quant_offset), FF_OPT_TYPE_FLOAT, 0.0, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
184 {"rc_init_cplx", "initial complexity for 1-pass encoding", OFFSET(rc_initial_cplx), FF_OPT_TYPE_FLOAT, DEFAULT, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
185 {"dct", "DCT algorithm", OFFSET(dct_algo), FF_OPT_TYPE_INT, DEFAULT, 0, INT_MAX, V|E, "dct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
186 {"auto", "autoselect a good one (default)", 0, FF_OPT_TYPE_CONST, FF_DCT_AUTO, INT_MIN, INT_MAX, V|E, "dct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
187 {"fastint", "fast integer", 0, FF_OPT_TYPE_CONST, FF_DCT_FASTINT, INT_MIN, INT_MAX, V|E, "dct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
188 {"int", "accurate integer", 0, FF_OPT_TYPE_CONST, FF_DCT_INT, INT_MIN, INT_MAX, V|E, "dct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
189 {"mmx", NULL, 0, FF_OPT_TYPE_CONST, FF_DCT_MMX, INT_MIN, INT_MAX, V|E, "dct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
190 {"mlib", NULL, 0, FF_OPT_TYPE_CONST, FF_DCT_MLIB, INT_MIN, INT_MAX, V|E, "dct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
191 {"altivec", NULL, 0, FF_OPT_TYPE_CONST, FF_DCT_ALTIVEC, INT_MIN, INT_MAX, V|E, "dct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
192 {"faan", "floating point AAN DCT", 0, FF_OPT_TYPE_CONST, FF_DCT_FAAN, INT_MIN, INT_MAX, V|E, "dct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
193 {"lumi_mask", "compresses bright areas stronger than medium ones", OFFSET(lumi_masking), FF_OPT_TYPE_FLOAT, 0, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
194 {"tcplx_mask", "temporal complexity masking", OFFSET(temporal_cplx_masking), FF_OPT_TYPE_FLOAT, 0, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
195 {"scplx_mask", "spatial complexity masking", OFFSET(spatial_cplx_masking), FF_OPT_TYPE_FLOAT, 0, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
196 {"p_mask", "inter masking", OFFSET(p_masking), FF_OPT_TYPE_FLOAT, 0, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
197 {"dark_mask", "compresses dark areas stronger than medium ones", OFFSET(dark_masking), FF_OPT_TYPE_FLOAT, 0, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
198 {"idct", "select IDCT implementation", OFFSET(idct_algo), FF_OPT_TYPE_INT, DEFAULT, 0, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
199 {"auto", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_AUTO, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
200 {"int", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_INT, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
201 {"simple", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_SIMPLE, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
202 {"simplemmx", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_SIMPLEMMX, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
203 {"libmpeg2mmx", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_LIBMPEG2MMX, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
204 {"ps2", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_PS2, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
205 {"mlib", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_MLIB, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
206 {"arm", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_ARM, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
207 {"altivec", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_ALTIVEC, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
208 {"sh4", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_SH4, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
209 {"simplearm", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_SIMPLEARM, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
210 {"simplearmv5te", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_SIMPLEARMV5TE, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
211 {"simplearmv6", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_SIMPLEARMV6, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
212 {"simpleneon", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_SIMPLENEON, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
213 {"h264", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_H264, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
214 {"vp3", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_VP3, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
215 {"ipp", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_IPP, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
216 {"xvidmmx", NULL, 0, FF_OPT_TYPE_CONST, FF_IDCT_XVIDMMX, INT_MIN, INT_MAX, V|E|D, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
217 {"faani", "floating point AAN IDCT", 0, FF_OPT_TYPE_CONST, FF_IDCT_FAAN, INT_MIN, INT_MAX, V|D|E, "idct"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
218 {"slice_count", NULL, OFFSET(slice_count), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
219 {"ec", "set error concealment strategy", OFFSET(error_concealment), FF_OPT_TYPE_FLAGS, 3, INT_MIN, INT_MAX, V|D, "ec"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
220 {"guess_mvs", "iterative motion vector (MV) search (slow)", 0, FF_OPT_TYPE_CONST, FF_EC_GUESS_MVS, INT_MIN, INT_MAX, V|D, "ec"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
221 {"deblock", "use strong deblock filter for damaged MBs", 0, FF_OPT_TYPE_CONST, FF_EC_DEBLOCK, INT_MIN, INT_MAX, V|D, "ec"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
222 {"bits_per_coded_sample", NULL, OFFSET(bits_per_coded_sample), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
223 {"pred", "prediction method", OFFSET(prediction_method), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E, "pred"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
224 {"left", NULL, 0, FF_OPT_TYPE_CONST, FF_PRED_LEFT, INT_MIN, INT_MAX, V|E, "pred"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
225 {"plane", NULL, 0, FF_OPT_TYPE_CONST, FF_PRED_PLANE, INT_MIN, INT_MAX, V|E, "pred"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
226 {"median", NULL, 0, FF_OPT_TYPE_CONST, FF_PRED_MEDIAN, INT_MIN, INT_MAX, V|E, "pred"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
227 {"aspect", "sample aspect ratio", OFFSET(sample_aspect_ratio), FF_OPT_TYPE_RATIONAL, DEFAULT, 0, 10, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
228 {"debug", "print specific debug info", OFFSET(debug), FF_OPT_TYPE_FLAGS, DEFAULT, 0, INT_MAX, V|A|S|E|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
229 {"pict", "picture info", 0, FF_OPT_TYPE_CONST, FF_DEBUG_PICT_INFO, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
230 {"rc", "rate control", 0, FF_OPT_TYPE_CONST, FF_DEBUG_RC, INT_MIN, INT_MAX, V|E, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
231 {"bitstream", NULL, 0, FF_OPT_TYPE_CONST, FF_DEBUG_BITSTREAM, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
232 {"mb_type", "macroblock (MB) type", 0, FF_OPT_TYPE_CONST, FF_DEBUG_MB_TYPE, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
233 {"qp", "per-block quantization parameter (QP)", 0, FF_OPT_TYPE_CONST, FF_DEBUG_QP, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
234 {"mv", "motion vector", 0, FF_OPT_TYPE_CONST, FF_DEBUG_MV, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
235 {"dct_coeff", NULL, 0, FF_OPT_TYPE_CONST, FF_DEBUG_DCT_COEFF, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
236 {"skip", NULL, 0, FF_OPT_TYPE_CONST, FF_DEBUG_SKIP, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
237 {"startcode", NULL, 0, FF_OPT_TYPE_CONST, FF_DEBUG_STARTCODE, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
238 {"pts", NULL, 0, FF_OPT_TYPE_CONST, FF_DEBUG_PTS, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
239 {"er", "error recognition", 0, FF_OPT_TYPE_CONST, FF_DEBUG_ER, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
240 {"mmco", "memory management control operations (H.264)", 0, FF_OPT_TYPE_CONST, FF_DEBUG_MMCO, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
241 {"bugs", NULL, 0, FF_OPT_TYPE_CONST, FF_DEBUG_BUGS, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
242 {"vis_qp", "visualize quantization parameter (QP), lower QP are tinted greener", 0, FF_OPT_TYPE_CONST, FF_DEBUG_VIS_QP, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
243 {"vis_mb_type", "visualize block types", 0, FF_OPT_TYPE_CONST, FF_DEBUG_VIS_MB_TYPE, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
244 {"buffers", "picture buffer allocations", 0, FF_OPT_TYPE_CONST, FF_DEBUG_BUFFERS, INT_MIN, INT_MAX, V|D, "debug"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
245 {"vismv", "visualize motion vectors (MVs)", OFFSET(debug_mv), FF_OPT_TYPE_INT, DEFAULT, 0, INT_MAX, V|D, "debug_mv"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
246 {"pf", "forward predicted MVs of P-frames", 0, FF_OPT_TYPE_CONST, FF_DEBUG_VIS_MV_P_FOR, INT_MIN, INT_MAX, V|D, "debug_mv"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
247 {"bf", "forward predicted MVs of B-frames", 0, FF_OPT_TYPE_CONST, FF_DEBUG_VIS_MV_B_FOR, INT_MIN, INT_MAX, V|D, "debug_mv"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
248 {"bb", "backward predicted MVs of B-frames", 0, FF_OPT_TYPE_CONST, FF_DEBUG_VIS_MV_B_BACK, INT_MIN, INT_MAX, V|D, "debug_mv"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
249 {"mb_qmin", "obsolete, use qmin", OFFSET(mb_qmin), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
250 {"mb_qmax", "obsolete, use qmax", OFFSET(mb_qmax), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
251 {"cmp", "full pel me compare function", OFFSET(me_cmp), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
252 {"subcmp", "sub pel me compare function", OFFSET(me_sub_cmp), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
253 {"mbcmp", "macroblock compare function", OFFSET(mb_cmp), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
254 {"ildctcmp", "interlaced dct compare function", OFFSET(ildct_cmp), FF_OPT_TYPE_INT, FF_CMP_VSAD, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
255 {"dia_size", "diamond type & size for motion estimation", OFFSET(dia_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
256 {"last_pred", "amount of motion predictors from the previous frame", OFFSET(last_predictor_count), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
257 {"preme", "pre motion estimation", OFFSET(pre_me), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
258 {"precmp", "pre motion estimation compare function", OFFSET(me_pre_cmp), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
259 {"sad", "sum of absolute differences, fast (default)", 0, FF_OPT_TYPE_CONST, FF_CMP_SAD, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
260 {"sse", "sum of squared errors", 0, FF_OPT_TYPE_CONST, FF_CMP_SSE, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
261 {"satd", "sum of absolute Hadamard transformed differences", 0, FF_OPT_TYPE_CONST, FF_CMP_SATD, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
262 {"dct", "sum of absolute DCT transformed differences", 0, FF_OPT_TYPE_CONST, FF_CMP_DCT, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
263 {"psnr", "sum of squared quantization errors (avoid, low quality)", 0, FF_OPT_TYPE_CONST, FF_CMP_PSNR, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
264 {"bit", "number of bits needed for the block", 0, FF_OPT_TYPE_CONST, FF_CMP_BIT, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
265 {"rd", "rate distortion optimal, slow", 0, FF_OPT_TYPE_CONST, FF_CMP_RD, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
266 {"zero", "0", 0, FF_OPT_TYPE_CONST, FF_CMP_ZERO, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
267 {"vsad", "sum of absolute vertical differences", 0, FF_OPT_TYPE_CONST, FF_CMP_VSAD, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
268 {"vsse","sum of squared vertical differences", 0, FF_OPT_TYPE_CONST, FF_CMP_VSSE, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
269 {"nsse", "noise preserving sum of squared differences", 0, FF_OPT_TYPE_CONST, FF_CMP_NSSE, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
270 #ifdef CONFIG_SNOW_ENCODER
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
271 {"w53", "5/3 wavelet, only used in snow", 0, FF_OPT_TYPE_CONST, FF_CMP_W53, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
272 {"w97", "9/7 wavelet, only used in snow", 0, FF_OPT_TYPE_CONST, FF_CMP_W97, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
273 #endif
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
274 {"dctmax", NULL, 0, FF_OPT_TYPE_CONST, FF_CMP_DCTMAX, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
275 {"chroma", NULL, 0, FF_OPT_TYPE_CONST, FF_CMP_CHROMA, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
276 {"pre_dia_size", "diamond type & size for motion estimation pre-pass", OFFSET(pre_dia_size), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
277 {"subq", "sub pel motion estimation quality", OFFSET(me_subpel_quality), FF_OPT_TYPE_INT, 8, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
278 {"dtg_active_format", NULL, OFFSET(dtg_active_format), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
279 {"me_range", "limit motion vectors range (1023 for DivX player)", OFFSET(me_range), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
280 {"ibias", "intra quant bias", OFFSET(intra_quant_bias), FF_OPT_TYPE_INT, FF_DEFAULT_QUANT_BIAS, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
281 {"pbias", "inter quant bias", OFFSET(inter_quant_bias), FF_OPT_TYPE_INT, FF_DEFAULT_QUANT_BIAS, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
282 {"color_table_id", NULL, OFFSET(color_table_id), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
283 {"internal_buffer_count", NULL, OFFSET(internal_buffer_count), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
284 {"global_quality", NULL, OFFSET(global_quality), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
285 {"coder", NULL, OFFSET(coder_type), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E, "coder"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
286 {"vlc", "variable length coder / huffman coder", 0, FF_OPT_TYPE_CONST, FF_CODER_TYPE_VLC, INT_MIN, INT_MAX, V|E, "coder"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
287 {"ac", "arithmetic coder", 0, FF_OPT_TYPE_CONST, FF_CODER_TYPE_AC, INT_MIN, INT_MAX, V|E, "coder"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
288 {"raw", "raw (no encoding)", 0, FF_OPT_TYPE_CONST, FF_CODER_TYPE_RAW, INT_MIN, INT_MAX, V|E, "coder"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
289 {"rle", "run-length coder", 0, FF_OPT_TYPE_CONST, FF_CODER_TYPE_RLE, INT_MIN, INT_MAX, V|E, "coder"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
290 {"deflate", "deflate-based coder", 0, FF_OPT_TYPE_CONST, FF_CODER_TYPE_DEFLATE, INT_MIN, INT_MAX, V|E, "coder"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
291 {"context", "context model", OFFSET(context_model), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
292 {"slice_flags", NULL, OFFSET(slice_flags), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
293 {"xvmc_acceleration", NULL, OFFSET(xvmc_acceleration), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
294 {"mbd", "macroblock decision algorithm (high quality mode)", OFFSET(mb_decision), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E, "mbd"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
295 {"simple", "use mbcmp (default)", 0, FF_OPT_TYPE_CONST, FF_MB_DECISION_SIMPLE, INT_MIN, INT_MAX, V|E, "mbd"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
296 {"bits", "use fewest bits", 0, FF_OPT_TYPE_CONST, FF_MB_DECISION_BITS, INT_MIN, INT_MAX, V|E, "mbd"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
297 {"rd", "use best rate distortion", 0, FF_OPT_TYPE_CONST, FF_MB_DECISION_RD, INT_MIN, INT_MAX, V|E, "mbd"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
298 {"stream_codec_tag", NULL, OFFSET(stream_codec_tag), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
299 {"sc_threshold", "scene change threshold", OFFSET(scenechange_threshold), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
300 {"lmin", "min lagrange factor (VBR)", OFFSET(lmin), FF_OPT_TYPE_INT, 2*FF_QP2LAMBDA, 0, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
301 {"lmax", "max lagrange factor (VBR)", OFFSET(lmax), FF_OPT_TYPE_INT, 31*FF_QP2LAMBDA, 0, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
302 {"nr", "noise reduction", OFFSET(noise_reduction), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
303 {"rc_init_occupancy", "number of bits which should be loaded into the rc buffer before decoding starts", OFFSET(rc_initial_buffer_occupancy), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
304 {"inter_threshold", NULL, OFFSET(inter_threshold), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
305 {"flags2", NULL, OFFSET(flags2), FF_OPT_TYPE_FLAGS, CODEC_FLAG2_FASTPSKIP|CODEC_FLAG2_BIT_RESERVOIR, 0, UINT_MAX, V|A|E|D, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
306 {"error", NULL, OFFSET(error_rate), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
307 {"antialias", "MP3 antialias algorithm", OFFSET(antialias_algo), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|D, "aa"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
308 {"auto", NULL, 0, FF_OPT_TYPE_CONST, FF_AA_AUTO, INT_MIN, INT_MAX, V|D, "aa"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
309 {"fastint", NULL, 0, FF_OPT_TYPE_CONST, FF_AA_FASTINT, INT_MIN, INT_MAX, V|D, "aa"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
310 {"int", NULL, 0, FF_OPT_TYPE_CONST, FF_AA_INT, INT_MIN, INT_MAX, V|D, "aa"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
311 {"float", NULL, 0, FF_OPT_TYPE_CONST, FF_AA_FLOAT, INT_MIN, INT_MAX, V|D, "aa"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
312 {"qns", "quantizer noise shaping", OFFSET(quantizer_noise_shaping), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
313 {"threads", NULL, OFFSET(thread_count), FF_OPT_TYPE_INT, 1, INT_MIN, INT_MAX, V|E|D},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
314 {"me_threshold", "motion estimaton threshold", OFFSET(me_threshold), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
315 {"mb_threshold", "macroblock threshold", OFFSET(mb_threshold), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
316 {"dc", "intra_dc_precision", OFFSET(intra_dc_precision), FF_OPT_TYPE_INT, 0, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
317 {"nssew", "nsse weight", OFFSET(nsse_weight), FF_OPT_TYPE_INT, 8, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
318 {"skip_top", "number of macroblock rows at the top which are skipped", OFFSET(skip_top), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|D},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
319 {"skip_bottom", "number of macroblock rows at the bottom which are skipped", OFFSET(skip_bottom), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|D},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
320 {"profile", NULL, OFFSET(profile), FF_OPT_TYPE_INT, FF_PROFILE_UNKNOWN, INT_MIN, INT_MAX, V|A|E, "profile"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
321 {"unknown", NULL, 0, FF_OPT_TYPE_CONST, FF_PROFILE_UNKNOWN, INT_MIN, INT_MAX, V|A|E, "profile"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
322 {"aac_main", NULL, 0, FF_OPT_TYPE_CONST, FF_PROFILE_AAC_MAIN, INT_MIN, INT_MAX, A|E, "profile"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
323 {"aac_low", NULL, 0, FF_OPT_TYPE_CONST, FF_PROFILE_AAC_LOW, INT_MIN, INT_MAX, A|E, "profile"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
324 {"aac_ssr", NULL, 0, FF_OPT_TYPE_CONST, FF_PROFILE_AAC_SSR, INT_MIN, INT_MAX, A|E, "profile"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
325 {"aac_ltp", NULL, 0, FF_OPT_TYPE_CONST, FF_PROFILE_AAC_LTP, INT_MIN, INT_MAX, A|E, "profile"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
326 {"level", NULL, OFFSET(level), FF_OPT_TYPE_INT, FF_LEVEL_UNKNOWN, INT_MIN, INT_MAX, V|A|E, "level"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
327 {"unknown", NULL, 0, FF_OPT_TYPE_CONST, FF_LEVEL_UNKNOWN, INT_MIN, INT_MAX, V|A|E, "level"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
328 {"lowres", "decode at 1= 1/2, 2=1/4, 3=1/8 resolutions", OFFSET(lowres), FF_OPT_TYPE_INT, 0, 0, INT_MAX, V|D},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
329 {"skip_threshold", "frame skip threshold", OFFSET(frame_skip_threshold), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
330 {"skip_factor", "frame skip factor", OFFSET(frame_skip_factor), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
331 {"skip_exp", "frame skip exponent", OFFSET(frame_skip_exp), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
332 {"skipcmp", "frame skip compare function", OFFSET(frame_skip_cmp), FF_OPT_TYPE_INT, FF_CMP_DCTMAX, INT_MIN, INT_MAX, V|E, "cmp_func"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
333 {"border_mask", "increases the quantizer for macroblocks close to borders", OFFSET(border_masking), FF_OPT_TYPE_FLOAT, DEFAULT, -FLT_MAX, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
334 {"mblmin", "min macroblock lagrange factor (VBR)", OFFSET(mb_lmin), FF_OPT_TYPE_INT, FF_QP2LAMBDA * 2, 1, FF_LAMBDA_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
335 {"mblmax", "max macroblock lagrange factor (VBR)", OFFSET(mb_lmax), FF_OPT_TYPE_INT, FF_QP2LAMBDA * 31, 1, FF_LAMBDA_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
336 {"mepc", "motion estimation bitrate penalty compensation (1.0 = 256)", OFFSET(me_penalty_compensation), FF_OPT_TYPE_INT, 256, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
337 {"skip_loop_filter", NULL, OFFSET(skip_loop_filter), FF_OPT_TYPE_INT, AVDISCARD_DEFAULT, INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
338 {"skip_idct" , NULL, OFFSET(skip_idct) , FF_OPT_TYPE_INT, AVDISCARD_DEFAULT, INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
339 {"skip_frame" , NULL, OFFSET(skip_frame) , FF_OPT_TYPE_INT, AVDISCARD_DEFAULT, INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
340 {"none" , NULL, 0, FF_OPT_TYPE_CONST, AVDISCARD_NONE , INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
341 {"default" , NULL, 0, FF_OPT_TYPE_CONST, AVDISCARD_DEFAULT, INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
342 {"noref" , NULL, 0, FF_OPT_TYPE_CONST, AVDISCARD_NONREF , INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
343 {"bidir" , NULL, 0, FF_OPT_TYPE_CONST, AVDISCARD_BIDIR , INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
344 {"nokey" , NULL, 0, FF_OPT_TYPE_CONST, AVDISCARD_NONKEY , INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
345 {"all" , NULL, 0, FF_OPT_TYPE_CONST, AVDISCARD_ALL , INT_MIN, INT_MAX, V|D, "avdiscard"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
346 {"bidir_refine", "refine the two motion vectors used in bidirectional macroblocks", OFFSET(bidir_refine), FF_OPT_TYPE_INT, DEFAULT, 0, 4, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
347 {"brd_scale", "downscales frames for dynamic B-frame decision", OFFSET(brd_scale), FF_OPT_TYPE_INT, DEFAULT, 0, 10, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
348 {"crf", "enables constant quality mode, and selects the quality (x264)", OFFSET(crf), FF_OPT_TYPE_FLOAT, DEFAULT, 0, 51, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
349 {"cqp", "constant quantization parameter rate control method", OFFSET(cqp), FF_OPT_TYPE_INT, -1, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
350 {"keyint_min", "minimum interval between IDR-frames (x264)", OFFSET(keyint_min), FF_OPT_TYPE_INT, 25, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
351 {"refs", "reference frames to consider for motion compensation (Snow)", OFFSET(refs), FF_OPT_TYPE_INT, 1, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
352 {"chromaoffset", "chroma qp offset from luma", OFFSET(chromaoffset), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
353 {"bframebias", "influences how often B-frames are used", OFFSET(bframebias), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
354 {"trellis", "rate-distortion optimal quantization", OFFSET(trellis), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX, V|A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
355 {"directpred", "direct mv prediction mode - 0 (none), 1 (spatial), 2 (temporal), 3 (auto)", OFFSET(directpred), FF_OPT_TYPE_INT, 2, INT_MIN, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
356 {"bpyramid", "allows B-frames to be used as references for predicting", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_BPYRAMID, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
357 {"wpred", "weighted biprediction for b-frames (H.264)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_WPRED, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
358 {"mixed_refs", "one reference per partition, as opposed to one reference per macroblock", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_MIXED_REFS, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
359 {"dct8x8", "high profile 8x8 transform (H.264)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_8X8DCT, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
360 {"fastpskip", "fast pskip (H.264)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_FASTPSKIP, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
361 {"aud", "access unit delimiters (H.264)", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_AUD, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
362 {"skiprd", "RD optimal MB level residual skipping", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_SKIP_RD, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
363 {"complexityblur", "reduce fluctuations in qp (before curve compression)", OFFSET(complexityblur), FF_OPT_TYPE_FLOAT, 20.0, FLT_MIN, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
364 {"deblockalpha", "in-loop deblocking filter alphac0 parameter", OFFSET(deblockalpha), FF_OPT_TYPE_INT, DEFAULT, -6, 6, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
365 {"deblockbeta", "in-loop deblocking filter beta parameter", OFFSET(deblockbeta), FF_OPT_TYPE_INT, DEFAULT, -6, 6, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
366 {"partitions", "macroblock subpartition sizes to consider", OFFSET(partitions), FF_OPT_TYPE_FLAGS, DEFAULT, INT_MIN, INT_MAX, V|E, "partitions"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
367 {"parti4x4", NULL, 0, FF_OPT_TYPE_CONST, X264_PART_I4X4, INT_MIN, INT_MAX, V|E, "partitions"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
368 {"parti8x8", NULL, 0, FF_OPT_TYPE_CONST, X264_PART_I8X8, INT_MIN, INT_MAX, V|E, "partitions"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
369 {"partp4x4", NULL, 0, FF_OPT_TYPE_CONST, X264_PART_P4X4, INT_MIN, INT_MAX, V|E, "partitions"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
370 {"partp8x8", NULL, 0, FF_OPT_TYPE_CONST, X264_PART_P8X8, INT_MIN, INT_MAX, V|E, "partitions"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
371 {"partb8x8", NULL, 0, FF_OPT_TYPE_CONST, X264_PART_B8X8, INT_MIN, INT_MAX, V|E, "partitions"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
372 {"sc_factor", "multiplied by qscale for each frame and added to scene_change_score", OFFSET(scenechange_factor), FF_OPT_TYPE_INT, 6, 0, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
373 {"mv0_threshold", NULL, OFFSET(mv0_threshold), FF_OPT_TYPE_INT, 256, 0, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
374 {"ivlc", "intra vlc table", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_INTRA_VLC, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
375 {"b_sensitivity", "adjusts sensitivity of b_frame_strategy 1", OFFSET(b_sensitivity), FF_OPT_TYPE_INT, 40, 1, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
376 {"compression_level", NULL, OFFSET(compression_level), FF_OPT_TYPE_INT, FF_COMPRESSION_DEFAULT, INT_MIN, INT_MAX, V|A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
377 {"use_lpc", "sets whether to use LPC mode (FLAC)", OFFSET(use_lpc), FF_OPT_TYPE_INT, -1, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
378 {"lpc_coeff_precision", "LPC coefficient precision (FLAC)", OFFSET(lpc_coeff_precision), FF_OPT_TYPE_INT, DEFAULT, 0, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
379 {"min_prediction_order", NULL, OFFSET(min_prediction_order), FF_OPT_TYPE_INT, -1, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
380 {"max_prediction_order", NULL, OFFSET(max_prediction_order), FF_OPT_TYPE_INT, -1, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
381 {"prediction_order_method", "search method for selecting prediction order", OFFSET(prediction_order_method), FF_OPT_TYPE_INT, -1, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
382 {"min_partition_order", NULL, OFFSET(min_partition_order), FF_OPT_TYPE_INT, -1, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
383 {"max_partition_order", NULL, OFFSET(max_partition_order), FF_OPT_TYPE_INT, -1, INT_MIN, INT_MAX, A|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
384 {"timecode_frame_start", "GOP timecode frame start number, in non drop frame format", OFFSET(timecode_frame_start), FF_OPT_TYPE_INT, 0, 0, INT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
385 {"drop_frame_timecode", NULL, 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_DROP_FRAME_TIMECODE, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
386 {"non_linear_q", "use non linear quantizer", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_NON_LINEAR_QUANT, INT_MIN, INT_MAX, V|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
387 {"request_channels", "set desired number of audio channels", OFFSET(request_channels), FF_OPT_TYPE_INT, DEFAULT, 0, INT_MAX, A|D},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
388 {"drc_scale", "percentage of dynamic range compression to apply", OFFSET(drc_scale), FF_OPT_TYPE_FLOAT, 1.0, 0.0, 1.0, A|D},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
389 {"reservoir", "use bit reservoir", 0, FF_OPT_TYPE_CONST, CODEC_FLAG2_BIT_RESERVOIR, INT_MIN, INT_MAX, A|E, "flags2"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
390 {"bits_per_raw_sample", NULL, OFFSET(bits_per_raw_sample), FF_OPT_TYPE_INT, DEFAULT, INT_MIN, INT_MAX},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
391 {"channel_layout", NULL, OFFSET(channel_layout), FF_OPT_TYPE_INT64, DEFAULT, 0, INT64_MAX, A|E|D, "channel_layout"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
392 {"request_channel_layout", NULL, OFFSET(request_channel_layout), FF_OPT_TYPE_INT64, DEFAULT, 0, INT64_MAX, A|D, "request_channel_layout"},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
393 {"rc_max_vbv_use", NULL, OFFSET(rc_max_available_vbv_use), FF_OPT_TYPE_FLOAT, 1.0/3, 0.0, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
394 {"rc_min_vbv_use", NULL, OFFSET(rc_min_vbv_overflow_use), FF_OPT_TYPE_FLOAT, 3, 0.0, FLT_MAX, V|E},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
395 {NULL},
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
396 };
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
397
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
398 #undef A
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
399 #undef V
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
400 #undef S
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
401 #undef E
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
402 #undef D
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
403 #undef DEFAULT
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
404
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
405 static const AVClass av_codec_context_class = { "AVCodecContext", context_to_name, options };
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
406
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
407 void avcodec_get_context_defaults2(AVCodecContext *s, enum CodecType codec_type){
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
408 int flags=0;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
409 memset(s, 0, sizeof(AVCodecContext));
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
410
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
411 s->av_class= &av_codec_context_class;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
412
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
413 s->codec_type = codec_type;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
414 if(codec_type == CODEC_TYPE_AUDIO)
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
415 flags= AV_OPT_FLAG_AUDIO_PARAM;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
416 else if(codec_type == CODEC_TYPE_VIDEO)
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
417 flags= AV_OPT_FLAG_VIDEO_PARAM;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
418 else if(codec_type == CODEC_TYPE_SUBTITLE)
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
419 flags= AV_OPT_FLAG_SUBTITLE_PARAM;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
420 av_opt_set_defaults2(s, flags, flags);
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
421
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
422 s->time_base= (AVRational){0,1};
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
423 s->get_buffer= avcodec_default_get_buffer;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
424 s->release_buffer= avcodec_default_release_buffer;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
425 s->get_format= avcodec_default_get_format;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
426 s->execute= avcodec_default_execute;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
427 s->sample_aspect_ratio= (AVRational){0,1};
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
428 s->pix_fmt= PIX_FMT_NONE;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
429 s->sample_fmt= SAMPLE_FMT_S16; // FIXME: set to NONE
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
430
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
431 s->palctrl = NULL;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
432 s->reget_buffer= avcodec_default_reget_buffer;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
433 }
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
434
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
435 AVCodecContext *avcodec_alloc_context2(enum CodecType codec_type){
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
436 AVCodecContext *avctx= av_malloc(sizeof(AVCodecContext));
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
437
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
438 if(avctx==NULL) return NULL;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
439
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
440 avcodec_get_context_defaults2(avctx, codec_type);
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
441
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
442 return avctx;
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
443 }
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
444
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
445 void avcodec_get_context_defaults(AVCodecContext *s){
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
446 avcodec_get_context_defaults2(s, CODEC_TYPE_UNKNOWN);
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
447 }
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
448
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
449 AVCodecContext *avcodec_alloc_context(void){
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
450 return avcodec_alloc_context2(CODEC_TYPE_UNKNOWN);
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
451 }
0a7fd7dbea1a Move the AVCodecContext options definition to a dedicated file, reduce
stefano
parents:
diff changeset
452