diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2012-09-17 19:50:29 +0000 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2012-10-30 19:50:19 +0100 |
commit | bed026b9e328b722ea1fdb940b46d21faf719fe9 (patch) | |
tree | d03c6cd03ef7a827030e4cb7fdaa5e9d2704fc4d /libmpcodecs | |
parent | ef15c9c8eec4b15d03f3aa7602dc37f65a07f205 (diff) | |
download | mpv-bed026b9e328b722ea1fdb940b46d21faf719fe9.tar.bz2 mpv-bed026b9e328b722ea1fdb940b46d21faf719fe9.tar.xz |
vf_delogo: fix using with numbered mpi
Fix delogo filter with numbered mpi.
Should fix bug #2087.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@35202 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs')
-rw-r--r-- | libmpcodecs/vf_delogo.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libmpcodecs/vf_delogo.c b/libmpcodecs/vf_delogo.c index 8fcc869c91..e47a01b68d 100644 --- a/libmpcodecs/vf_delogo.c +++ b/libmpcodecs/vf_delogo.c @@ -180,6 +180,7 @@ static void get_image(struct vf_instance *vf, mp_image_t *mpi){ if(mpi->flags&MP_IMGFLAG_PRESERVE) return; // don't change if(mpi->imgfmt!=vf->priv->outfmt) return; // colorspace differ // ok, we can do pp in-place (or pp disabled): + mpi->priv = vf->dmpi=vf_get_image(vf->next,mpi->imgfmt, mpi->type, mpi->flags, mpi->w, mpi->h); mpi->planes[0]=vf->dmpi->planes[0]; @@ -197,7 +198,9 @@ static void get_image(struct vf_instance *vf, mp_image_t *mpi){ static int put_image(struct vf_instance *vf, mp_image_t *mpi, double pts){ mp_image_t *dmpi; - if(!(mpi->flags&MP_IMGFLAG_DIRECT)){ + if(mpi->flags&MP_IMGFLAG_DIRECT) { + vf->dmpi = mpi->priv; + } else { // no DR, so get a new image! hope we'll get DR buffer: vf->dmpi=vf_get_image(vf->next,vf->priv->outfmt, MP_IMGTYPE_TEMP, MP_IMGFLAG_ACCEPT_STRIDE, |