Mercurial > libavformat.hg
diff matroskaenc.c @ 3759:27537074f2a9 libavformat
convert every muxer/demuxer to write/read sample_aspect_ratio from/to
the corresponding AVStream instead of AVCodecContext
author | aurel |
---|---|
date | Sat, 23 Aug 2008 23:43:20 +0000 |
parents | e8f67b6063c3 |
children | f062deeedb8d |
line wrap: on
line diff
--- a/matroskaenc.c Sat Aug 23 23:13:58 2008 +0000 +++ b/matroskaenc.c Sat Aug 23 23:43:20 2008 +0000 @@ -593,11 +593,10 @@ // XXX: interlace flag? put_ebml_uint (pb, MATROSKA_ID_VIDEOPIXELWIDTH , codec->width); put_ebml_uint (pb, MATROSKA_ID_VIDEOPIXELHEIGHT, codec->height); - if (codec->sample_aspect_ratio.num) { - 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); + if (st->sample_aspect_ratio.num) { + int d_width = codec->width*av_q2d(st->sample_aspect_ratio); + put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYWIDTH , d_width); + put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYHEIGHT, codec->height); } end_ebml_master(pb, subinfo); break;