Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2019-02-01 Thread Vasile Toncu
Hello,

Happy New Year.
Any news about this patch? Maybe Carl Eugen Hoyos could help us with this?

Best regards.

On Thu, Dec 6, 2018 at 6:10 PM Vasile Toncu 
wrote:

> Hi,
>
> Since this patch is passing all the current tests, all the modification
> required by Thomas were implemented and from our point of view it satisfies
> all requirements for adding the double license to the filter, please
> approve this patch for integration. Also, there are two more patches
> blocked at the moment. This two patches add new features and improvements
> for the filter.
>
> Thank you. Regards.
>
> On Tue, Oct 16, 2018 at 6:40 PM Vasile Toncu 
> wrote:
>
>> Hello,
>>
>> Still Baptiste Coudurier and Michael Zucchi could not be reached, however
>> since the old GPL tinterlace was replaced with a new LGPL implementation
>> aren't we on the second course of action recommended by Nicolas George? And
>> by that means can we change the license of this implementation without the
>> approval of the original contributors whose code was removed?
>> Maybe someone else can have a look at the new implementation and provide
>> the necessary feedback in order to merge this patch and unblock the
>> development of the patches with new functionalities.
>>
>> Thank you.
>> Best regards.
>>
>>
>>
>> On Mon, Sep 17, 2018 at 8:28 AM, Vasile Toncu 
>> wrote:
>>
>>> Hello,
>>>
>>> Thank you Thomas for the reviews and support!
>>>
>>> The proposed actions, by Nicolas George in
>>> https://ffmpeg.org/pipermail/ffmpeg-devel/2017-December/223072.html,
>>> were taken.
>>>
>>> >* Can one simply change the tinterlace from GPL to LGPL?
>>> *
>>> Of course not. There are two non-simple courses of action to achieve it:
>>>
>>> - Get the approval of all copyright holders. It has been done in the
>>>   past for other filters.
>>>
>>> - Remove the GPL tinterlace and at the same time add a new LGPL filter
>>>   that does the same thing and is also called tinterlace.
>>>
>>>
>>> Only two contributors approved until now, Thomas Mundt and Stefano
>>> Sebatini, while Baptiste Coudurier and Michael Zucchi could not be reached.
>>> Also, the new implementation supports all the features from the old
>>> tinterlace and conditionally (at compile time) the same ASM optimizations
>>> are used, but only if CONFIG_GPL is defined.
>>>
>>> Is there any way we can proceed with this patch?
>>>
>>> Best regards.
>>>
>>>
>>> On Fri, Aug 17, 2018 at 5:24 PM, Thomas Mundt 
>>> wrote:
>>>
 Hi,

 2018-08-16 13:56 GMT+02:00 Vasile Toncu :

 > Hi,
 >
 > Thank you for the additional testing effort.
 > Fixed the issue.
 >
 >
 thanks, the patch looks good to me as far as I can judge.
 It´s up to more experienced developers now to permit the license change.
 Can anybody please have a look at this.

 Regards,
 Thomas
 ___
 ffmpeg-devel mailing list
 ffmpeg-devel@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

>>>
>>>
>>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-12-06 Thread Vasile Toncu
Hi,

Since this patch is passing all the current tests, all the modification
required by Thomas were implemented and from our point of view it satisfies
all requirements for adding the double license to the filter, please
approve this patch for integration. Also, there are two more patches
blocked at the moment. This two patches add new features and improvements
for the filter.

Thank you. Regards.

On Tue, Oct 16, 2018 at 6:40 PM Vasile Toncu 
wrote:

> Hello,
>
> Still Baptiste Coudurier and Michael Zucchi could not be reached, however
> since the old GPL tinterlace was replaced with a new LGPL implementation
> aren't we on the second course of action recommended by Nicolas George? And
> by that means can we change the license of this implementation without the
> approval of the original contributors whose code was removed?
> Maybe someone else can have a look at the new implementation and provide
> the necessary feedback in order to merge this patch and unblock the
> development of the patches with new functionalities.
>
> Thank you.
> Best regards.
>
>
>
> On Mon, Sep 17, 2018 at 8:28 AM, Vasile Toncu 
> wrote:
>
>> Hello,
>>
>> Thank you Thomas for the reviews and support!
>>
>> The proposed actions, by Nicolas George in
>> https://ffmpeg.org/pipermail/ffmpeg-devel/2017-December/223072.html,
>> were taken.
>>
>> >* Can one simply change the tinterlace from GPL to LGPL?
>> *
>> Of course not. There are two non-simple courses of action to achieve it:
>>
>> - Get the approval of all copyright holders. It has been done in the
>>   past for other filters.
>>
>> - Remove the GPL tinterlace and at the same time add a new LGPL filter
>>   that does the same thing and is also called tinterlace.
>>
>>
>> Only two contributors approved until now, Thomas Mundt and Stefano
>> Sebatini, while Baptiste Coudurier and Michael Zucchi could not be reached.
>> Also, the new implementation supports all the features from the old
>> tinterlace and conditionally (at compile time) the same ASM optimizations
>> are used, but only if CONFIG_GPL is defined.
>>
>> Is there any way we can proceed with this patch?
>>
>> Best regards.
>>
>>
>> On Fri, Aug 17, 2018 at 5:24 PM, Thomas Mundt  wrote:
>>
>>> Hi,
>>>
>>> 2018-08-16 13:56 GMT+02:00 Vasile Toncu :
>>>
>>> > Hi,
>>> >
>>> > Thank you for the additional testing effort.
>>> > Fixed the issue.
>>> >
>>> >
>>> thanks, the patch looks good to me as far as I can judge.
>>> It´s up to more experienced developers now to permit the license change.
>>> Can anybody please have a look at this.
>>>
>>> Regards,
>>> Thomas
>>> ___
>>> ffmpeg-devel mailing list
>>> ffmpeg-devel@ffmpeg.org
>>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>
>>
>>
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-10-16 Thread Vasile Toncu
Hello,

Still Baptiste Coudurier and Michael Zucchi could not be reached, however
since the old GPL tinterlace was replaced with a new LGPL implementation
aren't we on the second course of action recommended by Nicolas George? And
by that means can we change the license of this implementation without the
approval of the original contributors whose code was removed?
Maybe someone else can have a look at the new implementation and provide
the necessary feedback in order to merge this patch and unblock the
development of the patches with new functionalities.

Thank you.
Best regards.



On Mon, Sep 17, 2018 at 8:28 AM, Vasile Toncu 
wrote:

> Hello,
>
> Thank you Thomas for the reviews and support!
>
> The proposed actions, by Nicolas George in https://ffmpeg.org/pipermail/
> ffmpeg-devel/2017-December/223072.html, were taken.
>
> >* Can one simply change the tinterlace from GPL to LGPL?
> *
> Of course not. There are two non-simple courses of action to achieve it:
>
> - Get the approval of all copyright holders. It has been done in the
>   past for other filters.
>
> - Remove the GPL tinterlace and at the same time add a new LGPL filter
>   that does the same thing and is also called tinterlace.
>
>
> Only two contributors approved until now, Thomas Mundt and Stefano
> Sebatini, while Baptiste Coudurier and Michael Zucchi could not be reached.
> Also, the new implementation supports all the features from the old
> tinterlace and conditionally (at compile time) the same ASM optimizations
> are used, but only if CONFIG_GPL is defined.
>
> Is there any way we can proceed with this patch?
>
> Best regards.
>
>
> On Fri, Aug 17, 2018 at 5:24 PM, Thomas Mundt  wrote:
>
>> Hi,
>>
>> 2018-08-16 13:56 GMT+02:00 Vasile Toncu :
>>
>> > Hi,
>> >
>> > Thank you for the additional testing effort.
>> > Fixed the issue.
>> >
>> >
>> thanks, the patch looks good to me as far as I can judge.
>> It´s up to more experienced developers now to permit the license change.
>> Can anybody please have a look at this.
>>
>> Regards,
>> Thomas
>> ___
>> ffmpeg-devel mailing list
>> ffmpeg-devel@ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>
>
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-09-16 Thread Vasile Toncu
Hello,

Thank you Thomas for the reviews and support!

The proposed actions, by Nicolas George in
https://ffmpeg.org/pipermail/ffmpeg-devel/2017-December/223072.html, were
taken.

>* Can one simply change the tinterlace from GPL to LGPL?
*
Of course not. There are two non-simple courses of action to achieve it:

