libavcodec/avcodec.h File Reference

external API header More...

#include <errno.h>
#include "libavutil/samplefmt.h"
#include "libavutil/avutil.h"
#include "libavutil/cpu.h"
#include "libavutil/dict.h"
#include "libavutil/log.h"
#include "libavutil/pixfmt.h"
#include "libavutil/rational.h"
#include "libavcodec/version.h"
#include "libavutil/audioconvert.h"

Go to the source code of this file.

Data Structures

struct  RcOverride
struct  AVPanScan
 Pan Scan area. More...
struct  AVPacket
struct  AVFrame
 Audio Video Frame. More...
struct  AVCodecContext
 main external API structure. More...
struct  AVProfile
 AVProfile. More...
struct  AVCodec
 AVCodec. More...
struct  AVHWAccel
 AVHWAccel. More...
struct  AVPicture
 four components are given, that's all. More...
struct  AVSubtitleRect
struct  AVSubtitle
struct  AVCodecParserContext
struct  AVCodecParser
struct  AVBitStreamFilterContext
struct  AVBitStreamFilter

Defines

#define FF_INPUT_BUFFER_PADDING_SIZE   16
 Required number of additionally allocated bytes at the end of the input bitstream for decoding.
#define FF_MIN_BUFFER_SIZE   16384
 minimum encoding buffer size Used to avoid some checks during header writing.
#define FF_MAX_B_FRAMES   16
#define CODEC_FLAG_QSCALE   0x0002
 Use fixed qscale.
#define CODEC_FLAG_4MV   0x0004
 4 MV per MB allowed / advanced prediction for H.263.
#define CODEC_FLAG_QPEL   0x0010
 Use qpel MC.
#define CODEC_FLAG_GMC   0x0020
 Use GMC.
#define CODEC_FLAG_MV0   0x0040
 Always try a MB with MV=<0,0>.
#define CODEC_FLAG_INPUT_PRESERVED   0x0100
 The parent program guarantees that the input for B-frames containing streams is not written to for at least s->max_b_frames+1 frames, if this is not set the input will be copied.
#define CODEC_FLAG_PASS1   0x0200
 Use internal 2pass ratecontrol in first pass mode.
#define CODEC_FLAG_PASS2   0x0400
 Use internal 2pass ratecontrol in second pass mode.
#define CODEC_FLAG_GRAY   0x2000
 Only decode/encode grayscale.
#define CODEC_FLAG_EMU_EDGE   0x4000
 Don't draw edges.
#define CODEC_FLAG_PSNR   0x8000
 error[?] variables will be set during encoding.
#define CODEC_FLAG_TRUNCATED
#define CODEC_FLAG_NORMALIZE_AQP   0x00020000
 Normalize adaptive quantization.
#define CODEC_FLAG_INTERLACED_DCT   0x00040000
 Use interlaced DCT.
#define CODEC_FLAG_LOW_DELAY   0x00080000
 Force low delay.
#define CODEC_FLAG_GLOBAL_HEADER   0x00400000
 Place global headers in extradata instead of every keyframe.
#define CODEC_FLAG_BITEXACT   0x00800000
 Use only bitexact stuff (except (I)DCT).
#define CODEC_FLAG_AC_PRED   0x01000000
 H.263 advanced intra coding / MPEG-4 AC prediction.
#define CODEC_FLAG_CBP_RD   0x04000000
 Use rate distortion optimization for cbp.
#define CODEC_FLAG_QP_RD   0x08000000
 Use rate distortion optimization for qp selectioon.
#define CODEC_FLAG_LOOP_FILTER   0x00000800
 loop filter
#define CODEC_FLAG_INTERLACED_ME   0x20000000
 interlaced motion estimation
#define CODEC_FLAG_CLOSED_GOP   0x80000000
#define CODEC_FLAG2_FAST   0x00000001
 Allow non spec compliant speedup tricks.
#define CODEC_FLAG2_STRICT_GOP   0x00000002
 Strictly enforce GOP size.
#define CODEC_FLAG2_NO_OUTPUT   0x00000004
 Skip bitstream encoding.
#define CODEC_FLAG2_LOCAL_HEADER   0x00000008
 Place global headers at every keyframe instead of in extradata.
#define CODEC_FLAG2_SKIP_RD   0x00004000
 RD optimal MB level residual skipping.
#define CODEC_FLAG2_CHUNKS   0x00008000
 Input bitstream might be truncated at a packet boundaries instead of only at frame boundaries.
#define CODEC_FLAG2_SHOW_ALL   0x00400000
 Show all frames before the first keyframe.
#define CODEC_CAP_DRAW_HORIZ_BAND   0x0001
#define CODEC_CAP_DR1   0x0002
 Codec uses get_buffer() for allocating buffers and supports custom allocators.
#define CODEC_CAP_TRUNCATED   0x0008
#define CODEC_CAP_HWACCEL   0x0010
#define CODEC_CAP_DELAY   0x0020
 Encoder or decoder requires flushing with NULL input at the end in order to give the complete and correct output.
#define CODEC_CAP_SMALL_LAST_FRAME   0x0040
 Codec can be fed a final frame with a smaller size.
#define CODEC_CAP_HWACCEL_VDPAU   0x0080
 Codec can export data for HW decoding (VDPAU).
#define CODEC_CAP_SUBFRAMES   0x0100
 Codec can output multiple frames per AVPacket Normally demuxers return one frame at a time, demuxers which do not do are connected to a parser to split what they return into proper frames.
#define CODEC_CAP_EXPERIMENTAL   0x0200
 Codec is experimental and is thus avoided in favor of non experimental encoders.
#define CODEC_CAP_CHANNEL_CONF   0x0400
 Codec should fill in channel configuration and samplerate instead of container.
#define CODEC_CAP_NEG_LINESIZES   0x0800
 Codec is able to deal with negative linesizes.
#define CODEC_CAP_FRAME_THREADS   0x1000
 Codec supports frame-level multithreading.
#define CODEC_CAP_SLICE_THREADS   0x2000
 Codec supports slice-based (or partition-based) multithreading.
#define CODEC_CAP_PARAM_CHANGE   0x4000
 Codec supports changed parameters at any point.
#define CODEC_CAP_AUTO_THREADS   0x8000
 Codec supports avctx->thread_count == 0 (auto).
#define CODEC_CAP_VARIABLE_FRAME_SIZE   0x10000
 Audio encoder supports receiving a different number of samples in each call.
#define CODEC_CAP_LOSSLESS   0x80000000
 Codec is lossless.
#define MB_TYPE_INTRA4x4   0x0001
#define MB_TYPE_INTRA16x16   0x0002
#define MB_TYPE_INTRA_PCM   0x0004
#define MB_TYPE_16x16   0x0008
#define MB_TYPE_16x8   0x0010
#define MB_TYPE_8x16   0x0020
#define MB_TYPE_8x8   0x0040
#define MB_TYPE_INTERLACED   0x0080
#define MB_TYPE_DIRECT2   0x0100
#define MB_TYPE_ACPRED   0x0200
#define MB_TYPE_GMC   0x0400
#define MB_TYPE_SKIP   0x0800
#define MB_TYPE_P0L0   0x1000
#define MB_TYPE_P1L0   0x2000
#define MB_TYPE_P0L1   0x4000
#define MB_TYPE_P1L1   0x8000
#define MB_TYPE_L0   (MB_TYPE_P0L0 | MB_TYPE_P1L0)
#define MB_TYPE_L1   (MB_TYPE_P0L1 | MB_TYPE_P1L1)
#define MB_TYPE_L0L1   (MB_TYPE_L0 | MB_TYPE_L1)
#define MB_TYPE_QUANT   0x00010000
#define MB_TYPE_CBP   0x00020000
#define FF_QSCALE_TYPE_MPEG1   0
#define FF_QSCALE_TYPE_MPEG2   1
#define FF_QSCALE_TYPE_H264   2
#define FF_QSCALE_TYPE_VP56   3
#define FF_BUFFER_TYPE_INTERNAL   1
#define FF_BUFFER_TYPE_USER   2
 direct rendering buffers (image is (de)allocated by user)
#define FF_BUFFER_TYPE_SHARED   4
 Buffer from somewhere else; don't deallocate image (data/base), all other tables are not shared.
#define FF_BUFFER_TYPE_COPY   8
 Just a (modified) copy of some other buffer, don't deallocate anything.
#define FF_BUFFER_HINTS_VALID   0x01
#define FF_BUFFER_HINTS_READABLE   0x02
#define FF_BUFFER_HINTS_PRESERVE   0x04
#define FF_BUFFER_HINTS_REUSABLE   0x08
#define AV_PKT_FLAG_KEY   0x0001
 The packet contains a keyframe.
#define AV_PKT_FLAG_CORRUPT   0x0002
 The packet content is corrupted.
#define AV_NUM_DATA_POINTERS   8
#define FF_ASPECT_EXTENDED   15
#define FF_RC_STRATEGY_XVID   1
#define FF_BUG_AUTODETECT   1
 autodetection
#define FF_BUG_OLD_MSMPEG4   2
#define FF_BUG_XVID_ILACE   4
#define FF_BUG_UMP4   8
#define FF_BUG_NO_PADDING   16
#define FF_BUG_AMV   32
#define FF_BUG_AC_VLC   0
 Will be removed, libavcodec can now handle these non-compliant files by default.
#define FF_BUG_QPEL_CHROMA   64
#define FF_BUG_STD_QPEL   128
#define FF_BUG_QPEL_CHROMA2   256
#define FF_BUG_DIRECT_BLOCKSIZE   512
#define FF_BUG_EDGE   1024
#define FF_BUG_HPEL_CHROMA   2048
#define FF_BUG_DC_CLIP   4096
#define FF_BUG_MS   8192
 Work around various bugs in Microsoft's broken decoders.
#define FF_BUG_TRUNCATED   16384
#define FF_COMPLIANCE_VERY_STRICT   2
 Strictly conform to an older more strict version of the spec or reference software.
#define FF_COMPLIANCE_STRICT   1
 Strictly conform to all the things in the spec no matter what consequences.
#define FF_COMPLIANCE_NORMAL   0
#define FF_COMPLIANCE_UNOFFICIAL   -1
 Allow unofficial extensions.
#define FF_COMPLIANCE_EXPERIMENTAL   -2
 Allow nonstandardized experimental things.
#define FF_DCT_AUTO   0
#define FF_DCT_FASTINT   1
#define FF_DCT_INT   2
#define FF_DCT_MMX   3
#define FF_DCT_MLIB   4
#define FF_DCT_ALTIVEC   5
#define FF_DCT_FAAN   6
#define FF_IDCT_AUTO   0
#define FF_IDCT_INT   1
#define FF_IDCT_SIMPLE   2
#define FF_IDCT_SIMPLEMMX   3
#define FF_IDCT_LIBMPEG2MMX   4
#define FF_IDCT_PS2   5
#define FF_IDCT_MLIB   6
#define FF_IDCT_ARM   7
#define FF_IDCT_ALTIVEC   8
#define FF_IDCT_SH4   9
#define FF_IDCT_SIMPLEARM   10
#define FF_IDCT_H264   11
#define FF_IDCT_VP3   12
#define FF_IDCT_IPP   13
#define FF_IDCT_XVIDMMX   14
#define FF_IDCT_CAVS   15
#define FF_IDCT_SIMPLEARMV5TE   16
#define FF_IDCT_SIMPLEARMV6   17
#define FF_IDCT_SIMPLEVIS   18
#define FF_IDCT_WMV2   19
#define FF_IDCT_FAAN   20
#define FF_IDCT_EA   21
#define FF_IDCT_SIMPLENEON   22
#define FF_IDCT_SIMPLEALPHA   23
#define FF_IDCT_BINK   24
#define FF_EC_GUESS_MVS   1
#define FF_EC_DEBLOCK   2
#define FF_PRED_LEFT   0
#define FF_PRED_PLANE   1
#define FF_PRED_MEDIAN   2
#define FF_DEBUG_PICT_INFO   1
#define FF_DEBUG_RC   2
#define FF_DEBUG_BITSTREAM   4
#define FF_DEBUG_MB_TYPE   8
#define FF_DEBUG_QP   16
#define FF_DEBUG_MV   32
#define FF_DEBUG_DCT_COEFF   0x00000040
#define FF_DEBUG_SKIP   0x00000080
#define FF_DEBUG_STARTCODE   0x00000100
#define FF_DEBUG_PTS   0x00000200
#define FF_DEBUG_ER   0x00000400
#define FF_DEBUG_MMCO   0x00000800
#define FF_DEBUG_BUGS   0x00001000
#define FF_DEBUG_VIS_QP   0x00002000
#define FF_DEBUG_VIS_MB_TYPE   0x00004000
#define FF_DEBUG_BUFFERS   0x00008000
#define FF_DEBUG_THREADS   0x00010000
#define FF_DEBUG_VIS_MV_P_FOR   0x00000001
#define FF_DEBUG_VIS_MV_B_FOR   0x00000002
#define FF_DEBUG_VIS_MV_B_BACK   0x00000004
#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_NSSE   10
#define FF_CMP_W53   11
#define FF_CMP_W97   12
#define FF_CMP_DCTMAX   13
#define FF_CMP_DCT264   14
#define FF_CMP_CHROMA   256
#define FF_DTG_AFD_SAME   8
#define FF_DTG_AFD_4_3   9
#define FF_DTG_AFD_16_9   10
#define FF_DTG_AFD_14_9   11
#define FF_DTG_AFD_4_3_SP_14_9   13
#define FF_DTG_AFD_16_9_SP_14_9   14
#define FF_DTG_AFD_SP_4_3   15
#define FF_DEFAULT_QUANT_BIAS   999999
#define FF_CODER_TYPE_VLC   0
#define FF_CODER_TYPE_AC   1
#define FF_CODER_TYPE_RAW   2
#define FF_CODER_TYPE_RLE   3
#define FF_CODER_TYPE_DEFLATE   4
#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)
#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 distortion
#define FF_PROFILE_UNKNOWN   -99
#define FF_PROFILE_RESERVED   -100
#define FF_PROFILE_AAC_MAIN   0
#define FF_PROFILE_AAC_LOW   1
#define FF_PROFILE_AAC_SSR   2
#define FF_PROFILE_AAC_LTP   3
#define FF_PROFILE_DTS   20
#define FF_PROFILE_DTS_ES   30
#define FF_PROFILE_DTS_96_24   40
#define FF_PROFILE_DTS_HD_HRA   50
#define FF_PROFILE_DTS_HD_MA   60
#define FF_PROFILE_MPEG2_422   0
#define FF_PROFILE_MPEG2_HIGH   1
#define FF_PROFILE_MPEG2_SS   2
#define FF_PROFILE_MPEG2_SNR_SCALABLE   3
#define FF_PROFILE_MPEG2_MAIN   4
#define FF_PROFILE_MPEG2_SIMPLE   5
#define FF_PROFILE_H264_CONSTRAINED   (1<<9)
#define FF_PROFILE_H264_INTRA   (1<<11)
#define FF_PROFILE_H264_BASELINE   66
#define FF_PROFILE_H264_CONSTRAINED_BASELINE   (66|FF_PROFILE_H264_CONSTRAINED)
#define FF_PROFILE_H264_MAIN   77
#define FF_PROFILE_H264_EXTENDED   88
#define FF_PROFILE_H264_HIGH   100
#define FF_PROFILE_H264_HIGH_10   110
#define FF_PROFILE_H264_HIGH_10_INTRA   (110|FF_PROFILE_H264_INTRA)
#define FF_PROFILE_H264_HIGH_422   122
#define FF_PROFILE_H264_HIGH_422_INTRA   (122|FF_PROFILE_H264_INTRA)
#define FF_PROFILE_H264_HIGH_444   144
#define FF_PROFILE_H264_HIGH_444_PREDICTIVE   244
#define FF_PROFILE_H264_HIGH_444_INTRA   (244|FF_PROFILE_H264_INTRA)
#define FF_PROFILE_H264_CAVLC_444   44
#define FF_PROFILE_VC1_SIMPLE   0
#define FF_PROFILE_VC1_MAIN   1
#define FF_PROFILE_VC1_COMPLEX   2
#define FF_PROFILE_VC1_ADVANCED   3
#define FF_PROFILE_MPEG4_SIMPLE   0
#define FF_PROFILE_MPEG4_SIMPLE_SCALABLE   1
#define FF_PROFILE_MPEG4_CORE   2
#define FF_PROFILE_MPEG4_MAIN   3
#define FF_PROFILE_MPEG4_N_BIT   4
#define FF_PROFILE_MPEG4_SCALABLE_TEXTURE   5
#define FF_PROFILE_MPEG4_SIMPLE_FACE_ANIMATION   6
#define FF_PROFILE_MPEG4_BASIC_ANIMATED_TEXTURE   7
#define FF_PROFILE_MPEG4_HYBRID   8
#define FF_PROFILE_MPEG4_ADVANCED_REAL_TIME   9
#define FF_PROFILE_MPEG4_CORE_SCALABLE   10
#define FF_PROFILE_MPEG4_ADVANCED_CODING   11
#define FF_PROFILE_MPEG4_ADVANCED_CORE   12
#define FF_PROFILE_MPEG4_ADVANCED_SCALABLE_TEXTURE   13
#define FF_PROFILE_MPEG4_SIMPLE_STUDIO   14
#define FF_PROFILE_MPEG4_ADVANCED_SIMPLE   15
#define FF_LEVEL_UNKNOWN   -99
#define FF_COMPRESSION_DEFAULT   -1
#define FF_THREAD_FRAME   1
 Decode more than one frame at once.
#define FF_THREAD_SLICE   2
 Decode more than one part of a single frame at once.
#define AV_EF_CRCCHECK   (1<<0)
#define AV_EF_BITSTREAM   (1<<1)
#define AV_EF_BUFFER   (1<<2)
#define AV_EF_EXPLODE   (1<<3)
#define AV_EF_CAREFUL   (1<<16)
#define AV_EF_COMPLIANT   (1<<17)
#define AV_EF_AGGRESSIVE   (1<<18)
#define AVPALETTE_SIZE   1024
#define AVPALETTE_COUNT   256
#define FF_LOSS_RESOLUTION   0x0001
 loss due to resolution change
#define FF_LOSS_DEPTH   0x0002
 loss due to color depth change
#define FF_LOSS_COLORSPACE   0x0004
 loss due to color space conversion
#define FF_LOSS_ALPHA   0x0008
 loss of alpha bits
#define FF_LOSS_COLORQUANT   0x0010
 loss due to color quantization
