Index: libmpcodecs/vf_expand.c =================================================================== --- libmpcodecs/vf_expand.c (revision 20022) +++ libmpcodecs/vf_expand.c (working copy) @@ -28,7 +28,7 @@ int exp_w,exp_h; int exp_x,exp_y; int osd; - double aspect; + double aspect, confaspect; int round; unsigned char* fb_ptr; int first_slice; @@ -36,7 +36,7 @@ -1,-1, -1,-1, 0, - 0., + 0.,0., 1, NULL, 0 @@ -183,6 +201,7 @@ else if ( vf->priv->exp_h < -1 ) vf->priv->exp_h=height - vf->priv->exp_h; else if( vf->priv->exp_hpriv->exp_h=height; #endif + vf->priv->aspect = vf->priv->confaspect; if (vf->priv->aspect) { vf->priv->aspect *= ((double)width/height) / ((double)d_width/d_height); if (vf->priv->exp_h < vf->priv->exp_w / vf->priv->aspect) { @@ -401,7 +420,7 @@ vf->priv->exp_x, vf->priv->exp_y, vf->priv->osd, - vf->priv->aspect, + vf->priv->confaspect, vf->priv->round); return 1; } @@ -413,7 +432,7 @@ {"x", ST_OFF(exp_x), CONF_TYPE_INT, M_OPT_MIN, -1, 0, NULL}, {"y", ST_OFF(exp_y), CONF_TYPE_INT, M_OPT_MIN, -1, 0, NULL}, {"osd", ST_OFF(osd), CONF_TYPE_FLAG, 0 , 0, 1, NULL}, - {"aspect", ST_OFF(aspect), CONF_TYPE_DOUBLE, M_OPT_MIN, 0, 0, NULL}, + {"aspect", ST_OFF(confaspect), CONF_TYPE_DOUBLE, M_OPT_MIN, 0, 0, NULL}, {"round", ST_OFF(round), CONF_TYPE_INT, M_OPT_MIN, 1, 0, NULL}, { NULL, NULL, 0, 0, 0, 0, NULL } };