[FFmpeg-devel] [PATCH] Port tinterlace filter from MPlayer.
stefano.sabatini-lala at poste.it
Tue Aug 30 23:53:10 CEST 2011
On date Tuesday 2011-08-30 20:37:36 +0200, Michael Niedermayer encoded:
> On Tue, Aug 30, 2011 at 10:50:12AM +0200, Stefano Sabatini wrote:
> > On date Monday 2011-08-29 03:16:43 +0200, Michael Niedermayer encoded:
> > > On Sun, Aug 28, 2011 at 02:49:13AM +0200, Stefano Sabatini wrote:
> > [...]
> > > > Updated, tested against the mp=tinterlace filter, same output is
> > > > issued (but mp=tinterlace has broken PTSes all set to 0), only
> > > > difference is in mode 3 where tinterlace correctly set pad lines luma
> > > > values to 16 rather than to 0.
> > >
> > > If it supports the same syntax, same or more features and no code
> > > was lost in the porting and its same speed or faster
> > > then it should be ok
> > Main difference from the performance point of view is that tinterlace
> > calls copy_picture_fields(), I can inline it for improving
> > performance.
> > Apart from that, vf_tinterlace.c looks more complex of the
> > corresponding vf_tinterlace.c libmpcodecs code - 326 vs. 236 LOC
> > (lavfi tends to be more verbose, and I added more checks and docs for
> > internal functions).
> > I'm going to apply the patch in a few days if I see no comments, then
> > I'll remove the mp=tinterlace wrapper if there are no objections.
> I think the mp filters should only be removed once mplayer switched
> to libavfilter
> The issue i see is mplayers will be improved and our native ones might
> rot and then its nice to still have the wraper.
Yes, but 1. it's not sure it will switch to lavfi, 2. we'll need to
keep them updated.
Anyway having the duplicated code doesn't particularly bother me, my
only point is that sometimes the mp filters don't work very well
(e.g. mp=tinterlace resets timestamps to 0), in that case maybe it's
better to just remove them rather than having the user to discover
that the wrapped filter doesn't work as expected.
FFmpeg = Fantastic and Fancy Murdering Peaceful ExchanGer
More information about the ffmpeg-devel