#define FF_LOSS_CHROMA   0x0020
 loss of chroma (e.g.
#define AV_PARSER_PTS_NB   4
#define PARSER_FLAG_COMPLETE_FRAMES   0x0001
#define PARSER_FLAG_ONCE   0x0002
#define PARSER_FLAG_FETCHED_OFFSET   0x0004
 Set if the parser has a valid file offset.

Typedefs

typedef struct RcOverride RcOverride
typedef struct AVPanScan AVPanScan
 Pan Scan area.
typedef struct AVPacket AVPacket
typedef struct AVFrame AVFrame
 Audio Video Frame.
typedef struct AVCodecContext AVCodecContext
 main external API structure.
typedef struct AVProfile AVProfile
 AVProfile.
typedef struct AVCodecDefault AVCodecDefault
typedef struct AVCodec AVCodec
 AVCodec.
typedef struct AVHWAccel AVHWAccel
 AVHWAccel.
typedef struct AVPicture AVPicture
 four components are given, that's all.
typedef struct AVSubtitleRect AVSubtitleRect
typedef struct AVSubtitle AVSubtitle
typedef struct ReSampleContext ReSampleContext
typedef struct AVCodecParserContext AVCodecParserContext
typedef struct AVCodecParser AVCodecParser
typedef struct
AVBitStreamFilterContext 
AVBitStreamFilterContext
typedef struct AVBitStreamFilter AVBitStreamFilter

Enumerations

enum  CodecID {
  CODEC_ID_NONE, CODEC_ID_MPEG1VIDEO, CODEC_ID_MPEG2VIDEO, CODEC_ID_MPEG2VIDEO_XVMC,
  CODEC_ID_H261, CODEC_ID_H263, CODEC_ID_RV10, CODEC_ID_RV20,
  CODEC_ID_MJPEG, CODEC_ID_MJPEGB, CODEC_ID_LJPEG, CODEC_ID_SP5X,
  CODEC_ID_JPEGLS, CODEC_ID_MPEG4, CODEC_ID_RAWVIDEO, CODEC_ID_MSMPEG4V1,
  CODEC_ID_MSMPEG4V2, CODEC_ID_MSMPEG4V3, CODEC_ID_WMV1, CODEC_ID_WMV2,
  CODEC_ID_H263P, CODEC_ID_H263I, CODEC_ID_FLV1, CODEC_ID_SVQ1,
  CODEC_ID_SVQ3, CODEC_ID_DVVIDEO, CODEC_ID_HUFFYUV, CODEC_ID_CYUV,
  CODEC_ID_H264, CODEC_ID_INDEO3, CODEC_ID_VP3, CODEC_ID_THEORA,
  CODEC_ID_ASV1, CODEC_ID_ASV2, CODEC_ID_FFV1, CODEC_ID_4XM,
  CODEC_ID_VCR1, CODEC_ID_CLJR, CODEC_ID_MDEC, CODEC_ID_ROQ,
  CODEC_ID_INTERPLAY_VIDEO, CODEC_ID_XAN_WC3, CODEC_ID_XAN_WC4, CODEC_ID_RPZA,
  CODEC_ID_CINEPAK, CODEC_ID_WS_VQA, CODEC_ID_MSRLE, CODEC_ID_MSVIDEO1,
  CODEC_ID_IDCIN, CODEC_ID_8BPS, CODEC_ID_SMC, CODEC_ID_FLIC,
  CODEC_ID_TRUEMOTION1, CODEC_ID_VMDVIDEO, CODEC_ID_MSZH, CODEC_ID_ZLIB,
  CODEC_ID_QTRLE, CODEC_ID_SNOW, CODEC_ID_TSCC, CODEC_ID_ULTI,
  CODEC_ID_QDRAW, CODEC_ID_VIXL, CODEC_ID_QPEG, CODEC_ID_PNG,
  CODEC_ID_PPM, CODEC_ID_PBM, CODEC_ID_PGM, CODEC_ID_PGMYUV,
  CODEC_ID_PAM, CODEC_ID_FFVHUFF, CODEC_ID_RV30, CODEC_ID_RV40,
  CODEC_ID_VC1, CODEC_ID_WMV3, CODEC_ID_LOCO, CODEC_ID_WNV1,
  CODEC_ID_AASC, CODEC_ID_INDEO2, CODEC_ID_FRAPS, CODEC_ID_TRUEMOTION2,
  CODEC_ID_BMP, CODEC_ID_CSCD, CODEC_ID_MMVIDEO, CODEC_ID_ZMBV,
  CODEC_ID_AVS, CODEC_ID_SMACKVIDEO, CODEC_ID_NUV, CODEC_ID_KMVC,
  CODEC_ID_FLASHSV, CODEC_ID_CAVS, CODEC_ID_JPEG2000, CODEC_ID_VMNC,
  CODEC_ID_VP5, CODEC_ID_VP6, CODEC_ID_VP6F, CODEC_ID_TARGA,
  CODEC_ID_DSICINVIDEO, CODEC_ID_TIERTEXSEQVIDEO, CODEC_ID_TIFF, CODEC_ID_GIF,
  CODEC_ID_DXA, CODEC_ID_DNXHD, CODEC_ID_THP, CODEC_ID_SGI,
  CODEC_ID_C93, CODEC_ID_BETHSOFTVID, CODEC_ID_PTX, CODEC_ID_TXD,
  CODEC_ID_VP6A, CODEC_ID_AMV, CODEC_ID_VB, CODEC_ID_PCX,
  CODEC_ID_SUNRAST, CODEC_ID_INDEO4, CODEC_ID_INDEO5, CODEC_ID_MIMIC,
  CODEC_ID_RL2, CODEC_ID_ESCAPE124, CODEC_ID_DIRAC, CODEC_ID_BFI,
  CODEC_ID_CMV, CODEC_ID_MOTIONPIXELS, CODEC_ID_TGV, CODEC_ID_TGQ,
  CODEC_ID_TQI, CODEC_ID_AURA, CODEC_ID_AURA2, CODEC_ID_V210X,
  CODEC_ID_TMV, CODEC_ID_V210, CODEC_ID_DPX, CODEC_ID_MAD,
  CODEC_ID_FRWU, CODEC_ID_FLASHSV2, CODEC_ID_CDGRAPHICS, CODEC_ID_R210,
  CODEC_ID_ANM, CODEC_ID_BINKVIDEO, CODEC_ID_IFF_ILBM, CODEC_ID_IFF_BYTERUN1,
  CODEC_ID_KGV1, CODEC_ID_YOP, CODEC_ID_VP8, CODEC_ID_PICTOR,
  CODEC_ID_ANSI, CODEC_ID_A64_MULTI, CODEC_ID_A64_MULTI5, CODEC_ID_R10K,
  CODEC_ID_MXPEG, CODEC_ID_LAGARITH, CODEC_ID_PRORES, CODEC_ID_JV,
  CODEC_ID_DFA, CODEC_ID_WMV3IMAGE, CODEC_ID_VC1IMAGE, CODEC_ID_UTVIDEO_DEPRECATED,
  CODEC_ID_BMV_VIDEO, CODEC_ID_VBLE, CODEC_ID_DXTORY, CODEC_ID_V410,
  CODEC_ID_XWD, CODEC_ID_Y41P = MKBETAG('Y','4','1','P'), CODEC_ID_UTVIDEO = 0x800, CODEC_ID_ESCAPE130 = MKBETAG('E','1','3','0'),
  CODEC_ID_AVRP = MKBETAG('A','V','R','P'), CODEC_ID_G2M = MKBETAG( 0 ,'G','2','M'), CODEC_ID_V308 = MKBETAG('V','3','0','8'), CODEC_ID_YUV4 = MKBETAG('Y','U','V','4'),
  CODEC_ID_FIRST_AUDIO = 0x10000, CODEC_ID_PCM_S16LE = 0x10000, CODEC_ID_PCM_S16BE, CODEC_ID_PCM_U16LE,
  CODEC_ID_PCM_U16BE, CODEC_ID_PCM_S8, CODEC_ID_PCM_U8, CODEC_ID_PCM_MULAW,
  CODEC_ID_PCM_ALAW, CODEC_ID_PCM_S32LE, CODEC_ID_PCM_S32BE, CODEC_ID_PCM_U32LE,
  CODEC_ID_PCM_U32BE, CODEC_ID_PCM_S24LE, CODEC_ID_PCM_S24BE, CODEC_ID_PCM_U24LE,
  CODEC_ID_PCM_U24BE, CODEC_ID_PCM_S24DAUD, CODEC_ID_PCM_ZORK, CODEC_ID_PCM_S16LE_PLANAR,
  CODEC_ID_PCM_DVD, CODEC_ID_PCM_F32BE, CODEC_ID_PCM_F32LE, CODEC_ID_PCM_F64BE,
  CODEC_ID_PCM_F64LE, CODEC_ID_PCM_BLURAY, CODEC_ID_PCM_LXF, CODEC_ID_S302M,
  CODEC_ID_PCM_S8_PLANAR, CODEC_ID_ADPCM_IMA_QT = 0x11000, CODEC_ID_ADPCM_IMA_WAV, CODEC_ID_ADPCM_IMA_DK3,
  CODEC_ID_ADPCM_IMA_DK4, CODEC_ID_ADPCM_IMA_WS, CODEC_ID_ADPCM_IMA_SMJPEG, CODEC_ID_ADPCM_MS,
  CODEC_ID_ADPCM_4XM, CODEC_ID_ADPCM_XA, CODEC_ID_ADPCM_ADX, CODEC_ID_ADPCM_EA,
  CODEC_ID_ADPCM_G726, CODEC_ID_ADPCM_CT, CODEC_ID_ADPCM_SWF, CODEC_ID_ADPCM_YAMAHA,
  CODEC_ID_ADPCM_SBPRO_4, CODEC_ID_ADPCM_SBPRO_3, CODEC_ID_ADPCM_SBPRO_2, CODEC_ID_ADPCM_THP,
  CODEC_ID_ADPCM_IMA_AMV, CODEC_ID_ADPCM_EA_R1, CODEC_ID_ADPCM_EA_R3, CODEC_ID_ADPCM_EA_R2,
  CODEC_ID_ADPCM_IMA_EA_SEAD, CODEC_ID_ADPCM_IMA_EA_EACS, CODEC_ID_ADPCM_EA_XAS, CODEC_ID_ADPCM_EA_MAXIS_XA,
  CODEC_ID_ADPCM_IMA_ISS, CODEC_ID_ADPCM_G722, CODEC_ID_ADPCM_IMA_APC, CODEC_ID_AMR_NB = 0x12000,
  CODEC_ID_AMR_WB, CODEC_ID_RA_144 = 0x13000, CODEC_ID_RA_288, CODEC_ID_ROQ_DPCM = 0x14000,
  CODEC_ID_INTERPLAY_DPCM, CODEC_ID_XAN_DPCM, CODEC_ID_SOL_DPCM, CODEC_ID_MP2 = 0x15000,
  CODEC_ID_MP3, CODEC_ID_AAC, CODEC_ID_AC3, CODEC_ID_DTS,
  CODEC_ID_VORBIS, CODEC_ID_DVAUDIO, CODEC_ID_WMAV1, CODEC_ID_WMAV2,
  CODEC_ID_MACE3, CODEC_ID_MACE6, CODEC_ID_VMDAUDIO, CODEC_ID_FLAC,
  CODEC_ID_MP3ADU, CODEC_ID_MP3ON4, CODEC_ID_SHORTEN, CODEC_ID_ALAC,
  CODEC_ID_WESTWOOD_SND1, CODEC_ID_GSM, CODEC_ID_QDM2, CODEC_ID_COOK,
  CODEC_ID_TRUESPEECH, CODEC_ID_TTA, CODEC_ID_SMACKAUDIO, CODEC_ID_QCELP,
  CODEC_ID_WAVPACK, CODEC_ID_DSICINAUDIO, CODEC_ID_IMC, CODEC_ID_MUSEPACK7,
  CODEC_ID_MLP, CODEC_ID_GSM_MS, CODEC_ID_ATRAC3, CODEC_ID_VOXWARE,
  CODEC_ID_APE, CODEC_ID_NELLYMOSER, CODEC_ID_MUSEPACK8, CODEC_ID_SPEEX,
  CODEC_ID_WMAVOICE, CODEC_ID_WMAPRO, CODEC_ID_WMALOSSLESS, CODEC_ID_ATRAC3P,
  CODEC_ID_EAC3, CODEC_ID_SIPR, CODEC_ID_MP1, CODEC_ID_TWINVQ,
  CODEC_ID_TRUEHD, CODEC_ID_MP4ALS, CODEC_ID_ATRAC1, CODEC_ID_BINKAUDIO_RDFT,
  CODEC_ID_BINKAUDIO_DCT, CODEC_ID_AAC_LATM, CODEC_ID_QDMC, CODEC_ID_CELT,
  CODEC_ID_BMV_AUDIO, CODEC_ID_G729 = 0x15800, CODEC_ID_G723_1 = 0x15801, CODEC_ID_FFWAVESYNTH = MKBETAG('F','F','W','S'),
  CODEC_ID_8SVX_RAW = MKBETAG('8','S','V','X'), CODEC_ID_FIRST_SUBTITLE = 0x17000, CODEC_ID_DVD_SUBTITLE = 0x17000, CODEC_ID_DVB_SUBTITLE,
  CODEC_ID_TEXT, CODEC_ID_XSUB, CODEC_ID_SSA, CODEC_ID_MOV_TEXT,
  CODEC_ID_HDMV_PGS_SUBTITLE, CODEC_ID_DVB_TELETEXT, CODEC_ID_SRT, CODEC_ID_MICRODVD = MKBETAG('m','D','V','D'),
  CODEC_ID_FIRST_UNKNOWN = 0x18000, CODEC_ID_TTF = 0x18000, CODEC_ID_BINTEXT = MKBETAG('B','T','X','T'), CODEC_ID_XBIN = MKBETAG('X','B','I','N'),
  CODEC_ID_IDF = MKBETAG( 0 ,'I','D','F'), CODEC_ID_PROBE = 0x19000, CODEC_ID_MPEG2TS = 0x20000, CODEC_ID_MPEG4SYSTEMS = 0x20001,
  CODEC_ID_FFMETADATA = 0x21000, CODEC_ID_NONE, CODEC_ID_MPEG1VIDEO, CODEC_ID_MPEG2VIDEO,
  CODEC_ID_MPEG2VIDEO_XVMC, CODEC_ID_H261, CODEC_ID_H263, CODEC_ID_RV10,
  CODEC_ID_RV20, CODEC_ID_MJPEG, CODEC_ID_MJPEGB, CODEC_ID_LJPEG,
  CODEC_ID_SP5X, CODEC_ID_JPEGLS, CODEC_ID_MPEG4, CODEC_ID_RAWVIDEO,
  CODEC_ID_MSMPEG4V1, CODEC_ID_MSMPEG4V2, CODEC_ID_MSMPEG4V3, CODEC_ID_WMV1,
  CODEC_ID_WMV2, CODEC_ID_H263P, CODEC_ID_H263I, CODEC_ID_FLV1,
  CODEC_ID_SVQ1, CODEC_ID_SVQ3, CODEC_ID_DVVIDEO, CODEC_ID_HUFFYUV,
  CODEC_ID_CYUV, CODEC_ID_H264, CODEC_ID_INDEO3, CODEC_ID_VP3,
  CODEC_ID_THEORA, CODEC_ID_ASV1, CODEC_ID_ASV2, CODEC_ID_FFV1,
  CODEC_ID_4XM, CODEC_ID_VCR1, CODEC_ID_CLJR, CODEC_ID_MDEC,
  CODEC_ID_ROQ, CODEC_ID_INTERPLAY_VIDEO, CODEC_ID_XAN_WC3, CODEC_ID_XAN_WC4,
  CODEC_ID_RPZA, CODEC_ID_CINEPAK, CODEC_ID_WS_VQA, CODEC_ID_MSRLE,
  CODEC_ID_MSVIDEO1, CODEC_ID_IDCIN, CODEC_ID_8BPS, CODEC_ID_SMC,
  CODEC_ID_FLIC, CODEC_ID_TRUEMOTION1, CODEC_ID_VMDVIDEO, CODEC_ID_MSZH,
  CODEC_ID_ZLIB, CODEC_ID_QTRLE, CODEC_ID_SNOW, CODEC_ID_TSCC,
  CODEC_ID_ULTI, CODEC_ID_QDRAW, CODEC_ID_VIXL, CODEC_ID_QPEG,
  CODEC_ID_PNG, CODEC_ID_PPM, CODEC_ID_PBM, CODEC_ID_PGM,
  CODEC_ID_PGMYUV, CODEC_ID_PAM, CODEC_ID_FFVHUFF, CODEC_ID_RV30,
  CODEC_ID_RV40, CODEC_ID_VC1, CODEC_ID_WMV3, CODEC_ID_LOCO,
  CODEC_ID_WNV1, CODEC_ID_AASC, CODEC_ID_INDEO2, CODEC_ID_FRAPS,
  CODEC_ID_TRUEMOTION2, CODEC_ID_BMP, CODEC_ID_CSCD, CODEC_ID_MMVIDEO,
  CODEC_ID_ZMBV, CODEC_ID_AVS, CODEC_ID_SMACKVIDEO, CODEC_ID_NUV,
  CODEC_ID_KMVC, CODEC_ID_FLASHSV, CODEC_ID_CAVS, CODEC_ID_JPEG2000,
  CODEC_ID_VMNC, CODEC_ID_VP5, CODEC_ID_VP6, CODEC_ID_VP6F,
  CODEC_ID_TARGA, CODEC_ID_DSICINVIDEO, CODEC_ID_TIERTEXSEQVIDEO, CODEC_ID_TIFF,
  CODEC_ID_GIF, CODEC_ID_DXA, CODEC_ID_DNXHD, CODEC_ID_THP,
  CODEC_ID_SGI, CODEC_ID_C93, CODEC_ID_BETHSOFTVID, CODEC_ID_PTX,
  CODEC_ID_TXD, CODEC_ID_VP6A, CODEC_ID_AMV, CODEC_ID_VB,
  CODEC_ID_PCX, CODEC_ID_SUNRAST, CODEC_ID_INDEO4, CODEC_ID_INDEO5,
  CODEC_ID_MIMIC, CODEC_ID_RL2, CODEC_ID_ESCAPE124, CODEC_ID_DIRAC,
  CODEC_ID_BFI, CODEC_ID_CMV, CODEC_ID_MOTIONPIXELS, CODEC_ID_TGV,
  CODEC_ID_TGQ, CODEC_ID_TQI, CODEC_ID_AURA, CODEC_ID_AURA2,
  CODEC_ID_V210X, CODEC_ID_TMV, CODEC_ID_V210, CODEC_ID_DPX,
  CODEC_ID_MAD, CODEC_ID_FRWU, CODEC_ID_FLASHSV2, CODEC_ID_CDGRAPHICS,
  CODEC_ID_R210, CODEC_ID_ANM, CODEC_ID_BINKVIDEO, CODEC_ID_IFF_ILBM,
  CODEC_ID_IFF_BYTERUN1, CODEC_ID_KGV1, CODEC_ID_YOP, CODEC_ID_VP8,
  CODEC_ID_PICTOR, CODEC_ID_ANSI, CODEC_ID_A64_MULTI, CODEC_ID_A64_MULTI5,
  CODEC_ID_R10K, CODEC_ID_MXPEG, CODEC_ID_LAGARITH, CODEC_ID_PRORES,
  CODEC_ID_JV, CODEC_ID_DFA, CODEC_ID_WMV3IMAGE, CODEC_ID_VC1IMAGE,
  CODEC_ID_UTVIDEO_DEPRECATED, CODEC_ID_BMV_VIDEO, CODEC_ID_VBLE, CODEC_ID_DXTORY,
  CODEC_ID_V410, CODEC_ID_XWD, CODEC_ID_Y41P = MKBETAG('Y','4','1','P'), CODEC_ID_UTVIDEO = 0x800,
  CODEC_ID_ESCAPE130 = MKBETAG('E','1','3','0'), CODEC_ID_AVRP = MKBETAG('A','V','R','P'), CODEC_ID_G2M = MKBETAG( 0 ,'G','2','M'), CODEC_ID_V308 = MKBETAG('V','3','0','8'),
  CODEC_ID_YUV4 = MKBETAG('Y','U','V','4'), CODEC_ID_FIRST_AUDIO = 0x10000, CODEC_ID_PCM_S16LE = 0x10000, CODEC_ID_PCM_S16BE,
  CODEC_ID_PCM_U16LE, CODEC_ID_PCM_U16BE, CODEC_ID_PCM_S8, CODEC_ID_PCM_U8,
  CODEC_ID_PCM_MULAW, CODEC_ID_PCM_ALAW, CODEC_ID_PCM_S32LE, CODEC_ID_PCM_S32BE,
  CODEC_ID_PCM_U32LE, CODEC_ID_PCM_U32BE, CODEC_ID_PCM_S24LE, CODEC_ID_PCM_S24BE,
  CODEC_ID_PCM_U24LE, CODEC_ID_PCM_U24BE, CODEC_ID_PCM_S24DAUD, CODEC_ID_PCM_ZORK,
  CODEC_ID_PCM_S16LE_PLANAR, CODEC_ID_PCM_DVD, CODEC_ID_PCM_F32BE, CODEC_ID_PCM_F32LE,
  CODEC_ID_PCM_F64BE, CODEC_ID_PCM_F64LE, CODEC_ID_PCM_BLURAY, CODEC_ID_PCM_LXF,
  CODEC_ID_S302M, CODEC_ID_PCM_S8_PLANAR, CODEC_ID_ADPCM_IMA_QT = 0x11000, CODEC_ID_ADPCM_IMA_WAV,
  CODEC_ID_ADPCM_IMA_DK3, CODEC_ID_ADPCM_IMA_DK4, CODEC_ID_ADPCM_IMA_WS, CODEC_ID_ADPCM_IMA_SMJPEG,
  CODEC_ID_ADPCM_MS, CODEC_ID_ADPCM_4XM, CODEC_ID_ADPCM_XA, CODEC_ID_ADPCM_ADX,
  CODEC_ID_ADPCM_EA, CODEC_ID_ADPCM_G726, CODEC_ID_ADPCM_CT, CODEC_ID_ADPCM_SWF,
  CODEC_ID_ADPCM_YAMAHA, CODEC_ID_ADPCM_SBPRO_4, CODEC_ID_ADPCM_SBPRO_3, CODEC_ID_ADPCM_SBPRO_2,
  CODEC_ID_ADPCM_THP, CODEC_ID_ADPCM_IMA_AMV, CODEC_ID_ADPCM_EA_R1, CODEC_ID_ADPCM_EA_R3,
  CODEC_ID_ADPCM_EA_R2, CODEC_ID_ADPCM_IMA_EA_SEAD, CODEC_ID_ADPCM_IMA_EA_EACS, CODEC_ID_ADPCM_EA_XAS,
  CODEC_ID_ADPCM_EA_MAXIS_XA, CODEC_ID_ADPCM_IMA_ISS, CODEC_ID_ADPCM_G722, CODEC_ID_ADPCM_IMA_APC,
  CODEC_ID_AMR_NB = 0x12000, CODEC_ID_AMR_WB, CODEC_ID_RA_144 = 0x13000, CODEC_ID_RA_288,
  CODEC_ID_ROQ_DPCM = 0x14000, CODEC_ID_INTERPLAY_DPCM, CODEC_ID_XAN_DPCM, CODEC_ID_SOL_DPCM,
  CODEC_ID_MP2 = 0x15000, CODEC_ID_MP3, CODEC_ID_AAC, CODEC_ID_AC3,
  CODEC_ID_DTS, CODEC_ID_VORBIS, CODEC_ID_DVAUDIO, CODEC_ID_WMAV1,
  CODEC_ID_WMAV2, CODEC_ID_MACE3, CODEC_ID_MACE6, CODEC_ID_VMDAUDIO,
  CODEC_ID_FLAC, CODEC_ID_MP3ADU, CODEC_ID_MP3ON4, CODEC_ID_SHORTEN,
  CODEC_ID_ALAC, CODEC_ID_WESTWOOD_SND1, CODEC_ID_GSM, CODEC_ID_QDM2,
  CODEC_ID_COOK, CODEC_ID_TRUESPEECH, CODEC_ID_TTA, CODEC_ID_SMACKAUDIO,
  CODEC_ID_QCELP, CODEC_ID_WAVPACK, CODEC_ID_DSICINAUDIO, CODEC_ID_IMC,
  CODEC_ID_MUSEPACK7, CODEC_ID_MLP, CODEC_ID_GSM_MS, CODEC_ID_ATRAC3,
  CODEC_ID_VOXWARE, CODEC_ID_APE, CODEC_ID_NELLYMOSER, CODEC_ID_MUSEPACK8,
  CODEC_ID_SPEEX, CODEC_ID_WMAVOICE, CODEC_ID_WMAPRO, CODEC_ID_WMALOSSLESS,
  CODEC_ID_ATRAC3P, CODEC_ID_EAC3, CODEC_ID_SIPR, CODEC_ID_MP1,
  CODEC_ID_TWINVQ, CODEC_ID_TRUEHD, CODEC_ID_MP4ALS, CODEC_ID_ATRAC1,
  CODEC_ID_BINKAUDIO_RDFT, CODEC_ID_BINKAUDIO_DCT, CODEC_ID_AAC_LATM, CODEC_ID_QDMC,
  CODEC_ID_CELT, CODEC_ID_BMV_AUDIO, CODEC_ID_G729 = 0x15800, CODEC_ID_G723_1 = 0x15801,
  CODEC_ID_FFWAVESYNTH = MKBETAG('F','F','W','S'), CODEC_ID_8SVX_RAW = MKBETAG('8','S','V','X'), CODEC_ID_FIRST_SUBTITLE = 0x17000, CODEC_ID_DVD_SUBTITLE = 0x17000,
  CODEC_ID_DVB_SUBTITLE, CODEC_ID_TEXT, CODEC_ID_XSUB, CODEC_ID_SSA,
  CODEC_ID_MOV_TEXT, CODEC_ID_HDMV_PGS_SUBTITLE, CODEC_ID_DVB_TELETEXT, CODEC_ID_SRT,
  CODEC_ID_MICRODVD = MKBETAG('m','D','V','D'), CODEC_ID_FIRST_UNKNOWN = 0x18000, CODEC_ID_TTF = 0x18000, CODEC_ID_BINTEXT = MKBETAG('B','T','X','T'),
  CODEC_ID_XBIN = MKBETAG('X','B','I','N'), CODEC_ID_IDF = MKBETAG( 0 ,'I','D','F'), CODEC_ID_PROBE = 0x19000, CODEC_ID_MPEG2TS = 0x20000,
  CODEC_ID_MPEG4SYSTEMS = 0x20001, CODEC_ID_FFMETADATA = 0x21000
}
 Identify the syntax and semantics of the bitstream. More...
enum  Motion_Est_ID {
  ME_ZERO = 1, ME_FULL, ME_LOG, ME_PHODS,
  ME_EPZS, ME_X1, ME_HEX, ME_UMH,
  ME_ITER, ME_TESA, ME_ZERO = 1, ME_FULL,
  ME_LOG, ME_PHODS, ME_EPZS, ME_X1,
  ME_HEX, ME_UMH, ME_ITER, ME_TESA
}
 motion estimation type. More...
enum  AVDiscard {
  AVDISCARD_NONE = -16, AVDISCARD_DEFAULT = 0, AVDISCARD_NONREF = 8, AVDISCARD_BIDIR = 16,
  AVDISCARD_NONKEY = 32, AVDISCARD_ALL = 48, AVDISCARD_NONE = -16, AVDISCARD_DEFAULT = 0,
  AVDISCARD_NONREF = 8, AVDISCARD_BIDIR = 16, AVDISCARD_NONKEY = 32, AVDISCARD_ALL = 48
}
enum  AVColorPrimaries {
  AVCOL_PRI_BT709 = 1, AVCOL_PRI_UNSPECIFIED = 2, AVCOL_PRI_BT470M = 4, AVCOL_PRI_BT470BG = 5,
  AVCOL_PRI_SMPTE170M = 6, AVCOL_PRI_SMPTE240M = 7, AVCOL_PRI_FILM = 8, AVCOL_PRI_NB,
  AVCOL_PRI_BT709 = 1, AVCOL_PRI_UNSPECIFIED = 2, AVCOL_PRI_BT470M = 4, AVCOL_PRI_BT470BG = 5,
  AVCOL_PRI_SMPTE170M = 6, AVCOL_PRI_SMPTE240M = 7, AVCOL_PRI_FILM = 8, AVCOL_PRI_NB
}
enum  AVColorTransferCharacteristic {
  AVCOL_TRC_BT709 = 1, AVCOL_TRC_UNSPECIFIED = 2, AVCOL_TRC_GAMMA22 = 4, AVCOL_TRC_GAMMA28 = 5,
  AVCOL_TRC_SMPTE240M = 7, AVCOL_TRC_NB, AVCOL_TRC_BT709 = 1, AVCOL_TRC_UNSPECIFIED = 2,
  AVCOL_TRC_GAMMA22 = 4, AVCOL_TRC_GAMMA28 = 5, AVCOL_TRC_SMPTE240M = 7, AVCOL_TRC_NB
}
enum  AVColorSpace {
  AVCOL_SPC_RGB = 0, AVCOL_SPC_BT709 = 1, AVCOL_SPC_UNSPECIFIED = 2, AVCOL_SPC_FCC = 4,
  AVCOL_SPC_BT470BG = 5, AVCOL_SPC_SMPTE170M = 6, AVCOL_SPC_SMPTE240M = 7, AVCOL_SPC_YCGCO = 8,
  AVCOL_SPC_NB, AVCOL_SPC_RGB = 0, AVCOL_SPC_BT709 = 1, AVCOL_SPC_UNSPECIFIED = 2,
  AVCOL_SPC_FCC = 4, AVCOL_SPC_BT470BG = 5, AVCOL_SPC_SMPTE170M = 6, AVCOL_SPC_SMPTE240M = 7,
  AVCOL_SPC_YCGCO = 8, AVCOL_SPC_NB
}
enum  AVColorRange {
  AVCOL_RANGE_UNSPECIFIED = 0, AVCOL_RANGE_MPEG = 1, AVCOL_RANGE_JPEG = 2, AVCOL_RANGE_NB,
  AVCOL_RANGE_UNSPECIFIED = 0, AVCOL_RANGE_MPEG = 1, AVCOL_RANGE_JPEG = 2, AVCOL_RANGE_NB
}
enum  AVChromaLocation {
  AVCHROMA_LOC_UNSPECIFIED = 0, AVCHROMA_LOC_LEFT = 1, AVCHROMA_LOC_CENTER = 2, AVCHROMA_LOC_TOPLEFT = 3,
  AVCHROMA_LOC_TOP = 4, AVCHROMA_LOC_BOTTOMLEFT = 5, AVCHROMA_LOC_BOTTOM = 6, AVCHROMA_LOC_NB,
  AVCHROMA_LOC_UNSPECIFIED = 0, AVCHROMA_LOC_LEFT = 1, AVCHROMA_LOC_CENTER = 2, AVCHROMA_LOC_TOPLEFT = 3,
  AVCHROMA_LOC_TOP = 4, AVCHROMA_LOC_BOTTOMLEFT = 5, AVCHROMA_LOC_BOTTOM = 6, AVCHROMA_LOC_NB
}
 X X 3 4 X X are luma samples, 1 2 1-6 are possible chroma positions X X 5 6 X 0 is undefined/unknown position. More...
enum  AVAudioServiceType {
  AV_AUDIO_SERVICE_TYPE_MAIN = 0, AV_AUDIO_SERVICE_TYPE_EFFECTS = 1, AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED = 2, AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED = 3,
  AV_AUDIO_SERVICE_TYPE_DIALOGUE = 4, AV_AUDIO_SERVICE_TYPE_COMMENTARY = 5, AV_AUDIO_SERVICE_TYPE_EMERGENCY = 6, AV_AUDIO_SERVICE_TYPE_VOICE_OVER = 7,
  AV_AUDIO_SERVICE_TYPE_KARAOKE = 8, AV_AUDIO_SERVICE_TYPE_NB, AV_AUDIO_SERVICE_TYPE_MAIN = 0, AV_AUDIO_SERVICE_TYPE_EFFECTS = 1,
  AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED = 2, AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED = 3, AV_AUDIO_SERVICE_TYPE_DIALOGUE = 4, AV_AUDIO_SERVICE_TYPE_COMMENTARY = 5,
  AV_AUDIO_SERVICE_TYPE_EMERGENCY = 6, AV_AUDIO_SERVICE_TYPE_VOICE_OVER = 7, AV_AUDIO_SERVICE_TYPE_KARAOKE = 8, AV_AUDIO_SERVICE_TYPE_NB
}
enum  AVPacketSideDataType {
  AV_PKT_DATA_PALETTE, AV_PKT_DATA_NEW_EXTRADATA, AV_PKT_DATA_PARAM_CHANGE, AV_PKT_DATA_PALETTE,
  AV_PKT_DATA_NEW_EXTRADATA, AV_PKT_DATA_PARAM_CHANGE
}
enum  AVSideDataParamChangeFlags {
  AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT = 0x0001, AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT = 0x0002, AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE = 0x0004, AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS = 0x0008,
  AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT = 0x0001, AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT = 0x0002, AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE = 0x0004, AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS = 0x0008
}
 An AV_PKT_DATA_PARAM_CHANGE side data packet is laid out as follows: u32le param_flags if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT) s32le channel_count if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT) u64le channel_layout if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE) s32le sample_rate if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS) s32le width s32le height. More...
