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",