From: Soft Works <softworkz-at-hotmail.com@ffmpeg.org>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] Democratization
Date: Tue, 21 Jan 2025 06:52:27 +0000
Message-ID: <DM8P223MB0365412AC01A732C8FEA95C0BAE62@DM8P223MB0365.NAMP223.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <20250121004110.GA4991@pb2>
> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-bounces@ffmpeg.org> On Behalf Of
> Michael Niedermayer
> Sent: Tuesday, January 21, 2025 1:41 AM
> To: FFmpeg development discussions and patches <ffmpeg-
> devel@ffmpeg.org>
> Subject: Re: [FFmpeg-devel] Democratization
>
> Hi Gyan
>
> On Mon, Jan 20, 2025 at 11:44:41PM +0530, Gyan Doshi wrote:
> >
> >
> > On 2025-01-20 11:14 pm, Soft Works wrote:
> > > - An indication that the aim and direction of the contribution is
> > > generally acceptable
> >
> > This the crux of the matter. There appear to be two camps at odds
> with one
> > another:
> >
> > 1) a conservative camp which wants to avoid features or changes
> which don't
> > neatly fit within a conventional pure architecture with clear
> separation of
> > roles and duties, or features which are of use only to some users
> >
> > and,
> >
> > 2) a broadband camp which accepts features which are niche or which
> require
> > some hybrid accommodation in its implementation.
> >
> > For most of ffmpeg history, the latter has been the dominant camp.
> But not
> > in recent history.
> > Tweaking the structures or procedures of governance can't
> ultimately bridge
> > this chasm. It's almost like these camps should be part of
> different
> > projects.
Well, as long as ffmpeg remains to be camp (2)... ;-)
George's suggestion sounds much better to me, if that would give everybody what they want, keeping both camps under a single hood.
> We need plugins
> please lobby for a plugin architecture
I'd love to see an extensibility model, I have one or two things for which there's clearly no place in the ffmpeg codebase.
But this can't be a remedy for those problems above:
- Plugins cannot change the behavior of existing components
- Many changes/additions cannot be applied via an extensibility model
- Eventually it would create even more room for rejecting contributions
by saying it should be done as a plugin
- Nothing is won for anybody when you end up having dozens of plugins which you need to compile for another dozen of platforms
A plugin model should serve as a way for serving very specific individual use cases, but not as a means for rejecting contributions which provide common value for many users.
Anyway we already have a kind of plugin model - at compile time at least
./configure allows fine grained control of what to include and what not, that I wonder whether this couldn't be leveraged for controversial cases - to achieve some middle ground between both "camps"?
Like:
- Old or niche-audience codecs and formats could be declared "unsupported", moved to an 'unsupported' subfolder and excluded from the ./configure default
- New contributions where there is doubt about the size of audience or whether the contributor/maintainer will stay on track over time, could be added on a trial basis, declared as "experimental" and not be included in the default compile config for a certain amount of time.
(play the maintenance card? >> use modern tools for refactoring where it doesn't matter if it's 100 or 1000 codecs to make a change to)
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".
next prev parent reply other threads:[~2025-01-21 6:52 UTC|newest]
Thread overview: 113+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20250102141731.GR4991@pb2>
[not found] ` <20250102163807.GB7285@haasn.xyz>
[not found] ` <20250114170615.GD4991@pb2>
[not found] ` <eafdd773-0055-4619-b1e2-bf4d4266ee4e@gmail.com>
[not found] ` <20250117173914.GN4991@pb2>
[not found] ` <f5f57e16-8f34-4836-9b46-f31a753dd990@gmail.com>
2025-01-20 1:28 ` Michael Niedermayer
2025-01-20 6:21 ` Kieran Kunhya via ffmpeg-devel
2025-01-20 15:45 ` Soft Works
2025-01-20 16:15 ` Marth64
2025-01-20 16:38 ` Marth64
2025-01-21 0:36 ` Michael Niedermayer
2025-01-24 19:36 ` Rémi Denis-Courmont
2025-01-24 21:02 ` Nicolas George
2025-01-25 6:21 ` Rémi Denis-Courmont
2025-01-25 7:55 ` Vittorio Giovara
2025-01-25 20:26 ` Michael Niedermayer
2025-01-25 21:08 ` Rémi Denis-Courmont
2025-01-25 21:39 ` Rémi Denis-Courmont
2025-01-25 22:13 ` Marth64
2025-01-25 23:23 ` Kieran Kunhya via ffmpeg-devel
2025-01-25 22:40 ` Marth64
2025-01-26 15:06 ` Michael Niedermayer
2025-01-26 15:11 ` Kieran Kunhya via ffmpeg-devel
2025-01-26 16:35 ` Rémi Denis-Courmont
2025-01-26 17:34 ` Marth64
2025-01-26 18:07 ` Marth64
2025-01-26 18:43 ` Gyan Doshi
2025-01-26 18:51 ` Marth64
2025-01-26 19:17 ` Michael Niedermayer
2025-01-26 19:39 ` Kieran Kunhya via ffmpeg-devel
2025-01-26 20:40 ` Rémi Denis-Courmont
2025-01-26 20:51 ` Kieran Kunhya via ffmpeg-devel
2025-01-26 21:20 ` Kieran Kunhya via ffmpeg-devel
2025-01-26 22:01 ` Marth64
2025-01-28 18:21 ` Michael Niedermayer
2025-01-29 6:40 ` Zhao Zhili
2025-01-29 12:39 ` Nicolas George
2025-01-29 15:16 ` Niklas Haas
2025-01-29 16:12 ` compn
2025-01-29 16:22 ` Vittorio Giovara
2025-01-29 17:02 ` Soft Works
2025-01-29 17:41 ` Marth64
2025-01-29 18:26 ` Marth64
2025-01-29 19:36 ` Kieran Kunhya via ffmpeg-devel
2025-01-29 20:20 ` Marth64
2025-01-29 20:54 ` Nicolas George
2025-01-29 21:08 ` Marth64
2025-01-29 21:45 ` Nicolas George
2025-01-30 6:12 ` Vittorio Giovara
2025-01-30 8:02 ` Nicolas George
2025-01-30 9:45 ` Vittorio Giovara
2025-01-31 0:03 ` Soft Works
2025-01-31 0:14 ` Vittorio Giovara
2025-02-01 13:50 ` Michael Niedermayer
2025-01-29 20:04 ` Ronald S. Bultje
2025-01-29 21:27 ` Niklas Haas
2025-01-29 21:39 ` Nicolas George
2025-02-01 14:15 ` Michael Niedermayer
2025-01-29 20:51 ` Nicolas George
2025-01-29 21:21 ` Niklas Haas
2025-01-29 21:36 ` Nicolas George
2025-01-30 6:08 ` Vittorio Giovara
2025-01-29 23:26 ` Soft Works
2025-01-30 6:35 ` Vittorio Giovara
2025-01-30 23:21 ` Soft Works
2025-01-31 0:14 ` Vittorio Giovara
2025-01-31 1:07 ` Soft Works
2025-01-30 9:50 ` Vittorio Giovara
2025-02-01 14:46 ` Michael Niedermayer
2025-02-01 14:48 ` Kieran Kunhya via ffmpeg-devel
2025-02-01 15:03 ` Michael Niedermayer
2025-02-01 16:10 ` Kieran Kunhya via ffmpeg-devel
2025-02-01 15:11 ` James Almer
[not found] ` <dffa122a-f13a-4e95-8210-9053a6832e6a@e-blokos.com>
2025-02-01 16:03 ` James Almer
2025-02-01 20:18 ` Nicolas George
2025-02-01 13:44 ` Michael Niedermayer
2025-02-01 20:20 ` Nicolas George
2025-02-01 21:00 ` Soft Works
2025-01-29 9:45 ` Vittorio Giovara
2025-01-29 10:32 ` Soft Works
2025-01-29 10:51 ` Vittorio Giovara
2025-01-29 11:52 ` Soft Works
2025-01-29 14:38 ` Vittorio Giovara
2025-01-29 15:24 ` Soft Works
2025-01-29 16:24 ` Vittorio Giovara
2025-01-29 16:44 ` Soft Works
2025-01-30 8:02 ` Tobias Rapp
2025-01-29 16:58 ` Marth64
2025-01-29 17:06 ` Soft Works
2025-01-29 17:14 ` Marth64
2025-01-29 17:22 ` Soft Works
2025-01-29 17:38 ` Vittorio Giovara
2025-01-29 18:13 ` Soft Works
2025-01-29 18:23 ` Marth64
2025-01-29 17:15 ` Soft Works
2025-01-26 21:24 ` Michael Niedermayer
2025-01-26 21:41 ` Kieran Kunhya via ffmpeg-devel
2025-01-27 9:03 ` Vittorio Giovara
2025-01-20 17:44 ` Soft Works
2025-01-20 18:14 ` Gyan Doshi
2025-01-20 21:04 ` Nicolas George
2025-01-21 0:41 ` Michael Niedermayer
2025-01-21 6:52 ` Soft Works [this message]
2025-01-25 18:04 ` Michael Niedermayer
2025-01-24 20:01 ` Rémi Denis-Courmont
2025-01-20 17:59 ` Nicolas George
2025-01-20 18:18 ` Marth64
2025-01-20 18:46 ` Soft Works
2025-01-20 20:57 ` Nicolas George
2025-01-20 21:08 ` Marth64
2025-01-20 22:20 ` Marth64
2025-01-20 18:23 ` Marth64
2025-01-20 20:50 ` Nicolas George
2025-01-20 21:00 ` Soft Works
2025-01-21 0:55 ` Michael Niedermayer
2025-01-21 4:29 ` Marth64
2025-01-22 20:51 ` Nicolas George
2025-01-22 22:00 ` Soft Works
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=DM8P223MB0365412AC01A732C8FEA95C0BAE62@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