From 8eb1915395eb8f88d67a6d70a23eaeea35e0969a Mon Sep 17 00:00:00 2001 From: David Conrad Date: Wed, 5 Sep 2007 00:25:07 +0000 Subject: [PATCH] Calculate and store DAR rather than SAR Originally committed as revision 10361 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavformat/matroskaenc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 93b62f8d8b..294f98f257 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -552,8 +552,9 @@ static int mkv_write_tracks(AVFormatContext *s) put_ebml_uint (pb, MATROSKA_ID_VIDEOPIXELWIDTH , codec->width); put_ebml_uint (pb, MATROSKA_ID_VIDEOPIXELHEIGHT, codec->height); if (codec->sample_aspect_ratio.num) { - put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYWIDTH , codec->sample_aspect_ratio.num); - put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYHEIGHT, codec->sample_aspect_ratio.den); + AVRational dar = av_mul_q(codec->sample_aspect_ratio, (AVRational){codec->width, codec->height}); + put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYWIDTH , dar.num); + put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYHEIGHT, dar.den); } end_ebml_master(pb, subinfo); break;