enum  AVFieldOrder {
  AV_FIELD_UNKNOWN, AV_FIELD_PROGRESSIVE, AV_FIELD_TT, AV_FIELD_BB,
  AV_FIELD_TB, AV_FIELD_BT, AV_FIELD_UNKNOWN, AV_FIELD_PROGRESSIVE,
  AV_FIELD_TT, AV_FIELD_BB, AV_FIELD_TB, AV_FIELD_BT
}
enum  AVSubtitleType {
  SUBTITLE_NONE, SUBTITLE_BITMAP, SUBTITLE_TEXT, SUBTITLE_ASS,
  SUBTITLE_NONE, SUBTITLE_BITMAP, SUBTITLE_TEXT, SUBTITLE_ASS
}
enum  AVLockOp {
  AV_LOCK_CREATE, AV_LOCK_OBTAIN, AV_LOCK_RELEASE, AV_LOCK_DESTROY,
  AV_LOCK_CREATE, AV_LOCK_OBTAIN, AV_LOCK_RELEASE, AV_LOCK_DESTROY
}
 Lock operation used by lockmgr. More...

Functions

attribute_deprecated void av_destruct_packet_nofree (AVPacket *pkt)
void av_destruct_packet (AVPacket *pkt)
 Default packet destructor.
void av_init_packet (AVPacket *pkt)
 Initialize optional fields of a packet with default values.
int av_new_packet (AVPacket *pkt, int size)
 Allocate the payload of a packet and initialize its fields with default values.
void av_shrink_packet (AVPacket *pkt, int size)
 Reduce packet size, correctly zeroing padding.
int av_grow_packet (AVPacket *pkt, int grow_by)
 Increase packet size, correctly zeroing padding.
int av_dup_packet (AVPacket *pkt)
void av_free_packet (AVPacket *pkt)
 Free a packet.
uint8_t * av_packet_new_side_data (AVPacket *pkt, enum AVPacketSideDataType type, int size)
 Allocate new information of a packet.
uint8_t * av_packet_get_side_data (AVPacket *pkt, enum AVPacketSideDataType type, int *size)
 Get side information from packet.
int av_packet_merge_side_data (AVPacket *pkt)
int av_packet_split_side_data (AVPacket *pkt)
ReSampleContextav_audio_resample_init (int output_channels, int input_channels, int output_rate, int input_rate, enum AVSampleFormat sample_fmt_out, enum AVSampleFormat sample_fmt_in, int filter_length, int log2_phase_count, int linear, double cutoff)
 Initialize audio resampling context.
int audio_resample (ReSampleContext *s, short *output, short *input, int nb_samples)
void audio_resample_close (ReSampleContext *s)
 Free resample context.
struct AVResampleContextav_resample_init (int out_rate, int in_rate, int filter_length, int log2_phase_count, int linear, double cutoff)
 Initialize an audio resampler.
int av_resample (struct AVResampleContext *c, short *dst, short *src, int *consumed, int src_size, int dst_size, int update_ctx)
 Resample an array of samples using a previously configured context.
void av_resample_compensate (struct AVResampleContext *c, int sample_delta, int compensation_distance)
 Compensate samplerate/timestamp drift.
void av_resample_close (struct AVResampleContext *c)
int avpicture_alloc (AVPicture *picture, enum PixelFormat pix_fmt, int width, int height)
 Allocate memory for a picture.
void avpicture_free (AVPicture *picture)
 Free a picture previously allocated by avpicture_alloc().
int avpicture_fill (AVPicture *picture, uint8_t *ptr, enum PixelFormat pix_fmt, int width, int height)
 Fill in the AVPicture fields.
int avpicture_layout (const AVPicture *src, enum PixelFormat pix_fmt, int width, int height, unsigned char *dest, int dest_size)
 Copy pixel data from an AVPicture into a buffer.
int avpicture_get_size (enum PixelFormat pix_fmt, int width, int height)
 Calculate the size in bytes that a picture of the given width and height would occupy if stored in the given picture format.
void avcodec_get_chroma_sub_sample (enum PixelFormat pix_fmt, int *h_shift, int *v_shift)
const char * avcodec_get_name (enum CodecID id)
 Get the name of a codec.
void avcodec_set_dimensions (AVCodecContext *s, int width, int height)
unsigned int avcodec_pix_fmt_to_codec_tag (enum PixelFormat pix_fmt)
 Return a value representing the fourCC code associated to the pixel format pix_fmt, or 0 if no associated fourCC code can be found.
size_t av_get_codec_tag_string (char *buf, size_t buf_size, unsigned int codec_tag)
 Put a string representing the codec tag codec_tag in buf.
int avcodec_get_pix_fmt_loss (enum PixelFormat dst_pix_fmt, enum PixelFormat src_pix_fmt, int has_alpha)
 Compute what kind of losses will occur when converting from one specific pixel format to another.
enum PixelFormat avcodec_find_best_pix_fmt (int64_t pix_fmt_mask, enum PixelFormat src_pix_fmt, int has_alpha, int *loss_ptr)
 Find the best pixel format to convert to given a certain source pixel format.
enum PixelFormat avcodec_find_best_pix_fmt2 (enum PixelFormat dst_pix_fmt1, enum PixelFormat dst_pix_fmt2, enum PixelFormat src_pix_fmt, int has_alpha, int *loss_ptr)
 Find the best pixel format to convert to given a certain source pixel format and a selection of two destination pixel formats.
int avpicture_deinterlace (AVPicture *dst, const AVPicture *src, enum PixelFormat pix_fmt, int width, int height)
AVCodecav_codec_next (AVCodec *c)
 If c is NULL, returns the first registered codec, if c is non-NULL, returns the next registered codec after c, or NULL if c is the last one.
unsigned avcodec_version (void)
 Return the LIBAVCODEC_VERSION_INT constant.
const char * avcodec_configuration (void)
 Return the libavcodec build-time configuration.
const char * avcodec_license (void)
 Return the libavcodec license.
void avcodec_register (AVCodec *codec)
 Register the codec codec and initialize libavcodec.
AVCodecavcodec_find_encoder (enum CodecID id)
 Find a registered encoder with a matching codec ID.
AVCodecavcodec_find_encoder_by_name (const char *name)
 Find a registered encoder with the specified name.
AVCodecavcodec_find_decoder (enum CodecID id)
 Find a registered decoder with a matching codec ID.
AVCodecavcodec_find_decoder_by_name (const char *name)
 Find a registered decoder with the specified name.
void avcodec_string (char *buf, int buf_size, AVCodecContext *enc, int encode)
const char * av_get_profile_name (const AVCodec *codec, int profile)
 Return a name for the specified profile, if available.
int avcodec_get_context_defaults3 (AVCodecContext *s, AVCodec *codec)
 Set the fields of the given AVCodecContext to default values corresponding to the given codec (defaults may be codec-dependent).
AVCodecContextavcodec_alloc_context3 (AVCodec *codec)
 Allocate an AVCodecContext and set its fields to default values.
int avcodec_copy_context (AVCodecContext *dest, const AVCodecContext *src)
 Copy the settings of the source AVCodecContext into the destination AVCodecContext.
void avcodec_get_frame_defaults (AVFrame *pic)
 Set the fields of the given AVFrame to default values.
AVFrameavcodec_alloc_frame (void)
 Allocate an AVFrame and set its fields to default values.
int avcodec_default_get_buffer (AVCodecContext *s, AVFrame *pic)
void avcodec_default_release_buffer (AVCodecContext *s, AVFrame *pic)
int avcodec_default_reget_buffer (AVCodecContext *s, AVFrame *pic)
unsigned avcodec_get_edge_width (void)
 Return the amount of padding in pixels which the get_buffer callback must provide around the edge of the image for codecs which do not have the CODEC_FLAG_EMU_EDGE flag.
void avcodec_align_dimensions (AVCodecContext *s, int *width, int *height)
 Modify width and height values so that they will result in a memory buffer that is acceptable for the codec if you do not use any horizontal padding.
void avcodec_align_dimensions2 (AVCodecContext *s, int *width, int *height, int linesize_align[AV_NUM_DATA_POINTERS])
 Modify width and height values so that they will result in a memory buffer that is acceptable for the codec if you also ensure that all line sizes are a multiple of the respective linesize_align[i].
enum PixelFormat avcodec_default_get_format (struct AVCodecContext *s, const enum PixelFormat *fmt)
int avcodec_default_execute (AVCodecContext *c, int(*func)(AVCodecContext *c2, void *arg2), void *arg, int *ret, int count, int size)
int avcodec_default_execute2 (AVCodecContext *c, int(*func)(AVCodecContext *c2, void *arg2, int, int), void *arg, int *ret, int count)
int avcodec_open2 (AVCodecContext *avctx, AVCodec *codec, AVDictionary **options)
 Initialize the AVCodecContext to use the given AVCodec.
int avcodec_decode_audio4 (AVCodecContext *avctx, AVFrame *frame, int *got_frame_ptr, AVPacket *avpkt)
 Decode the audio frame of size avpkt->size from avpkt->data into frame.
int avcodec_decode_video2 (AVCodecContext *avctx, AVFrame *picture, int *got_picture_ptr, const AVPacket *avpkt)
 Decode the video frame of size avpkt->size from avpkt->data into picture.
int avcodec_decode_subtitle2 (AVCodecContext *avctx, AVSubtitle *sub, int *got_sub_ptr, AVPacket *avpkt)
 Decode a subtitle message.
void avsubtitle_free (AVSubtitle *sub)
 Free all allocated data in the given subtitle struct.
int avcodec_encode_audio2 (AVCodecContext *avctx, AVPacket *avpkt, const AVFrame *frame, int *got_packet_ptr)
 Encode a frame of audio.
int avcodec_fill_audio_frame (AVFrame *frame, int nb_channels, enum AVSampleFormat sample_fmt, const uint8_t *buf, int buf_size, int align)
 Fill audio frame data and linesize.
int avcodec_encode_video (AVCodecContext *avctx, uint8_t *buf, int buf_size, const AVFrame *pict)
 Encode a video frame from pict into buf.
int avcodec_encode_subtitle (AVCodecContext *avctx, uint8_t *buf, int buf_size, const AVSubtitle *sub)
int avcodec_close (AVCodecContext *avctx)
 Close a given AVCodecContext and free all the data associated with it (but not the AVCodecContext itself).
void avcodec_register_all (void)
 Register all the codecs, parsers and bitstream filters which were enabled at configuration time.
void avcodec_flush_buffers (AVCodecContext *avctx)
 Flush buffers, should be called when seeking or when switching to a different stream.
void avcodec_default_free_buffers (AVCodecContext *s)
int av_get_bits_per_sample (enum CodecID codec_id)
 Return codec bits per sample.
AVCodecParserav_parser_next (AVCodecParser *c)
void av_register_codec_parser (AVCodecParser *parser)
AVCodecParserContextav_parser_init (int codec_id)
int av_parser_parse2 (AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int64_t pts, int64_t dts, int64_t pos)
 Parse a packet.
int av_parser_change (AVCodecParserContext *s, AVCodecContext *avctx, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int keyframe)
void av_parser_close (AVCodecParserContext *s)
void av_register_bitstream_filter (AVBitStreamFilter *bsf)
AVBitStreamFilterContextav_bitstream_filter_init (const char *name)
int av_bitstream_filter_filter (AVBitStreamFilterContext *bsfc, AVCodecContext *avctx, const char *args, uint8_t **poutbuf, int *poutbuf_size, const uint8_t *buf, int buf_size, int keyframe)
void av_bitstream_filter_close (AVBitStreamFilterContext *bsf)
AVBitStreamFilterav_bitstream_filter_next (AVBitStreamFilter *f)
voidav_fast_realloc (void *ptr, unsigned int *size, size_t min_size)
 Reallocate the given block if it is not large enough, otherwise do nothing.
void av_fast_malloc (void *ptr, unsigned int *size, size_t min_size)
 Allocate a buffer, reusing the given one if large enough.
void av_fast_padded_malloc (void *ptr, unsigned int *size, size_t min_size)
 Same behaviour av_fast_malloc but the buffer has additional FF_INPUT_PADDING_SIZE at the end which will will always be 0.
