From 3fd6b3368ad0cd12741ff327c5af6f3086a5de42 Mon Sep 17 00:00:00 2001 From: Thorsten Jordan Date: Thu, 24 Apr 2008 12:39:25 +0000 Subject: [PATCH] Set pixel aspect ratio for libxvid wrapper. Patch by Thorsten Jordan tjordanATmacrosystem de Originally committed as revision 12936 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/libxvidff.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/libavcodec/libxvidff.c b/libavcodec/libxvidff.c index 492f0a8412..acac29b7dd 100644 --- a/libavcodec/libxvidff.c +++ b/libavcodec/libxvidff.c @@ -406,6 +406,17 @@ int ff_xvid_encode_frame(AVCodecContext *avctx, xvid_enc_frame.motion = x->me_flags; xvid_enc_frame.type = XVID_TYPE_AUTO; + /* Pixel aspect ratio setting */ + if (avctx->sample_aspect_ratio.num < 1 || avctx->sample_aspect_ratio.num > 255 || + avctx->sample_aspect_ratio.den < 1 || avctx->sample_aspect_ratio.den > 255) { + av_log(avctx, AV_LOG_ERROR, "Invalid pixel aspect ratio %i/%i\n", + avctx->sample_aspect_ratio.num, avctx->sample_aspect_ratio.den); + return -1; + } + xvid_enc_frame.par = XVID_PAR_EXT; + xvid_enc_frame.par_width = avctx->sample_aspect_ratio.num; + xvid_enc_frame.par_height = avctx->sample_aspect_ratio.den; + /* Quant Setting */ if( x->qscale ) xvid_enc_frame.quant = picture->quality / FF_QP2LAMBDA; else xvid_enc_frame.quant = 0; -- GitLab