Hi Leandro

On Mon, Mar 24, 2025 at 05:20:02PM +0100, Leandro Santiago wrote:
> In this iteration I've made the following changes, based on the received 
> feedback:
> 
> - No external tools are needed by the build system.
> 
> - The external filters should be put in ext/libavfilter. Anything there will 
> be included.
> 
> - The build system will execute a file called `configure.sh` in the directory 
> of the external filter. This script has access to the functions and variables 
> defined on `./configure`, as it's included via `.` on sh.
> 
> - I will document the "API" for the external filters as soon the approach is 
> approved, but an example of filter can be found at 
> https://gitlab.com/leandrosansilva/ffmpeg-extra-filter-example . If you are 
> unhappy with the example code hosted on gitlab.com, I can move it elsewhere 
> where it gets easier for you to have access to the code.
> 
> - Essentially, an external filter is composed by at least a `configure.sh` 
> and a `Makefile`.
> 
> I really hope this can be the last iteration, as I ran out of ideas on how to 
> simplify the process, so please let me know your thoughts :-)

How does this compare to simply using
git merge

That is each filter developer simply maintaining a fork of ffmpeg and their
filter, in that fork. Adding lines to configure, Makefile, ...

If we take the last filter as a random example, what it chanegd looks like this:

    avfilter/interlace_vulkan: add interlace_vulkan filter

    This is a Vulkan-accelerated version of the existing interlace filter.

 configure                         |   1 +
 doc/filters.texi                  |   2 +-
 libavfilter/Makefile              |   1 +
 libavfilter/allfilters.c          |   1 +
 libavfilter/vf_interlace_vulkan.c | 313 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 317 insertions(+), 1 deletion(-)

The advantage of "git merge" wether by hand or by a automated tool
is that its not limited to what it can do. Its much more powerfull

and the changes outside adding the filter itself are very basic.
Conflicts are something that we can workaround in many ways if they
become a problem

Also it much easier alows transitioning between actually including a filter
in git master, if the community desires that for a filter later.


thx

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

When the tyrant has disposed of foreign enemies by conquest or treaty, and
there is nothing more to fear from them, then he is always stirring up
some war or other, in order that the people may require a leader. -- Plato

Attachment: signature.asc
Description: PGP signature

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to