[FFmpeg-devel] [PATCH] avfilter: Proof of Concept: enable out-of-tree filters

Leandro Santiago leandrosansilva at gmail.com
Wed Mar 26 11:37:48 EET 2025


On 3/25/25 19:05, Ronald S. Bultje wrote:
> Hi,
>
> On Mon, Mar 24, 2025 at 12:20 PM Leandro Santiago <leandrosansilva at gmail.com>
> wrote:
>
>> 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 :-)
>
> I'm not sure I understand the rationale or goal of this. It seems you're
> trying to create a process for extending the source/build tree with
> components not part of our git. Is this something people are interested in?
> I've never heard this use case before.

Yes, that's the goal. I for instance at the moment have been writing a filter in Rust suited to my usecase, that is very unlikely to ever be upstreamed. At the moment I need to hook into different places in the build system, and deal with rebase issues, which is painful.

I am sure other devs have similar problems.

Also, in the same way I'm using Rust, this makes it easier for people to experiment with filters written in other languages of their preference, such as C++ or Zig or whatever, without the concern of whether or not the ffmpeg devs will be willing to upstream their changes.

Another potential usage is extracting some existing "niche" filters into external repositories where they can evolve independently and in a different pace as the main ffmpeg repo.

This can also open space for a "staging" area, where new experimental filters are developed, until they get mature enough to be upstreamed. On a similar fashion as gstreamer plugins, but resolved at build time instead of runtime.

It's important to notice that I am not advocating for turning the current private "API" into a stable, public API. It should be up to the the developers of the external filters to make them build with ffmpeg.

I am not really familiar with the other libav* libraries, but the "external components" could be useful for them as well, for experimental input devices, codecs, etc..

Leandro

>
> Ronald
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list