Originally committed as revision 389 to svn://svn.ffmpeg.org/ffmpeg/trunktags/v0.5
@@ -39,6 +39,7 @@ enum CodecType { | |||||
}; | }; | ||||
enum PixelFormat { | enum PixelFormat { | ||||
PIX_FMT_ANY, | |||||
PIX_FMT_YUV420P, | PIX_FMT_YUV420P, | ||||
PIX_FMT_YUV422, | PIX_FMT_YUV422, | ||||
PIX_FMT_RGB24, | PIX_FMT_RGB24, | ||||
@@ -98,7 +99,7 @@ typedef struct AVCodecContext { | |||||
#define FF_ASPECT_16_9_625 4 | #define FF_ASPECT_16_9_625 4 | ||||
#define FF_ASPECT_16_9_525 5 | #define FF_ASPECT_16_9_525 5 | ||||
int gop_size; /* 0 = intra only */ | int gop_size; /* 0 = intra only */ | ||||
int pix_fmt; /* pixel format, see PIX_FMT_xxx */ | |||||
enum PixelFormat pix_fmt; /* pixel format, see PIX_FMT_xxx */ | |||||
/* if non NULL, 'draw_horiz_band' is called by the libavcodec | /* if non NULL, 'draw_horiz_band' is called by the libavcodec | ||||
decoder to draw an horizontal band. It improve cache usage. Not | decoder to draw an horizontal band. It improve cache usage. Not | ||||
@@ -361,6 +361,8 @@ int img_convert(AVPicture *dst, int dst_pix_fmt, | |||||
{ | { | ||||
int i; | int i; | ||||
assert(pix_fmt != PIX_FMT_ANY && dst_pix_fmt != PIX_FMT_ANY); | |||||
if (dst_pix_fmt == pix_fmt) { | if (dst_pix_fmt == pix_fmt) { | ||||
switch(pix_fmt) { | switch(pix_fmt) { | ||||
case PIX_FMT_YUV420P: | case PIX_FMT_YUV420P: | ||||
@@ -286,6 +286,8 @@ int MPV_encode_init(AVCodecContext *avctx) | |||||
MpegEncContext *s = avctx->priv_data; | MpegEncContext *s = avctx->priv_data; | ||||
int i; | int i; | ||||
avctx->pix_fmt = PIX_FMT_YUV420P; | |||||
s->bit_rate = avctx->bit_rate; | s->bit_rate = avctx->bit_rate; | ||||
s->bit_rate_tolerance = avctx->bit_rate_tolerance; | s->bit_rate_tolerance = avctx->bit_rate_tolerance; | ||||
s->frame_rate = avctx->frame_rate; | s->frame_rate = avctx->frame_rate; | ||||
@@ -205,6 +205,7 @@ AVCodec *avcodec_find(enum CodecID id) | |||||
} | } | ||||
const char *pix_fmt_str[] = { | const char *pix_fmt_str[] = { | ||||
"??", | |||||
"yuv420p", | "yuv420p", | ||||
"yuv422", | "yuv422", | ||||
"rgb24", | "rgb24", | ||||
@@ -259,6 +260,9 @@ void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode) | |||||
enc->width, enc->height, | enc->width, enc->height, | ||||
(float)enc->frame_rate / FRAME_RATE_BASE); | (float)enc->frame_rate / FRAME_RATE_BASE); | ||||
} | } | ||||
snprintf(buf + strlen(buf), buf_size - strlen(buf), | |||||
", q=%d-%d", enc->qmin, enc->qmax); | |||||
bitrate = enc->bit_rate; | bitrate = enc->bit_rate; | ||||
break; | break; | ||||
case CODEC_TYPE_AUDIO: | case CODEC_TYPE_AUDIO: | ||||