summaryrefslogtreecommitdiff
path: root/libavformat/mov.c
diff options
context:
space:
mode:
authorAndrew Wason <rectalogic@rectalogic.com>2010-07-01 23:18:27 +0000
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>2010-07-01 23:18:27 +0000
commit525fcb2798bf61d7850a56e9d92412a798c66b9a (patch)
tree5cd2a1d0d675af49855381038b09304f55717252 /libavformat/mov.c
parent7d6096e42e2ee0794cc8eaeb27eba164ba0782a2 (diff)
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
Diffstat (limited to 'libavformat/mov.c')
-rw-r--r--libavformat/mov.c11
1 files changed, 4 insertions, 7 deletions
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,