diff options
author | rfelker <rfelker@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2003-12-11 04:47:42 +0000 |
---|---|---|
committer | rfelker <rfelker@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2003-12-11 04:47:42 +0000 |
commit | 7b4ab7ba374f3f585fe8eeff3064440a5af71cb4 (patch) | |
tree | 2d825a55e7dc2c93f6afcde63b0a1f3cf00d7fb9 /libmpcodecs/vf_filmdint.c | |
parent | 571bf466e607136a145f6964adfca9d4e78842d1 (diff) | |
download | mpv-7b4ab7ba374f3f585fe8eeff3064440a5af71cb4.tar.bz2 mpv-7b4ab7ba374f3f585fe8eeff3064440a5af71cb4.tar.xz |
Patch from the author, Zoltan Hidvegi:
The filmdint filter does not handle NTSC "telecined" 15fps movies
where there is a frame break in the middle of every second NTSC frame,
it outputs only 15 frames for every 30 input frames, ignoring the io
option. You can notice this during encoding such a sequence you will
have lots of diplicate frames / skip frames messages. The patch below
fixes this.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11624 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs/vf_filmdint.c')
-rw-r--r-- | libmpcodecs/vf_filmdint.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libmpcodecs/vf_filmdint.c b/libmpcodecs/vf_filmdint.c index d332200d53..a3c2c07097 100644 --- a/libmpcodecs/vf_filmdint.c +++ b/libmpcodecs/vf_filmdint.c @@ -1239,7 +1239,10 @@ static int put_image(struct vf_instance_s* vf, mp_image_t *mpi) } else { if (p->notout >= p->num_fields) dropped_fields += p->num_fields + 2 - breaks; - if (breaks == 2 && p->iosync > -3*p->in_inc) + if (breaks == 1) { + if (p->iosync >= 4*p->in_inc) + show_fields = 6; + } else if (p->iosync > -3*p->in_inc) show_fields = 3; /* odd+even */ } break; |