diff options
Diffstat (limited to 'libmpcodecs')
-rw-r--r-- | libmpcodecs/vf_ass.c | 5 | ||||
-rw-r--r-- | libmpcodecs/vf_vo.c | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/libmpcodecs/vf_ass.c b/libmpcodecs/vf_ass.c index 76a08807e7..c34c0b88e3 100644 --- a/libmpcodecs/vf_ass.c +++ b/libmpcodecs/vf_ass.c @@ -358,8 +358,9 @@ static int put_image(struct vf_instance *vf, mp_image_t *mpi, double pts) { struct osd_state *osd = vf->priv->osd; ASS_Image *images = 0; - ASS_Renderer *renderer = osd->vsfilter_aspect ? - vf->priv->renderer_vsfilter : vf->priv->renderer_realaspect; + ASS_Renderer *renderer = osd->vsfilter_aspect + && vf->opts->ass_vsfilter_aspect_compat + ? vf->priv->renderer_vsfilter : vf->priv->renderer_realaspect; if (sub_visibility && renderer && osd->ass_track && (pts != MP_NOPTS_VALUE)) { if (osd->ass_force_reload) { diff --git a/libmpcodecs/vf_vo.c b/libmpcodecs/vf_vo.c index 62ec64ef3f..347c1e96b1 100644 --- a/libmpcodecs/vf_vo.c +++ b/libmpcodecs/vf_vo.c @@ -23,6 +23,7 @@ #include "config.h" #include "mp_msg.h" +#include "options.h" #include "mp_image.h" #include "vf.h" @@ -155,7 +156,7 @@ static int control(struct vf_instance *vf, int request, void* data) double pts = video_out->next_pts; ASS_Renderer *renderer; double scale; - if (osd->vsfilter_aspect) { + if (osd->vsfilter_aspect && vf->opts->ass_vsfilter_aspect_compat) { renderer = vf->priv->renderer_vsfilter; scale = vf->priv->scale_ratio; } else { |