From 525fcb2798bf61d7850a56e9d92412a798c66b9a Mon Sep 17 00:00:00 2001
From: Andrew Wason <rectalogic@rectalogic.com>
Date: Thu, 1 Jul 2010 23:18:27 +0000
Subject: In mov demuxer, only set sar if not already set, patch by Andrew
 Wason, rectalogic at rectalogic dot com Fixes issue #1754

Originally committed as revision 23948 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavformat/mov.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

(limited to 'libavformat')

diff --git a/libavformat/mov.c b/libavformat/mov.c
index 4921e55c82..b6feb68f82 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -1802,13 +1802,10 @@ static int mov_read_trak(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
         sc->pb = c->fc->pb;
 
     if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO) {
-        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;
+        if (!st->sample_aspect_ratio.num &&
+            (st->codec->width != sc->width || st->codec->height != sc->height)) {
+            st->sample_aspect_ratio = av_d2q(((double)st->codec->height * sc->width) /
+                                             ((double)st->codec->width * sc->height), INT_MAX);
         }
 
         av_reduce(&st->avg_frame_rate.num, &st->avg_frame_rate.den,
-- 
cgit v1.2.3