Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: "softworkz ." <softworkz-at-hotmail.com@ffmpeg.org>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH] avfilter: Proof of Concept: enable out-of-tree filters
Date: Fri, 28 Mar 2025 22:23:50 +0000
Message-ID: <DM8P223MB03659FC57B4DB3C93E6BACF7BAA02@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <20250328213828.GI4991@pb2>

Hi Michael,


> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of
> Michael Niedermayer
> Sent: Freitag, 28. März 2025 22:38
> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
> Subject: Re: [FFmpeg-devel] [PATCH] avfilter: Proof of Concept: enable
> out-of-tree filters
> 
> 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, ...
> 

[..]

> 
> 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

Git merge only works when there's a common baseline and the only difference is the filter commit on top that you want to merge. It cannot be used when there are different baselines, e.g. the filter is on top of a the latest master branch and you want to merge it into an older (release) branch, as that would add all the differences, not just the filter.
What you can do is cherry-picking the commit which adds the filter, but the bigger the differences of the baseline, the bigger the problems when cherry-picking. 


> 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

The changes are basic in fact, but the trouble it is causing each time is beyond basic.

To give you an idea of what I'm talking about I've recorded a short screencast to illustrate what I mean:

https://gist.github.com/softworkz/750da15adb259fa13c6b32277647d54e 

Thanks,
sw




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

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

  parent reply	other threads:[~2025-03-28 22:24 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-13 12:18 [FFmpeg-devel] [PATCH] avfilter: POC: " Leandro Santiago
2025-03-13 12:20 ` Leandro Santiago
2025-03-14 15:04 ` Michael Niedermayer
2025-03-14 16:13   ` Leandro Santiago
2025-03-14 20:58     ` Michael Niedermayer
2025-03-14 16:57 ` Lynne
2025-03-14 18:21   ` Nicolas George
2025-03-14 19:43     ` Leandro Santiago
2025-03-14 22:45   ` Soft Works
2025-03-19 13:08 ` [FFmpeg-devel] [PATCH] avfilter: Proof of Concept: " Leandro Santiago
2025-03-24 15:56 ` Leandro Santiago
2025-03-24 16:20   ` Leandro Santiago
2025-03-25 18:05     ` Ronald S. Bultje
2025-03-26  2:59       ` [FFmpeg-devel] =?gb18030?b?u9i4tKO6ICBbUEFUQ0hdIGF2ZmlsdGVyOiBQ?= =?gb18030?q?roof_of_Concept=3A_enable_out-of-tree_filters?= yangyalei via ffmpeg-devel
2025-03-26  4:26       ` [FFmpeg-devel] [PATCH] avfilter: Proof of Concept: enable out-of-tree filters Zhao Zhili
2025-03-26  6:09       ` softworkz .
2025-03-26 13:51         ` Leandro Santiago
2025-03-26  9:37       ` Leandro Santiago
2025-03-28 21:38     ` Michael Niedermayer
2025-03-28 22:18       ` Nicolas George
2025-03-28 22:23       ` softworkz . [this message]
2025-03-29  1:16         ` Michael Niedermayer
2025-03-29  1:45           ` softworkz .
2025-03-29 23:30             ` Michael Niedermayer
2025-03-30  0:51               ` softworkz .
2025-03-30 21:27                 ` Michael Niedermayer
2025-03-30 22:23                   ` softworkz .
2025-03-29 14:52       ` Leandro Santiago
2025-03-30  0:04         ` Michael Niedermayer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DM8P223MB03659FC57B4DB3C93E6BACF7BAA02@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM \
    --to=softworkz-at-hotmail.com@ffmpeg.org \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git