📄 avcodec.h
字号:
/** * * - encoding: unused * - decoding: set by user. */ enum AVDiscard skip_idct; /** * * - encoding: unused * - decoding: set by user. */ enum AVDiscard skip_frame; /** * * - encoding: set by user. * - decoding: unused */ int bidir_refine; /** * * - encoding: set by user. * - decoding: unused */ int brd_scale; /** * constant rate factor - quality-based VBR - values ~correspond to qps * - encoding: set by user. * - decoding: unused */ float crf; /** * constant quantization parameter rate control method * - encoding: set by user. * - decoding: unused */ int cqp; /** * minimum gop size * - encoding: set by user. * - decoding: unused */ int keyint_min; /** * number of reference frames * - encoding: set by user. * - decoding: unused */ int refs; /** * chroma qp offset from luma * - encoding: set by user. * - decoding: unused */ int chromaoffset; /** * influences how often b-frames are used * - encoding: set by user. * - decoding: unused */ int bframebias; /** * trellis RD quantization * - encoding: set by user. * - decoding: unused */ int trellis; /** * reduce fluctuations in qp (before curve compression) * - encoding: set by user. * - decoding: unused */ float complexityblur; /** * in-loop deblocking filter alphac0 parameter * alpha is in the range -6...6 * - encoding: set by user. * - decoding: unused */ int deblockalpha; /** * in-loop deblocking filter beta parameter * beta is in the range -6...6 * - encoding: set by user. * - decoding: unused */ int deblockbeta; /** * macroblock subpartition sizes to consider - p8x8, p4x4, b8x8, i8x8, i4x4 * - encoding: set by user. * - decoding: unused */ int partitions;#define X264_PART_I4X4 0x001 /* Analyse i4x4 */#define X264_PART_I8X8 0x002 /* Analyse i8x8 (requires 8x8 transform) */#define X264_PART_P8X8 0x010 /* Analyse p16x8, p8x16 and p8x8 */#define X264_PART_P4X4 0x020 /* Analyse p8x4, p4x8, p4x4 */#define X264_PART_B8X8 0x100 /* Analyse b16x8, b8x16 and b8x8 */ /** * direct mv prediction mode - 0 (none), 1 (spatial), 2 (temporal) * - encoding: set by user. * - decoding: unused */ int directpred; /** * audio cutoff bandwidth (0 means "automatic") . Currently used only by FAAC * - encoding: set by user. * - decoding: unused */ int cutoff; /** * multiplied by qscale for each frame and added to scene_change_score * - encoding: set by user. * - decoding: unused */ int scenechange_factor; /** * * note: value depends upon the compare functin used for fullpel ME * - encoding: set by user. * - decoding: unused */ int mv0_threshold; /** * adjusts sensitivity of b_frame_strategy 1 * - encoding: set by user. * - decoding: unused */ int b_sensitivity; /** * - encoding: set by user. * - decoding: unused */ int compression_level;#define FF_COMPRESSION_DEFAULT -1 /** * sets whether to use LPC mode - used by FLAC encoder * - encoding: set by user. * - decoding: unused. */ int use_lpc; /** * LPC coefficient precision - used by FLAC encoder * - encoding: set by user. * - decoding: unused. */ int lpc_coeff_precision; /** * - encoding: set by user. * - decoding: unused. */ int min_prediction_order; /** * - encoding: set by user. * - decoding: unused. */ int max_prediction_order; /** * search method for selecting prediction order * - encoding: set by user. * - decoding: unused. */ int prediction_order_method; /** * - encoding: set by user. * - decoding: unused. */ int min_partition_order; /** * - encoding: set by user. * - decoding: unused. */ int max_partition_order; /** * GOP timecode frame start number, in non drop frame format * - encoding: set by user. * - decoding: unused. */ int64_t timecode_frame_start;} AVCodecContext;/** * AVCodec. */typedef struct AVCodec { const char *name; enum CodecType type; enum CodecID id; int priv_data_size; int (*init)(AVCodecContext *); int (*encode)(AVCodecContext *, uint8_t *buf, int buf_size, void *data); int (*close)(AVCodecContext *); int (*decode)(AVCodecContext *, void *outdata, int *outdata_size, uint8_t *buf, int buf_size); int capabilities; struct AVCodec *next; void (*flush)(AVCodecContext *); const AVRational *supported_framerates; ///array of supported framerates, or NULL if any, array is terminated by {0,0} const enum PixelFormat *pix_fmts; ///array of supported pixel formats, or NULL if unknown, array is terminanted by -1} AVCodec;/** * four components are given, that's all. * the last component is alpha */typedef struct AVPicture { uint8_t *data[4]; int linesize[4]; ///< number of bytes per line} AVPicture;/** * AVPaletteControl * This structure defines a method for communicating palette changes * between and demuxer and a decoder. * this is totally broken, palette changes should be sent as AVPackets */#define AVPALETTE_SIZE 1024#define AVPALETTE_COUNT 256typedef struct AVPaletteControl { /* demuxer sets this to 1 to indicate the palette has changed; * decoder resets to 0 */ int palette_changed; /* 4-byte ARGB palette entries, stored in native byte order; note that * the individual palette components should be on a 8-bit scale; if * the palette data comes from a IBM VGA native format, the component * data is probably 6 bits in size and needs to be scaled */ unsigned int palette[AVPALETTE_COUNT];} AVPaletteControl attribute_deprecated;typedef struct AVSubtitleRect { uint16_t x; uint16_t y; uint16_t w; uint16_t h; uint16_t nb_colors; int linesize; uint32_t *rgba_palette; uint8_t *bitmap;} AVSubtitleRect;typedef struct AVSubtitle { uint16_t format; /* 0 = graphics */ uint32_t start_display_time; /* relative to packet pts, in ms */ uint32_t end_display_time; /* relative to packet pts, in ms */ uint32_t num_rects; AVSubtitleRect *rects;} AVSubtitle;extern AVCodec ac3_encoder;extern AVCodec amr_nb_encoder;extern AVCodec amr_wb_encoder;extern AVCodec asv1_encoder;extern AVCodec asv2_encoder;extern AVCodec dvvideo_encoder;extern AVCodec faac_encoder;extern AVCodec ffv1_encoder;extern AVCodec ffvhuff_encoder;extern AVCodec flac_encoder;extern AVCodec flashsv_encoder;extern AVCodec flv_encoder;extern AVCodec gif_encoder;extern AVCodec h261_encoder;extern AVCodec h263_encoder;extern AVCodec h263p_encoder;extern AVCodec h264_encoder;extern AVCodec huffyuv_encoder;extern AVCodec jpegls_encoder;extern AVCodec libgsm_encoder;extern AVCodec libtheora_encoder;extern AVCodec ljpeg_encoder;extern AVCodec mdec_encoder;extern AVCodec mjpeg_encoder;extern AVCodec mp2_encoder;extern AVCodec mp3lame_encoder;extern AVCodec mpeg1video_encoder;extern AVCodec mpeg2video_encoder;extern AVCodec mpeg4_encoder;extern AVCodec msmpeg4v1_encoder;extern AVCodec msmpeg4v2_encoder;extern AVCodec msmpeg4v3_encoder;extern AVCodec oggvorbis_encoder;extern AVCodec pam_encoder;extern AVCodec pbm_encoder;extern AVCodec pgm_encoder;extern AVCodec pgmyuv_encoder;extern AVCodec png_encoder;extern AVCodec ppm_encoder;extern AVCodec rv10_encoder;extern AVCodec rv20_encoder;extern AVCodec snow_encoder;extern AVCodec sonic_encoder;extern AVCodec sonic_ls_encoder;extern AVCodec svq1_encoder;extern AVCodec vcr1_encoder;extern AVCodec vorbis_encoder;extern AVCodec wmv1_encoder;extern AVCodec wmv2_encoder;extern AVCodec x264_encoder;extern AVCodec xvid_encoder;extern AVCodec zlib_encoder;extern AVCodec zmbv_encoder;extern AVCodec aac_decoder;extern AVCodec aasc_decoder;extern AVCodec alac_decoder;extern AVCodec amr_nb_decoder;extern AVCodec amr_wb_decoder;extern AVCodec asv1_decoder;extern AVCodec asv2_decoder;extern AVCodec avs_decoder;extern AVCodec bmp_decoder;extern AVCodec cavs_decoder;extern AVCodec cinepak_decoder;extern AVCodec cljr_decoder;extern AVCodec cook_decoder;extern AVCodec cscd_decoder;extern AVCodec cyuv_decoder;extern AVCodec dsicinaudio_decoder;extern AVCodec dsicinvideo_decoder;extern AVCodec dvvideo_decoder;extern AVCodec eightbps_decoder;extern AVCodec ffv1_decoder;extern AVCodec ffvhuff_decoder;extern AVCodec flac_decoder;extern AVCodec flashsv_decoder;extern AVCodec flic_decoder;extern AVCodec flv_decoder;extern AVCodec fourxm_decoder;extern AVCodec fraps_decoder;extern AVCodec gif_decoder;extern AVCodec h261_decoder;extern AVCodec h263_decoder;extern AVCodec h263i_decoder;extern AVCodec h264_decoder;extern AVCodec huffyuv_decoder;extern AVCodec idcin_decoder;extern AVCodec imc_decoder;extern AVCodec indeo2_decoder;extern AVCodec indeo3_decoder;extern AVCodec interplay_dpcm_decoder;extern AVCodec interplay_video_decoder;extern AVCodec kmvc_decoder;extern AVCodec libgsm_decoder;extern AVCodec loco_decoder;extern AVCodec mace3_decoder;extern AVCodec mace6_decoder;extern AVCodec mdec_decoder;extern AVCodec mjpeg_decoder;extern AVCodec mjpegb_decoder;extern AVCodec mmvideo_decoder;extern AVCodec mp2_decoder;extern AVCodec mp3_decoder;extern AVCodec mp3adu_decoder;extern AVCodec mp3on4_decoder;extern AVCodec mpc7_decoder;extern AVCodec mpeg1video_decoder;extern AVCodec mpeg2video_decoder;extern AVCodec mpeg4_decoder;extern AVCodec mpeg4aac_decoder;extern AVCodec mpeg_xvmc_decoder;extern AVCodec mpegvideo_decoder;extern AVCodec msmpeg4v1_decoder;extern AVCodec msmpeg4v2_decoder;extern AVCodec msmpeg4v3_decoder;extern AVCodec msrle_decoder;extern AVCodec msvideo1_decoder;extern AVCodec mszh_decoder;extern AVCodec nuv_decoder;extern AVCodec oggvorbis_decoder;extern AVCodec png_decoder;extern AVCodec qdm2_decoder;extern AVCodec qdraw_decoder;extern AVCodec qpeg_decoder;extern AVCodec qtrle_decoder;extern AVCodec ra_144_decoder;extern AVCodec ra_288_decoder;extern AVCodec roq_decoder;extern AVCodec roq_dpcm_decoder;extern AVCodec rpza_decoder;extern AVCodec rv10_decoder;extern AVCodec rv20_decoder;extern AVCodec rv30_decoder;extern AVCodec rv40_decoder;extern AVCodec shorten_decoder;extern AVCodec smackaud_decoder;extern AVCodec smacker_decoder;extern AVCodec smc_decoder;extern AVCodec snow_decoder;extern AVCodec sol_dpcm_decoder;extern AVCodec sonic_decoder;extern AVCodec sp5x_decoder;extern AVCodec svq1_decoder;extern AVCodec svq3_decoder;extern AVCodec targa_decoder;extern AVCodec theora_decoder;extern AVCodec tiertexseqvideo_decoder;extern AVCodec tiff_decoder;extern AVCodec truemotion1_decoder;extern AVCodec truemotion2_decoder;extern AVCodec truespeech_decoder;extern AVCodec tscc_decoder;extern AVCodec tta_decoder;extern AVCodec ulti_decoder;extern AVCodec vc1_decoder;extern AVCodec vcr1_decoder;extern AVCodec vmdaudio_decoder;extern AVCodec vmdvideo_decoder;extern AVCodec vmnc_decoder;extern AVCodec vorbis_decoder;extern AVCodec vp3_decoder;extern AVCodec vp5_decoder;extern AVCodec vp6_decoder;extern AVCodec vp6f_decoder;extern AVCodec vqa_decoder;extern AVCodec wavpack_decoder;extern AVCodec wmav1_decoder;extern AVCodec wmav2_decoder;extern AVCodec wmv1_decoder;extern AVCodec wmv2_decoder;extern AVCodec wmv3_decoder;extern AVCodec wnv1_decoder;extern AVCodec ws_snd1_decoder;extern AVCodec xan_dpcm_decoder;extern AVCodec xan_wc3_decoder;extern AVCodec xl_decoder;extern AVCodec zlib_decoder;extern AVCodec zmbv_decoder;/* pcm codecs */#define PCM_CODEC(id, name) \extern AVCodec name ## _decoder; \extern AVCodec name ## _encoderPCM_CODEC(
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -