From: Niklas Haas <ffmpeg@haasn.xyz> To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org> Subject: Re: [FFmpeg-devel] Again pre-multiplied alpha Date: Sat, 2 Aug 2025 16:22:10 +0200 Message-ID: <20250802162210.GB146423@haasn.xyz> (raw) In-Reply-To: <aI3dJoAXYPKqmsdF@phare.normalesup.org> On Sat, 02 Aug 2025 11:40:54 +0200 Nicolas George <george@nsup.org> wrote: > Niklas Haas (HE12025-07-29): > > I think this would involve more invasive changes (i.e. adding negotiation to > > the avfilter code for this and ideally other properties) that you and I both > > agreed is out of scope of this series. > > No it does not. You just need to add a flag “this filter supports > premultiplied alpha” and have the framework throw an error if the flag > is not set. I don't think you understand the problem here. Such a flag would accomplish nothing, since there are no filters that would actually set it. > > You argue that premultiplied frames were an "anecdotal experimental feature" > > only up until this series, but this is flat out untrue; because this series > > does not change how files are decoded. In every scenario that you worry about > > now getting the wrong result, you would have gotten the wrong result even > > before my changes. > > That is the point: you are making a change to make it work. You are > officializing support, do it properly. > > [...] > > I do not understand why you want to use past sloppiness to justify > present sloppiness when you could treat it as low-hanging fruits. What you are doing amounts to letting perfect be the enemy of good. I don't see anything "sloppy" in my commits; they are introducing a well-scoped feature with well-defined semantics that correspond to user expectation, and you are essentially blocking it because you want it to do more than it does? Would it be nice if libavfilter could negotiate all AVFrame properties? Yes. Is that a reasonable requirement for adding new AVFrame field? No. > You want the glory? Do the work. As I pointed in the first paragraph, it > is quite easy. It certainly would have taken you less time than arguing > with me. I could easily mirror this sentiment back at you. If you want libavfilter to negotiate everything and the kitchen sink, you are more than welcome to submit patches yourself. That's how open source works. Last time I checked, you do not pay me to implement your desires, so why should I invest undue effort implement your feature requests? The nice thing about open source is that entitled users can just be ignored. > By the way, there is another flaw that I just noticed in this series: it > does not have any transverse user documentation. Sure you added the > documentation for the options, but it also need a few paragraphs to > explain to the user what premultiplied alpha is and what to do with it. But also according to you, it is an "obscure expert-level feature"; so which is it? A super useful user-facing feature that needs to be documented meticulously, or an obscure option for experts who know what they are doing? Personally, I am more inclined to believe in the latter, so I don't see what all the fuss is about. --- Anways, unless you have more concrete feedback, I am going to consider the current version of this series (on ForgeJo) as final and merge it in ~72H if there is no further (legitimate) objection. If you disagree with that, I suggest we involve the TC, as I don't see us making more grounds here. > > -- > Nicolas George > _______________________________________________ > 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". _______________________________________________ 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-08-02 14:22 UTC|newest] Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top 2025-07-23 13:47 [FFmpeg-devel] (no subject) Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 01/18] avutil/frame: add AVFrame.alpha_mode Niklas Haas 2025-07-23 16:00 ` Kacper Michajlow 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 02/18] fftools/ffprobe: add support for AVFrame.alpha_mode Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 03/18] avfilter/vf_showinfo: print alpha mode when relevant Niklas Haas 2025-07-23 16:11 ` Kacper Michajlow 2025-07-24 11:19 ` Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 04/18] avcodec/avcodec: add AVCodecContext.alpha_mode Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 05/18] avcodec/encode: enforce alpha mode compatibility at encode time Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 06/18] avcodec/png: set correct alpha mode Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 07/18] avcodec/exr: " Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 08/18] avcodec/libjxl: " Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 09/18] avcodec/libjxlenc: also attach extra channel info Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 10/18] avcodec/jpegxl: parse and signal correct alpha mode Niklas Haas 2025-07-23 16:19 ` Kacper Michajlow 2025-07-24 11:13 ` Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 11/18] avfilter/vf_scale: don't ignore incoming chroma location Niklas Haas 2025-07-24 11:16 ` Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 12/18] fftools/ffmpeg_enc: don't ignore user selected " Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 13/18] fftools/ffmpeg_enc: forward frame alpha mode to encoder Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 14/18] avfilter/vf_premultiply: tag correct alpha mode on result Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 15/18] avfilter/vf_alphamerge: tag correct alpha mode Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 16/18] avfilter/vf_overlay: respect alpha mode tagging by default Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 17/18] avfilter/vf_setparams: add alpha_mode parameter Niklas Haas 2025-07-23 13:47 ` [FFmpeg-devel] [PATCH v2 18/18] avfilter/vf_libplacebo: add an alpha_mode setting Niklas Haas 2025-07-23 14:11 ` [FFmpeg-devel] Again pre-multiplied alpha Nicolas George 2025-07-23 15:18 ` Niklas Haas 2025-07-23 17:02 ` Nicolas George 2025-07-24 11:11 ` Niklas Haas 2025-07-24 14:59 ` Nicolas George 2025-07-24 20:58 ` Niklas Haas 2025-07-28 14:18 ` Nicolas George 2025-07-29 8:55 ` Niklas Haas 2025-08-02 9:40 ` Nicolas George 2025-08-02 14:22 ` Niklas Haas [this message] 2025-08-02 15:07 ` Nicolas George 2025-07-28 0:00 ` Michael Niedermayer 2025-07-28 14:15 ` Nicolas George
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=20250802162210.GB146423@haasn.xyz \ --to=ffmpeg@haasn.xyz \ --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