diff options
author | Mike Melanson <mike@multimedia.cx> | 2005-05-06 04:19:17 +0000 |
---|---|---|
committer | Mike Melanson <mike@multimedia.cx> | 2005-05-06 04:19:17 +0000 |
commit | fd42eb6dec2d911a8480d7b30625b27aeb34ce6c (patch) | |
tree | d72cd780ca54c7816180c2bd717ed86444b4fcd9 /src/libffmpeg/libavcodec/avcodec.h | |
parent | 20f83e09f4e2588b5564be12967c56717a937716 (diff) | |
download | xine-lib-fd42eb6dec2d911a8480d7b30625b27aeb34ce6c.tar.gz xine-lib-fd42eb6dec2d911a8480d7b30625b27aeb34ce6c.tar.bz2 |
syncing to FFmpeg libavcodec build 4754
CVS patchset: 7522
CVS date: 2005/05/06 04:19:17
Diffstat (limited to 'src/libffmpeg/libavcodec/avcodec.h')
-rw-r--r-- | src/libffmpeg/libavcodec/avcodec.h | 36 |
1 files changed, 17 insertions, 19 deletions
diff --git a/src/libffmpeg/libavcodec/avcodec.h b/src/libffmpeg/libavcodec/avcodec.h index 064f58df2..4de1dd573 100644 --- a/src/libffmpeg/libavcodec/avcodec.h +++ b/src/libffmpeg/libavcodec/avcodec.h @@ -17,7 +17,7 @@ extern "C" { #define FFMPEG_VERSION_INT 0x000409 #define FFMPEG_VERSION "0.4.9-pre1" -#define LIBAVCODEC_BUILD 4752 +#define LIBAVCODEC_BUILD 4754 #define LIBAVCODEC_VERSION_INT FFMPEG_VERSION_INT #define LIBAVCODEC_VERSION FFMPEG_VERSION @@ -28,6 +28,7 @@ extern "C" { #define AV_NOPTS_VALUE int64_t_C(0x8000000000000000) #define AV_TIME_BASE 1000000 +#define AV_TIME_BASE_Q (AVRational){1, AV_TIME_BASE} /* FIXME: We cannot use ffmpeg's XvMC capabilities, since that would require * linking the ffmpeg plugin against XvMC libraries, which is a bad thing, @@ -114,6 +115,7 @@ enum CodecID { CODEC_ID_LOCO, CODEC_ID_WNV1, CODEC_ID_AASC, + CODEC_ID_INDEO2, /* various pcm "codecs" */ CODEC_ID_PCM_S16LE= 0x10000, @@ -212,6 +214,7 @@ enum CodecType { * to run on the IBM VGA graphics adapter use 6-bit palette components. */ enum PixelFormat { + PIX_FMT_NONE= -1, PIX_FMT_YUV420P, ///< Planar YUV 4:2:0 (1 Cr & Cb sample per 2x2 Y samples) PIX_FMT_YUV422, ///< Packed pixel, Y0 Cb Y1 Cr PIX_FMT_RGB24, ///< Packed pixel, 3 bytes per pixel, RGBRGB... @@ -447,8 +450,8 @@ typedef struct AVPanScan{ int pict_type;\ \ /**\ - * presentation timestamp in AV_TIME_BASE (=micro seconds currently) (time when frame should be shown to user)\ - * if AV_NOPTS_VALUE then the frame_rate will be used as reference\ + * presentation timestamp in time_base units (time when frame should be shown to user)\ + * if AV_NOPTS_VALUE then frame_rate = 1/time_base will be assumed\ * - encoding: MUST be set by user\ * - decoding: set by lavc\ */\ @@ -726,13 +729,11 @@ typedef struct AVCodecContext { /* video only */ /** - * frames per sec multiplied by frame_rate_base. - * for variable fps this is the precission, so if the timestamps - * can be specified in msec precssion then this is 1000*frame_rate_base + * time base in which the timestamps are specified. * - encoding: MUST be set by user - * - decoding: set by lavc. 0 or the frame_rate if available + * - decoding: set by lavc. */ - int frame_rate; + AVRational time_base; /** * picture width / height. @@ -1426,15 +1427,6 @@ typedef struct AVCodecContext { int me_range; /** - * frame_rate_base. - * for variable fps this is 1 - * - encoding: set by user. - * - decoding: set by lavc. - * @todo move this after frame_rate - */ - - int frame_rate_base; - /** * intra quantizer bias. * - encoding: set by user. * - decoding: unused @@ -1697,14 +1689,14 @@ typedef struct AVCodecContext { int nsse_weight; /** - * number of macroblock rows at the top which are skiped. + * number of macroblock rows at the top which are skipped. * - encoding: unused * - decoding: set by user */ int skip_top; /** - * number of macroblock rows at the bottom which are skiped. + * number of macroblock rows at the bottom which are skipped. * - encoding: unused * - decoding: set by user */ @@ -2026,6 +2018,7 @@ extern AVCodec wnv1_decoder; extern AVCodec aasc_decoder; extern AVCodec alac_decoder; extern AVCodec ws_snd1_decoder; +extern AVCodec indeo2_decoder; /* pcm codecs */ #define PCM_CODEC(id, name) \ @@ -2248,6 +2241,11 @@ int64_t av_rescale(int64_t a, int64_t b, int64_t c); */ int64_t av_rescale_rnd(int64_t a, int64_t b, int64_t c, enum AVRounding); +/** + * rescale a 64bit integer by 2 rational numbers. + */ +int64_t av_rescale_q(int64_t a, AVRational bq, AVRational cq); + /* frame parsing */ typedef struct AVCodecParserContext { void *priv_data; |