void av_picture_copy (AVPicture *dst, const AVPicture *src, enum PixelFormat pix_fmt, int width, int height)
 Copy image src to dst.
int av_picture_crop (AVPicture *dst, const AVPicture *src, enum PixelFormat pix_fmt, int top_band, int left_band)
 Crop image top and left side.
int av_picture_pad (AVPicture *dst, const AVPicture *src, int height, int width, enum PixelFormat pix_fmt, int padtop, int padbottom, int padleft, int padright, int *color)
 Pad image.
unsigned int av_xiphlacing (unsigned char *s, unsigned int v)
 Encode extradata length to a buffer.
void av_log_missing_feature (void *avc, const char *feature, int want_sample)
 Log a generic warning message about a missing feature.
void av_log_ask_for_sample (void *avc, const char *msg,...) av_printf_format(2
 Log a generic warning message asking for a sample.
void void av_register_hwaccel (AVHWAccel *hwaccel)
 Register the hardware accelerator hwaccel.
AVHWAccelav_hwaccel_next (AVHWAccel *hwaccel)
 If hwaccel is NULL, returns the first registered hardware accelerator, if hwaccel is non-NULL, returns the next registered hardware accelerator after hwaccel, or NULL if hwaccel is the last one.
int av_lockmgr_register (int(*cb)(void **mutex, enum AVLockOp op))
 Register a user provided lock manager supporting the operations specified by AVLockOp.
enum AVMediaType avcodec_get_type (enum CodecID codec_id)
 Get the type of the given codec.
const AVClassavcodec_get_class (void)
 Get the AVClass for AVCodecContext.
const AVClassavcodec_get_frame_class (void)
 Get the AVClass for AVFrame.
int avcodec_is_open (AVCodecContext *s)

Detailed Description

external API header

Definition in file avcodec.h.


Define Documentation

#define AV_EF_AGGRESSIVE   (1<<18)

Definition at line 3217 of file avcodec.h.

#define AV_EF_BITSTREAM   (1<<1)

Definition at line 3211 of file avcodec.h.

#define AV_EF_BUFFER   (1<<2)

Definition at line 3212 of file avcodec.h.

#define AV_EF_CAREFUL   (1<<16)

Definition at line 3215 of file avcodec.h.

#define AV_EF_COMPLIANT   (1<<17)

Definition at line 3216 of file avcodec.h.

#define AV_EF_CRCCHECK   (1<<0)

Definition at line 3210 of file avcodec.h.

#define AV_EF_EXPLODE   (1<<3)

Definition at line 3213 of file avcodec.h.

#define AV_NUM_DATA_POINTERS   8

Definition at line 1019 of file avcodec.h.

#define AV_PARSER_PTS_NB   4

Definition at line 4559 of file avcodec.h.

#define AV_PKT_FLAG_CORRUPT   0x0002

The packet content is corrupted.

Definition at line 982 of file avcodec.h.

#define AV_PKT_FLAG_KEY   0x0001

The packet contains a keyframe.

Definition at line 981 of file avcodec.h.

#define AVPALETTE_COUNT   256

Definition at line 3442 of file avcodec.h.

#define AVPALETTE_SIZE   1024

Definition at line 3441 of file avcodec.h.

#define CODEC_CAP_AUTO_THREADS   0x8000

Codec supports avctx->thread_count == 0 (auto).

Definition at line 823 of file avcodec.h.

#define CODEC_CAP_CHANNEL_CONF   0x0400

Codec should fill in channel configuration and samplerate instead of container.

Definition at line 801 of file avcodec.h.

#define CODEC_CAP_DELAY   0x0020

Encoder or decoder requires flushing with NULL input at the end in order to give the complete and correct output.

NOTE: If this flag is not set, the codec is guaranteed to never be fed with with NULL data. The user can still send NULL data to the public encode or decode function, but libavcodec will not pass it along to the codec unless this flag is set.

Decoders: The decoder has a non-zero delay and needs to be fed with avpkt->data=NULL, avpkt->size=0 at the end to get the delayed data until the decoder no longer returns frames.

Encoders: The encoder needs to be fed with NULL data at the end of encoding until the encoder no longer returns data.

NOTE: For encoders implementing the AVCodec.encode2() function, setting this flag also means that the encoder must set the pts and duration for each output packet. If this flag is not set, the pts and duration will be determined by libavcodec from the input frame.

Definition at line 771 of file avcodec.h.

#define CODEC_CAP_DR1   0x0002

Codec uses get_buffer() for allocating buffers and supports custom allocators.

If not set, it might not use get_buffer() at all or use operations that assume the buffer was allocated by avcodec_default_get_buffer.

Definition at line 740 of file avcodec.h.

#define CODEC_CAP_DRAW_HORIZ_BAND   0x0001

Decoder can use draw_horiz_band callback.

Definition at line 734 of file avcodec.h.

#define CODEC_CAP_EXPERIMENTAL   0x0200

Codec is experimental and is thus avoided in favor of non experimental encoders.

Definition at line 797 of file avcodec.h.

#define CODEC_CAP_FRAME_THREADS   0x1000

Codec supports frame-level multithreading.

Definition at line 811 of file avcodec.h.

#define CODEC_CAP_HWACCEL   0x0010

Definition at line 747 of file avcodec.h.

#define CODEC_CAP_HWACCEL_VDPAU   0x0080

Codec can export data for HW decoding (VDPAU).

Definition at line 780 of file avcodec.h.

#define CODEC_CAP_LOSSLESS   0x80000000

Codec is lossless.

Definition at line 831 of file avcodec.h.

#define CODEC_CAP_NEG_LINESIZES   0x0800

Codec is able to deal with negative linesizes.

Definition at line 806 of file avcodec.h.

#define CODEC_CAP_PARAM_CHANGE   0x4000

Codec supports changed parameters at any point.

Definition at line 819 of file avcodec.h.

#define CODEC_CAP_SLICE_THREADS   0x2000

Codec supports slice-based (or partition-based) multithreading.

Definition at line 815 of file avcodec.h.

#define CODEC_CAP_SMALL_LAST_FRAME   0x0040

Codec can be fed a final frame with a smaller size.

This can be used to prevent truncation of the last audio samples.

Definition at line 776 of file avcodec.h.

#define CODEC_CAP_SUBFRAMES   0x0100

Codec can output multiple frames per AVPacket Normally demuxers return one frame at a time, demuxers which do not do are connected to a parser to split what they return into proper frames.

This flag is reserved to the very rare category of codecs which have a bitstream that cannot be split into frames without timeconsuming operations like full decoding. Demuxers carring such bitstreams thus may return multiple frames in a packet. This has many disadvantages like prohibiting stream copy in many cases thus it should only be considered as a last resort.

Definition at line 792 of file avcodec.h.

#define CODEC_CAP_TRUNCATED   0x0008

Definition at line 745 of file avcodec.h.

#define CODEC_CAP_VARIABLE_FRAME_SIZE   0x10000

Audio encoder supports receiving a different number of samples in each call.

Definition at line 827 of file avcodec.h.

#define CODEC_FLAG2_CHUNKS   0x00008000

Input bitstream might be truncated at a packet boundaries instead of only at frame boundaries.

Definition at line 682 of file avcodec.h.

#define CODEC_FLAG2_FAST   0x00000001

Allow non spec compliant speedup tricks.

Definition at line 677 of file avcodec.h.

#define CODEC_FLAG2_LOCAL_HEADER   0x00000008

Place global headers at every keyframe instead of in extradata.

Definition at line 680 of file avcodec.h.

#define CODEC_FLAG2_NO_OUTPUT   0x00000004

Skip bitstream encoding.

Definition at line 679 of file avcodec.h.

#define CODEC_FLAG2_SHOW_ALL   0x00400000

Show all frames before the first keyframe.

Definition at line 683 of file avcodec.h.

#define CODEC_FLAG2_SKIP_RD   0x00004000

RD optimal MB level residual skipping.

Definition at line 681 of file avcodec.h.

#define CODEC_FLAG2_STRICT_GOP   0x00000002

Strictly enforce GOP size.

Definition at line 678 of file avcodec.h.

#define CODEC_FLAG_4MV   0x0004

4 MV per MB allowed / advanced prediction for H.263.

Definition at line 649 of file avcodec.h.

#define CODEC_FLAG_AC_PRED   0x01000000

H.263 advanced intra coding / MPEG-4 AC prediction.

Definition at line 671 of file avcodec.h.

#define CODEC_FLAG_BITEXACT   0x00800000

Use only bitexact stuff (except (I)DCT).

Definition at line 669 of file avcodec.h.

#define CODEC_FLAG_CBP_RD   0x04000000

Use rate distortion optimization for cbp.

Definition at line 672 of file avcodec.h.

#define CODEC_FLAG_CLOSED_GOP   0x80000000

Definition at line 676 of file avcodec.h.

#define CODEC_FLAG_EMU_EDGE   0x4000

Don't draw edges.

Definition at line 662 of file avcodec.h.

#define CODEC_FLAG_GLOBAL_HEADER   0x00400000

Place global headers in extradata instead of every keyframe.

Definition at line 668 of file avcodec.h.

#define CODEC_FLAG_GMC   0x0020

Use GMC.

Definition at line 651 of file avcodec.h.

#define CODEC_FLAG_GRAY   0x2000

Only decode/encode grayscale.

Definition at line 661 of file avcodec.h.

#define CODEC_FLAG_INPUT_PRESERVED   0x0100

The parent program guarantees that the input for B-frames containing streams is not written to for at least s->max_b_frames+1 frames, if this is not set the input will be copied.

Definition at line 658 of file avcodec.h.

#define CODEC_FLAG_INTERLACED_DCT   0x00040000

Use interlaced DCT.

Definition at line 666 of file avcodec.h.

#define CODEC_FLAG_INTERLACED_ME   0x20000000

interlaced motion estimation

Definition at line 675 of file avcodec.h.

#define CODEC_FLAG_LOOP_FILTER   0x00000800

loop filter

Definition at line 674 of file avcodec.h.

#define CODEC_FLAG_LOW_DELAY   0x00080000

Force low delay.

Definition at line 667 of file avcodec.h.

#define CODEC_FLAG_MV0   0x0040

Always try a MB with MV=<0,0>.

Definition at line 652 of file avcodec.h.

#define CODEC_FLAG_NORMALIZE_AQP   0x00020000

Normalize adaptive quantization.

Definition at line 665 of file avcodec.h.

#define CODEC_FLAG_PASS1   0x0200

Use internal 2pass ratecontrol in first pass mode.

Definition at line 659 of file avcodec.h.

#define CODEC_FLAG_PASS2   0x0400

Use internal 2pass ratecontrol in second pass mode.

Definition at line 660 of file avcodec.h.

#define CODEC_FLAG_PSNR   0x8000

error[?] variables will be set during encoding.

Definition at line 663 of file avcodec.h.

#define CODEC_FLAG_QP_RD   0x08000000

Use rate distortion optimization for qp selectioon.

Definition at line 673 of file avcodec.h.

#define CODEC_FLAG_QPEL   0x0010

Use qpel MC.

Definition at line 650 of file avcodec.h.

#define CODEC_FLAG_QSCALE   0x0002

Use fixed qscale.

Definition at line 648 of file avcodec.h.

Value:
0x00010000 

Definition at line 664 of file avcodec.h.

#define FF_ASPECT_EXTENDED   15

Definition at line 1461 of file avcodec.h.

#define FF_BUFFER_HINTS_PRESERVE   0x04

Definition at line 909 of file avcodec.h.

#define FF_BUFFER_HINTS_READABLE   0x02

Definition at line 908 of file avcodec.h.

#define FF_BUFFER_HINTS_REUSABLE   0x08

Definition at line 910 of file avcodec.h.

#define FF_BUFFER_HINTS_VALID   0x01

Definition at line 907 of file avcodec.h.

#define FF_BUFFER_TYPE_COPY   8

Just a (modified) copy of some other buffer, don't deallocate anything.

Definition at line 894 of file avcodec.h.

#define FF_BUFFER_TYPE_INTERNAL   1

Definition at line 891 of file avcodec.h.

#define FF_BUFFER_TYPE_SHARED   4

Buffer from somewhere else; don't deallocate image (data/base), all other tables are not shared.

Definition at line 893 of file avcodec.h.

#define FF_BUFFER_TYPE_USER   2

direct rendering buffers (image is (de)allocated by user)

Definition at line 892 of file avcodec.h.

#define FF_BUG_AC_VLC   0

Will be removed, libavcodec can now handle these non-compliant files by default.

Definition at line 1657 of file avcodec.h.

#define FF_BUG_AMV   32

Definition at line 1656 of file avcodec.h.

#define FF_BUG_AUTODETECT   1

autodetection

Definition at line 1651 of file avcodec.h.

#define FF_BUG_DC_CLIP   4096

Definition at line 1664 of file avcodec.h.

#define FF_BUG_DIRECT_BLOCKSIZE   512

Definition at line 1661 of file avcodec.h.

#define FF_BUG_EDGE   1024

Definition at line 1662 of file avcodec.h.

#define FF_BUG_HPEL_CHROMA   2048

Definition at line 1663 of file avcodec.h.

#define FF_BUG_MS   8192

Work around various bugs in Microsoft's broken decoders.

Definition at line 1665 of file avcodec.h.

#define FF_BUG_NO_PADDING   16

Definition at line 1655 of file avcodec.h.

#define FF_BUG_OLD_MSMPEG4   2

Definition at line 1652 of file avcodec.h.

#define FF_BUG_QPEL_CHROMA   64

Definition at line 1658 of file avcodec.h.

#define FF_BUG_QPEL_CHROMA2   256

Definition at line 1660 of file avcodec.h.

#define FF_BUG_STD_QPEL   128

Definition at line 1659 of file avcodec.h.

#define FF_BUG_TRUNCATED   16384

Definition at line 1666 of file avcodec.h.

#define FF_BUG_UMP4   8

Definition at line 1654 of file avcodec.h.

#define FF_BUG_XVID_ILACE   4

Definition at line 1653 of file avcodec.h.

#define FF_CMP_BIT   5

Definition at line 2125 of file avcodec.h.

#define FF_CMP_CHROMA   256

Definition at line 2135 of file avcodec.h.

#define FF_CMP_DCT   3

Definition at line 2123 of file avcodec.h.

#define FF_CMP_DCT264   14

Definition at line 2134 of file avcodec.h.

#define FF_CMP_DCTMAX   13

Definition at line 2133 of file avcodec.h.

#define FF_CMP_NSSE   10

Definition at line 2130 of file avcodec.h.

#define FF_CMP_PSNR   4

Definition at line 2124 of file avcodec.h.

#define FF_CMP_RD   6

Definition at line 2126 of file avcodec.h.

#define FF_CMP_SAD   0

Definition at line 2120 of file avcodec.h.

#define FF_CMP_SATD   2

Definition at line 2122 of file avcodec.h.

#define FF_CMP_SSE   1

Definition at line 2121 of file avcodec.h.

#define FF_CMP_VSAD   8

Definition at line 2128 of file avcodec.h.

#define FF_CMP_VSSE   9

Definition at line 2129 of file avcodec.h.

#define FF_CMP_W53   11

Definition at line 2131 of file avcodec.h.

#define FF_CMP_W97   12

Definition at line 2132 of file avcodec.h.

#define FF_CMP_ZERO   7

Definition at line 2127 of file avcodec.h.

#define FF_CODER_TYPE_AC   1

Definition at line 2264 of file avcodec.h.

#define FF_CODER_TYPE_DEFLATE   4

Definition at line 2267 of file avcodec.h.

#define FF_CODER_TYPE_RAW   2

Definition at line 2265 of file avcodec.h.

#define FF_CODER_TYPE_RLE   3

Definition at line 2266 of file avcodec.h.

#define FF_CODER_TYPE_VLC   0

Definition at line 2263 of file avcodec.h.

#define FF_COMPLIANCE_EXPERIMENTAL   -2

Allow nonstandardized experimental things.

Definition at line 1700 of file avcodec.h.

#define FF_COMPLIANCE_NORMAL   0

Definition at line 1698 of file avcodec.h.

#define FF_COMPLIANCE_STRICT   1

Strictly conform to all the things in the spec no matter what consequences.

Definition at line 1697 of file avcodec.h.

#define FF_COMPLIANCE_UNOFFICIAL   -1

Allow unofficial extensions.

Definition at line 1699 of file avcodec.h.

#define FF_COMPLIANCE_VERY_STRICT   2

Strictly conform to an older more strict version of the spec or reference software.

Definition at line 1696 of file avcodec.h.

#define FF_COMPRESSION_DEFAULT   -1

Definition at line 2823 of file avcodec.h.

#define FF_DCT_ALTIVEC   5

Definition at line 1920 of file avcodec.h.

#define FF_DCT_AUTO   0

Definition at line 1915 of file avcodec.h.

#define FF_DCT_FAAN   6

Definition at line 1921 of file avcodec.h.

#define FF_DCT_FASTINT   1

Definition at line 1916 of file avcodec.h.

#define FF_DCT_INT   2

Definition at line 1917 of file avcodec.h.

#define FF_DCT_MLIB   4

Definition at line 1919 of file avcodec.h.

#define FF_DCT_MMX   3

Definition at line 1918 of file avcodec.h.

#define FF_DEBUG_BITSTREAM   4

Definition at line 2063 of file avcodec.h.

#define FF_DEBUG_BUFFERS   0x00008000

Definition at line 2076 of file avcodec.h.

#define FF_DEBUG_BUGS   0x00001000

Definition at line 2073 of file avcodec.h.

#define FF_DEBUG_DCT_COEFF   0x00000040

Definition at line 2067 of file avcodec.h.

#define FF_DEBUG_ER   0x00000400

Definition at line 2071 of file avcodec.h.

#define FF_DEBUG_MB_TYPE   8

Definition at line 2064 of file avcodec.h.

#define FF_DEBUG_MMCO   0x00000800

Definition at line 2072 of file avcodec.h.

#define FF_DEBUG_MV   32

Definition at line 2066 of file avcodec.h.

#define FF_DEBUG_PICT_INFO   1

Definition at line 2061 of file avcodec.h.

#define FF_DEBUG_PTS   0x00000200

Definition at line 2070 of file avcodec.h.

#define FF_DEBUG_QP   16

Definition at line 2065 of file avcodec.h.

#define FF_DEBUG_RC   2

Definition at line 2062 of file avcodec.h.

#define FF_DEBUG_SKIP   0x00000080

Definition at line 2068 of file avcodec.h.

#define FF_DEBUG_STARTCODE   0x00000100

Definition at line 2069 of file avcodec.h.

#define FF_DEBUG_THREADS   0x00010000

Definition at line 2077 of file avcodec.h.

#define FF_DEBUG_VIS_MB_TYPE   0x00004000

Definition at line 2075 of file avcodec.h.

#define FF_DEBUG_VIS_MV_B_BACK   0x00000004

Definition at line 2087 of file avcodec.h.

#define FF_DEBUG_VIS_MV_B_FOR   0x00000002

Definition at line 2086 of file avcodec.h.

#define FF_DEBUG_VIS_MV_P_FOR   0x00000001

Definition at line 2085 of file avcodec.h.

#define FF_DEBUG_VIS_QP   0x00002000

Definition at line 2074 of file avcodec.h.

#define FF_DEFAULT_QUANT_BIAS   999999

Definition at line 2222 of file avcodec.h.

#define FF_DTG_AFD_14_9   11

Definition at line 2202 of file avcodec.h.

#define FF_DTG_AFD_16_9   10

Definition at line 2201 of file avcodec.h.

#define FF_DTG_AFD_16_9_SP_14_9   14

Definition at line 2204 of file avcodec.h.

#define FF_DTG_AFD_4_3   9

Definition at line 2200 of file avcodec.h.

#define FF_DTG_AFD_4_3_SP_14_9   13

Definition at line 2203 of file avcodec.h.

#define FF_DTG_AFD_SAME   8

Definition at line 2199 of file avcodec.h.

#define FF_DTG_AFD_SP_4_3   15

Definition at line 2205 of file avcodec.h.

#define FF_EC_DEBLOCK   2

Definition at line 2010 of file avcodec.h.

#define FF_EC_GUESS_MVS   1

Definition at line 2009 of file avcodec.h.

#define FF_IDCT_ALTIVEC   8

Definition at line 1972 of file avcodec.h.

#define FF_IDCT_ARM   7

Definition at line 1971 of file avcodec.h.

#define FF_IDCT_AUTO   0

Definition at line 1964 of file avcodec.h.

#define FF_IDCT_BINK   24

Definition at line 1988 of file avcodec.h.

#define FF_IDCT_CAVS   15

Definition at line 1979 of file avcodec.h.

#define FF_IDCT_EA   21

Definition at line 1985 of file avcodec.h.

#define FF_IDCT_FAAN   20

Definition at line 1984 of file avcodec.h.

#define FF_IDCT_H264   11

Definition at line 1975 of file avcodec.h.

#define FF_IDCT_INT   1

Definition at line 1965 of file avcodec.h.

#define FF_IDCT_IPP   13

Definition at line 1977 of file avcodec.h.

#define FF_IDCT_LIBMPEG2MMX   4

Definition at line 1968 of file avcodec.h.

#define FF_IDCT_MLIB   6

Definition at line 1970 of file avcodec.h.

#define FF_IDCT_PS2   5

Definition at line 1969 of file avcodec.h.

#define FF_IDCT_SH4   9

Definition at line 1973 of file avcodec.h.

#define FF_IDCT_SIMPLE   2

Definition at line 1966 of file avcodec.h.

#define FF_IDCT_SIMPLEALPHA   23

Definition at line 1987 of file avcodec.h.

#define FF_IDCT_SIMPLEARM   10

Definition at line 1974 of file avcodec.h.

#define FF_IDCT_SIMPLEARMV5TE   16

Definition at line 1980 of file avcodec.h.

#define FF_IDCT_SIMPLEARMV6   17

Definition at line 1981 of file avcodec.h.

#define FF_IDCT_SIMPLEMMX   3

Definition at line 1967 of file avcodec.h.

#define FF_IDCT_SIMPLENEON   22

Definition at line 1986 of file avcodec.h.

#define FF_IDCT_SIMPLEVIS   18

Definition at line 1982 of file avcodec.h.

#define FF_IDCT_VP3   12

Definition at line 1976 of file avcodec.h.

#define FF_IDCT_WMV2   19

Definition at line 1983 of file avcodec.h.

#define FF_IDCT_XVIDMMX   14

Definition at line 1978 of file avcodec.h.

Required number of additionally allocated bytes at the end of the input bitstream for decoding.

This is mainly needed because some optimized bitstream readers read 32 or 64 bit at once and could read over the end.
Note: If the first 23 bits of the additional bytes are not 0, then damaged MPEG bitstreams could cause overread and segfault.

Definition at line 516 of file avcodec.h.

#define FF_LEVEL_UNKNOWN   -99

Definition at line 2582 of file avcodec.h.

#define FF_LOSS_ALPHA   0x0008

loss of alpha bits

Definition at line 3798 of file avcodec.h.

#define FF_LOSS_CHROMA   0x0020

loss of chroma (e.g.

RGB to gray conversion)

Definition at line 3800 of file avcodec.h.

#define FF_LOSS_COLORQUANT   0x0010

loss due to color quantization

Definition at line 3799 of file avcodec.h.

#define FF_LOSS_COLORSPACE   0x0004

loss due to color space conversion

Definition at line 3797 of file avcodec.h.

#define FF_LOSS_DEPTH   0x0002

loss due to color depth change

Definition at line 3796 of file avcodec.h.

#define FF_LOSS_RESOLUTION   0x0001

loss due to resolution change

Definition at line 3795 of file avcodec.h.

#define FF_MAX_B_FRAMES   16

Definition at line 641 of file avcodec.h.

#define FF_MB_DECISION_BITS   1

chooses the one which needs the fewest bits

Definition at line 2314 of file avcodec.h.

#define FF_MB_DECISION_RD   2

rate distortion

Definition at line 2315 of file avcodec.h.

#define FF_MB_DECISION_SIMPLE   0

uses mb_cmp

Definition at line 2313 of file avcodec.h.

#define FF_MIN_BUFFER_SIZE   16384

minimum encoding buffer size Used to avoid some checks during header writing.

Definition at line 522 of file avcodec.h.

#define FF_PRED_LEFT   0

Definition at line 2035 of file avcodec.h.

#define FF_PRED_MEDIAN   2

Definition at line 2037 of file avcodec.h.

#define FF_PRED_PLANE   1

Definition at line 2036 of file avcodec.h.

#define FF_PROFILE_AAC_LOW   1

Definition at line 2520 of file avcodec.h.

#define FF_PROFILE_AAC_LTP   3

Definition at line 2522 of file avcodec.h.

#define FF_PROFILE_AAC_MAIN   0

Definition at line 2519 of file avcodec.h.

#define FF_PROFILE_AAC_SSR   2

Definition at line 2521 of file avcodec.h.

#define FF_PROFILE_DTS   20

Definition at line 2524 of file avcodec.h.

#define FF_PROFILE_DTS_96_24   40

Definition at line 2526 of file avcodec.h.

#define FF_PROFILE_DTS_ES   30

Definition at line 2525 of file avcodec.h.

#define FF_PROFILE_DTS_HD_HRA   50

Definition at line 2527 of file avcodec.h.

#define FF_PROFILE_DTS_HD_MA   60

Definition at line 2528 of file avcodec.h.

#define FF_PROFILE_H264_BASELINE   66

Definition at line 2540 of file avcodec.h.

#define FF_PROFILE_H264_CAVLC_444   44

Definition at line 2552 of file avcodec.h.

#define FF_PROFILE_H264_CONSTRAINED   (1<<9)

Definition at line 2537 of file avcodec.h.

Definition at line 2541 of file avcodec.h.

#define FF_PROFILE_H264_EXTENDED   88

Definition at line 2543 of file avcodec.h.

#define FF_PROFILE_H264_HIGH   100

Definition at line 2544 of file avcodec.h.

#define FF_PROFILE_H264_HIGH_10   110

Definition at line 2545 of file avcodec.h.

Definition at line 2546 of file avcodec.h.

#define FF_PROFILE_H264_HIGH_422   122

Definition at line 2547 of file avcodec.h.

Definition at line 2548 of file avcodec.h.

#define FF_PROFILE_H264_HIGH_444   144

Definition at line 2549 of file avcodec.h.

Definition at line 2551 of file avcodec.h.

Definition at line 2550 of file avcodec.h.

#define FF_PROFILE_H264_INTRA   (1<<11)

Definition at line 2538 of file avcodec.h.

#define FF_PROFILE_H264_MAIN   77

Definition at line 2542 of file avcodec.h.

#define FF_PROFILE_MPEG2_422   0

Definition at line 2530 of file avcodec.h.

#define FF_PROFILE_MPEG2_HIGH   1

Definition at line 2531 of file avcodec.h.

#define FF_PROFILE_MPEG2_MAIN   4

Definition at line 2534 of file avcodec.h.

#define FF_PROFILE_MPEG2_SIMPLE   5

Definition at line 2535 of file avcodec.h.

Definition at line 2533 of file avcodec.h.

#define FF_PROFILE_MPEG2_SS   2

Definition at line 2532 of file avcodec.h.

Definition at line 2570 of file avcodec.h.

Definition at line 2571 of file avcodec.h.

Definition at line 2568 of file avcodec.h.

Definition at line 2572 of file avcodec.h.

Definition at line 2574 of file avcodec.h.

Definition at line 2566 of file avcodec.h.

#define FF_PROFILE_MPEG4_CORE   2

Definition at line 2561 of file avcodec.h.

Definition at line 2569 of file avcodec.h.

#define FF_PROFILE_MPEG4_HYBRID   8

Definition at line 2567 of file avcodec.h.

#define FF_PROFILE_MPEG4_MAIN   3

Definition at line 2562 of file avcodec.h.

#define FF_PROFILE_MPEG4_N_BIT   4

Definition at line 2563 of file avcodec.h.

Definition at line 2564 of file avcodec.h.

#define FF_PROFILE_MPEG4_SIMPLE   0

Definition at line 2559 of file avcodec.h.

Definition at line 2565 of file avcodec.h.

Definition at line 2560 of file avcodec.h.

Definition at line 2573 of file avcodec.h.

#define FF_PROFILE_RESERVED   -100

Definition at line 2517 of file avcodec.h.

#define FF_PROFILE_UNKNOWN   -99

Definition at line 2516 of file avcodec.h.

#define FF_PROFILE_VC1_ADVANCED   3

Definition at line 2557 of file avcodec.h.

#define FF_PROFILE_VC1_COMPLEX   2

Definition at line 2556 of file avcodec.h.

#define FF_PROFILE_VC1_MAIN   1

Definition at line 2555 of file avcodec.h.

#define FF_PROFILE_VC1_SIMPLE   0

Definition at line 2554 of file avcodec.h.

#define FF_QSCALE_TYPE_H264   2

Definition at line 888 of file avcodec.h.

#define FF_QSCALE_TYPE_MPEG1   0

Definition at line 886 of file avcodec.h.

#define FF_QSCALE_TYPE_MPEG2   1

Definition at line 887 of file avcodec.h.

#define FF_QSCALE_TYPE_VP56   3

Definition at line 889 of file avcodec.h.

#define FF_RC_STRATEGY_XVID   1

Definition at line 1578 of file avcodec.h.

#define FF_THREAD_FRAME   1

Decode more than one frame at once.

Definition at line 3161 of file avcodec.h.

#define FF_THREAD_SLICE   2

Decode more than one part of a single frame at once.

Definition at line 3162 of file avcodec.h.

#define MB_TYPE_16x16   0x0008

Definition at line 837 of file avcodec.h.

#define MB_TYPE_16x8   0x0010

Definition at line 838 of file avcodec.h.

#define MB_TYPE_8x16   0x0020

Definition at line 839 of file avcodec.h.

#define MB_TYPE_8x8   0x0040

Definition at line 840 of file avcodec.h.

#define MB_TYPE_ACPRED   0x0200

Definition at line 843 of file avcodec.h.

#define MB_TYPE_CBP   0x00020000

Definition at line 854 of file avcodec.h.

#define MB_TYPE_DIRECT2   0x0100

Definition at line 842 of file avcodec.h.

#define MB_TYPE_GMC   0x0400

Definition at line 844 of file avcodec.h.

#define MB_TYPE_INTERLACED   0x0080

Definition at line 841 of file avcodec.h.

#define MB_TYPE_INTRA16x16   0x0002

Definition at line 835 of file avcodec.h.

#define MB_TYPE_INTRA4x4   0x0001

Definition at line 834 of file avcodec.h.

#define MB_TYPE_INTRA_PCM   0x0004

Definition at line 836 of file avcodec.h.

Definition at line 850 of file avcodec.h.

Definition at line 852 of file avcodec.h.

Definition at line 851 of file avcodec.h.

#define MB_TYPE_P0L0   0x1000

Definition at line 846 of file avcodec.h.

#define MB_TYPE_P0L1   0x4000

Definition at line 848 of file avcodec.h.

#define MB_TYPE_P1L0   0x2000

Definition at line 847 of file avcodec.h.

#define MB_TYPE_P1L1   0x8000

Definition at line 849 of file avcodec.h.

#define MB_TYPE_QUANT   0x00010000

Definition at line 853 of file avcodec.h.

#define MB_TYPE_SKIP   0x0800

Definition at line 845 of file avcodec.h.

#define PARSER_FLAG_COMPLETE_FRAMES   0x0001

Definition at line 4566 of file avcodec.h.

#define PARSER_FLAG_FETCHED_OFFSET   0x0004

Set if the parser has a valid file offset.

Definition at line 4569 of file avcodec.h.

#define PARSER_FLAG_ONCE   0x0002

Definition at line 4567 of file avcodec.h.

#define SLICE_FLAG_ALLOW_FIELD   0x0002

allow draw_horiz_band() with field slices (MPEG2 field pics)

Definition at line 2297 of file avcodec.h.

#define SLICE_FLAG_ALLOW_PLANE   0x0004

allow draw_horiz_band() with 1 component at a time (SVQ1)

Definition at line 2298 of file avcodec.h.

#define SLICE_FLAG_CODED_ORDER   0x0001

draw_horiz_band() is called in coded order instead of display

Definition at line 2296 of file avcodec.h.


Typedef Documentation

typedef struct AVCodec AVCodec

main external API structure.

New fields can be added to the end with minor version bumps. Removal, reordering and changes to existing fields require a major version bump. Please use AVOptions (av_opt* / av_set/get*()) to access these fields from user applications. sizeof(AVCodecContext) must not be used outside libav*.

Definition at line 3253 of file avcodec.h.

typedef struct AVCodecParser AVCodecParser
typedef struct AVFrame AVFrame

Audio Video Frame.

New fields can be added to the end of AVFRAME with minor version bumps. Similarly fields that are marked as to be only accessed by av_opt_ptr() can be reordered. This allows 2 forks to add fields without breaking compatibility with each other. Removal, reordering and changes in the remaining cases require a major version bump. sizeof(AVFrame) must not be used outside libavcodec.

typedef struct AVHWAccel AVHWAccel
typedef struct AVPacket AVPacket
typedef struct AVPanScan AVPanScan

Pan Scan area.

This specifies the area which should be displayed. Note there may be multiple such areas for one frame.

typedef struct AVPicture AVPicture

four components are given, that's all.

the last component is alpha

typedef struct AVProfile AVProfile
typedef struct AVSubtitle AVSubtitle
typedef struct RcOverride RcOverride

Definition at line 3608 of file avcodec.h.


Enumeration Type Documentation

Enumerator:
AV_AUDIO_SERVICE_TYPE_MAIN 
AV_AUDIO_SERVICE_TYPE_EFFECTS 
AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED 
AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED 
AV_AUDIO_SERVICE_TYPE_DIALOGUE 
AV_AUDIO_SERVICE_TYPE_COMMENTARY 
AV_AUDIO_SERVICE_TYPE_EMERGENCY 
AV_AUDIO_SERVICE_TYPE_VOICE_OVER 
AV_AUDIO_SERVICE_TYPE_KARAOKE 
AV_AUDIO_SERVICE_TYPE_NB 

Not part of ABI.

AV_AUDIO_SERVICE_TYPE_MAIN 
AV_AUDIO_SERVICE_TYPE_EFFECTS 
AV_AUDIO_SERVICE_TYPE_VISUALLY_IMPAIRED 
AV_AUDIO_SERVICE_TYPE_HEARING_IMPAIRED 
AV_AUDIO_SERVICE_TYPE_DIALOGUE 
AV_AUDIO_SERVICE_TYPE_COMMENTARY 
AV_AUDIO_SERVICE_TYPE_EMERGENCY 
AV_AUDIO_SERVICE_TYPE_VOICE_OVER 
AV_AUDIO_SERVICE_TYPE_KARAOKE 
AV_AUDIO_SERVICE_TYPE_NB 

Not part of ABI.

Definition at line 621 of file avcodec.h.

X X 3 4 X X are luma samples, 1 2 1-6 are possible chroma positions X X 5 6 X 0 is undefined/unknown position.

Enumerator:
AVCHROMA_LOC_UNSPECIFIED 
AVCHROMA_LOC_LEFT 

mpeg2/4, h264 default

AVCHROMA_LOC_CENTER 

mpeg1, jpeg, h263

AVCHROMA_LOC_TOPLEFT 

DV.

AVCHROMA_LOC_TOP 
AVCHROMA_LOC_BOTTOMLEFT 
AVCHROMA_LOC_BOTTOM 
AVCHROMA_LOC_NB 

Not part of ABI.

AVCHROMA_LOC_UNSPECIFIED 
AVCHROMA_LOC_LEFT 

mpeg2/4, h264 default

AVCHROMA_LOC_CENTER 

mpeg1, jpeg, h263

AVCHROMA_LOC_TOPLEFT 

DV.

AVCHROMA_LOC_TOP 
AVCHROMA_LOC_BOTTOMLEFT 
AVCHROMA_LOC_BOTTOM 
AVCHROMA_LOC_NB 

Not part of ABI.

Definition at line 596 of file avcodec.h.

Enumerator:
AVCOL_PRI_BT709 

also ITU-R BT1361 / IEC 61966-2-4 / SMPTE RP177 Annex B

AVCOL_PRI_UNSPECIFIED 
AVCOL_PRI_BT470M 
AVCOL_PRI_BT470BG 

also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM

AVCOL_PRI_SMPTE170M 

also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC

AVCOL_PRI_SMPTE240M 

functionally identical to above

AVCOL_PRI_FILM 
AVCOL_PRI_NB 

Not part of ABI.

AVCOL_PRI_BT709 

also ITU-R BT1361 / IEC 61966-2-4 / SMPTE RP177 Annex B

AVCOL_PRI_UNSPECIFIED 
AVCOL_PRI_BT470M 
AVCOL_PRI_BT470BG 

also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM

AVCOL_PRI_SMPTE170M 

also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC

AVCOL_PRI_SMPTE240M 

functionally identical to above

AVCOL_PRI_FILM 
AVCOL_PRI_NB 

Not part of ABI.

Definition at line 552 of file avcodec.h.

Enumerator:
AVCOL_RANGE_UNSPECIFIED 
AVCOL_RANGE_MPEG 

the normal 219*2^(n-8) "MPEG" YUV ranges

AVCOL_RANGE_JPEG 

the normal 2^n-1 "JPEG" YUV ranges

AVCOL_RANGE_NB 

Not part of ABI.

AVCOL_RANGE_UNSPECIFIED 
AVCOL_RANGE_MPEG 

the normal 219*2^(n-8) "MPEG" YUV ranges

AVCOL_RANGE_JPEG 

the normal 2^n-1 "JPEG" YUV ranges

AVCOL_RANGE_NB 

Not part of ABI.

Definition at line 584 of file avcodec.h.

Enumerator:
AVCOL_SPC_RGB 
AVCOL_SPC_BT709 

also ITU-R BT1361 / IEC 61966-2-4 xvYCC709 / SMPTE RP177 Annex B

AVCOL_SPC_UNSPECIFIED 
AVCOL_SPC_FCC 
AVCOL_SPC_BT470BG 

also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM / IEC 61966-2-4 xvYCC601

AVCOL_SPC_SMPTE170M 

also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC / functionally identical to above

AVCOL_SPC_SMPTE240M 
AVCOL_SPC_YCGCO 
AVCOL_SPC_NB 

Not part of ABI.

AVCOL_SPC_RGB 
AVCOL_SPC_BT709 

also ITU-R BT1361 / IEC 61966-2-4 xvYCC709 / SMPTE RP177 Annex B

AVCOL_SPC_UNSPECIFIED 
AVCOL_SPC_FCC 
AVCOL_SPC_BT470BG 

also ITU-R BT601-6 625 / ITU-R BT1358 625 / ITU-R BT1700 625 PAL & SECAM / IEC 61966-2-4 xvYCC601

AVCOL_SPC_SMPTE170M 

also ITU-R BT601-6 525 / ITU-R BT1358 525 / ITU-R BT1700 NTSC / functionally identical to above

AVCOL_SPC_SMPTE240M 
AVCOL_SPC_YCGCO 
AVCOL_SPC_NB 

Not part of ABI.

Definition at line 572 of file avcodec.h.

Enumerator:
AVCOL_TRC_BT709 

also ITU-R BT1361

AVCOL_TRC_UNSPECIFIED 
AVCOL_TRC_GAMMA22 

also ITU-R BT470M / ITU-R BT1700 625 PAL & SECAM

AVCOL_TRC_GAMMA28 

also ITU-R BT470BG

AVCOL_TRC_SMPTE240M 
AVCOL_TRC_NB 

Not part of ABI.

AVCOL_TRC_BT709 

also ITU-R BT1361

AVCOL_TRC_UNSPECIFIED 
AVCOL_TRC_GAMMA22 

also ITU-R BT470M / ITU-R BT1700 625 PAL & SECAM

AVCOL_TRC_GAMMA28 

also ITU-R BT470BG

AVCOL_TRC_SMPTE240M 
AVCOL_TRC_NB 

Not part of ABI.

Definition at line 563 of file avcodec.h.

enum AVDiscard
Enumerator:
AVDISCARD_NONE 

discard nothing

AVDISCARD_DEFAULT 

discard useless packets like 0 size packets in avi

AVDISCARD_NONREF 

discard all non reference

AVDISCARD_BIDIR 

discard all bidirectional frames

AVDISCARD_NONKEY 

discard all frames except keyframes

AVDISCARD_ALL 

discard all

AVDISCARD_NONE 

discard nothing

AVDISCARD_DEFAULT 

discard useless packets like 0 size packets in avi

AVDISCARD_NONREF 

discard all non reference

AVDISCARD_BIDIR 

discard all bidirectional frames

AVDISCARD_NONKEY 

discard all frames except keyframes

AVDISCARD_ALL 

discard all

Definition at line 541 of file avcodec.h.

Enumerator:
AV_FIELD_UNKNOWN 
AV_FIELD_PROGRESSIVE 
AV_FIELD_TT 
AV_FIELD_BB 
AV_FIELD_TB 
AV_FIELD_BT 
AV_FIELD_UNKNOWN 
AV_FIELD_PROGRESSIVE 
AV_FIELD_TT 
AV_FIELD_BB 
AV_FIELD_TB 
AV_FIELD_BT 

Definition at line 1362 of file avcodec.h.

enum AVLockOp

Lock operation used by lockmgr.

Enumerator:
AV_LOCK_CREATE 

Create a mutex.

AV_LOCK_OBTAIN 

Lock the mutex.

AV_LOCK_RELEASE 

Unlock the mutex.

AV_LOCK_DESTROY 

Free mutex resources.

AV_LOCK_CREATE 

Create a mutex.

AV_LOCK_OBTAIN 

Lock the mutex.

AV_LOCK_RELEASE 

Unlock the mutex.

AV_LOCK_DESTROY 

Free mutex resources.

Definition at line 4848 of file avcodec.h.

Enumerator:
AV_PKT_DATA_PALETTE 
AV_PKT_DATA_NEW_EXTRADATA 
AV_PKT_DATA_PARAM_CHANGE 
AV_PKT_DATA_PALETTE 
AV_PKT_DATA_NEW_EXTRADATA 
AV_PKT_DATA_PARAM_CHANGE 

Definition at line 912 of file avcodec.h.

An AV_PKT_DATA_PARAM_CHANGE side data packet is laid out as follows: u32le param_flags if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT) s32le channel_count if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT) u64le channel_layout if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE) s32le sample_rate if (param_flags & AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS) s32le width s32le height.

