⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 codeccontext.h

📁 wma定点解码算法
💻 H
📖 第 1 页 / 共 2 页
字号:
     * - decoding: unused     */    char *rc_eq;    uint64_t error[4];    /**     * minimum MB quantizer.     * - encoding: set by user.     * - decoding: unused     */    int mb_qmin;    /**     * maximum MB quantizer.     * - encoding: set by user.     * - decoding: unused     */    int mb_qmax;    /**     * motion estimation compare function.     * - encoding: set by user.     * - decoding: unused     */    int me_cmp;    /**     * subpixel motion estimation compare function.     * - encoding: set by user.     * - decoding: unused     */    int me_sub_cmp;    /**     * macroblock compare function (not supported yet).     * - encoding: set by user.     * - decoding: unused     */    int mb_cmp;    /**     * interlaced dct compare function     * - encoding: set by user.     * - decoding: unused     */    int ildct_cmp;#define FF_CMP_SAD  0#define FF_CMP_SSE  1#define FF_CMP_SATD 2#define FF_CMP_DCT  3#define FF_CMP_PSNR 4#define FF_CMP_BIT  5#define FF_CMP_RD   6#define FF_CMP_ZERO 7#define FF_CMP_VSAD 8#define FF_CMP_VSSE 9#define FF_CMP_CHROMA 256    /**     * ME diamond size & shape.     * - encoding: set by user.     * - decoding: unused     */    int dia_size;    /**     * amount of previous MV predictors (2a+1 x 2a+1 square).     * - encoding: set by user.     * - decoding: unused     */    int last_predictor_count;    /**     * pre pass for motion estimation.     * - encoding: set by user.     * - decoding: unused     */    int pre_me;    /**     * motion estimation pre pass compare function.     * - encoding: set by user.     * - decoding: unused     */    int me_pre_cmp;    /**     * ME pre pass diamond size & shape.     * - encoding: set by user.     * - decoding: unused     */    int pre_dia_size;    /**     * subpel ME quality.     * - encoding: set by user.     * - decoding: unused     */    int me_subpel_quality;    /**     * Maximum motion estimation search range in subpel units.     * if 0 then no limit     *     * - encoding: set by user.     * - decoding: unused.     */    int me_range;    /**     * frame_rate_base.     * for variable fps this is 1     * - encoding: set by user.     * - decoding: set by lavc.     * @todo move this after frame_rate     */    int frame_rate_base;    /**     * intra quantizer bias.     * - encoding: set by user.     * - decoding: unused     */    int intra_quant_bias;#define FF_DEFAULT_QUANT_BIAS 999999    /**     * inter quantizer bias.     * - encoding: set by user.     * - decoding: unused     */    int inter_quant_bias;    /**     * color table ID.     * - encoding: unused.     * - decoding: which clrtable should be used for 8bit RGB images     *             table have to be stored somewhere FIXME     */    int color_table_id;    /**     * internal_buffer count.     * Dont touch, used by lavc default_get_buffer()     */    int internal_buffer_count;    /**     * internal_buffers.     * Dont touch, used by lavc default_get_buffer()     */    void *internal_buffer;    /**     * global quality for codecs which cannot change it per frame.     * this should be proportional to MPEG1/2/4 qscale.     * - encoding: set by user.     * - decoding: unused     */    int global_quality;#define FF_CODER_TYPE_VLC   0#define FF_CODER_TYPE_AC    1    /**     * coder type     * - encoding: set by user.     * - decoding: unused     */    int coder_type;    /**     * context model     * - encoding: set by user.     * - decoding: unused     */    int context_model;    /**     * slice flags     * - encoding: unused     * - decoding: set by user.     */    int slice_flags;#define SLICE_FLAG_CODED_ORDER    0x0001 ///< draw_horiz_band() is called in coded order instead of display#define SLICE_FLAG_ALLOW_FIELD    0x0002 ///< allow draw_horiz_band() with field slices (MPEG2 field pics)#define SLICE_FLAG_ALLOW_PLANE    0x0004 ///< allow draw_horiz_band() with 1 component at a time (SVQ1)    /**     * XVideo Motion Acceleration     * - encoding: forbidden     * - decoding: set by decoder     */    int xvmc_acceleration;    /**     * macroblock decision mode     * - encoding: set by user.     * - decoding: unused     */    int mb_decision;#define FF_MB_DECISION_SIMPLE 0        ///< uses mb_cmp#define FF_MB_DECISION_BITS   1        ///< chooses the one which needs the fewest bits#define FF_MB_DECISION_RD     2        ///< rate distoration    /**     * custom intra quantization matrix     * - encoding: set by user, can be NULL     * - decoding: set by lavc     */    uint16_t *intra_matrix;    /**     * custom inter quantization matrix     * - encoding: set by user, can be NULL     * - decoding: set by lavc     */    uint16_t *inter_matrix;    /**     * fourcc from the AVI stream header (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').     * this is used to workaround some encoder bugs     * - encoding: unused     * - decoding: set by user, will be converted to upper case by lavc during init     */    unsigned int stream_codec_tag;    /**     * scene change detection threshold.     * 0 is default, larger means fewer detected scene changes     * - encoding: set by user.     * - decoding: unused     */    int scenechange_threshold;    /**     * minimum lagrange multipler     * - encoding: set by user.     * - decoding: unused     */    int lmin;    /**     * maximum lagrange multipler     * - encoding: set by user.     * - decoding: unused     */    int lmax;    /**     * noise reduction strength     * - encoding: set by user.     * - decoding: unused     */    int noise_reduction;    /**     * simulates errors in the bitstream to test error concealment.     * - encoding: set by user.     * - decoding: unused.     */    int error_rate;    /**     * MP3 antialias algorithm, see FF_AA_* below.     * - encoding: unused     * - decoding: set by user     */    int antialias_algo;#define FF_AA_AUTO    0#define FF_AA_FASTINT 1 //not implemented yet#define FF_AA_INT     2#define FF_AA_FLOAT   3    /**     * Quantizer noise shaping.     * - encoding: set by user     * - decoding: unused     */    int quantizer_noise_shaping;} CodecContext;/** * AVOption. */typedef struct AVOption {    /** options' name */    const char *name; /* if name is NULL, it indicates a link to next */    /** short English text help or const struct AVOption* subpointer */    const char *help; //	const struct AVOption* sub;    /** offset to context structure where the parsed value should be stored */    int offset;    /** options' type */    int type;#define FF_OPT_TYPE_BOOL 1      ///< boolean - true,1,on  (or simply presence)#define FF_OPT_TYPE_DOUBLE 2    ///< double#define FF_OPT_TYPE_INT 3       ///< integer#define FF_OPT_TYPE_STRING 4    ///< string (finished with \0)#define FF_OPT_TYPE_MASK 0x1f	///< mask for types - upper bits are various flags//#define FF_OPT_TYPE_EXPERT 0x20 // flag for expert option#define FF_OPT_TYPE_FLAG (FF_OPT_TYPE_BOOL | 0x40)#define FF_OPT_TYPE_RCOVERRIDE (FF_OPT_TYPE_STRING | 0x80)    /** min value  (min == max   ->  no limits) */    double min;    /** maximum value for double/int */    double max;    /** default boo [0,1]l/double/int value */    double defval;    /**     * default string value (with optional semicolon delimited extra option-list     * i.e.   option1;option2;option3     * defval might select other then first argument as default     */    const char *defstr;#define FF_OPT_MAX_DEPTH 10} AVOption;/** * AVCodec. */typedef struct AVCodec {    const char *name;    enum CodecType type;    int id;    int priv_data_size;    int (*init)(CodecContext *);    int (*encode)(CodecContext *, uint8_t *buf, int buf_size, void *data);    int (*close)(CodecContext *);    int (*decode)(CodecContext *, void *outdata, int *outdata_size,                  uint8_t *buf, int buf_size);    int capabilities;    const AVOption *options;    struct AVCodec *next;    void (*flush)(CodecContext *);} AVCodec;#endif /* CODECCTX_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -