Mercurial > libavformat.hg
comparison mov.c @ 5586:fc7b009926b5 libavformat
Force codec_tag I420 for Quicktime Planar Y'CbCr 8-bit 4:2:0 raw codec,
because YV12 triggers an UV swap in rawdec.c, fixes issue 1687.
author | cehoyos |
---|---|
date | Sun, 24 Jan 2010 21:37:35 +0000 |
parents | 9baa7b82a840 |
children | 27fd77f20a89 |
comparison
equal
deleted
inserted
replaced
5585:333f55aab3a2 | 5586:fc7b009926b5 |
---|---|
937 for (i = 0; i < codec_name[0] && pos < sizeof(st->codec->codec_name) - 3; i++) { | 937 for (i = 0; i < codec_name[0] && pos < sizeof(st->codec->codec_name) - 3; i++) { |
938 uint8_t tmp; | 938 uint8_t tmp; |
939 PUT_UTF8(codec_name[i+1], tmp, st->codec->codec_name[pos++] = tmp;) | 939 PUT_UTF8(codec_name[i+1], tmp, st->codec->codec_name[pos++] = tmp;) |
940 } | 940 } |
941 st->codec->codec_name[pos] = 0; | 941 st->codec->codec_name[pos] = 0; |
942 /* codec_tag YV12 triggers an UV swap in rawdec.c */ | |
943 if (!memcmp(st->codec->codec_name, "Planar Y'CbCr 8-bit 4:2:0", 25)) | |
944 st->codec->codec_tag=MKTAG('I', '4', '2', '0'); | |
942 } | 945 } |
943 | 946 |
944 st->codec->bits_per_coded_sample = get_be16(pb); /* depth */ | 947 st->codec->bits_per_coded_sample = get_be16(pb); /* depth */ |
945 st->codec->color_table_id = get_be16(pb); /* colortable id */ | 948 st->codec->color_table_id = get_be16(pb); /* colortable id */ |
946 dprintf(c->fc, "depth %d, ctab id %d\n", | 949 dprintf(c->fc, "depth %d, ctab id %d\n", |