Enumerator:
AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT 
AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT 
AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE 
AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS 
AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_COUNT 
AV_SIDE_DATA_PARAM_CHANGE_CHANNEL_LAYOUT 
AV_SIDE_DATA_PARAM_CHANGE_SAMPLE_RATE 
AV_SIDE_DATA_PARAM_CHANGE_DIMENSIONS 

Definition at line 998 of file avcodec.h.

Enumerator:
SUBTITLE_NONE 
SUBTITLE_BITMAP 

A bitmap, pict will be set.

SUBTITLE_TEXT 

Plain text, the text field must be set by the decoder and is authoritative.

ass and pict fields may contain approximations.

SUBTITLE_ASS 

Formatted text, the ass field must be set by the decoder and is authoritative.

pict and text fields may contain approximations.

SUBTITLE_NONE 
SUBTITLE_BITMAP 

A bitmap, pict will be set.

SUBTITLE_TEXT 

Plain text, the text field must be set by the decoder and is authoritative.

ass and pict fields may contain approximations.

SUBTITLE_ASS 

Formatted text, the ass field must be set by the decoder and is authoritative.

pict and text fields may contain approximations.

Definition at line 3467 of file avcodec.h.

enum CodecID

Identify the syntax and semantics of the bitstream.

The principle is roughly: Two decoders with the same ID can decode the same streams. Two encoders with the same ID can encode compatible streams. There may be slight deviations from the principle due to implementation details.

