From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 3DAAB4C3BE for ; Sat, 2 Aug 2025 14:22:22 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 694AE68C260; Sat, 2 Aug 2025 17:22:17 +0300 (EEST) Received: from haasn.dev (haasn.dev [78.46.187.166]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id E98D9687DE8 for ; Sat, 2 Aug 2025 17:22:10 +0300 (EEST) Received: from haasn.dev (unknown [10.30.1.1]) by haasn.dev (Postfix) with UTF8SMTP id 5D6404079C for ; Sat, 2 Aug 2025 16:22:10 +0200 (CEST) Date: Sat, 2 Aug 2025 16:22:10 +0200 Message-ID: <20250802162210.GB146423@haasn.xyz> From: Niklas Haas To: FFmpeg development discussions and patches In-Reply-To: References: <20250723135626.1390296-1-ffmpeg@haasn.xyz> <20250723171838.GB1401694@haasn.xyz> <20250724131154.GB95314@haasn.xyz> <20250724225800.GB34906@haasn.xyz> <20250729105549.GB5455@haasn.xyz> MIME-Version: 1.0 Content-Disposition: inline Subject: Re: [FFmpeg-devel] Again pre-multiplied alpha X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: T24gU2F0LCAwMiBBdWcgMjAyNSAxMTo0MDo1NCArMDIwMCBOaWNvbGFzIEdlb3JnZSA8Z2Vvcmdl QG5zdXAub3JnPiB3cm90ZToKPiBOaWtsYXMgSGFhcyAoSEUxMjAyNS0wNy0yOSk6Cj4gPiBJIHRo aW5rIHRoaXMgd291bGQgaW52b2x2ZSBtb3JlIGludmFzaXZlIGNoYW5nZXMgKGkuZS4gYWRkaW5n IG5lZ290aWF0aW9uIHRvCj4gPiB0aGUgYXZmaWx0ZXIgY29kZSBmb3IgdGhpcyBhbmQgaWRlYWxs eSBvdGhlciBwcm9wZXJ0aWVzKSB0aGF0IHlvdSBhbmQgSSBib3RoCj4gPiBhZ3JlZWQgaXMgb3V0 IG9mIHNjb3BlIG9mIHRoaXMgc2VyaWVzLgo+Cj4gTm8gaXQgZG9lcyBub3QuIFlvdSBqdXN0IG5l ZWQgdG8gYWRkIGEgZmxhZyDigJx0aGlzIGZpbHRlciBzdXBwb3J0cwo+IHByZW11bHRpcGxpZWQg YWxwaGHigJ0gYW5kIGhhdmUgdGhlIGZyYW1ld29yayB0aHJvdyBhbiBlcnJvciBpZiB0aGUgZmxh Zwo+IGlzIG5vdCBzZXQuCgpJIGRvbid0IHRoaW5rIHlvdSB1bmRlcnN0YW5kIHRoZSBwcm9ibGVt IGhlcmUuIFN1Y2ggYSBmbGFnIHdvdWxkIGFjY29tcGxpc2gKbm90aGluZywgc2luY2UgdGhlcmUg YXJlIG5vIGZpbHRlcnMgdGhhdCB3b3VsZCBhY3R1YWxseSBzZXQgaXQuCgo+ID4gWW91IGFyZ3Vl IHRoYXQgcHJlbXVsdGlwbGllZCBmcmFtZXMgd2VyZSBhbiAiYW5lY2RvdGFsIGV4cGVyaW1lbnRh bCBmZWF0dXJlIgo+ID4gb25seSB1cCB1bnRpbCB0aGlzIHNlcmllcywgYnV0IHRoaXMgaXMgZmxh dCBvdXQgdW50cnVlOyBiZWNhdXNlIHRoaXMgc2VyaWVzCj4gPiBkb2VzIG5vdCBjaGFuZ2UgaG93 IGZpbGVzIGFyZSBkZWNvZGVkLiBJbiBldmVyeSBzY2VuYXJpbyB0aGF0IHlvdSB3b3JyeSBhYm91 dAo+ID4gbm93IGdldHRpbmcgdGhlIHdyb25nIHJlc3VsdCwgeW91IHdvdWxkIGhhdmUgZ290dGVu IHRoZSB3cm9uZyByZXN1bHQgZXZlbgo+ID4gYmVmb3JlIG15IGNoYW5nZXMuCj4KPiBUaGF0IGlz IHRoZSBwb2ludDogeW91IGFyZSBtYWtpbmcgYSBjaGFuZ2UgdG8gbWFrZSBpdCB3b3JrLiBZb3Ug YXJlCj4gb2ZmaWNpYWxpemluZyBzdXBwb3J0LCBkbyBpdCBwcm9wZXJseS4KPgo+IFsuLi5dCj4K PiBJIGRvIG5vdCB1bmRlcnN0YW5kIHdoeSB5b3Ugd2FudCB0byB1c2UgcGFzdCBzbG9wcGluZXNz IHRvIGp1c3RpZnkKPiBwcmVzZW50IHNsb3BwaW5lc3Mgd2hlbiB5b3UgY291bGQgdHJlYXQgaXQg YXMgbG93LWhhbmdpbmcgZnJ1aXRzLgoKV2hhdCB5b3UgYXJlIGRvaW5nIGFtb3VudHMgdG8gbGV0 dGluZyBwZXJmZWN0IGJlIHRoZSBlbmVteSBvZiBnb29kLiBJIGRvbid0CnNlZSBhbnl0aGluZyAi c2xvcHB5IiBpbiBteSBjb21taXRzOyB0aGV5IGFyZSBpbnRyb2R1Y2luZyBhIHdlbGwtc2NvcGVk IGZlYXR1cmUKd2l0aCB3ZWxsLWRlZmluZWQgc2VtYW50aWNzIHRoYXQgY29ycmVzcG9uZCB0byB1 c2VyIGV4cGVjdGF0aW9uLCBhbmQgeW91CmFyZSBlc3NlbnRpYWxseSBibG9ja2luZyBpdCBiZWNh dXNlIHlvdSB3YW50IGl0IHRvIGRvIG1vcmUgdGhhbiBpdCBkb2VzPwoKV291bGQgaXQgYmUgbmlj ZSBpZiBsaWJhdmZpbHRlciBjb3VsZCBuZWdvdGlhdGUgYWxsIEFWRnJhbWUgcHJvcGVydGllcz8g WWVzLgpJcyB0aGF0IGEgcmVhc29uYWJsZSByZXF1aXJlbWVudCBmb3IgYWRkaW5nIG5ldyBBVkZy YW1lIGZpZWxkPyBOby4KCj4gWW91IHdhbnQgdGhlIGdsb3J5PyBEbyB0aGUgd29yay4gQXMgSSBw b2ludGVkIGluIHRoZSBmaXJzdCBwYXJhZ3JhcGgsIGl0Cj4gaXMgcXVpdGUgZWFzeS4gSXQgY2Vy dGFpbmx5IHdvdWxkIGhhdmUgdGFrZW4geW91IGxlc3MgdGltZSB0aGFuIGFyZ3VpbmcKPiB3aXRo IG1lLgoKSSBjb3VsZCBlYXNpbHkgbWlycm9yIHRoaXMgc2VudGltZW50IGJhY2sgYXQgeW91LiBJ ZiB5b3Ugd2FudCBsaWJhdmZpbHRlciB0bwpuZWdvdGlhdGUgZXZlcnl0aGluZyBhbmQgdGhlIGtp dGNoZW4gc2luaywgeW91IGFyZSBtb3JlIHRoYW4gd2VsY29tZSB0bwpzdWJtaXQgcGF0Y2hlcyB5 b3Vyc2VsZi4gVGhhdCdzIGhvdyBvcGVuIHNvdXJjZSB3b3Jrcy4KCkxhc3QgdGltZSBJIGNoZWNr ZWQsIHlvdSBkbyBub3QgcGF5IG1lIHRvIGltcGxlbWVudCB5b3VyIGRlc2lyZXMsIHNvIHdoeQpz aG91bGQgSSBpbnZlc3QgdW5kdWUgZWZmb3J0IGltcGxlbWVudCB5b3VyIGZlYXR1cmUgcmVxdWVz dHM/IFRoZSBuaWNlCnRoaW5nIGFib3V0IG9wZW4gc291cmNlIGlzIHRoYXQgZW50aXRsZWQgdXNl cnMgY2FuIGp1c3QgYmUgaWdub3JlZC4KCj4gQnkgdGhlIHdheSwgdGhlcmUgaXMgYW5vdGhlciBm bGF3IHRoYXQgSSBqdXN0IG5vdGljZWQgaW4gdGhpcyBzZXJpZXM6IGl0Cj4gZG9lcyBub3QgaGF2 ZSBhbnkgdHJhbnN2ZXJzZSB1c2VyIGRvY3VtZW50YXRpb24uIFN1cmUgeW91IGFkZGVkIHRoZQo+ IGRvY3VtZW50YXRpb24gZm9yIHRoZSBvcHRpb25zLCBidXQgaXQgYWxzbyBuZWVkIGEgZmV3IHBh cmFncmFwaHMgdG8KPiBleHBsYWluIHRvIHRoZSB1c2VyIHdoYXQgcHJlbXVsdGlwbGllZCBhbHBo YSBpcyBhbmQgd2hhdCB0byBkbyB3aXRoIGl0LgoKQnV0IGFsc28gYWNjb3JkaW5nIHRvIHlvdSwg aXQgaXMgYW4gIm9ic2N1cmUgZXhwZXJ0LWxldmVsIGZlYXR1cmUiOyBzbwp3aGljaCBpcyBpdD8g QSBzdXBlciB1c2VmdWwgdXNlci1mYWNpbmcgZmVhdHVyZSB0aGF0IG5lZWRzIHRvIGJlIGRvY3Vt ZW50ZWQKbWV0aWN1bG91c2x5LCBvciBhbiBvYnNjdXJlIG9wdGlvbiBmb3IgZXhwZXJ0cyB3aG8g a25vdyB3aGF0IHRoZXkgYXJlIGRvaW5nPwoKUGVyc29uYWxseSwgSSBhbSBtb3JlIGluY2xpbmVk IHRvIGJlbGlldmUgaW4gdGhlIGxhdHRlciwgc28gSSBkb24ndCBzZWUKd2hhdCBhbGwgdGhlIGZ1 c3MgaXMgYWJvdXQuCgotLS0KCkFud2F5cywgdW5sZXNzIHlvdSBoYXZlIG1vcmUgY29uY3JldGUg ZmVlZGJhY2ssIEkgYW0gZ29pbmcgdG8gY29uc2lkZXIgdGhlCmN1cnJlbnQgdmVyc2lvbiBvZiB0 aGlzIHNlcmllcyAob24gRm9yZ2VKbykgYXMgZmluYWwgYW5kIG1lcmdlIGl0IGluIH43MkgKaWYg dGhlcmUgaXMgbm8gZnVydGhlciAobGVnaXRpbWF0ZSkgb2JqZWN0aW9uLgoKSWYgeW91IGRpc2Fn cmVlIHdpdGggdGhhdCwgSSBzdWdnZXN0IHdlIGludm9sdmUgdGhlIFRDLCBhcyBJIGRvbid0IHNl ZSB1cwptYWtpbmcgbW9yZSBncm91bmRzIGhlcmUuCgo+Cj4gLS0KPiAgIE5pY29sYXMgR2Vvcmdl Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBmZm1w ZWctZGV2ZWwgbWFpbGluZyBsaXN0Cj4gZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKPiBodHRwczov L2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0aW5mby9mZm1wZWctZGV2ZWwKPgo+IFRvIHVuc3Vic2Ny aWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbAo+IGZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZm bXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZt cGVnLWRldmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8v ZmZtcGVnLWRldmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwK ZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJl Ii4K