[FFmpeg-cvslog] r21210 - trunk/libavformat/mov.c

bcoudurier subversion
Thu Jan 14 01:32:36 CET 2010


Author: bcoudurier
Date: Thu Jan 14 01:32:36 2010
New Revision: 21210

Log:
set stream aspect from mov tkhd width/height, patch by Andrew Wason, rectalogic at rectalogic dot com

Modified:
   trunk/libavformat/mov.c

Modified: trunk/libavformat/mov.c
==============================================================================
--- trunk/libavformat/mov.c	Thu Jan 14 00:33:29 2010	(r21209)
+++ trunk/libavformat/mov.c	Thu Jan 14 01:32:36 2010	(r21210)
@@ -925,6 +925,16 @@ 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 */



More information about the ffmpeg-cvslog mailing list