If you add a codec ID to this list, add it so that 1. no value of a existing codec ID changes (that would break ABI), 2. Give it a value which when taken as ASCII is recognized uniquely by a human as this specific codec. This ensures that 2 forks can independantly add CodecIDs without producing conflicts.

Enumerator:
CODEC_ID_NONE 
CODEC_ID_MPEG1VIDEO 
CODEC_ID_MPEG2VIDEO 

preferred ID for MPEG-1/2 video decoding

CODEC_ID_MPEG2VIDEO_XVMC 
CODEC_ID_H261 
CODEC_ID_H263 
CODEC_ID_RV10 
CODEC_ID_RV20 
CODEC_ID_MJPEG 
CODEC_ID_MJPEGB 
CODEC_ID_LJPEG 
CODEC_ID_SP5X 
CODEC_ID_JPEGLS 
CODEC_ID_MPEG4 
CODEC_ID_RAWVIDEO 
CODEC_ID_MSMPEG4V1 
CODEC_ID_MSMPEG4V2 
CODEC_ID_MSMPEG4V3 
CODEC_ID_WMV1 
CODEC_ID_WMV2 
CODEC_ID_H263P 
CODEC_ID_H263I 
CODEC_ID_FLV1 
CODEC_ID_SVQ1 
CODEC_ID_SVQ3 
CODEC_ID_DVVIDEO 
CODEC_ID_HUFFYUV 
CODEC_ID_CYUV 
CODEC_ID_H264 
CODEC_ID_INDEO3 
CODEC_ID_VP3 
CODEC_ID_THEORA 
CODEC_ID_ASV1 
CODEC_ID_ASV2 
CODEC_ID_FFV1 
CODEC_ID_4XM 
CODEC_ID_VCR1 
CODEC_ID_CLJR 
CODEC_ID_MDEC 
CODEC_ID_ROQ 
CODEC_ID_INTERPLAY_VIDEO 
CODEC_ID_XAN_WC3 
CODEC_ID_XAN_WC4 
CODEC_ID_RPZA 
CODEC_ID_CINEPAK 
CODEC_ID_WS_VQA 
CODEC_ID_MSRLE 
CODEC_ID_MSVIDEO1 
CODEC_ID_IDCIN 
CODEC_ID_8BPS 
CODEC_ID_SMC 
CODEC_ID_FLIC 
CODEC_ID_TRUEMOTION1 
CODEC_ID_VMDVIDEO 
CODEC_ID_MSZH 
CODEC_ID_ZLIB 
CODEC_ID_QTRLE 
CODEC_ID_SNOW 
CODEC_ID_TSCC 
CODEC_ID_ULTI 
CODEC_ID_QDRAW 
CODEC_ID_VIXL 
CODEC_ID_QPEG 
CODEC_ID_PNG 
CODEC_ID_PPM 
CODEC_ID_PBM 
CODEC_ID_PGM 
CODEC_ID_PGMYUV 
CODEC_ID_PAM 
CODEC_ID_FFVHUFF 
CODEC_ID_RV30 
CODEC_ID_RV40 
CODEC_ID_VC1 
CODEC_ID_WMV3 
CODEC_ID_LOCO 
CODEC_ID_WNV1 
CODEC_ID_AASC 
CODEC_ID_INDEO2 
CODEC_ID_FRAPS 
CODEC_ID_TRUEMOTION2 
CODEC_ID_BMP 
CODEC_ID_CSCD 
CODEC_ID_MMVIDEO 
CODEC_ID_ZMBV 
CODEC_ID_AVS 
CODEC_ID_SMACKVIDEO 
CODEC_ID_NUV 
CODEC_ID_KMVC 
CODEC_ID_FLASHSV 
CODEC_ID_CAVS 
CODEC_ID_JPEG2000 
CODEC_ID_VMNC 
CODEC_ID_VP5 
CODEC_ID_VP6 
CODEC_ID_VP6F 
CODEC_ID_TARGA 
CODEC_ID_DSICINVIDEO 
CODEC_ID_TIERTEXSEQVIDEO 
CODEC_ID_TIFF 
CODEC_ID_GIF 
CODEC_ID_DXA 
CODEC_ID_DNXHD 
CODEC_ID_THP 
CODEC_ID_SGI 
CODEC_ID_C93 
CODEC_ID_BETHSOFTVID 
CODEC_ID_PTX 
CODEC_ID_TXD 
CODEC_ID_VP6A 
CODEC_ID_AMV 
CODEC_ID_VB 
CODEC_ID_PCX 
CODEC_ID_SUNRAST 
CODEC_ID_INDEO4 
CODEC_ID_INDEO5 
CODEC_ID_MIMIC 
CODEC_ID_RL2 
CODEC_ID_ESCAPE124 
CODEC_ID_DIRAC 
CODEC_ID_BFI 
CODEC_ID_CMV 
CODEC_ID_MOTIONPIXELS 
CODEC_ID_TGV 
CODEC_ID_TGQ 
CODEC_ID_TQI 
CODEC_ID_AURA 
CODEC_ID_AURA2 
CODEC_ID_V210X 
CODEC_ID_TMV 
CODEC_ID_V210 
CODEC_ID_DPX 
CODEC_ID_MAD 
CODEC_ID_FRWU 
CODEC_ID_FLASHSV2 
CODEC_ID_CDGRAPHICS 
CODEC_ID_R210 
CODEC_ID_ANM 
CODEC_ID_BINKVIDEO 
CODEC_ID_IFF_ILBM 
CODEC_ID_IFF_BYTERUN1 
CODEC_ID_KGV1 
CODEC_ID_YOP 
CODEC_ID_VP8 
CODEC_ID_PICTOR 
CODEC_ID_ANSI 
CODEC_ID_A64_MULTI 
CODEC_ID_A64_MULTI5 
CODEC_ID_R10K 
CODEC_ID_MXPEG 
CODEC_ID_LAGARITH 
CODEC_ID_PRORES 
CODEC_ID_JV 
CODEC_ID_DFA 
CODEC_ID_WMV3IMAGE 
CODEC_ID_VC1IMAGE 
CODEC_ID_UTVIDEO_DEPRECATED 
CODEC_ID_BMV_VIDEO 
CODEC_ID_VBLE 
CODEC_ID_DXTORY 
CODEC_ID_V410 
CODEC_ID_XWD 
CODEC_ID_Y41P 
CODEC_ID_UTVIDEO 
CODEC_ID_ESCAPE130 
CODEC_ID_AVRP 
CODEC_ID_G2M 
CODEC_ID_V308 
CODEC_ID_YUV4 
CODEC_ID_FIRST_AUDIO 

A dummy id pointing at the start of audio codecs.

CODEC_ID_PCM_S16LE 
CODEC_ID_PCM_S16BE 
CODEC_ID_PCM_U16LE 
CODEC_ID_PCM_U16BE 
CODEC_ID_PCM_S8 
CODEC_ID_PCM_U8 
CODEC_ID_PCM_MULAW 
CODEC_ID_PCM_ALAW 
CODEC_ID_PCM_S32LE 
CODEC_ID_PCM_S32BE 
CODEC_ID_PCM_U32LE 
CODEC_ID_PCM_U32BE 
CODEC_ID_PCM_S24LE 
CODEC_ID_PCM_S24BE 
CODEC_ID_PCM_U24LE 
CODEC_ID_PCM_U24BE 
CODEC_ID_PCM_S24DAUD 
CODEC_ID_PCM_ZORK 
CODEC_ID_PCM_S16LE_PLANAR 
CODEC_ID_PCM_DVD 
CODEC_ID_PCM_F32BE 
CODEC_ID_PCM_F32LE 
CODEC_ID_PCM_F64BE 
CODEC_ID_PCM_F64LE 
CODEC_ID_PCM_BLURAY 
CODEC_ID_PCM_LXF 
CODEC_ID_S302M 
CODEC_ID_PCM_S8_PLANAR 
CODEC_ID_ADPCM_IMA_QT 
CODEC_ID_ADPCM_IMA_WAV 
CODEC_ID_ADPCM_IMA_DK3 
CODEC_ID_ADPCM_IMA_DK4 
CODEC_ID_ADPCM_IMA_WS 
CODEC_ID_ADPCM_IMA_SMJPEG 
CODEC_ID_ADPCM_MS 
CODEC_ID_ADPCM_4XM 
CODEC_ID_ADPCM_XA 
CODEC_ID_ADPCM_ADX 
CODEC_ID_ADPCM_EA 
CODEC_ID_ADPCM_G726 
CODEC_ID_ADPCM_CT 
CODEC_ID_ADPCM_SWF 
CODEC_ID_ADPCM_YAMAHA 
CODEC_ID_ADPCM_SBPRO_4 
CODEC_ID_ADPCM_SBPRO_3 
CODEC_ID_ADPCM_SBPRO_2 
CODEC_ID_ADPCM_THP 
CODEC_ID_ADPCM_IMA_AMV 
CODEC_ID_ADPCM_EA_R1 
CODEC_ID_ADPCM_EA_R3 
CODEC_ID_ADPCM_EA_R2 
CODEC_ID_ADPCM_IMA_EA_SEAD 
CODEC_ID_ADPCM_IMA_EA_EACS 
CODEC_ID_ADPCM_EA_XAS 
CODEC_ID_ADPCM_EA_MAXIS_XA 
CODEC_ID_ADPCM_IMA_ISS 
CODEC_ID_ADPCM_G722 
CODEC_ID_ADPCM_IMA_APC 
CODEC_ID_AMR_NB 
CODEC_ID_AMR_WB 
CODEC_ID_RA_144 
CODEC_ID_RA_288 
CODEC_ID_ROQ_DPCM 
CODEC_ID_INTERPLAY_DPCM 
CODEC_ID_XAN_DPCM 
CODEC_ID_SOL_DPCM 
CODEC_ID_MP2 
CODEC_ID_MP3 

preferred ID for decoding MPEG audio layer 1, 2 or 3

CODEC_ID_AAC 
CODEC_ID_AC3 
CODEC_ID_DTS 
CODEC_ID_VORBIS 
CODEC_ID_DVAUDIO 
CODEC_ID_WMAV1 
CODEC_ID_WMAV2 
CODEC_ID_MACE3 
CODEC_ID_MACE6 
CODEC_ID_VMDAUDIO 
CODEC_ID_FLAC 
CODEC_ID_MP3ADU 
CODEC_ID_MP3ON4 
CODEC_ID_SHORTEN 
CODEC_ID_ALAC 
CODEC_ID_WESTWOOD_SND1 
CODEC_ID_GSM 

as in Berlin toast format

CODEC_ID_QDM2 
CODEC_ID_COOK 
CODEC_ID_TRUESPEECH 
CODEC_ID_TTA 
CODEC_ID_SMACKAUDIO 
CODEC_ID_QCELP 
CODEC_ID_WAVPACK 
CODEC_ID_DSICINAUDIO 
CODEC_ID_IMC 
CODEC_ID_MUSEPACK7 
CODEC_ID_MLP 
CODEC_ID_GSM_MS 
CODEC_ID_ATRAC3 
CODEC_ID_VOXWARE 
CODEC_ID_APE 
CODEC_ID_NELLYMOSER 
CODEC_ID_MUSEPACK8 
CODEC_ID_SPEEX 
CODEC_ID_WMAVOICE 
CODEC_ID_WMAPRO 
CODEC_ID_WMALOSSLESS 
CODEC_ID_ATRAC3P 
CODEC_ID_EAC3 
CODEC_ID_SIPR 
CODEC_ID_MP1 
CODEC_ID_TWINVQ 
CODEC_ID_TRUEHD 
CODEC_ID_MP4ALS 
CODEC_ID_ATRAC1 
CODEC_ID_BINKAUDIO_RDFT 
CODEC_ID_BINKAUDIO_DCT 
CODEC_ID_AAC_LATM 
CODEC_ID_QDMC 
CODEC_ID_CELT 
CODEC_ID_BMV_AUDIO 
CODEC_ID_G729 
CODEC_ID_G723_1 
CODEC_ID_FFWAVESYNTH 
CODEC_ID_8SVX_RAW 
CODEC_ID_FIRST_SUBTITLE 

A dummy ID pointing at the start of subtitle codecs.

CODEC_ID_DVD_SUBTITLE 
CODEC_ID_DVB_SUBTITLE 
CODEC_ID_TEXT 

raw UTF-8 text

CODEC_ID_XSUB 
CODEC_ID_SSA 
CODEC_ID_MOV_TEXT 
CODEC_ID_HDMV_PGS_SUBTITLE 
CODEC_ID_DVB_TELETEXT 
CODEC_ID_SRT 
CODEC_ID_MICRODVD 
CODEC_ID_FIRST_UNKNOWN 

A dummy ID pointing at the start of various fake codecs.

CODEC_ID_TTF 
CODEC_ID_BINTEXT 
CODEC_ID_XBIN 
CODEC_ID_IDF 
CODEC_ID_PROBE 

codec_id is not known (like CODEC_ID_NONE) but lavf should attempt to identify it

CODEC_ID_MPEG2TS 

_FAKE_ codec to indicate a raw MPEG-2 TS stream (only used by libavformat)

CODEC_ID_MPEG4SYSTEMS 

_FAKE_ codec to indicate a MPEG-4 Systems stream (only used by libavformat)

CODEC_ID_FFMETADATA 

Dummy codec for streams containing only metadata information.

CODEC_ID_NONE 
CODEC_ID_MPEG1VIDEO 
CODEC_ID_MPEG2VIDEO 

preferred ID for MPEG-1/2 video decoding

CODEC_ID_MPEG2VIDEO_XVMC 
CODEC_ID_H261 
CODEC_ID_H263 
CODEC_ID_RV10 
CODEC_ID_RV20 
CODEC_ID_MJPEG 
CODEC_ID_MJPEGB 
CODEC_ID_LJPEG 
CODEC_ID_SP5X 
CODEC_ID_JPEGLS 
CODEC_ID_MPEG4 
CODEC_ID_RAWVIDEO 
CODEC_ID_MSMPEG4V1 
CODEC_ID_MSMPEG4V2 
CODEC_ID_MSMPEG4V3 
CODEC_ID_WMV1 
CODEC_ID_WMV2 
CODEC_ID_H263P 
CODEC_ID_H263I 
CODEC_ID_FLV1 
CODEC_ID_SVQ1 
CODEC_ID_SVQ3 
CODEC_ID_DVVIDEO 
CODEC_ID_HUFFYUV 
CODEC_ID_CYUV 
CODEC_ID_H264 
CODEC_ID_INDEO3 
CODEC_ID_VP3 
CODEC_ID_THEORA 
CODEC_ID_ASV1 
CODEC_ID_ASV2 
CODEC_ID_FFV1 
CODEC_ID_4XM 
CODEC_ID_VCR1 
CODEC_ID_CLJR 
CODEC_ID_MDEC 
CODEC_ID_ROQ 
CODEC_ID_INTERPLAY_VIDEO 
CODEC_ID_XAN_WC3 
CODEC_ID_XAN_WC4 
CODEC_ID_RPZA 
CODEC_ID_CINEPAK 
CODEC_ID_WS_VQA 
CODEC_ID_MSRLE 
CODEC_ID_MSVIDEO1 
CODEC_ID_IDCIN 
CODEC_ID_8BPS 
CODEC_ID_SMC 
CODEC_ID_FLIC 
CODEC_ID_TRUEMOTION1 
CODEC_ID_VMDVIDEO 
CODEC_ID_MSZH 
CODEC_ID_ZLIB 
CODEC_ID_QTRLE 
CODEC_ID_SNOW 
CODEC_ID_TSCC 
CODEC_ID_ULTI 
CODEC_ID_QDRAW 
CODEC_ID_VIXL 
CODEC_ID_QPEG 
CODEC_ID_PNG 
CODEC_ID_PPM 
CODEC_ID_PBM 
CODEC_ID_PGM 
CODEC_ID_PGMYUV 
CODEC_ID_PAM 
CODEC_ID_FFVHUFF 
CODEC_ID_RV30 
CODEC_ID_RV40 
CODEC_ID_VC1 
CODEC_ID_WMV3 
CODEC_ID_LOCO 
CODEC_ID_WNV1 
CODEC_ID_AASC 
CODEC_ID_INDEO2 
CODEC_ID_FRAPS 
CODEC_ID_TRUEMOTION2 
CODEC_ID_BMP 
CODEC_ID_CSCD 
CODEC_ID_MMVIDEO 
CODEC_ID_ZMBV 
CODEC_ID_AVS 
CODEC_ID_SMACKVIDEO 
CODEC_ID_NUV 
CODEC_ID_KMVC 
CODEC_ID_FLASHSV 
CODEC_ID_CAVS 
CODEC_ID_JPEG2000 
CODEC_ID_VMNC 
CODEC_ID_VP5 
CODEC_ID_VP6 
CODEC_ID_VP6F 
CODEC_ID_TARGA 
CODEC_ID_DSICINVIDEO 
CODEC_ID_TIERTEXSEQVIDEO 
CODEC_ID_TIFF 
CODEC_ID_GIF 
CODEC_ID_DXA 
CODEC_ID_DNXHD 
CODEC_ID_THP 
CODEC_ID_SGI 
CODEC_ID_C93 
CODEC_ID_BETHSOFTVID 
CODEC_ID_PTX 
CODEC_ID_TXD 
CODEC_ID_VP6A 
CODEC_ID_AMV 
CODEC_ID_VB 
CODEC_ID_PCX 
CODEC_ID_SUNRAST 
CODEC_ID_INDEO4 
CODEC_ID_INDEO5 
CODEC_ID_MIMIC 
CODEC_ID_RL2 
CODEC_ID_ESCAPE124 
CODEC_ID_DIRAC 
CODEC_ID_BFI 
CODEC_ID_CMV 
CODEC_ID_MOTIONPIXELS 
CODEC_ID_TGV 
CODEC_ID_TGQ 
CODEC_ID_TQI 
CODEC_ID_AURA 
CODEC_ID_AURA2 
CODEC_ID_V210X 
CODEC_ID_TMV 
CODEC_ID_V210 
CODEC_ID_DPX 
CODEC_ID_MAD 
CODEC_ID_FRWU 
CODEC_ID_FLASHSV2 
CODEC_ID_CDGRAPHICS 
CODEC_ID_R210 
CODEC_ID_ANM 
CODEC_ID_BINKVIDEO 
CODEC_ID_IFF_ILBM 
CODEC_ID_IFF_BYTERUN1 
CODEC_ID_KGV1 
CODEC_ID_YOP 
CODEC_ID_VP8 
CODEC_ID_PICTOR 
CODEC_ID_ANSI 
CODEC_ID_A64_MULTI 
CODEC_ID_A64_MULTI5 
CODEC_ID_R10K 
CODEC_ID_MXPEG 
CODEC_ID_LAGARITH 
CODEC_ID_PRORES 
CODEC_ID_JV 
CODEC_ID_DFA 
CODEC_ID_WMV3IMAGE 
CODEC_ID_VC1IMAGE 
CODEC_ID_UTVIDEO_DEPRECATED 
CODEC_ID_BMV_VIDEO 
CODEC_ID_VBLE 
CODEC_ID_DXTORY 
CODEC_ID_V410 
CODEC_ID_XWD 
CODEC_ID_Y41P 
CODEC_ID_UTVIDEO 
CODEC_ID_ESCAPE130 
CODEC_ID_AVRP 
CODEC_ID_G2M 
CODEC_ID_V308 
CODEC_ID_YUV4 
CODEC_ID_FIRST_AUDIO 

A dummy id pointing at the start of audio codecs.

