Message ID | a0877a82-beab-d2f4-4553-c537363e5b46@tremend.com |
---|---|
State | New |
Headers | show |
2018-02-05 11:58 GMT+01:00 Vasile Toncu <vasile.toncu@tremend.com>:
> I'm looking forward to modify *tinterlace* filter from GPL to LGPL.
I was under the impression you had already written a new filter
licensed under LGPL: What happened to it?
Carl Eugen
>> I'm looking forward to modify *tinterlace* filter from GPL to LGPL. > I was under the impression you had already written a new filter > licensed under LGPL: What happened to it? Yes, I wrote one, reinterlace. It implements tinterlace functionality as it was on version n3.0.2, without ASM opts. First, I was thinking to update it, to meet the current tinterlace version. But, it can save a lot of work if the copyright holder would agree to change the license. From previous emails, I found that this has been done in the past with other ffmpeg components. Do you believe that this can be done with tinterlace? -Vasile
2018-02-05 14:06 GMT+01:00 Vasile Toncu <vasile.toncu@tremend.com>: > >>> I'm looking forward to modify *tinterlace* filter from GPL to LGPL. >> >> I was under the impression you had already written a new filter >> licensed under LGPL: What happened to it? > > Yes, I wrote one, reinterlace. It implements tinterlace functionality as it > was on version n3.0.2, without ASM opts. Sorry if you have already answered this question: Can the existing asm optimizations be used with the filter you wrote? Carl Eugen
>> Yes, I wrote one, reinterlace. It implements tinterlace functionality as it >> was on version n3.0.2, without ASM opts. > Sorry if you have already answered this question: > Can the existing asm optimizations be used with the filter you wrote? Yes, I can integrate them with my filter. -Vasile Toncu
2018-02-05 14:22 GMT+01:00 Vasile Toncu <vasile.toncu@tremend.com>: > >>> Yes, I wrote one, reinterlace. It implements tinterlace functionality as >>> it >>> was on version n3.0.2, without ASM opts. >> >> Sorry if you have already answered this question: >> Can the existing asm optimizations be used with the filter you wrote? > > Yes, I can integrate them with my filter. Then the best solution - imo! - is that you send a patch that adds your new filter that uses the existing asm optimizations if FFmpeg was configured for GPL. First send one patch only adding a new filter (with a new name) to get some technical review One possible procedure for a change that can actually be committed is that you send two patches: One that removes the existing filter (but not the asm code) and one that adds your new filter. Carl Eugen
Hi, 2018-02-05 11:58 GMT+01:00 Vasile Toncu <vasile.toncu@tremend.com>: > Hello, > > I'm looking forward to modify *tinterlace* filter from GPL to LGPL. The > ASM opts will remain under GPL. > > Previously I tried to make a whole new filter, *reinterlace*, that acts > just like tinterlace, but it happens that this task results in unnecessary > duplicated code. > > I want to address the main copyright holders Thomas Mundt, Stefano > Sabatini, Baptiste Coudurier and other ffmpeg maintainers for their > approval. > I have no objections changing the license to LGPL, but can only determine for the parts I authored. That´s the complex vertical low pass filter and support for high bitdepths. Regards, Thomas
No objections from my side for the parts I contributed (but IIRC was mostly a port of code authored by other people). Best regards. Il 06/feb/2018 19:19, "Thomas Mundt" <tmundt75@gmail.com> ha scritto: > Hi, > > 2018-02-05 11:58 GMT+01:00 Vasile Toncu <vasile.toncu@tremend.com>: > > > Hello, > > > > I'm looking forward to modify *tinterlace* filter from GPL to LGPL. The > > ASM opts will remain under GPL. > > > > Previously I tried to make a whole new filter, *reinterlace*, that acts > > just like tinterlace, but it happens that this task results in > unnecessary > > duplicated code. > > > > I want to address the main copyright holders Thomas Mundt, Stefano > > Sabatini, Baptiste Coudurier and other ffmpeg maintainers for their > > approval. > > > > I have no objections changing the license to LGPL, but can only determine > for the parts I authored. > That´s the complex vertical low pass filter and support for high bitdepths. > > Regards, > Thomas > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel >
Hello, > Then the best solution - imo! - is that you send a patch that adds your > new filter that uses the existing asm optimizations if FFmpeg was > configured for GPL. > First send one patch only adding a new filter (with a new name) to > get some technical review I'll send a patch with my new filter, to have some review. > One possible procedure for a change that can actually be committed > is that you send two patches: > One that removes the existing filter (but not the asm code) and one > that adds your new filter. If everything goes well, I'll go on with this step too. At this moment, two people agreed to change the license of the tinterlace - Thomas Mundt and Stefano Sabatini. From the git history I figured out that they wrote a quite big part of tinterlace. Other parts are written mainly by the maintainers of ffmpeg project. That being said, will it be possible to change the tinterlace to LGPL?
Vasile Toncu (2018-02-08): > From the git history I figured out that they wrote a quite big part of > tinterlace. Other parts are written mainly by the maintainers of ffmpeg > project. Look at the first commit: lavfi: port tinterlace filter from MPlayer That means you need to look at the MPlayer history too to know all the authors. Regards,
>> From the git history I figured out that they wrote a quite big part of >> tinterlace. Other parts are written mainly by the maintainers of ffmpeg >> project. > Look at the first commit: > > lavfi: port tinterlace filter from MPlayer > > That means you need to look at the MPlayer history too to know all the > authors. Yes, you are right. It is Mr. Michael Zucchi <notzed@ximian.com> who holds the authorship for tinterlace in MPlayer. The ximian company is dead/acquired since 2003. I'll try to get in touch with Michael. Thanks, -Vasile Toncu
Shall I start a new thread for the patch with the new filter, or can I use this one?
diff --git a/Changelog b/Changelog index 7a73447..aae5564 100644 --- a/Changelog +++ b/Changelog @@ -2,6 +2,7 @@ Entries are sorted chronologically from oldest to youngest within each release, releases are sorted from youngest to oldest. version <next>: +- Made tinterlace filter LGPL, expect the part with ASM opts - Bitstream filters for editing metadata in H.264, HEVC and MPEG-2 streams - Dropped support for OpenJPEG versions 2.0 and below. Using OpenJPEG now requires 2.1 (or later) and pkg-config. diff --git a/configure b/configure index 2711382..f58038f 100755 --- a/configure +++ b/configure @@ -3281,7 +3281,7 @@ 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_filter_deps="" tinterlace_merge_test_deps="tinterlace_filter" tinterlace_pad_test_deps="tinterlace_filter" tonemap_filter_deps="const_nan" diff --git a/libavfilter/tinterlace.h b/libavfilter/tinterlace.h index b5c39aa..ceda17c 100644 --- a/libavfilter/tinterlace.h +++ b/libavfilter/tinterlace.h @@ -6,16 +6,16 @@ * This file is part of FFmpeg. * * FFmpeg is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by + * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; either version 2 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 General Public License for more details. + * GNU Lesser General Public License for more details. * - * You should have received a copy of the GNU General Public License along + * 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. */ @@ -67,6 +67,8 @@ typedef struct TInterlaceContext { ptrdiff_t mref, ptrdiff_t pref, int clip_max); } TInterlaceContext; +#ifdef CONFIG_GPL void ff_tinterlace_init_x86(TInterlaceContext *interlace); +#endif #endif /* AVFILTER_TINTERLACE_H */ diff --git a/libavfilter/vf_tinterlace.c b/libavfilter/vf_tinterlace.c index f13791d..238704e 100644 --- a/libavfilter/vf_tinterlace.c +++ b/libavfilter/vf_tinterlace.c @@ -7,16 +7,16 @@ * This file is part of FFmpeg. * * FFmpeg is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by + * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation; either version 2 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 General Public License for more details. + * GNU Lesser General Public License for more details. * - * You should have received a copy of the GNU General Public License along + * 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.,
Hello, I'm looking forward to modify *tinterlace* filter from GPL to LGPL. The ASM opts will remain under GPL. Previously I tried to make a whole new filter, *reinterlace*, that acts just like tinterlace, but it happens that this task results in unnecessary duplicated code. I want to address the main copyright holders Thomas Mundt, Stefano Sabatini, Baptiste Coudurier and other ffmpeg maintainers for their approval. Here is the path for the new changes: From 6cd7a4c7a963baacd9bdcc1b5ded8eef78de521b Mon Sep 17 00:00:00 2001 From: Vasile Toncu <vasile.toncu@tremend.com> Date: Mon, 5 Feb 2018 12:32:30 +0200 Subject: [PATCH] Converted tinterlace from GPL to LGPL, expect the part with ASM opts. --- Changelog | 1 + configure | 2 +- libavfilter/tinterlace.h | 8 +++++--- libavfilter/vf_tinterlace.c | 10 +++++++--- 4 files changed, 14 insertions(+), 7 deletions(-) * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ @@ -262,15 +262,19 @@ static int config_out_props(AVFilterLink *outlink) tinterlace->lowpass_line = lowpass_line_complex_c_16; else tinterlace->lowpass_line = lowpass_line_complex_c; +#ifdef CONFIG_GPL if (ARCH_X86) ff_tinterlace_init_x86(tinterlace); +#endif } else if (tinterlace->flags & TINTERLACE_FLAG_VLPF) { if (tinterlace->csp->comp[0].depth > 8) tinterlace->lowpass_line = lowpass_line_c_16; else tinterlace->lowpass_line = lowpass_line_c; +#ifdef CONFIG_GPL if (ARCH_X86) ff_tinterlace_init_x86(tinterlace); +#endif } av_log(ctx, AV_LOG_VERBOSE, "mode:%d filter:%s h:%d -> h:%d\n", tinterlace->mode,