summaryrefslogtreecommitdiff
path: root/libavformat/mov.c
diff options
context:
space:
mode:
authorCarl Eugen Hoyos <cehoyos@ag.or.at>2013-01-01 00:38:01 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-01-01 00:44:44 +0100
commit67abe21c0bdc6fa234ce359f398c77506602f986 (patch)
tree5a7f0f668d32f602d7ad82ba798795af91a3473b /libavformat/mov.c
parent6e8df250fd98e6eae9c47d2c4eca7299a888a70c (diff)
mov: fix handling of odd sized yv12
Part 1 of 2 to fix Ticket339 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/mov.c')
-rw-r--r--libavformat/mov.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c
index a7f64940aa..ee862e5ca9 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -1298,8 +1298,11 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
if (len < 31)
avio_skip(pb, 31 - len);
/* codec_tag YV12 triggers an UV swap in rawdec.c */
- if (!memcmp(st->codec->codec_name, "Planar Y'CbCr 8-bit 4:2:0", 25))
+ if (!memcmp(st->codec->codec_name, "Planar Y'CbCr 8-bit 4:2:0", 25)){
st->codec->codec_tag=MKTAG('I', '4', '2', '0');
+ st->codec->width &= ~1;
+ st->codec->height &= ~1;
+ }
/* Flash Media Server uses tag H263 with Sorenson Spark */
if (format == MKTAG('H','2','6','3') &&
!memcmp(st->codec->codec_name, "Sorenson H263", 13))