CODEC_ID_PCM_S16LE 
CODEC_ID_PCM_S16BE 
CODEC_ID_PCM_U16LE 
CODEC_ID_PCM_U16BE 
CODEC_ID_PCM_S8 
CODEC_ID_PCM_U8 
CODEC_ID_PCM_MULAW 
CODEC_ID_PCM_ALAW 
CODEC_ID_PCM_S32LE 
CODEC_ID_PCM_S32BE 
CODEC_ID_PCM_U32LE 
CODEC_ID_PCM_U32BE 
CODEC_ID_PCM_S24LE 
CODEC_ID_PCM_S24BE 
CODEC_ID_PCM_U24LE 
CODEC_ID_PCM_U24BE 
CODEC_ID_PCM_S24DAUD 
CODEC_ID_PCM_ZORK 
CODEC_ID_PCM_S16LE_PLANAR 
CODEC_ID_PCM_DVD 
CODEC_ID_PCM_F32BE 
CODEC_ID_PCM_F32LE 
CODEC_ID_PCM_F64BE 
CODEC_ID_PCM_F64LE 
CODEC_ID_PCM_BLURAY 
CODEC_ID_PCM_LXF 
CODEC_ID_S302M 
CODEC_ID_PCM_S8_PLANAR 
CODEC_ID_ADPCM_IMA_QT 
CODEC_ID_ADPCM_IMA_WAV 
CODEC_ID_ADPCM_IMA_DK3 
CODEC_ID_ADPCM_IMA_DK4 
CODEC_ID_ADPCM_IMA_WS 
CODEC_ID_ADPCM_IMA_SMJPEG 
CODEC_ID_ADPCM_MS 
CODEC_ID_ADPCM_4XM 
CODEC_ID_ADPCM_XA 
CODEC_ID_ADPCM_ADX 
CODEC_ID_ADPCM_EA 
CODEC_ID_ADPCM_G726 
CODEC_ID_ADPCM_CT 
CODEC_ID_ADPCM_SWF 
CODEC_ID_ADPCM_YAMAHA 
CODEC_ID_ADPCM_SBPRO_4 
CODEC_ID_ADPCM_SBPRO_3 
CODEC_ID_ADPCM_SBPRO_2 
CODEC_ID_ADPCM_THP 
CODEC_ID_ADPCM_IMA_AMV 
CODEC_ID_ADPCM_EA_R1 
CODEC_ID_ADPCM_EA_R3 
CODEC_ID_ADPCM_EA_R2 
CODEC_ID_ADPCM_IMA_EA_SEAD 
CODEC_ID_ADPCM_IMA_EA_EACS 
CODEC_ID_ADPCM_EA_XAS 
CODEC_ID_ADPCM_EA_MAXIS_XA 
CODEC_ID_ADPCM_IMA_ISS 
CODEC_ID_ADPCM_G722 
CODEC_ID_ADPCM_IMA_APC 
CODEC_ID_AMR_NB 
CODEC_ID_AMR_WB 
CODEC_ID_RA_144 
CODEC_ID_RA_288 
CODEC_ID_ROQ_DPCM 
CODEC_ID_INTERPLAY_DPCM 
CODEC_ID_XAN_DPCM 
CODEC_ID_SOL_DPCM 
CODEC_ID_MP2 
CODEC_ID_MP3 

preferred ID for decoding MPEG audio layer 1, 2 or 3

CODEC_ID_AAC 
CODEC_ID_AC3 
CODEC_ID_DTS 
CODEC_ID_VORBIS 
CODEC_ID_DVAUDIO 
CODEC_ID_WMAV1 
CODEC_ID_WMAV2 
CODEC_ID_MACE3 
CODEC_ID_MACE6 
CODEC_ID_VMDAUDIO 
CODEC_ID_FLAC 
CODEC_ID_MP3ADU 
CODEC_ID_MP3ON4 
CODEC_ID_SHORTEN 
CODEC_ID_ALAC 
CODEC_ID_WESTWOOD_SND1 
CODEC_ID_GSM 

as in Berlin toast format

CODEC_ID_QDM2 
CODEC_ID_COOK 
CODEC_ID_TRUESPEECH 
CODEC_ID_TTA 
CODEC_ID_SMACKAUDIO 
CODEC_ID_QCELP 
CODEC_ID_WAVPACK 
CODEC_ID_DSICINAUDIO 
CODEC_ID_IMC 
CODEC_ID_MUSEPACK7 
CODEC_ID_MLP 
CODEC_ID_GSM_MS 
CODEC_ID_ATRAC3 
CODEC_ID_VOXWARE 
CODEC_ID_APE 
CODEC_ID_NELLYMOSER 
CODEC_ID_MUSEPACK8 
CODEC_ID_SPEEX 
CODEC_ID_WMAVOICE 
CODEC_ID_WMAPRO 
CODEC_ID_WMALOSSLESS 
CODEC_ID_ATRAC3P 
CODEC_ID_EAC3 
CODEC_ID_SIPR 
CODEC_ID_MP1 
CODEC_ID_TWINVQ 
CODEC_ID_TRUEHD 
CODEC_ID_MP4ALS 
CODEC_ID_ATRAC1 
CODEC_ID_BINKAUDIO_RDFT 
CODEC_ID_BINKAUDIO_DCT 
CODEC_ID_AAC_LATM 
CODEC_ID_QDMC 
CODEC_ID_CELT 
CODEC_ID_BMV_AUDIO 
CODEC_ID_G729 
CODEC_ID_G723_1 
CODEC_ID_FFWAVESYNTH 
CODEC_ID_8SVX_RAW 
CODEC_ID_FIRST_SUBTITLE 

A dummy ID pointing at the start of subtitle codecs.

CODEC_ID_DVD_SUBTITLE 
CODEC_ID_DVB_SUBTITLE 
CODEC_ID_TEXT 

raw UTF-8 text

CODEC_ID_XSUB 
CODEC_ID_SSA 
CODEC_ID_MOV_TEXT 
CODEC_ID_HDMV_PGS_SUBTITLE 
CODEC_ID_DVB_TELETEXT 
CODEC_ID_SRT 
CODEC_ID_MICRODVD 
CODEC_ID_FIRST_UNKNOWN 

A dummy ID pointing at the start of various fake codecs.

CODEC_ID_TTF 
CODEC_ID_BINTEXT 
CODEC_ID_XBIN 
CODEC_ID_IDF 
CODEC_ID_PROBE 

codec_id is not known (like CODEC_ID_NONE) but lavf should attempt to identify it

CODEC_ID_MPEG2TS 

_FAKE_ codec to indicate a raw MPEG-2 TS stream (only used by libavformat)

CODEC_ID_MPEG4SYSTEMS 

_FAKE_ codec to indicate a MPEG-4 Systems stream (only used by libavformat)

CODEC_ID_FFMETADATA 

Dummy codec for streams containing only metadata information.

Definition at line 84 of file avcodec.h.

motion estimation type.

Enumerator:
ME_ZERO 

no search, that is use 0,0 vector whenever one is needed

ME_FULL 
ME_LOG 
ME_PHODS 
ME_EPZS 

enhanced predictive zonal search

ME_X1 

reserved for experiments

ME_HEX 

hexagon based search

ME_UMH 

uneven multi-hexagon search

ME_ITER 

iterative search

ME_TESA 

transformed exhaustive search algorithm

ME_ZERO 

no search, that is use 0,0 vector whenever one is needed

ME_FULL 
ME_LOG 
ME_PHODS 
ME_EPZS 

enhanced predictive zonal search

ME_X1 

reserved for experiments

ME_HEX 

hexagon based search

ME_UMH 

uneven multi-hexagon search

ME_ITER 

iterative search

ME_TESA 

transformed exhaustive search algorithm

Definition at line 528 of file avcodec.h.


Function Documentation

int audio_resample ( ReSampleContext s,
short *  output,
short *  input,
int  nb_samples 
)

Definition at line 279 of file resample.c.

Free resample context.

Parameters:
sa non-NULL pointer to a resample context previously created with av_audio_resample_init()

Definition at line 415 of file resample.c.

ReSampleContext* av_audio_resample_init ( int  output_channels,
int  input_channels,
int  output_rate,
int  input_rate,
enum AVSampleFormat  sample_fmt_out,
enum AVSampleFormat  sample_fmt_in,
int  filter_length,
int  log2_phase_count,
int  linear,
double  cutoff 
)

Initialize audio resampling context.

Parameters:
output_channelsnumber of output channels
input_channelsnumber of input channels
output_rateoutput sample rate
input_rateinput sample rate
sample_fmt_outrequested output sample format
sample_fmt_ininput sample format
filter_lengthlength of each FIR filter in the filterbank relative to the cutoff frequency
log2_phase_countlog2 of the number of entries in the polyphase filterbank
linearif 1 then the used FIR filter will be linearly interpolated between the 2 closest, if 0 the closest will be used
cutoffcutoff frequency, 1.0 corresponds to half the output sampling rate
Returns:
allocated ReSampleContext, NULL if error occurred

Definition at line 198 of file resample.c.

int av_bitstream_filter_filter ( AVBitStreamFilterContext bsfc,
AVCodecContext avctx,
const char *  args,
uint8_t **  poutbuf,
int *  poutbuf_size,
const uint8_t *  buf,
int  buf_size,
int  keyframe 
)

Definition at line 58 of file bitstream_filter.c.

Definition at line 35 of file bitstream_filter.c.

If c is NULL, returns the first registered codec, if c is non-NULL, returns the next registered codec after c, or NULL if c is the last one.

Definition at line 105 of file utils.c.

Default packet destructor.

Definition at line 43 of file avpacket.c.

attribute_deprecated void av_destruct_packet_nofree ( AVPacket pkt)
Deprecated:
use NULL instead
Deprecated:
use NULL instead

Definition at line 27 of file avpacket.c.

int av_dup_packet ( AVPacket pkt)
Warning:
This is a hack - the packet memory allocation stuff is broken. The packet is allocated if it was not really allocated.

Definition at line 126 of file avpacket.c.

void av_fast_malloc ( void ptr,
unsigned int *  size,
size_t  min_size 
)

Allocate a buffer, reusing the given one if large enough.

Contrary to av_fast_realloc the current buffer contents might not be preserved and on error the old buffer is freed, thus no special handling to avoid memleaks is necessary.

Parameters:
ptrpointer to pointer to already allocated buffer, overwritten with pointer to new buffer
sizesize of the buffer *ptr points to
min_sizeminimum size of *ptr buffer after returning, *ptr will be NULL and *size 0 if an error occurred.

Definition at line 85 of file utils.c.

void av_fast_padded_malloc ( void ptr,
unsigned int *  size,
size_t  min_size 
)

Same behaviour av_fast_malloc but the buffer has additional FF_INPUT_PADDING_SIZE at the end which will will always be 0.

In addition the whole buffer will initially and after resizes be 0-initialized so that no uninitialized data will ever appear.

Definition at line 90 of file utils.c.

void* av_fast_realloc ( void ptr,
unsigned int *  size,
size_t  min_size 
)

Reallocate the given block if it is not large enough, otherwise do nothing.

See also:
av_realloc

Definition at line 56 of file utils.c.

Free a packet.

Parameters:
pktpacket to free

Definition at line 156 of file avpacket.c.

int av_get_bits_per_sample ( enum CodecID  codec_id)

Return codec bits per sample.

Parameters:
[in]codec_idthe codec
Returns:
Number of bits per sample or zero if unknown for the given codec.

Definition at line 1794 of file utils.c.

size_t av_get_codec_tag_string ( char *  buf,
size_t  buf_size,
unsigned int  codec_tag 
)

Put a string representing the codec tag codec_tag in buf.

Parameters:
buf_sizesize in bytes of buf
Returns:
the length of the string that would have been generated if enough space had been available, excluding the trailing null

Definition at line 1581 of file utils.c.

const char* av_get_profile_name ( const AVCodec codec,
int  profile 
)

Return a name for the specified profile, if available.

Parameters:
codecthe codec that is searched for the given profile
profilethe profile value for which a name is requested
Returns:
A name for the profile if found, NULL otherwise.

Definition at line 1690 of file utils.c.

int av_grow_packet ( AVPacket pkt,
int  grow_by 
)

Increase packet size, correctly zeroing padding.

Parameters:
pktpacket
grow_bynumber of bytes by which to increase the size of the packet

Definition at line 91 of file avpacket.c.

If hwaccel is NULL, returns the first registered hardware accelerator, if hwaccel is non-NULL, returns the next registered hardware accelerator after hwaccel, or NULL if hwaccel is the last one.

Definition at line 1911 of file utils.c.

Initialize optional fields of a packet with default values.

Parameters:
pktpacket

Definition at line 51 of file avpacket.c.

