lavd/xv: take aspect ratio into account.

(cherry picked from commit c37bbe54f4)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Nicolas George
2013-11-25 17:26:07 +01:00
committed by Michael Niedermayer
parent dcf560204c
commit 99905118a8

View File

@@ -130,8 +130,15 @@ static int xv_write_header(AVFormatContext *s)
xv->image_width = encctx->width;
xv->image_height = encctx->height;
if (!xv->window_width && !xv->window_height) {
AVRational sar = encctx->sample_aspect_ratio;
xv->window_width = encctx->width;
xv->window_height = encctx->height;
if (sar.num) {
if (sar.num > sar.den)
xv->window_width = av_rescale(xv->window_width, sar.num, sar.den);
if (sar.num < sar.den)
xv->window_height = av_rescale(xv->window_height, sar.den, sar.num);
}
}
xv->window = XCreateSimpleWindow(xv->display, DefaultRootWindow(xv->display),
xv->window_x, xv->window_y,