- Get the approval of all copyright holders. It has been done in the
  past for other filters.

- Remove the GPL tinterlace and at the same time add a new LGPL filter
  that does the same thing and is also called tinterlace.


Only two contributors approved until now, Thomas Mundt and Stefano
Sebatini, while Baptiste Coudurier and Michael Zucchi could not be reached.
Also, the new implementation supports all the features from the old
tinterlace and conditionally (at compile time) the same ASM optimizations
are used, but only if CONFIG_GPL is defined.

Is there any way we can proceed with this patch?

Best regards.


On Fri, Aug 17, 2018 at 5:24 PM, Thomas Mundt  wrote:

> Hi,
>
> 2018-08-16 13:56 GMT+02:00 Vasile Toncu :
>
> > Hi,
> >
> > Thank you for the additional testing effort.
> > Fixed the issue.
> >
> >
> thanks, the patch looks good to me as far as I can judge.
> It´s up to more experienced developers now to permit the license change.
> Can anybody please have a look at this.
>
> Regards,
> Thomas
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-08-17 Thread Thomas Mundt
Hi,

2018-08-16 13:56 GMT+02:00 Vasile Toncu :

> Hi,
>
> Thank you for the additional testing effort.
> Fixed the issue.
>
>
thanks, the patch looks good to me as far as I can judge.
It´s up to more experienced developers now to permit the license change.
Can anybody please have a look at this.

Regards,
Thomas
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-08-16 Thread Vasile Toncu
Hi,

Thank you for the additional testing effort.
Fixed the issue.

On Tue, Aug 14, 2018 at 10:25 PM, Thomas Mundt  wrote:

> Hi,
>
> 2018-08-14 18:53 GMT+02:00 Vasile Toncu :
>
> > Hi Thomas,
> >
> > I added the log messages.
> >
> > Thanks for the review.
> >
>
> I found some more time for testing this evening. Unfortunately there are
> still issues.
> I get half green pictures with some modes at high bit depth.
> But the fix is easy.
> The bytewidth in all av_image_copy_plane functions need to be adapted for
> high bit depths.
>
> {}
> > const AVPixFmtDescriptor *fmt_desc = av_pix_fmt_desc_get(out->
> format);
> > int mult = (fmt_desc->comp[0].depth > 8 ? 2 : 1);
> >
>
> You used the calculated "mult" in the av_image_copy_plane functions of
> MODE_MERGE and MODE_PAD only.
> And forgot the others:
>
>
> > {}
> >
> +case MODE_INTERLEAVE_BOTTOM:
> > +case MODE_INTERLEAVE_TOP:
> > +y = y * 2;
> > +
> > +if (tinterlace->flags & FLAG_VLPF || tinterlace->flags &
> > FLAG_CVLPF) {
> > +int clip_max = (1 << fmt_desc->comp[plane].depth) - 1;
> > +
> > +interleave_filter_frame(tinterlace, first, out, plane,
> > !!(tinterlace->flags & FLAG_CVLPF), tinterlace_mode ==
> MODE_INTERLEAVE_TOP,
> > x, y, clip_max);
> > +interleave_filter_frame(tinterlace, second, out, plane,
> > !!(tinterlace->flags & FLAG_CVLPF), tinterlace_mode ==
> > MODE_INTERLEAVE_BOTTOM, x, y, clip_max);
> >  } else {
> > -if (tinterlace->csp->comp[plane].depth > 8)
> > -cols *= 2;
> > -av_image_copy_plane(dstp, dstp_linesize, srcp,
> srcp_linesize,
> > cols, lines);
> > +offset1 = (tinterlace_mode == MODE_INTERLEAVE_TOP) ? 0 :
> > out->linesize[plane];
> > +offset2 = (tinterlace_mode == MODE_INTERLEAVE_TOP) ? 0 :
> > first->linesize[plane];
> > +offset3 = (tinterlace_mode == MODE_INTERLEAVE_TOP) ?
> > out->linesize[plane]: 0;
> > +offset4 = (tinterlace_mode == MODE_INTERLEAVE_TOP) ?
> > second->linesize[plane] : 0;
> > +
> > +av_image_copy_plane(out->data[plane] + offset1, 2 *
> > out->linesize[plane],
> > +first->data[plane] + offset2, 2 *
> first->linesize[plane],
> > +first->width / x, first->height / y);
> > +av_image_copy_plane(out->data[plane] + offset3, 2 *
> > out->linesize[plane],
> > +second->data[plane] + offset4, 2 *
> > second->linesize[plane],
> > +second->width / x, second->height / y);
> >
>
> Here
>
>  }
> > +break;
> > +
> > +case MODE_INTERLACE_X2:
> > +y = y * 2;
> > +
> > +offset1 = 0; offset2 = 0;
> > +offset3 = out->linesize[plane];
> > +offset4 = second->linesize[plane];
> > +
> > +if (second->interlaced_frame && second->top_field_first) {
> > +offset1 = out->linesize[plane];
> > +offset2 = first->linesize[plane];
> > +offset3 = 0; offset4 = 0;
> > +}
> > +
> > +av_image_copy_plane(out->data[plane] + offset1, 2 *
> > out->linesize[plane],
> > +first->data[plane] + offset2, 2 * first->linesize[plane],
> > +first->width / x, first->height / y);
> > +av_image_copy_plane(out->data[plane] + offset3, 2 *
> > out->linesize[plane],
> > +second->data[plane] + offset4, 2 * second->linesize[plane],
> > +second->width / x, second->height / y);
> >
>
>  Here
>
> +break;
> > +
> > +case MODE_MERGE_X2:
> > +if (IS_ODD(tinterlace->current_frame_index - 1)) {
> > +av_image_copy_plane(out->data[plane], 2 *
> > out->linesize[plane],
> > +second->data[plane], second->linesize[plane],
> > second->width / x, second->height / y);
> > +av_image_copy_plane(out->data[plane] +
> out->linesize[plane],
> > 2 * out->linesize[plane],
> > +first->data[plane], first->linesize[plane], first->width
> > / x, first->height / y);
> > +} else {
> > +av_image_copy_plane(out->data[plane], 2 *
> > out->linesize[plane],
> > +first->data[plane], first->linesize[plane], first->width
> > / x, first->height / y);
> > +av_image_copy_plane(out->data[plane] +
> out->linesize[plane],
> > 2 * out->linesize[plane],
> > +second->data[plane], second->linesize[plane],
> > second->width / x, second->height / y);
> >
>
> Here.
>
> Sorry for the piecemeal.
>
> Regards,
> Thomas
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
From c00141a51b3ddbb24080fb8fdf1a056af528856f Mon Sep 17 00:00:00 2001
From: Vasile Toncu 
Date: Tue, 24 Jul 2018 12:02:16 +0200
Subject: [PATCH] Patch 3 - Move reinterlace to tinterlace

---
 configure |   1 -
 libavfilter/Makefile  |   1 -
 libavfil

Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-08-14 Thread Thomas Mundt
Hi,

2018-08-14 18:53 GMT+02:00 Vasile Toncu :

> Hi Thomas,
>
> I added the log messages.
>
> Thanks for the review.
>

I found some more time for testing this evening. Unfortunately there are
still issues.
I get half green pictures with some modes at high bit depth.
But the fix is easy.
The bytewidth in all av_image_copy_plane functions need to be adapted for
high bit depths.

{}
> const AVPixFmtDescriptor *fmt_desc = av_pix_fmt_desc_get(out->format);
> int mult = (fmt_desc->comp[0].depth > 8 ? 2 : 1);
>

You used the calculated "mult" in the av_image_copy_plane functions of
MODE_MERGE and MODE_PAD only.
And forgot the others:


> {}
>
+case MODE_INTERLEAVE_BOTTOM:
> +case MODE_INTERLEAVE_TOP:
> +y = y * 2;
> +
> +if (tinterlace->flags & FLAG_VLPF || tinterlace->flags &
> FLAG_CVLPF) {
> +int clip_max = (1 << fmt_desc->comp[plane].depth) - 1;
> +
> +interleave_filter_frame(tinterlace, first, out, plane,
> !!(tinterlace->flags & FLAG_CVLPF), tinterlace_mode == MODE_INTERLEAVE_TOP,
> x, y, clip_max);
> +interleave_filter_frame(tinterlace, second, out, plane,
> !!(tinterlace->flags & FLAG_CVLPF), tinterlace_mode ==
> MODE_INTERLEAVE_BOTTOM, x, y, clip_max);
>  } else {
> -if (tinterlace->csp->comp[plane].depth > 8)
> -cols *= 2;
> -av_image_copy_plane(dstp, dstp_linesize, srcp, srcp_linesize,
> cols, lines);
> +offset1 = (tinterlace_mode == MODE_INTERLEAVE_TOP) ? 0 :
> out->linesize[plane];
> +offset2 = (tinterlace_mode == MODE_INTERLEAVE_TOP) ? 0 :
> first->linesize[plane];
> +offset3 = (tinterlace_mode == MODE_INTERLEAVE_TOP) ?
> out->linesize[plane]: 0;
> +offset4 = (tinterlace_mode == MODE_INTERLEAVE_TOP) ?
> second->linesize[plane] : 0;
> +
> +av_image_copy_plane(out->data[plane] + offset1, 2 *
> out->linesize[plane],
> +first->data[plane] + offset2, 2 * first->linesize[plane],
> +first->width / x, first->height / y);
> +av_image_copy_plane(out->data[plane] + offset3, 2 *
> out->linesize[plane],
> +second->data[plane] + offset4, 2 *
> second->linesize[plane],
> +second->width / x, second->height / y);
>

Here

 }
> +break;
> +
> +case MODE_INTERLACE_X2:
> +y = y * 2;
> +
> +offset1 = 0; offset2 = 0;
> +offset3 = out->linesize[plane];
> +offset4 = second->linesize[plane];
> +
> +if (second->interlaced_frame && second->top_field_first) {
> +offset1 = out->linesize[plane];
> +offset2 = first->linesize[plane];
> +offset3 = 0; offset4 = 0;
> +}
> +
> +av_image_copy_plane(out->data[plane] + offset1, 2 *
> out->linesize[plane],
> +first->data[plane] + offset2, 2 * first->linesize[plane],
> +first->width / x, first->height / y);
> +av_image_copy_plane(out->data[plane] + offset3, 2 *
> out->linesize[plane],
> +second->data[plane] + offset4, 2 * second->linesize[plane],
> +second->width / x, second->height / y);
>

 Here

+break;
> +
> +case MODE_MERGE_X2:
> +if (IS_ODD(tinterlace->current_frame_index - 1)) {
> +av_image_copy_plane(out->data[plane], 2 *
> out->linesize[plane],
> +second->data[plane], second->linesize[plane],
> second->width / x, second->height / y);
> +av_image_copy_plane(out->data[plane] + out->linesize[plane],
> 2 * out->linesize[plane],
> +first->data[plane], first->linesize[plane], first->width
> / x, first->height / y);
> +} else {
> +av_image_copy_plane(out->data[plane], 2 *
> out->linesize[plane],
> +first->data[plane], first->linesize[plane], first->width
> / x, first->height / y);
> +av_image_copy_plane(out->data[plane] + out->linesize[plane],
> 2 * out->linesize[plane],
> +second->data[plane], second->linesize[plane],
> second->width / x, second->height / y);
>

Here.

Sorry for the piecemeal.

Regards,
Thomas
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-08-14 Thread Vasile Toncu
Hi Thomas,

I added the log messages.

Thanks for the review.

On Tue, Aug 14, 2018 at 3:23 PM, Thomas Mundt  wrote:

> Hi,
>
> 2018-08-13 0:02 GMT+02:00 Vasile Toncu :
>
> > Hello,
> >
> > I have updated patch 3 according to review, removed all code related to
> the
> > new flags (MERGE_TFF, MERGE_BFF) and threading functionality.
> >
> >
> Thanks, your patch looks fine to me now.
> There is just one thing, I forgot to mention last review:
>
>
> > {}
> > -if (tinterlace->flags & (TINTERLACE_FLAG_VLPF |
> TINTERLACE_FLAG_CVLPF)
> > -&& !(tinterlace->mode == MODE_INTERLEAVE_TOP
> > -  || tinterlace->mode == MODE_INTERLEAVE_BOTTOM)) {
> > -av_log(ctx, AV_LOG_WARNING, "low_pass_filter flags ignored with
> > mode %d\n",
> > -tinterlace->mode);
> >
> > {}
> > +if (tinterlace->flags & FLAG_VLPF || tinterlace->flags &
> FLAG_CVLPF) {
> >
> > -av_log(ctx, AV_LOG_VERBOSE, "mode:%d filter:%s h:%d -> h:%d\n",
> > tinterlace->mode,
> > -   (tinterlace->flags & TINTERLACE_FLAG_CVLPF) ? "complex" :
> > -   (tinterlace->flags & TINTERLACE_FLAG_VLPF) ? "linear" :
> "off",
> > -   inlink->h, outlink->h);
> >
>
> Please keep the log messages. Nothing should change for the user.
>
> Regards,
> Thomas
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
From b2f8fc595312b4b89017c3689dfb80e30b3472ed Mon Sep 17 00:00:00 2001
From: Vasile Toncu 
Date: Tue, 24 Jul 2018 12:02:16 +0200
Subject: [PATCH] Patch 3 - Move reinterlace to tinterlace

---
 configure |   1 -
 libavfilter/Makefile  |   1 -
 libavfilter/allfilters.c  |   1 -
 libavfilter/reinterlace.h | 105 
 libavfilter/tinterlace.h  |  96 ++--
 libavfilter/vf_reinterlace.c  | 775 --
 libavfilter/vf_tinterlace.c   | 689 +--
 libavfilter/x86/Makefile  |   1 -
 libavfilter/x86/vf_reinterlace_init.c | 102 
 libavfilter/x86/vf_tinterlace_init.c  |  41 +-
 10 files changed, 484 insertions(+), 1328 deletions(-)
 delete mode 100644 libavfilter/reinterlace.h
 delete mode 100644 libavfilter/vf_reinterlace.c
 delete mode 100644 libavfilter/x86/vf_reinterlace_init.c

diff --git a/configure b/configure
index e718c1531c..8f42a86f8f 100755
--- a/configure
+++ b/configure
@@ -3420,7 +3420,6 @@ stereo3d_filter_deps="gpl"
 subtitles_filter_deps="avformat avcodec libass"
 super2xsai_filter_deps="gpl"
 pixfmts_super2xsai_test_deps="super2xsai_filter"
-tinterlace_filter_deps="gpl"
 tinterlace_merge_test_deps="tinterlace_filter"
 tinterlace_pad_test_deps="tinterlace_filter"
 tonemap_filter_deps="const_nan"
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index c8ba079750..245302bbe8 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -246,7 +246,6 @@ OBJS-$(CONFIG_IDET_FILTER)   += vf_idet.o
 OBJS-$(CONFIG_IL_FILTER) += vf_il.o
 OBJS-$(CONFIG_INFLATE_FILTER)+= vf_neighbor.o
 OBJS-$(CONFIG_INTERLACE_FILTER)  += vf_tinterlace.o
-OBJS-$(CONFIG_REINTERLACE_FILTER)+= vf_reinterlace.o
 OBJS-$(CONFIG_INTERLEAVE_FILTER) += f_interleave.o
 OBJS-$(CONFIG_KERNDEINT_FILTER)  += vf_kerndeint.o
 OBJS-$(CONFIG_LENSCORRECTION_FILTER) += vf_lenscorrection.o
diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c
index 9956776938..2d19929bdc 100644
--- a/libavfilter/allfilters.c
+++ b/libavfilter/allfilters.c
@@ -348,7 +348,6 @@ extern AVFilter ff_vf_thumbnail;
 extern AVFilter ff_vf_thumbnail_cuda;
 extern AVFilter ff_vf_tile;
 extern AVFilter ff_vf_tinterlace;
-extern AVFilter ff_vf_reinterlace;
 extern AVFilter ff_vf_tlut2;
 extern AVFilter ff_vf_tmix;
 extern AVFilter ff_vf_tonemap;
diff --git a/libavfilter/reinterlace.h b/libavfilter/reinterlace.h
deleted file mode 100644
index cb512c7639..00
--- a/libavfilter/reinterlace.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (c) 2017 Vasile Toncu 
- * Copyright (c) 2017 Thomas Mundt 
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * 

Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-08-14 Thread Thomas Mundt
Hi,

2018-08-13 0:02 GMT+02:00 Vasile Toncu :

> Hello,
>
> I have updated patch 3 according to review, removed all code related to the
> new flags (MERGE_TFF, MERGE_BFF) and threading functionality.
>
>
Thanks, your patch looks fine to me now.
There is just one thing, I forgot to mention last review:


> {}
> -if (tinterlace->flags & (TINTERLACE_FLAG_VLPF | TINTERLACE_FLAG_CVLPF)
> -&& !(tinterlace->mode == MODE_INTERLEAVE_TOP
> -  || tinterlace->mode == MODE_INTERLEAVE_BOTTOM)) {
> -av_log(ctx, AV_LOG_WARNING, "low_pass_filter flags ignored with
> mode %d\n",
> -tinterlace->mode);
>
> {}
> +if (tinterlace->flags & FLAG_VLPF || tinterlace->flags & FLAG_CVLPF) {
>
> -av_log(ctx, AV_LOG_VERBOSE, "mode:%d filter:%s h:%d -> h:%d\n",
> tinterlace->mode,
> -   (tinterlace->flags & TINTERLACE_FLAG_CVLPF) ? "complex" :
> -   (tinterlace->flags & TINTERLACE_FLAG_VLPF) ? "linear" : "off",
> -   inlink->h, outlink->h);
>

Please keep the log messages. Nothing should change for the user.

Regards,
Thomas
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-08-12 Thread Vasile Toncu
Hello,

I have updated patch 3 according to review, removed all code related to the
new flags (MERGE_TFF, MERGE_BFF) and threading functionality.


On Sat, Jul 28, 2018 at 5:04 PM, Thomas Mundt  wrote:

> Hi,
>
> 2018-07-24 12:17 GMT+02:00 Vasile Toncu :
>
> > Fixed tabs.
> > Thank you for the feedback.
> >
>
> > {}
> > +case MODE_INTERLEAVE_BOTTOM:
> > +case MODE_INTERLEAVE_TOP:
> > +y = y * 2;
> > +
> > +if (tinterlace->flags & FLAG_VLPF || tinterlace->flags &
> > FLAG_CVLPF) {
> > +
> > +int lines, cols, cvlfp;
> > +AVFrame *from_frame;
> > +uint8_t *from, *to;
> > +int from_step, to_step;
> > +
> > +lines = (tinterlace_mode == MODE_INTERLEAVE_TOP) ? (2 *
> > out->height / y + 1) / 2 : (2 * out->height / y + 0) / 2;
> > +cols = out->width / x;
> > +from_frame = first;
> > +from = from_frame->data[plane];
> > +to = out->data[plane];
> > +
> > +if (tinterlace_mode == MODE_INTERLEAVE_BOTTOM) {
> > +from = from + from_frame->linesize[plane];
> > +to = to + out->linesize[plane];
> > +}
> > +
> > +from_step = 2 * from_frame->linesize[plane];
> > +to_step = 2 * out->linesize[plane];
> > +
> > +// when i = lines - aka first line
> > +tinterlace->lowpass_line(to, cols, from,
> > from_frame->linesize[plane], 0, clip_max);
> > +to += to_step;
> > +from += from_step;
> > +
> > +cvlfp = !!(tinterlace->flags & FLAG_CVLPF);
> > +if (cvlfp) {
> > +tinterlace->lowpass_line(to, cols, from,
> > from_frame->linesize[plane], 0, clip_max);
> > +to += to_step;
> > +from += from_step;
> > +}
> > +
> > +for (i = lines - 2 - 2 * cvlfp; i; i--) {
> > +tinterlace->lowpass_line(to, cols, from,
> > from_frame->linesize[plane], -from_frame->linesize[plane], clip_max);
> > +to += to_step;
> > +from += from_step;
> > +}
> > +
> > +// when i == 1 - aka last line
> > +tinterlace->lowpass_line(to, cols, from, 0,
> > -from_frame->linesize[plane], clip_max);
> > +to += to_step;
> > +from += from_step;
> > +
> > +if (cvlfp) {
> > +tinterlace->lowpass_line(to, cols, from, 0,
> > -from_frame->linesize[plane], clip_max);
> > +to += to_step;
> > +from += from_step;
> > +}
> > +
> > +
> > +lines = (tinterlace_mode == MODE_INTERLEAVE_BOTTOM) ? ((2 *
> > out->height / y) + 1) / 2 : (2 * out->height / y + 0) / 2;
> > +cols = out->width / x;
> > +from_frame = second;
> > +from = from_frame->data[plane];
> > +to = out->data[plane];
> > +
> > +if (tinterlace_mode == MODE_INTERLEAVE_TOP) {
> > +from = from + from_frame->linesize[plane];
> > +to = to + out->linesize[plane];
> >  }
> > +
> > +from_step = 2 * from_frame->linesize[plane];
> > +to_step = 2 * out->linesize[plane];
> > +
> > +// when i = lines
> > +tinterlace->lowpass_line(to, cols, from,
> > from_frame->linesize[plane], 0, clip_max);
> > +to += to_step;
> > +from += from_step;
> > +
> > +if (cvlfp) {
> > +tinterlace->lowpass_line(to, cols, from,
> > from_frame->linesize[plane], 0, clip_max);
> > +to += to_step;
> > +from += from_step;
> > +}
> > +
> > +
> > +for (i = lines - 2 - 2 * cvlfp; i; i--) {
> > +tinterlace->lowpass_line(to, cols, from,
> > from_frame->linesize[plane], -from_frame->linesize[plane], clip_max);
> > +to += to_step;
> > +from += from_step;
> > +}
> > +
> > +// when i == 1
> > +tinterlace->lowpass_line(to, cols, from, 0,
> > -from_frame->linesize[plane], clip_max);
> > +to += to_step;
> > +from += from_step;
> > +
> > +if (cvlfp) {
> > +tinterlace->lowpass_line(to, cols, from, 0,
> > -from_frame->linesize[plane], clip_max);
> > +to += to_step;
> > +from += from_step;
> > +}
> >
>
> Compared to the one simple "for"-loop in the GPL version, this looks very
> complicated. Maybe it´s ok here to just keep the original code since it has
> been modified in the past anyway.
> But at least you need to factor it out for not having the same code two
> times in a row.
>
> {}
> > +case MODE_MERGE_TFF:
> > +case MODE_MERGE_BFF:
> > +offset1 = (tinterlace_mode == MODE_MERGE_TFF) ? 0 :
> > out->linesize[plane];
> > +offset2 = (tinterlace_mode == MODE_MERGE_TFF) ?
> > out->linesize[plane] 

Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-07-28 Thread Thomas Mundt
Hi,

2018-07-24 12:17 GMT+02:00 Vasile Toncu :

> Fixed tabs.
> Thank you for the feedback.
>

> {}
> +case MODE_INTERLEAVE_BOTTOM:
> +case MODE_INTERLEAVE_TOP:
> +y = y * 2;
> +
> +if (tinterlace->flags & FLAG_VLPF || tinterlace->flags &
> FLAG_CVLPF) {
> +
> +int lines, cols, cvlfp;
> +AVFrame *from_frame;
> +uint8_t *from, *to;
> +int from_step, to_step;
> +
> +lines = (tinterlace_mode == MODE_INTERLEAVE_TOP) ? (2 *
> out->height / y + 1) / 2 : (2 * out->height / y + 0) / 2;
> +cols = out->width / x;
> +from_frame = first;
> +from = from_frame->data[plane];
> +to = out->data[plane];
> +
> +if (tinterlace_mode == MODE_INTERLEAVE_BOTTOM) {
> +from = from + from_frame->linesize[plane];
> +to = to + out->linesize[plane];
> +}
> +
> +from_step = 2 * from_frame->linesize[plane];
> +to_step = 2 * out->linesize[plane];
> +
> +// when i = lines - aka first line
> +tinterlace->lowpass_line(to, cols, from,
> from_frame->linesize[plane], 0, clip_max);
> +to += to_step;
> +from += from_step;
> +
> +cvlfp = !!(tinterlace->flags & FLAG_CVLPF);
> +if (cvlfp) {
> +tinterlace->lowpass_line(to, cols, from,
> from_frame->linesize[plane], 0, clip_max);
> +to += to_step;
> +from += from_step;
> +}
> +
> +for (i = lines - 2 - 2 * cvlfp; i; i--) {
> +tinterlace->lowpass_line(to, cols, from,
> from_frame->linesize[plane], -from_frame->linesize[plane], clip_max);
> +to += to_step;
> +from += from_step;
> +}
> +
> +// when i == 1 - aka last line
> +tinterlace->lowpass_line(to, cols, from, 0,
> -from_frame->linesize[plane], clip_max);
> +to += to_step;
> +from += from_step;
> +
> +if (cvlfp) {
> +tinterlace->lowpass_line(to, cols, from, 0,
> -from_frame->linesize[plane], clip_max);
> +to += to_step;
> +from += from_step;
> +}
> +
> +
> +lines = (tinterlace_mode == MODE_INTERLEAVE_BOTTOM) ? ((2 *
> out->height / y) + 1) / 2 : (2 * out->height / y + 0) / 2;
> +cols = out->width / x;
> +from_frame = second;
> +from = from_frame->data[plane];
> +to = out->data[plane];
> +
> +if (tinterlace_mode == MODE_INTERLEAVE_TOP) {
> +from = from + from_frame->linesize[plane];
> +to = to + out->linesize[plane];
>  }
> +
> +from_step = 2 * from_frame->linesize[plane];
> +to_step = 2 * out->linesize[plane];
> +
> +// when i = lines
> +tinterlace->lowpass_line(to, cols, from,
> from_frame->linesize[plane], 0, clip_max);
> +to += to_step;
> +from += from_step;
> +
> +if (cvlfp) {
> +tinterlace->lowpass_line(to, cols, from,
> from_frame->linesize[plane], 0, clip_max);
> +to += to_step;
> +from += from_step;
> +}
> +
> +
> +for (i = lines - 2 - 2 * cvlfp; i; i--) {
> +tinterlace->lowpass_line(to, cols, from,
> from_frame->linesize[plane], -from_frame->linesize[plane], clip_max);
> +to += to_step;
> +from += from_step;
> +}
> +
> +// when i == 1
> +tinterlace->lowpass_line(to, cols, from, 0,
> -from_frame->linesize[plane], clip_max);
> +to += to_step;
> +from += from_step;
> +
> +if (cvlfp) {
> +tinterlace->lowpass_line(to, cols, from, 0,
> -from_frame->linesize[plane], clip_max);
> +to += to_step;
> +from += from_step;
> +}
>

Compared to the one simple "for"-loop in the GPL version, this looks very
complicated. Maybe it´s ok here to just keep the original code since it has
been modified in the past anyway.
But at least you need to factor it out for not having the same code two
times in a row.

{}
> +case MODE_MERGE_TFF:
> +case MODE_MERGE_BFF:
> +offset1 = (tinterlace_mode == MODE_MERGE_TFF) ? 0 :
> out->linesize[plane];
> +offset2 = (tinterlace_mode == MODE_MERGE_TFF) ?
> out->linesize[plane] : 0;
> +
> +av_image_copy_plane(out->data[plane] + offset1, 2 *
> out->linesize[plane],
> +first->data[plane], first->linesize[plane], first->width / x,
> first->height / y);
> +av_image_copy_plane(out->data[plane] + offset2, 2 *
> out->linesize[plane],
> +second->data[plane], second->linesize[plane], second->width /
> x, second->height / y);
> +break;
>

These are new functions, independent from the license change

Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-07-25 Thread Thomas Mundt
2018-07-25 17:11 GMT+02:00 Vasile Toncu :

> What would be the next steps?
>
> On Tue, Jul 24, 2018 at 12:17 PM, Vasile Toncu 
> wrote:
>
> > Fixed tabs.
> > Thank you for the feedback.
> >
> > On Fri, Jul 20, 2018 at 7:27 PM, Paul B Mahol  wrote:
> >
> >> On 7/20/18, Vasile Toncu  wrote:
> >> > Hi,
> >> >
> >> > Did you have the time to take a look at patches 2 and 3? It's
> everything
> >> > fine?
> >>
> >> Yes and no, patches have tabs. Please fix that.
>

Please be patient. I´m just back from vacation and full of tasks at work.
You took months for the revised patches. Now I need to work into it first.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-07-25 Thread Paul B Mahol
On 7/25/18, Vasile Toncu  wrote:
> What would be the next steps?
>

Ping patch every second.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-07-25 Thread Vasile Toncu
What would be the next steps?

On Tue, Jul 24, 2018 at 12:17 PM, Vasile Toncu 
wrote:

> Fixed tabs.
> Thank you for the feedback.
>
> On Fri, Jul 20, 2018 at 7:27 PM, Paul B Mahol  wrote:
>
>> On 7/20/18, Vasile Toncu  wrote:
>> > Hi,
>> >
>> > Did you have the time to take a look at patches 2 and 3? It's everything
>> > fine?
>>
>> Yes and no, patches have tabs. Please fix that.
>> ___
>> ffmpeg-devel mailing list
>> ffmpeg-devel@ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>
>
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-07-24 Thread Vasile Toncu
Fixed tabs.
Thank you for the feedback.

On Fri, Jul 20, 2018 at 7:27 PM, Paul B Mahol  wrote:

> On 7/20/18, Vasile Toncu  wrote:
> > Hi,
> >
> > Did you have the time to take a look at patches 2 and 3? It's everything
> > fine?
>
> Yes and no, patches have tabs. Please fix that.
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
From 965cb710db38ccd57213648c01ba351dc4076293 Mon Sep 17 00:00:00 2001
From: Vasile Toncu 
Date: Tue, 24 Jul 2018 12:02:16 +0200
Subject: [PATCH] Patch 3 - Move reinterlace to tinterlace

---
 configure |   1 -
 libavfilter/Makefile  |   1 -
 libavfilter/allfilters.c  |   1 -
 libavfilter/reinterlace.h | 105 
 libavfilter/tinterlace.h  | 111 ++--
 libavfilter/vf_reinterlace.c  | 775 
 libavfilter/vf_tinterlace.c   | 824 +-
 libavfilter/x86/Makefile  |   1 -
 libavfilter/x86/vf_reinterlace_init.c | 102 
 libavfilter/x86/vf_tinterlace_init.c  |  41 +-
 10 files changed, 633 insertions(+), 1329 deletions(-)
 delete mode 100644 libavfilter/reinterlace.h
 delete mode 100644 libavfilter/vf_reinterlace.c
 delete mode 100644 libavfilter/x86/vf_reinterlace_init.c

diff --git a/configure b/configure
index 5783407bdc..0a33a8dcb3 100755
--- a/configure
+++ b/configure
@@ -3415,7 +3415,6 @@ stereo3d_filter_deps="gpl"
 subtitles_filter_deps="avformat avcodec libass"
 super2xsai_filter_deps="gpl"
 pixfmts_super2xsai_test_deps="super2xsai_filter"
-tinterlace_filter_deps="gpl"
 tinterlace_merge_test_deps="tinterlace_filter"
 tinterlace_pad_test_deps="tinterlace_filter"
 tonemap_filter_deps="const_nan"
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index 49fad08290..5d4549e24c 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -245,7 +245,6 @@ OBJS-$(CONFIG_IDET_FILTER)   += vf_idet.o
 OBJS-$(CONFIG_IL_FILTER) += vf_il.o
 OBJS-$(CONFIG_INFLATE_FILTER)+= vf_neighbor.o
 OBJS-$(CONFIG_INTERLACE_FILTER)  += vf_tinterlace.o
-OBJS-$(CONFIG_REINTERLACE_FILTER)+= vf_reinterlace.o
 OBJS-$(CONFIG_INTERLEAVE_FILTER) += f_interleave.o
 OBJS-$(CONFIG_KERNDEINT_FILTER)  += vf_kerndeint.o
 OBJS-$(CONFIG_LENSCORRECTION_FILTER) += vf_lenscorrection.o
diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c
index 874d25e72f..521bc53164 100644
--- a/libavfilter/allfilters.c
+++ b/libavfilter/allfilters.c
@@ -347,7 +347,6 @@ extern AVFilter ff_vf_thumbnail;
 extern AVFilter ff_vf_thumbnail_cuda;
 extern AVFilter ff_vf_tile;
 extern AVFilter ff_vf_tinterlace;
-extern AVFilter ff_vf_reinterlace;
 extern AVFilter ff_vf_tlut2;
 extern AVFilter ff_vf_tmix;
 extern AVFilter ff_vf_tonemap;
diff --git a/libavfilter/reinterlace.h b/libavfilter/reinterlace.h
deleted file mode 100644
index cb512c7639..00
--- a/libavfilter/reinterlace.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (c) 2017 Vasile Toncu 
- * Copyright (c) 2017 Thomas Mundt 
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * Reinterlace filter
- */
-
-#ifndef AVFILTER_REINTERLACE_H
-#define AVFILTER_REINTERLACE_H
-
-#include "avfilter.h"
-#include "formats.h"
-#include "internal.h"
-#include "video.h"
-#include "libavutil/avassert.h"
-#include "libavutil/imgutils.h"
-#include "libavutil/opt.h"
-#include "libavutil/pixdesc.h"
-#include "libavutil/bswap.h"
-
-enum FilterMode {
-MODE_MERGE,
-MODE_DROP_EVEN,
-MODE_DROP_ODD,
-MODE_PAD,
-MODE_INTERLEAVE_TOP,
-MODE_INTERLEAVE_BOTTOM,
-MODE_INTERLACE_X2,
-MODE_MERGE_X2,
-MODE_MERGE_TFF,
-MODE_MERGE_BFF,
-MODE_NB,
- };
-
-enum FilterFlags {
-FLAG_NOTHING= 0x00,
-FLAG_VLPF   = 0x01,
-FLAG_EXACT_TB   = 0x02,
-FLAG_CVLPF  = 0x04,
-FLAG_NB
-};
-
-typedef struct {
-const AVClass *class;
-int mode;
-int flags;
-
-AVFrame *prev_frame, *current_frame;
-int64_t current_frame_index;
-
-uint8_t *black_vec[4];
-int black_linesize[4];
-
-int skip_next_frame;
-
-void *thread_dat

Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-07-20 Thread Paul B Mahol
On 7/20/18, Vasile Toncu  wrote:
> Hi,
>
> Did you have the time to take a look at patches 2 and 3? It's everything
> fine?

Yes and no, patches have tabs. Please fix that.
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-07-20 Thread Vasile Toncu
Hi,

Did you have the time to take a look at patches 2 and 3? It's everything
fine?

Regards,
Vasile

On Mon, Jul 16, 2018 at 5:51 PM, Vasile Toncu 
wrote:

> Hello,
>
> I have updated patch 3, it shall work now.
>
> Thank you,
> Vasile Toncu
>
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-07-16 Thread Vasile Toncu
Hello,

I have updated patch 3, it shall work now.

Thank you,
Vasile Toncu
From 23bdcea190ccb801e3d5a0eb081fb28b17144452 Mon Sep 17 00:00:00 2001
From: Vasile Toncu 
Date: Mon, 16 Jul 2018 16:13:10 +0200
Subject: [PATCH] Patch 3 - Move reinterlace to tinterlace

---
 configure |   1 -
 libavfilter/Makefile  |   1 -
 libavfilter/allfilters.c  |   1 -
 libavfilter/reinterlace.h | 105 
 libavfilter/tinterlace.h  | 113 ++--
 libavfilter/vf_reinterlace.c  | 775 
 libavfilter/vf_tinterlace.c   | 822 +-
 libavfilter/x86/Makefile  |   1 -
 libavfilter/x86/vf_reinterlace_init.c | 102 
 libavfilter/x86/vf_tinterlace_init.c  |  41 +-
 10 files changed, 633 insertions(+), 1329 deletions(-)
 delete mode 100644 libavfilter/reinterlace.h
 delete mode 100644 libavfilter/vf_reinterlace.c
 delete mode 100644 libavfilter/x86/vf_reinterlace_init.c

diff --git a/configure b/configure
index 5783407bdc..0a33a8dcb3 100755
--- a/configure
+++ b/configure
@@ -3415,7 +3415,6 @@ stereo3d_filter_deps="gpl"
 subtitles_filter_deps="avformat avcodec libass"
 super2xsai_filter_deps="gpl"
 pixfmts_super2xsai_test_deps="super2xsai_filter"
-tinterlace_filter_deps="gpl"
 tinterlace_merge_test_deps="tinterlace_filter"
 tinterlace_pad_test_deps="tinterlace_filter"
 tonemap_filter_deps="const_nan"
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index 49fad08290..5d4549e24c 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -245,7 +245,6 @@ OBJS-$(CONFIG_IDET_FILTER)   += vf_idet.o
 OBJS-$(CONFIG_IL_FILTER) += vf_il.o
 OBJS-$(CONFIG_INFLATE_FILTER)+= vf_neighbor.o
 OBJS-$(CONFIG_INTERLACE_FILTER)  += vf_tinterlace.o
-OBJS-$(CONFIG_REINTERLACE_FILTER)+= vf_reinterlace.o
 OBJS-$(CONFIG_INTERLEAVE_FILTER) += f_interleave.o
 OBJS-$(CONFIG_KERNDEINT_FILTER)  += vf_kerndeint.o
 OBJS-$(CONFIG_LENSCORRECTION_FILTER) += vf_lenscorrection.o
diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c
index 874d25e72f..521bc53164 100644
--- a/libavfilter/allfilters.c
+++ b/libavfilter/allfilters.c
@@ -347,7 +347,6 @@ extern AVFilter ff_vf_thumbnail;
 extern AVFilter ff_vf_thumbnail_cuda;
 extern AVFilter ff_vf_tile;
 extern AVFilter ff_vf_tinterlace;
-extern AVFilter ff_vf_reinterlace;
 extern AVFilter ff_vf_tlut2;
 extern AVFilter ff_vf_tmix;
 extern AVFilter ff_vf_tonemap;
diff --git a/libavfilter/reinterlace.h b/libavfilter/reinterlace.h
deleted file mode 100644
index b75a79d7ae..00
--- a/libavfilter/reinterlace.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (c) 2017 Vasile Toncu 
- * Copyright (c) 2017 Thomas Mundt 
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * Reinterlace filter
- */
-
-#ifndef AVFILTER_REINTERLACE_H
-#define AVFILTER_REINTERLACE_H
-
-#include "avfilter.h"
-#include "formats.h"
-#include "internal.h"
-#include "video.h"
-#include "libavutil/avassert.h"
-#include "libavutil/imgutils.h"
-#include "libavutil/opt.h"
-#include "libavutil/pixdesc.h"
-#include "libavutil/bswap.h"
-
-enum FilterMode {
-MODE_MERGE,
-MODE_DROP_EVEN,
-MODE_DROP_ODD,
-MODE_PAD,
-	MODE_INTERLEAVE_TOP,
-MODE_INTERLEAVE_BOTTOM,
-MODE_INTERLACE_X2,
-MODE_MERGE_X2,
-MODE_MERGE_TFF,
-MODE_MERGE_BFF,
-MODE_NB,
- };
-
-enum FilterFlags {
-FLAG_NOTHING= 0x00,
-FLAG_VLPF   = 0x01,
-FLAG_EXACT_TB   = 0x02,
-FLAG_CVLPF  = 0x04,
-FLAG_NB
-};
-
-typedef struct {
-const AVClass *class;
-int mode;
-int flags;
-
-AVFrame *prev_frame, *current_frame;
-int64_t current_frame_index;
-
-uint8_t *black_vec[4];
-int black_linesize[4];
-
-int skip_next_frame;
-
-void *thread_data;
-
-uint8_t bit_depth;
-
-void (*lowpass_line)(uint8_t *dstp, ptrdiff_t width, const uint8_t *srcp,
-  ptrdiff_t mref, ptrdiff_t pref, int clip_max);
-
-AVRational preout_time_base;
-
- } ReInterlaceContext;
-
-#if CONFIG_GPL
-void ff_reinterlace_init_x86(ReInterlaceContext *reinterlace);
-#endif
-
-#define OFFSET(x) offsetof

Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-05-31 Thread Thomas Mundt
Hi,

2018-05-30 16:10 GMT+02:00 Vasile Toncu :

> Hello,
>
> I've sent a wrong version in the previous email for patch 3. Please
> ignore. This is the corect one.


the compiler warnings are gone, but fate-filter-pixfmts-tinterlace_pad
still fails.
Why do you replace the usage of draw utils for generating the black lines
in pad mode?
It´s not necessary for the relicensing since I implemented their usage in
vf_tintelace:
https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/58ca446672fec10e851b820ce7df64bd2d1f3a70

Regards,
Thomas
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-05-30 Thread Vasile Toncu

Hello,

I've sent a wrong version in the previous email for patch 3. Please 
ignore. This is the corect one.


Have a good day,
Vasile Toncu
>From 5898c531066f8e6c034eb1c882000f60ba4f0cb9 Mon Sep 17 00:00:00 2001
From: Vasile Toncu 
Date: Tue, 29 May 2018 18:29:06 +0300
Subject: [PATCH] Reint-Patch3

---
 configure |   1 -
 libavfilter/Makefile  |   1 -
 libavfilter/allfilters.c  |   1 -
 libavfilter/reinterlace.h | 131 --
 libavfilter/tinterlace.h  | 116 +++--
 libavfilter/vf_reinterlace.c  | 768 ---
 libavfilter/vf_tinterlace.c   | 834 ++
 libavfilter/x86/Makefile  |   1 -
 libavfilter/x86/vf_reinterlace_init.c | 101 
 libavfilter/x86/vf_tinterlace_init.c  |  41 +-
 10 files changed, 651 insertions(+), 1344 deletions(-)
 delete mode 100644 libavfilter/reinterlace.h
 delete mode 100644 libavfilter/vf_reinterlace.c
 delete mode 100644 libavfilter/x86/vf_reinterlace_init.c

diff --git a/configure b/configure
index 22eeca2..20d9eee 100755
--- a/configure
+++ b/configure
@@ -3400,7 +3400,6 @@ stereo3d_filter_deps="gpl"
 subtitles_filter_deps="avformat avcodec libass"
 super2xsai_filter_deps="gpl"
 pixfmts_super2xsai_test_deps="super2xsai_filter"
-tinterlace_filter_deps="gpl"
 tinterlace_merge_test_deps="tinterlace_filter"
 tinterlace_pad_test_deps="tinterlace_filter"
 tonemap_filter_deps="const_nan"
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index 39f9cb7..c68ef05 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -239,7 +239,6 @@ OBJS-$(CONFIG_IDET_FILTER)   += vf_idet.o
 OBJS-$(CONFIG_IL_FILTER) += vf_il.o
 OBJS-$(CONFIG_INFLATE_FILTER)+= vf_neighbor.o
 OBJS-$(CONFIG_INTERLACE_FILTER)  += vf_tinterlace.o
-OBJS-$(CONFIG_REINTERLACE_FILTER)+= vf_reinterlace.o
 OBJS-$(CONFIG_INTERLEAVE_FILTER) += f_interleave.o
 OBJS-$(CONFIG_KERNDEINT_FILTER)  += vf_kerndeint.o
 OBJS-$(CONFIG_LENSCORRECTION_FILTER) += vf_lenscorrection.o
diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c
index 0b6f585..b44093d 100644
--- a/libavfilter/allfilters.c
+++ b/libavfilter/allfilters.c
@@ -340,7 +340,6 @@ extern AVFilter ff_vf_thumbnail;
 extern AVFilter ff_vf_thumbnail_cuda;
 extern AVFilter ff_vf_tile;
 extern AVFilter ff_vf_tinterlace;
-extern AVFilter ff_vf_reinterlace;
 extern AVFilter ff_vf_tlut2;
 extern AVFilter ff_vf_tmix;
 extern AVFilter ff_vf_tonemap;
diff --git a/libavfilter/reinterlace.h b/libavfilter/reinterlace.h
deleted file mode 100644
index 1035a5b..000
--- a/libavfilter/reinterlace.h
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Copyright (c) 2017 Vasile Toncu 
- * Copyright (c) 2017 Thomas Mundt 
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * Reinterlace filter
- */
-
-#include 
-
-#include "avfilter.h"
-#include "formats.h"
-#include "internal.h"
-#include "video.h"
-#include "libavutil/avassert.h"
-#include "libavutil/imgutils.h"
-#include "libavutil/opt.h"
-#include "libavutil/pixdesc.h"
-
-#include "libavutil/bswap.h"
-
-enum FilterMode {
-MODE_MERGE,
-MODE_DROP_EVEN,
-MODE_DROP_ODD,
-MODE_PAD,
-MODE_INTERLEAVE_TOP,
-MODE_INTERLEAVE_BOTTOM,
-MODE_INTERLACE_X2,
-MODE_MERGE_X2,
-MODE_MERGE_TFF,
-MODE_MERGE_BFF,
-MODE_NB
-};
-
-enum FilterFlags {
-FLAG_NOTHING= 0x00,
-FLAG_VLPF   = 0x01,
-FLAG_EXACT_TB   = 0x02,
-FLAG_CVLPF  = 0x04,
-FLAG_NB
-};
-
-static const AVRational standard_tbs[] = {
-{1, 25},
-{1, 30},
-{1001, 3},
-};
-
-typedef struct {
-const AVClass *class;
-int mode;
-int flags;
-
-AVFrame *prev_frame, *current_frame;
-int64_t current_frame_index;
-
-void *black_vec[4];
-
-int skip_next_frame;
-
-void *thread_data;
-
-uint8_t bit_depth;
-
-void (*lowpass_line)(uint8_t *dstp, ptrdiff_t width, const uint8_t *srcp,
- ptrdiff_t mref, ptrdiff_t pref, int clip_max);
-
-AVRational preout_time_base;
-
-} ReInterlaceContext;
-
-#if CONFIG_GPL
-void ff_reinterlace_init_x86(ReInterlaceContext *rei

Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-05-30 Thread Vasile Toncu

Hello,

Here is patch 3 which renames reinterlace to tinterlace. Fate tests and 
warnings should be ok now.

In patch 4 I will add the new options to the filter.

Thank you,
Vasile Toncu
>From 25d4f0154fe2a8bde3a47491f80ce131ebb20330 Mon Sep 17 00:00:00 2001
From: Vasile Toncu 
Date: Tue, 29 May 2018 18:29:06 +0300
Subject: [PATCH] Reint-Patch3

---
 configure |   1 -
 libavfilter/Makefile  |   1 -
 libavfilter/allfilters.c  |   1 -
 libavfilter/reinterlace.h | 131 --
 libavfilter/tinterlace.h  | 156 +--
 libavfilter/vf_reinterlace.c  | 768 ---
 libavfilter/vf_tinterlace.c   | 826 ++
 libavfilter/x86/Makefile  |   1 -
 libavfilter/x86/vf_reinterlace_init.c | 101 -
 libavfilter/x86/vf_tinterlace_init.c  |  41 +-
 10 files changed, 668 insertions(+), 1359 deletions(-)
 delete mode 100644 libavfilter/reinterlace.h
 delete mode 100644 libavfilter/vf_reinterlace.c
 delete mode 100644 libavfilter/x86/vf_reinterlace_init.c

diff --git a/configure b/configure
index 22eeca2..20d9eee 100755
--- a/configure
+++ b/configure
@@ -3400,7 +3400,6 @@ stereo3d_filter_deps="gpl"
 subtitles_filter_deps="avformat avcodec libass"
 super2xsai_filter_deps="gpl"
 pixfmts_super2xsai_test_deps="super2xsai_filter"
-tinterlace_filter_deps="gpl"
 tinterlace_merge_test_deps="tinterlace_filter"
 tinterlace_pad_test_deps="tinterlace_filter"
 tonemap_filter_deps="const_nan"
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index 39f9cb7..c68ef05 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -239,7 +239,6 @@ OBJS-$(CONFIG_IDET_FILTER)   += vf_idet.o
 OBJS-$(CONFIG_IL_FILTER) += vf_il.o
 OBJS-$(CONFIG_INFLATE_FILTER)+= vf_neighbor.o
 OBJS-$(CONFIG_INTERLACE_FILTER)  += vf_tinterlace.o
-OBJS-$(CONFIG_REINTERLACE_FILTER)+= vf_reinterlace.o
 OBJS-$(CONFIG_INTERLEAVE_FILTER) += f_interleave.o
 OBJS-$(CONFIG_KERNDEINT_FILTER)  += vf_kerndeint.o
 OBJS-$(CONFIG_LENSCORRECTION_FILTER) += vf_lenscorrection.o
diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c
index 0b6f585..b44093d 100644
--- a/libavfilter/allfilters.c
+++ b/libavfilter/allfilters.c
@@ -340,7 +340,6 @@ extern AVFilter ff_vf_thumbnail;
 extern AVFilter ff_vf_thumbnail_cuda;
 extern AVFilter ff_vf_tile;
 extern AVFilter ff_vf_tinterlace;
-extern AVFilter ff_vf_reinterlace;
 extern AVFilter ff_vf_tlut2;
 extern AVFilter ff_vf_tmix;
 extern AVFilter ff_vf_tonemap;
diff --git a/libavfilter/reinterlace.h b/libavfilter/reinterlace.h
deleted file mode 100644
index 1035a5b..000
--- a/libavfilter/reinterlace.h
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Copyright (c) 2017 Vasile Toncu 
- * Copyright (c) 2017 Thomas Mundt 
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-/**
- * @file
- * Reinterlace filter
- */
-
-#include 
-
-#include "avfilter.h"
-#include "formats.h"
-#include "internal.h"
-#include "video.h"
-#include "libavutil/avassert.h"
-#include "libavutil/imgutils.h"
-#include "libavutil/opt.h"
-#include "libavutil/pixdesc.h"
-
-#include "libavutil/bswap.h"
-
-enum FilterMode {
-MODE_MERGE,
-MODE_DROP_EVEN,
-MODE_DROP_ODD,
-MODE_PAD,
-MODE_INTERLEAVE_TOP,
-MODE_INTERLEAVE_BOTTOM,
-MODE_INTERLACE_X2,
-MODE_MERGE_X2,
-MODE_MERGE_TFF,
-MODE_MERGE_BFF,
-MODE_NB
-};
-
-enum FilterFlags {
-FLAG_NOTHING= 0x00,
-FLAG_VLPF   = 0x01,
-FLAG_EXACT_TB   = 0x02,
-FLAG_CVLPF  = 0x04,
-FLAG_NB
-};
-
-static const AVRational standard_tbs[] = {
-{1, 25},
-{1, 30},
-{1001, 3},
-};
-
-typedef struct {
-const AVClass *class;
-int mode;
-int flags;
-
-AVFrame *prev_frame, *current_frame;
-int64_t current_frame_index;
-
-void *black_vec[4];
-
-int skip_next_frame;
-
-void *thread_data;
-
-uint8_t bit_depth;
-
-void (*lowpass_line)(uint8_t *dstp, ptrdiff_t width, const uint8_t *srcp,
- ptrdiff_t mref, ptrdiff_t pref, int clip_max);
-
-AVRational preout_time_base;
-
-} ReInterlaceContext;
-
-#if CONFIG_GPL
-voi

Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-04-25 Thread Thomas Mundt
Hi,

2018-04-25 16:24 GMT+02:00 Vasile Toncu :

> Hello,
>
> Here is patch 3. I renamed reinterlace to tinterlace and replaced the
> functionality of tinterlace with the one from reinterlace. Please review.
>
> Thank you,
> Vasile
>

Same as I wrote for your previous version.
Lots of compiler warnings. Fate tests fail.
Please fix.

Regards,
Thomas
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-04-25 Thread Gyan Doshi



On 4/25/2018 7:54 PM, Vasile Toncu wrote:

Hello,

Here is patch 3. I renamed reinterlace to tinterlace and replaced the 
functionality of tinterlace with the one from reinterlace. Please review.


If any options are new or different from the original tinterlace filter, 
please add doc entries for them in doc/filters.texi


Thanks,
Gyan
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 3/5] Renamed reinterlace to tinterlace

2018-04-25 Thread Vasile Toncu

Hello,

Here is patch 3. I renamed reinterlace to tinterlace and replaced the 
functionality of tinterlace with the one from reinterlace. Please review.


Thank you,
Vasile
>From ee33ed769207a99adb193eece32a5043ff0b6d94 Mon Sep 17 00:00:00 2001
From: Vasile Toncu 
Date: Wed, 25 Apr 2018 11:02:46 +0300
Subject: [PATCH] Patch3

Signed-off-by: Vasile Toncu 
---
 configure |   1 -
 libavfilter/Makefile  |   1 -
 libavfilter/allfilters.c  |   1 -
 libavfilter/reinterlace.h | 125 -
 libavfilter/tinterlace.h  | 155 +--
 libavfilter/vf_reinterlace.c  | 765 ---
 libavfilter/vf_tinterlace.c   | 831 +-
 libavfilter/x86/Makefile  |   1 -
 libavfilter/x86/vf_reinterlace_init.c | 102 -
 libavfilter/x86/vf_tinterlace_init.c  |  42 +-
 10 files changed, 664 insertions(+), 1360 deletions(-)
 delete mode 100644 libavfilter/reinterlace.h
 delete mode 100644 libavfilter/vf_reinterlace.c
 delete mode 100644 libavfilter/x86/vf_reinterlace_init.c

diff --git a/configure b/configure
index dee507c..d8bc940 100755
--- a/configure
+++ b/configure
@@ -3388,7 +3388,6 @@ stereo3d_filter_deps="gpl"
 subtitles_filter_deps="avformat avcodec libass"
 super2xsai_filter_deps="gpl"
 pixfmts_super2xsai_test_deps="super2xsai_filter"
-tinterlace_filter_deps="gpl"
 tinterlace_merge_test_deps="tinterlace_filter"
 tinterlace_pad_test_deps="tinterlace_filter"
 tonemap_filter_deps="const_nan"
diff --git a/libavfilter/Makefile b/libavfilter/Makefile
index af702ba..8f41805 100644
--- a/libavfilter/Makefile
+++ b/libavfilter/Makefile
@@ -294,7 +294,6 @@ OBJS-$(CONFIG_RANDOM_FILTER) += vf_random.o
 OBJS-$(CONFIG_READEIA608_FILTER) += vf_readeia608.o
 OBJS-$(CONFIG_READVITC_FILTER)   += vf_readvitc.o
 OBJS-$(CONFIG_REALTIME_FILTER)   += f_realtime.o
-OBJS-$(CONFIG_REINTERLACE_FILTER)+= vf_reinterlace.o
 OBJS-$(CONFIG_REMAP_FILTER)  += vf_remap.o framesync.o
 OBJS-$(CONFIG_REMOVEGRAIN_FILTER)+= vf_removegrain.o
 OBJS-$(CONFIG_REMOVELOGO_FILTER) += bbox.o lswsutils.o lavfutils.o vf_removelogo.o
diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c
index 5488ff4..643eec2 100644
--- a/libavfilter/allfilters.c
+++ b/libavfilter/allfilters.c
@@ -285,7 +285,6 @@ extern AVFilter ff_vf_random;
 extern AVFilter ff_vf_readeia608;
 extern AVFilter ff_vf_readvitc;
 extern AVFilter ff_vf_realtime;
-extern AVFilter ff_vf_reinterlace;
 extern AVFilter ff_vf_remap;
 extern AVFilter ff_vf_removegrain;
 extern AVFilter ff_vf_removelogo;
diff --git a/libavfilter/reinterlace.h b/libavfilter/reinterlace.h
deleted file mode 100644
index f90b43a..000
--- a/libavfilter/reinterlace.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * Copyright (c) 2018 Vasile Toncu 
- * Copyright (c) 2017 Thomas Mundt 
- *
- * This file is part of FFmpeg.
- *
- * FFmpeg is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * FFmpeg is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with FFmpeg; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#include 
-
-#include "avfilter.h"
-#include "formats.h"
-#include "internal.h"
-#include "video.h"
-#include "libavutil/avassert.h"
-#include "libavutil/imgutils.h"
-#include "libavutil/opt.h"
-#include "libavutil/pixdesc.h"
-
-#include "libavutil/bswap.h"
-
-enum FilterMode {
-MODE_MERGE,
-MODE_DROP_EVEN,
-MODE_DROP_ODD,
-MODE_PAD,
-MODE_INTERLEAVE_TOP,
-MODE_INTERLEAVE_BOTTOM,
-MODE_INTERLACE_X2,
-MODE_MERGE_X2,
-MODE_MERGE_TFF,
-MODE_MERGE_BFF,
-MODE_NB
-};
-
-enum FilterFlags {
-FLAG_NOTHING= 0x00,
-FLAG_VLPF   = 0x01,
-FLAG_EXACT_TB   = 0x02,
-FLAG_CVLPF  = 0x04,
-FLAG_NB
-};
-
-static const AVRational standard_tbs[] = {
-{1, 25},
-{1, 30},
-{1001, 3},
-};
-
-typedef struct {
-const AVClass *class;
-int mode;
-int flags;
-
-AVFrame *prev_frame, *current_frame;
-int64_t current_frame_index;
-
-void *black_vec[4];
-
-int skip_next_frame;
-
-void *thread_data;
-
-uint8_t bit_depth;
-
-void (*lowpass_line)(uint8_t *dstp, ptrdiff_t width, const uint8_t *srcp,
- ptrdiff_t mref, ptrdiff_t pref, int clip_max);
-
-AVRational preout_time_base;
-
-} ReInterlaceContext;
-
-#if CON