From ee598f7ba44177deb8e718a5092cb0996edecec6 Mon Sep 17 00:00:00 2001 From: Loren Merritt Date: Fri, 17 Sep 2004 10:57:57 +0000 Subject: (non)interlaced huffyuv patch by (Loren Merritt ) Originally committed as revision 3473 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/huffyuv.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'libavcodec/huffyuv.c') diff --git a/libavcodec/huffyuv.c b/libavcodec/huffyuv.c index ca00585ad2..ac260f6a1e 100644 --- a/libavcodec/huffyuv.c +++ b/libavcodec/huffyuv.c @@ -409,7 +409,10 @@ s->bgr32=1; return -1; } - s->interlaced= height > 288; + if(((uint8_t*)avctx->extradata)[2] & 0x20) + s->interlaced= ((uint8_t*)avctx->extradata)[2] & 0x10 ? 1 : 0; + else + s->interlaced= height > 288; switch(s->bitstream_bpp){ case 12: @@ -497,10 +500,11 @@ static int encode_init(AVCodecContext *avctx) avctx->bits_per_sample= s->bitstream_bpp; s->decorrelate= s->bitstream_bpp >= 24; s->predictor= avctx->prediction_method; + s->interlaced= avctx->flags&CODEC_FLAG_INTERLACED_ME ? 1 : 0; ((uint8_t*)avctx->extradata)[0]= s->predictor; ((uint8_t*)avctx->extradata)[1]= s->bitstream_bpp; - ((uint8_t*)avctx->extradata)[2]= + ((uint8_t*)avctx->extradata)[2]= 0x20 | (s->interlaced ? 0x10 : 0); ((uint8_t*)avctx->extradata)[3]= 0; s->avctx->extradata_size= 4; @@ -546,8 +550,6 @@ static int encode_init(AVCodecContext *avctx) for(j=0; j<256; j++) s->stats[i][j]= 0; - s->interlaced= height > 288; - // printf("pred:%d bpp:%d hbpp:%d il:%d\n", s->predictor, s->bitstream_bpp, avctx->bits_per_sample, s->interlaced); s->picture_number=0; -- cgit v1.2.3