From: michael Date: Tue, 5 May 2009 19:53:49 +0000 (+0000) Subject: Extract colorspace fields from MPEG1/2. X-Git-Url: http://rtime.felk.cvut.cz/gitweb/frescor/ffmpeg.git/commitdiff_plain/7de8c44f3f836069c0e03b39676e6792a70fcd54 Extract colorspace fields from MPEG1/2. git-svn-id: file:///var/local/repositories/ffmpeg/trunk@18747 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b --- diff --git a/libavcodec/mpeg12.c b/libavcodec/mpeg12.c index 019dc8108..e6e4ddcfc 100644 --- a/libavcodec/mpeg12.c +++ b/libavcodec/mpeg12.c @@ -1188,6 +1188,7 @@ static av_cold int mpeg_decode_init(AVCodecContext *avctx) s->mpeg_enc_ctx.picture_number = 0; s->repeat_field = 0; s->mpeg_enc_ctx.codec_id= avctx->codec->id; + avctx->color_range= AVCOL_RANGE_MPEG; return 0; } @@ -1420,9 +1421,9 @@ static void mpeg_decode_sequence_display_extension(Mpeg1Context *s1) skip_bits(&s->gb, 3); /* video format */ color_description= get_bits1(&s->gb); if(color_description){ - skip_bits(&s->gb, 8); /* color primaries */ - skip_bits(&s->gb, 8); /* transfer_characteristics */ - skip_bits(&s->gb, 8); /* matrix_coefficients */ + s->avctx->color_primaries= get_bits(&s->gb, 8); + s->avctx->color_trc = get_bits(&s->gb, 8); + s->avctx->colorspace = get_bits(&s->gb, 8); } w= get_bits(&s->gb, 14); skip_bits(&s->gb, 1); //marker