int av_lockmgr_register ( int(*)(void **mutex, enum AVLockOp op cb)

Register a user provided lock manager supporting the operations specified by AVLockOp.

mutex points to a (void *) where the lockmgr should store/get a pointer to a user allocated mutex. It's NULL upon AV_LOCK_CREATE and != NULL for all other ops.

Parameters:
cbUser defined callback. Note: FFmpeg may invoke calls to this callback during the call to av_lockmgr_register(). Thus, the application must be prepared to handle that. If cb is set to NULL the lockmgr will be unregistered. Also note that during unregistration the previously registered lockmgr callback may also be invoked.

Definition at line 1928 of file utils.c.

void av_log_ask_for_sample ( void avc,
const char *  msg,
  ... 
)

Log a generic warning message asking for a sample.

This function is intended to be used internally by FFmpeg (libavcodec, libavformat, etc.) only, and would normally not be used by applications.

Parameters:
[in]avca pointer to an arbitrary struct of which the first field is a pointer to an AVClass struct
[in]msgstring containing an optional message, or NULL if no message
void av_log_missing_feature ( void avc,
const char *  feature,
int  want_sample 
)

Log a generic warning message about a missing feature.

This function is intended to be used internally by FFmpeg (libavcodec, libavformat, etc.) only, and would normally not be used by applications.

Parameters:
[in]avca pointer to an arbitrary struct of which the first field is a pointer to an AVClass struct
[in]featurestring containing the name of the missing feature
[in]want_sampleindicates if samples are wanted which exhibit this feature. If want_sample is non-zero, additional verbage will be added to the log message which tells the user how to report samples to the development mailing list.

Definition at line 1875 of file utils.c.

int av_new_packet ( AVPacket pkt,
int  size 
)

Allocate the payload of a packet and initialize its fields with default values.

Parameters:
pktpacket
sizewanted payload size
Returns:
0 if OK, AVERROR_xxx otherwise

Definition at line 65 of file avpacket.c.

uint8_t* av_packet_get_side_data ( AVPacket pkt,
enum AVPacketSideDataType  type,
int *  size 
)

Get side information from packet.

Parameters:
pktpacket
typedesired side information type
sizepointer for side information size to store (optional)
Returns:
pointer to data if present or NULL otherwise

Definition at line 190 of file avpacket.c.

Definition at line 207 of file avpacket.c.

uint8_t* av_packet_new_side_data ( AVPacket pkt,
enum AVPacketSideDataType  type,
int  size 
)

Allocate new information of a packet.

Parameters:
pktpacket
typeside information type
sizeside information size
Returns:
pointer to fresh allocated data or NULL otherwise

Definition at line 166 of file avpacket.c.

Definition at line 241 of file avpacket.c.

int av_parser_change ( AVCodecParserContext s,
AVCodecContext avctx,
uint8_t **  poutbuf,
int *  poutbuf_size,
const uint8_t *  buf,
int  buf_size,
int  keyframe 
)
Returns:
0 if the output buffer is a subset of the input, 1 if it is allocated and must be freed
Deprecated:
use AVBitstreamFilter

Definition at line 171 of file parser.c.

Definition at line 204 of file parser.c.

Definition at line 38 of file parser.c.

Definition at line 27 of file parser.c.

int av_parser_parse2 ( AVCodecParserContext s,
AVCodecContext avctx,
uint8_t **  poutbuf,
int *  poutbuf_size,
const uint8_t *  buf,
int  buf_size,
int64_t  pts,
int64_t  dts,
int64_t  pos 
)

Parse a packet.

Parameters:
sparser context.
avctxcodec context.
poutbufset to pointer to parsed buffer or NULL if not yet finished.
poutbuf_sizeset to size of parsed buffer or zero if not yet finished.
bufinput buffer.
buf_sizeinput length, to signal EOF, this should be 0 (so that the last frame can be output).
ptsinput presentation timestamp.
dtsinput decoding timestamp.
posinput byte position in stream.
Returns:
the number of bytes of the input bitstream used.

Example:

   while(in_len){
       len = av_parser_parse2(myparser, AVCodecContext, &data, &size,
                                        in_data, in_len,
                                        pts, dts, pos);
       in_data += len;
       in_len  -= len;

       if(size)
          decode_frame(data, size);
   }

Definition at line 108 of file parser.c.

void av_picture_copy ( AVPicture dst,
const AVPicture src,
enum PixelFormat  pix_fmt,
int  width,
int  height 
)

Copy image src to dst.

Wraps av_picture_data_copy() above.

Definition at line 531 of file imgconvert.c.

int av_picture_crop ( AVPicture dst,
const AVPicture src,
enum PixelFormat  pix_fmt,
int  top_band,
int  left_band 
)

Crop image top and left side.

Definition at line 666 of file imgconvert.c.

int av_picture_pad ( AVPicture dst,
const AVPicture src,
int  height,
int  width,
enum PixelFormat  pix_fmt,
int  padtop,
int  padbottom,
int  padleft,
int  padright,
int *  color 
)

Pad image.

Definition at line 696 of file imgconvert.c.

Definition at line 32 of file parser.c.

Register the hardware accelerator hwaccel.

Definition at line 1902 of file utils.c.

int av_resample ( struct AVResampleContext c,
short *  dst,
short *  src,
int *  consumed,
int  src_size,
int  dst_size,
int  update_ctx 
)

Resample an array of samples using a previously configured context.

Parameters:
srcan array of unconsumed samples
consumedthe number of samples of src which have been consumed are returned here
src_sizethe number of unconsumed samples available
dst_sizethe amount of space in samples available in dst
update_ctxIf this is 0 then the context will not be modified, that way several channels can be resampled with the same context.
Returns:
the number of samples written in dst or -1 if an error occurred

Definition at line 234 of file resample2.c.

Definition at line 223 of file resample2.c.

void av_resample_compensate ( struct AVResampleContext c,
int  sample_delta,
int  compensation_distance 
)

Compensate samplerate/timestamp drift.

The compensation is done by changing the resampler parameters, so no audible clicks or similar distortions occur

Parameters:
compensation_distancedistance in output samples over which the compensation should be performed
sample_deltanumber of output samples which should be output less

example: av_resample_compensate(c, 10, 500) here instead of 510 samples only 500 samples would be output

note, due to rounding the actual compensation might be slightly different, especially if the compensation_distance is large and the in_rate used during init is small

Definition at line 228 of file resample2.c.

struct AVResampleContext* av_resample_init ( int  out_rate,
int  in_rate,
int  filter_length,
int  log2_phase_count,
int  linear,
double  cutoff 
) [read]

Initialize an audio resampler.

Note, if either rate is not an integer then simply scale both rates up so they are.

Parameters:
filter_lengthlength of each FIR filter in the filterbank relative to the cutoff freq
log2_phase_countlog2 of the number of entries in the polyphase filterbank
linearIf 1 then the used FIR filter will be linearly interpolated between the 2 closest, if 0 the closest will be used
cutoffcutoff frequency, 1.0 corresponds to half the output sampling rate

Definition at line 189 of file resample2.c.

void av_shrink_packet ( AVPacket pkt,
int  size 
)

Reduce packet size, correctly zeroing padding.

Parameters:
pktpacket
sizenew size

Definition at line 84 of file avpacket.c.

unsigned int av_xiphlacing ( unsigned char *  s,
unsigned int  v 
)

Encode extradata length to a buffer.

Used by xiph codecs.

Parameters:
sbuffer to write to; must be at least (v/255+1) bytes long
vsize of extradata in bytes
Returns:
number of bytes written to the buffer.

Definition at line 1855 of file utils.c.

void avcodec_align_dimensions ( AVCodecContext s,
int *  width,
int *  height 
)

Modify width and height values so that they will result in a memory buffer that is acceptable for the codec if you do not use any horizontal padding.

May only be used if a codec with CODEC_CAP_DR1 has been opened. If CODEC_FLAG_EMU_EDGE is not set, the dimensions must have been increased according to avcodec_get_edge_width() before.

Definition at line 264 of file utils.c.

void avcodec_align_dimensions2 ( AVCodecContext s,
int *  width,
int *  height,
int  linesize_align[AV_NUM_DATA_POINTERS] 
)

Modify width and height values so that they will result in a memory buffer that is acceptable for the codec if you also ensure that all line sizes are a multiple of the respective linesize_align[i].

May only be used if a codec with CODEC_CAP_DR1 has been opened. If CODEC_FLAG_EMU_EDGE is not set, the dimensions must have been increased according to avcodec_get_edge_width() before.

Definition at line 161 of file utils.c.

Allocate an AVCodecContext and set its fields to default values.

The resulting struct can be deallocated by calling avcodec_close() on it followed by av_free().

Parameters:
codecif non-NULL, allocate private data and initialize defaults for the given codec. It is illegal to then call avcodec_open2() with a different codec.
Returns:
An AVCodecContext filled with default values or NULL on failure.
See also:
avcodec_get_context_defaults

Definition at line 615 of file options.c.

Allocate an AVFrame and set its fields to default values.

The resulting struct can be deallocated by simply calling av_free().

Returns:
An AVFrame filled with default values or NULL on failure.
See also:
avcodec_get_frame_defaults

Definition at line 678 of file utils.c.

int avcodec_close ( AVCodecContext avctx)

Close a given AVCodecContext and free all the data associated with it (but not the AVCodecContext itself).

Calling this function on an AVCodecContext that hasn't been opened will free the codec-specific data allocated in avcodec_alloc_context3() / avcodec_get_context_defaults3() with a non-NULL codec. Subsequent calls will do nothing.

Definition at line 1425 of file utils.c.

const char* avcodec_configuration ( void  )

Return the libavcodec build-time configuration.

Definition at line 1715 of file utils.c.

int avcodec_copy_context ( AVCodecContext dest,
const AVCodecContext src 
)

Copy the settings of the source AVCodecContext into the destination AVCodecContext.

The resulting destination codec context will be unopened, i.e. you are required to call avcodec_open2() before you can use this AVCodecContext to decode/encode video/audio data.

Parameters:
desttarget codec context, should be initialized with avcodec_alloc_context3(), but otherwise uninitialized
srcsource codec context
Returns:
AVERROR() on error (e.g. memory allocation error), 0 on success

Definition at line 648 of file options.c.

int avcodec_decode_audio4 ( AVCodecContext avctx,
AVFrame frame,
int *  got_frame_ptr,
AVPacket avpkt 
)

Decode the audio frame of size avpkt->size from avpkt->data into frame.

Some decoders may support multiple frames in a single AVPacket. Such decoders would then just decode the first frame. In this case, avcodec_decode_audio4 has to be called again with an AVPacket containing the remaining data in order to decode the second frame, etc... Even if no frames are returned, the packet needs to be fed to the decoder with remaining data until it is completely consumed or an error occurs.

Warning:
The input buffer, avpkt->data must be FF_INPUT_BUFFER_PADDING_SIZE larger than the actual read bytes because some optimized bitstream readers read 32 or 64 bits at once and could read over the end.
Note:
You might have to align the input buffer. The alignment requirements depend on the CPU and the decoder.
Parameters:
avctxthe codec context
[out]frameThe AVFrame in which to store decoded audio samples. Decoders request a buffer of a particular size by setting AVFrame.nb_samples prior to calling get_buffer(). The decoder may, however, only utilize part of the buffer by setting AVFrame.nb_samples to a smaller value in the output frame.
[out]got_frame_ptrZero if no frame could be decoded, otherwise it is non-zero.
[in]avpktThe input AVPacket containing the input buffer. At least avpkt->data and avpkt->size should be set. Some decoders might also require additional fields to be set.
Returns:
A negative error code is returned if an error occurred during decoding, otherwise the number of bytes consumed from the input AVPacket is returned.

Definition at line 1360 of file utils.c.

int avcodec_decode_subtitle2 ( AVCodecContext avctx,
AVSubtitle sub,
int *  got_sub_ptr,
AVPacket avpkt 
)

Decode a subtitle message.

Return a negative value on error, otherwise return the number of bytes used. If no subtitle could be decompressed, got_sub_ptr is zero. Otherwise, the subtitle is stored in *sub. Note that CODEC_CAP_DR1 is not available for subtitle codecs. This is for simplicity, because the performance difference is expect to be negligible and reusing a get_buffer written for video codecs would probably perform badly due to a potentially very different allocation pattern.

Parameters:
avctxthe codec context
[out]subThe AVSubtitle in which the decoded subtitle will be stored, must be freed with avsubtitle_free if *got_sub_ptr is set.
[in,out]got_sub_ptrZero if no subtitle could be decompressed, otherwise, it is nonzero.
[in]avpktThe input AVPacket containing the input buffer.

Definition at line 1390 of file utils.c.

int avcodec_decode_video2 ( AVCodecContext avctx,
AVFrame picture,
int *  got_picture_ptr,
const AVPacket avpkt 
)

Decode the video frame of size avpkt->size from avpkt->data into picture.

Some decoders may support multiple frames in a single AVPacket, such decoders would then just decode the first frame.

Warning:
The input buffer must be FF_INPUT_BUFFER_PADDING_SIZE larger than the actual read bytes because some optimized bitstream readers read 32 or 64 bits at once and could read over the end.
The end of the input buffer buf should be set to 0 to ensure that no overreading happens for damaged MPEG streams.
Note:
You might have to align the input buffer avpkt->data. The alignment requirements depend on the CPU: on some CPUs it isn't necessary at all, on others it won't work at all if not aligned and on others it will work but it will have an impact on performance.

In practice, avpkt->data should have 4 byte alignment at minimum.

Note:
Codecs which have the CODEC_CAP_DELAY capability set have a delay between input and output, these need to be fed with avpkt->data=NULL, avpkt->size=0 at the end to return the remaining frames.
Parameters:
avctxthe codec context
[out]pictureThe AVFrame in which the decoded video frame will be stored. Use avcodec_alloc_frame to get an AVFrame, the codec will allocate memory for the actual bitmap. with default get/release_buffer(), the decoder frees/reuses the bitmap as it sees fit. with overridden get/release_buffer() (needs CODEC_CAP_DR1) the user decides into what buffer the decoder decodes and the decoder tells the user once it does not need the data anymore, the user app can at this point free/reuse/keep the memory as it sees fit.
[in]avpktThe input AVpacket containing the input buffer. You can create such packet with av_init_packet() and by then setting data and size, some decoders might in addition need other fields like flags&AV_PKT_FLAG_KEY. All decoders are designed to use the least fields possible.
[in,out]got_picture_ptrZero if no frame could be decompressed, otherwise, it is nonzero.
Returns:
On error a negative value is returned, otherwise the number of bytes used or zero if no frame could be decompressed.

Definition at line 1256 of file utils.c.

int avcodec_default_execute ( AVCodecContext c,
int(*)(AVCodecContext *c2, void *arg2)  func,
void arg,
int *  ret,
int  count,
int  size 
)

Definition at line 642 of file utils.c.

int avcodec_default_execute2 ( AVCodecContext c,
int(*)(AVCodecContext *c2, void *arg2, int, int)  func,
void arg,
int *  ret,
int  count 
)

Definition at line 1774 of file utils.c.

Definition at line 551 of file utils.c.

enum PixelFormat avcodec_default_get_format ( struct AVCodecContext s,
const enum PixelFormat fmt 
)

Definition at line 662 of file utils.c.

Definition at line 599 of file utils.c.

Definition at line 563 of file utils.c.

int avcodec_encode_audio2 ( AVCodecContext avctx,
AVPacket avpkt,
const AVFrame frame,
int *  got_packet_ptr 
)

Encode a frame of audio.

Takes input samples from frame and writes the next output packet, if available, to avpkt. The output packet does not necessarily contain data for the most recent frame, as encoders can delay, split, and combine input frames internally as needed.

Parameters:
avctxcodec context
avpktoutput AVPacket. The user can supply an output buffer by setting avpkt->data and avpkt->size prior to calling the function, but if the size of the user-provided data is not large enough, encoding will fail. All other AVPacket fields will be reset by the encoder using av_init_packet(). If avpkt->data is NULL, the encoder will allocate it. The encoder will set avpkt->size to the size of the output packet.
[in]frameAVFrame containing the raw audio data to be encoded. May be NULL when flushing an encoder that has the CODEC_CAP_DELAY capability set. There are 2 codec capabilities that affect the allowed values of frame->nb_samples. If CODEC_CAP_SMALL_LAST_FRAME is set, then only the final frame may be smaller than avctx->frame_size, and all other frames must be equal to avctx->frame_size. If CODEC_CAP_VARIABLE_FRAME_SIZE is set, then each frame can have any number of samples. If neither is set, frame->nb_samples must be equal to avctx->frame_size for all frames.
[out]got_packet_ptrThis field is set to 1 by libavcodec if the output packet is non-empty, and to 0 if it is empty. If the function returns an error, the packet can be assumed to be invalid, and the value of got_packet_ptr is undefined and should not be used.
Returns:
0 on success, negative error code on failure

Definition at line 957 of file utils.c.

int avcodec_encode_subtitle ( AVCodecContext avctx,
uint8_t *  buf,
int  buf_size,
const AVSubtitle sub 
)

Definition at line 1168 of file utils.c.

int avcodec_encode_video ( AVCodecContext avctx,
uint8_t *  buf,
int  buf_size,
const AVFrame pict 
)

Encode a video frame from pict into buf.

The input picture should be stored using a specific format, namely avctx.pix_fmt.

Parameters:
avctxthe codec context
[out]bufthe output buffer for the bitstream of encoded frame
[in]buf_sizethe size of the output buffer in bytes
[in]pictthe input picture to encode
Returns:
On error a negative value is returned, on success zero or the number of bytes used from the output buffer.

Definition at line 1149 of file utils.c.

int avcodec_fill_audio_frame ( AVFrame frame,
int  nb_channels,
enum AVSampleFormat  sample_fmt,
const uint8_t *  buf,
int  buf_size,
int  align 
)

Fill audio frame data and linesize.

AVFrame extended_data channel pointers are allocated if necessary for planar audio.

Parameters:
framethe AVFrame frame->nb_samples must be set prior to calling the function. This function fills in frame->data, frame->extended_data, frame->linesize[0].
nb_channelschannel count
sample_fmtsample format
bufbuffer to use for frame data
buf_sizesize of buffer
alignplane size sample alignment
Returns:
0 on success, negative error code on failure

Definition at line 292 of file utils.c.

enum PixelFormat avcodec_find_best_pix_fmt ( int64_t  pix_fmt_mask,
enum PixelFormat  src_pix_fmt,
int  has_alpha,
int *  loss_ptr 
)

Find the best pixel format to convert to given a certain source pixel format.

When converting from one pixel format to another, information loss may occur. For example, when converting from RGB24 to GRAY, the color information will be lost. Similarly, other losses occur when converting from some formats to other formats. avcodec_find_best_pix_fmt() searches which of the given pixel formats should be used to suffer the least amount of loss. The pixel formats from which it chooses one, are determined by the pix_fmt_mask parameter.

Note, only the first 64 pixel formats will fit in pix_fmt_mask.

 src_pix_fmt = PIX_FMT_YUV420P;
 pix_fmt_mask = (1 << PIX_FMT_YUV422P) | (1 << PIX_FMT_RGB24);
 dst_pix_fmt = avcodec_find_best_pix_fmt(pix_fmt_mask, src_pix_fmt, alpha, &loss);
Parameters:
[in]pix_fmt_maskbitmask determining which pixel format to choose from
[in]src_pix_fmtsource pixel format
[in]has_alphaWhether the source pixel format alpha channel is used.
[out]loss_ptrCombination of flags informing you what kind of losses will occur.
Returns:
The best pixel format to convert to or -1 if none was found.

Definition at line 474 of file imgconvert.c.

enum PixelFormat avcodec_find_best_pix_fmt2 ( enum PixelFormat  dst_pix_fmt1,
enum PixelFormat  dst_pix_fmt2,
enum PixelFormat  src_pix_fmt,
int  has_alpha,
int *  loss_ptr 
)

Find the best pixel format to convert to given a certain source pixel format and a selection of two destination pixel formats.

When converting from one pixel format to another, information loss may occur. For example, when converting from RGB24 to GRAY, the color information will be lost. Similarly, other losses occur when converting from some formats to other formats. avcodec_find_best_pix_fmt2() selects which of the given pixel formats should be used to suffer the least amount of loss.

If one of the destination formats is PIX_FMT_NONE the other pixel format (if valid) will be returned.

 src_pix_fmt = PIX_FMT_YUV420P;
 dst_pix_fmt1= PIX_FMT_RGB24;
 dst_pix_fmt2= PIX_FMT_GRAY8;
 dst_pix_fmt3= PIX_FMT_RGB8;
 loss= FF_LOSS_CHROMA; // don't care about chroma loss, so chroma loss will be ignored.
 dst_pix_fmt = avcodec_find_best_pix_fmt2(dst_pix_fmt1, dst_pix_fmt2, src_pix_fmt, alpha, &loss);
 dst_pix_fmt = avcodec_find_best_pix_fmt2(dst_pix_fmt, dst_pix_fmt3, src_pix_fmt, alpha, &loss);
Parameters:
[in]dst_pix_fmt1One of the two destination pixel formats to choose from
[in]dst_pix_fmt2The other of the two destination pixel formats to choose from
[in]src_pix_fmtSource pixel format
[in]has_alphaWhether the source pixel format alpha channel is used.
[in,out]loss_ptrCombination of loss flags. In: selects which of the losses to ignore, i.e. NULL or value of zero means we care about all losses. Out: the loss that occurs when converting from src to selected dst pixel format.
Returns:
The best pixel format to convert to or -1 if none was found.

Definition at line 491 of file imgconvert.c.

Find a registered decoder with a matching codec ID.

Parameters:
idCodecID of the requested decoder
Returns:
A decoder if one was found, NULL otherwise.

Definition at line 1508 of file utils.c.

AVCodec* avcodec_find_decoder_by_name ( const char *  name)

Find a registered decoder with the specified name.

Parameters:
namename of the requested decoder
Returns:
A decoder if one was found, NULL otherwise.

Definition at line 1525 of file utils.c.

Find a registered encoder with a matching codec ID.

Parameters:
idCodecID of the requested encoder
Returns:
An encoder if one was found, NULL otherwise.

Definition at line 1477 of file utils.c.

AVCodec* avcodec_find_encoder_by_name ( const char *  name)

Find a registered encoder with the specified name.

Parameters:
namename of the requested encoder
Returns:
An encoder if one was found, NULL otherwise.

Definition at line 1494 of file utils.c.

Flush buffers, should be called when seeking or when switching to a different stream.

Definition at line 1726 of file utils.c.

void avcodec_get_chroma_sub_sample ( enum PixelFormat  pix_fmt,
int *  h_shift,
int *  v_shift 
)

Definition at line 286 of file imgconvert.c.

Get the AVClass for AVCodecContext.

It can be used in combination with AV_OPT_SEARCH_FAKE_OBJ for examining options.

See also:
av_opt_find().

Definition at line 705 of file options.c.

Set the fields of the given AVCodecContext to default values corresponding to the given codec (defaults may be codec-dependent).

Do not call this function if a non-NULL codec has been passed to avcodec_alloc_context3() that allocated this AVCodecContext. If codec is non-NULL, it is illegal to call avcodec_open2() with a different codec on this AVCodecContext.

Definition at line 563 of file options.c.

unsigned avcodec_get_edge_width ( void  )

Return the amount of padding in pixels which the get_buffer callback must provide around the edge of the image for codecs which do not have the CODEC_FLAG_EMU_EDGE flag.

Returns:
Required padding in pixels.

Definition at line 147 of file utils.c.

Get the AVClass for AVFrame.

It can be used in combination with AV_OPT_SEARCH_FAKE_OBJ for examining options.

See also:
av_opt_find().

Definition at line 729 of file options.c.

Set the fields of the given AVFrame to default values.

Parameters:
picThe AVFrame of which the fields should be set to default values.

Definition at line 668 of file utils.c.

const char* avcodec_get_name ( enum CodecID  id)

Get the name of a codec.

Returns:
a static string identifying the codec; never NULL

Definition at line 1562 of file utils.c.

int avcodec_get_pix_fmt_loss ( enum PixelFormat  dst_pix_fmt,
enum PixelFormat  src_pix_fmt,
int  has_alpha 
)

Compute what kind of losses will occur when converting from one specific pixel format to another.

When converting from one pixel format to another, information loss may occur. For example, when converting from RGB24 to GRAY, the color information will be lost. Similarly, other losses occur when converting from some formats to other formats. These losses can involve loss of chroma, but also loss of resolution, loss of color depth, loss due to the color space conversion, loss of the alpha bits or loss due to color quantization. avcodec_get_fix_fmt_loss() informs you about the various types of losses which will occur when converting from one pixel format to another.

Parameters:
[in]dst_pix_fmtdestination pixel format
[in]src_pix_fmtsource pixel format
[in]has_alphaWhether the source pixel format alpha channel is used.
Returns:
Combination of flags informing you what kind of losses will occur (maximum loss for an invalid dst_pix_fmt).

Definition at line 396 of file imgconvert.c.

enum AVMediaType avcodec_get_type ( enum CodecID  codec_id)

Get the type of the given codec.

Definition at line 2012 of file utils.c.

Returns:
a positive value if s is open (i.e. avcodec_open2() was called on it with no corresponding avcodec_close()), 0 otherwise.

Definition at line 2032 of file utils.c.

const char* avcodec_license ( void  )

Return the libavcodec license.

Definition at line 1720 of file utils.c.

int avcodec_open2 ( AVCodecContext avctx,
AVCodec codec,
AVDictionary **  options 
)

Initialize the AVCodecContext to use the given AVCodec.

Prior to using this function the context has to be allocated with avcodec_alloc_context3().

The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(), avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for retrieving a codec.

Warning:
This function is not thread safe!
 avcodec_register_all();
 av_dict_set(&opts, "b", "2.5M", 0);
 codec = avcodec_find_decoder(CODEC_ID_H264);
 if (!codec)
     exit(1);

 context = avcodec_alloc_context3(codec);

 if (avcodec_open2(context, codec, opts) < 0)
     exit(1);
Parameters:
avctxThe context to initialize.
codecThe codec to open this context for. If a non-NULL codec has been previously passed to avcodec_alloc_context3() or avcodec_get_context_defaults3() for this context, then this parameter MUST be either NULL or equal to the previously passed codec.
optionsA dictionary filled with AVCodecContext and codec-private options. On return this object will be filled with options that were not found.
Returns:
zero on success, a negative value on error
See also:
avcodec_alloc_context3(), avcodec_find_decoder(), avcodec_find_encoder(), av_dict_set(), av_opt_find().

Definition at line 701 of file utils.c.

unsigned int avcodec_pix_fmt_to_codec_tag ( enum PixelFormat  pix_fmt)

Return a value representing the fourCC code associated to the pixel format pix_fmt, or 0 if no associated fourCC code can be found.

Definition at line 151 of file raw.c.

Register the codec codec and initialize libavcodec.

Warning:
either this function or avcodec_register_all() must be called before any other libavcodec functions.
See also:
avcodec_register_all()

Definition at line 134 of file utils.c.

Register all the codecs, parsers and bitstream filters which were enabled at configuration time.

If you do not call this function you can select exactly which formats you want to support, by using the individual registration functions.

See also:
avcodec_register
av_register_codec_parser
av_register_bitstream_filter

Definition at line 48 of file allcodecs.c.

void avcodec_set_dimensions ( AVCodecContext s,
int  width,
int  height 
)

Definition at line 152 of file utils.c.

void avcodec_string ( char *  buf,
int  buf_size,
AVCodecContext enc,
int  encode 
)

Definition at line 1596 of file utils.c.

unsigned avcodec_version ( void  )

Return the LIBAVCODEC_VERSION_INT constant.

Definition at line 1703 of file utils.c.

int avpicture_alloc ( AVPicture picture,
enum PixelFormat  pix_fmt,
int  width,
int  height 
)

Allocate memory for a picture.

Call avpicture_free() to free it.

See also:
avpicture_fill()
Parameters:
picturethe picture to be filled in
pix_fmtthe format of the picture
widththe width of the picture
heightthe height of the picture
Returns:
zero if successful, a negative value if not

Definition at line 625 of file imgconvert.c.

int avpicture_deinterlace ( AVPicture dst,
const AVPicture src,
enum PixelFormat  pix_fmt,
int  width,
int  height 
)

Definition at line 913 of file imgconvert.c.

int avpicture_fill ( AVPicture picture,
uint8_t *  ptr,
enum PixelFormat  pix_fmt,
int  width,
int  height 
)

Fill in the AVPicture fields.

The fields of the given AVPicture are filled in by using the 'ptr' address which points to the image data buffer. Depending on the specified picture format, one or multiple image data pointers and line sizes will be set. If a planar format is specified, several pointers will be set pointing to the different picture planes and the line sizes of the different planes will be stored in the lines_sizes array. Call with ptr == NULL to get the required size for the ptr buffer.

To allocate the buffer and fill in the AVPicture fields in one call, use avpicture_alloc().

Parameters:
pictureAVPicture whose fields are to be filled in
ptrBuffer which will contain or contains the actual image data
pix_fmtThe format in which the picture data is stored.
widththe width of the image in pixels
heightthe height of the image in pixels
Returns:
size of the image data in bytes

Definition at line 304 of file imgconvert.c.

void avpicture_free ( AVPicture picture)

Free a picture previously allocated by avpicture_alloc().

The data buffer used by the AVPicture is freed, but the AVPicture structure itself is not.

Parameters:
picturethe AVPicture to be freed

Definition at line 638 of file imgconvert.c.

int avpicture_get_size ( enum PixelFormat  pix_fmt,
int  width,
int  height 
)

Calculate the size in bytes that a picture of the given width and height would occupy if stored in the given picture format.

Note that this returns the size of a compact representation as generated by avpicture_layout(), which can be smaller than the size required for e.g. avpicture_fill().

Parameters:
pix_fmtthe given picture format
widththe width of the image
heightthe height of the image
Returns:
Image data size in bytes or -1 on error (e.g. too large dimensions).

Definition at line 361 of file imgconvert.c.

int avpicture_layout ( const AVPicture src,
enum PixelFormat  pix_fmt,
int  width,
int  height,
unsigned char *  dest,
int  dest_size 
)

Copy pixel data from an AVPicture into a buffer.

The data is stored compactly, without any gaps for alignment or padding which may be applied by avpicture_fill().

See also:
avpicture_get_size()
Parameters:
[in]srcAVPicture containing image data
[in]pix_fmtThe format in which the picture data is stored.
[in]widththe width of the image in pixels.
[in]heightthe height of the image in pixels.
[out]destA buffer into which picture data will be copied.
[in]dest_sizeThe size of 'dest'.
Returns:
The number of bytes written to dest, or a negative value (error code) on error.

Definition at line 318 of file imgconvert.c.

Free all allocated data in the given subtitle struct.

Parameters:
subAVSubtitle to free.

Definition at line 1405 of file utils.c.