[FFmpeg-cvslog] r21301 - trunk/libavformat/mov.c
bcoudurier
subversion
Mon Jan 18 22:38:39 CET 2010
Author: bcoudurier
Date: Mon Jan 18 22:38:39 2010
New Revision: 21301
Log:
move aspect ratio code at the end of the track parsing, fix cathedral-beta2-400extra-crop-avc.mp4
Modified:
trunk/libavformat/mov.c
Modified: trunk/libavformat/mov.c
==============================================================================
--- trunk/libavformat/mov.c Mon Jan 18 22:32:57 2010 (r21300)
+++ trunk/libavformat/mov.c Mon Jan 18 22:38:39 2010 (r21301)
@@ -925,16 +925,6 @@ static int mov_read_stsd(MOVContext *c,
st->codec->width = get_be16(pb); /* width */
st->codec->height = get_be16(pb); /* height */
- if (st->codec->width != sc->width || st->codec->height != sc->height) {
- AVRational r = av_d2q(
- ((double)st->codec->height * sc->width) /
- ((double)st->codec->width * sc->height), INT_MAX);
- if (st->sample_aspect_ratio.num)
- st->sample_aspect_ratio = av_mul_q(st->sample_aspect_ratio, r);
- else
- st->sample_aspect_ratio = r;
- }
-
get_be32(pb); /* horiz resolution */
get_be32(pb); /* vert resolution */
get_be32(pb); /* data size, always 0 */
@@ -1662,6 +1652,16 @@ static int mov_read_trak(MOVContext *c,
} else
sc->pb = c->fc->pb;
+ if (st->codec->codec_type == CODEC_TYPE_VIDEO &&
+ (st->codec->width != sc->width || st->codec->height != sc->height)) {
+ AVRational r = av_d2q(((double)st->codec->height * sc->width) /
+ ((double)st->codec->width * sc->height), INT_MAX);
+ if (st->sample_aspect_ratio.num)
+ st->sample_aspect_ratio = av_mul_q(st->sample_aspect_ratio, r);
+ else
+ st->sample_aspect_ratio = r;
+ }
+
switch (st->codec->codec_id) {
#if CONFIG_H261_DECODER
case CODEC_ID_H261:
More information about the ffmpeg-cvslog
mailing list