From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 769E843823 for ; Mon, 2 Jan 2023 23:05:34 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D55CD68BCC2; Tue, 3 Jan 2023 01:05:31 +0200 (EET) Received: from ssq0.pkh.me (laubervilliers-656-1-228-164.w92-154.abo.wanadoo.fr [92.154.28.164]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 710E568BBE6 for ; Tue, 3 Jan 2023 01:05:25 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pkh.me; s=selector1; t=1672700724; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=qqvS98cFfCtwKMMHgCw88fBj1RPMNdy1AncBOOOzBSY=; b=Fh9wQs096I6UPKytVdercfMgbLoUVtz4RWHIeQzur7DaCExfqWS5U3N6ed2iXrsv5nTbJ2 fN3p0/DKZgrpqcouvF/4OSRH7iAlb6IomJUiMofRwpSKmNJ0KwhSEYWI5tFgZyNHObv02i VFJYafe/ssRBcoeuoZkv7sIvDNm9OgM= Received: from ssq0.pkh.me (localhost.localdomain [127.0.0.1]) by ssq0.pkh.me (OpenSMTPD) with ESMTPS id 5510aac6 (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO) for ; Mon, 2 Jan 2023 23:05:23 +0000 (UTC) Date: Tue, 3 Jan 2023 00:05:22 +0100 From: =?utf-8?B?Q2zDqW1lbnQgQsWTc2No?= To: FFmpeg development discussions and patches Message-ID: Mail-Followup-To: FFmpeg development discussions and patches References: <20221105152617.1809282-1-u@pkh.me> <20221106170941.GW1814017@pb2> <20221106173022.GX1814017@pb2> <20230102215733.GX3806951@pb2> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230102215733.GX3806951@pb2> Subject: Re: [FFmpeg-devel] Rework color quantization in palette{gen,use} 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: T24gTW9uLCBKYW4gMDIsIDIwMjMgYXQgMTA6NTc6MzNQTSArMDEwMCwgTWljaGFlbCBOaWVkZXJt YXllciB3cm90ZToKWy4uLl0KPiA+IFNvIEkgZGlkIGEgbG90IG9mIGV4cGVyaW1lbnRzLCBhbmQg dGhlIGV4cGxhbmF0aW9uIGZvciB0aGUgZGVzYXR1cmF0ZWQKPiA+IG91dHB1dCBhdCBsb3cgbnVt YmVyIG9mIGNvbG9ycyBjYW4gYmUgZm91bmQgYXQgdGhlIGVuZCBvZiB0aGlzIGFydGljbGU6Cj4g PiBodHRwOi8vYmxvZy5wa2gubWUvcC8zOS1pbXByb3ZpbmctY29sb3ItcXVhbnRpemF0aW9uLWhl dXJpc3RpY3MuaHRtbAo+IAo+IGludGVycmVzdGluZyBhbmQgaXRzIGltcHJlc3NpdmUgaG93IG11 Y2ggcmVzZWFjcmggeW91IGRpZCBoZXJlCj4gaSBob3BlIHRoaXMgd2lsbCBnZXQgYXBwbGllZAoK VGhhbmtzLiBJIHdhcyBhY3R1YWxseSBwbGFubmluZyB0byBwdXNoIGluIHRoZSBuZXh0IDEyIGhv dXJzIG9yIHNvLCB1bmxlc3MKdGhlcmUgaXMgYW4gb2JqZWN0aW9uLgoKPiBhbHNvIGkgaGFwZSBh IGJpdCB0aGF0IGl0IHdpbGwgZ2V0Cj4gZXh0ZW5kZWQgdG8gaW5jbHVkZSBjbHVzdGVyaW5nIGFz IGluIEVMQkcgY3V6IGl0IHNlZW1zIGEgYml0IG9kZAo+IHRvIGhhdmUgdGhpcyBzb3J0IG9mIGFs dGVybmF0aXZlIGZpbHRlcnMgbmVpdGhlciBkb2VzIGFsbCAuLi4uCgpZZWFoIGF0IHNvbWUgcG9p bnQgd2UgcHJvYmFibHkgd2FudCB0byBncm91cCB0aGUgY2x1c3RlcmluZyBhbmQgdmVjdG9yCnF1 YW50aXphdGlvbiBsb2dpY3MgaW4gYSBjb21tb24gbW9kdWxlLiBCdXQgdGhlcmUgYXJlIGxvdCBv ZiBxdWVzdGlvbnMgQVBJCndpc2Ugd3J0IGl0cyByZWxhdGlvbnNoaXAgd2l0aCBwZXJjZXB0dWFs IGFuZCBvdGhlciBjb2xvciBzeXN0ZW1zLgoKPiA+IEkgc3RpbGwgdGhpbmsgaXQncyBhY2NlcHRh YmxlIHRvIGxlYW4gdG93YXJkIGRlc2F0dXJhdGVkIGNvbG9ycyB3aGVuCj4gPiByZWR1Y2luZyB0 aGUgbnVtYmVyIG9mIGNvbG9ycywgYnV0IHlvdSBtYXkgZGlzYWdyZWUuCj4gCj4gSSB0aGluayBh IGtleSBhc3BlY3Qgb2YgZGVzYXR1cmF0aW9uIGhhcyBub3QgYmVlbiBtZW50aW9uZWQuCj4gVGhh dCBpcyBtaXhpbmcsIGkgbWVhbiBkaXRoZXJpbmcgaXMgc29tZSBzb3J0IG9mIG1peGluZywgaW4g dGhlIHNlbnNlIG9mCj4gYW4gYXJ0aXN0IG1peGluZyBzZXZlcmFsIHBpZ21lbnQvZHllcy9jb2xv cnMuCj4gSWYgeW91IGhhdmUgYmxhY2sgYW5kIHdoaXRlIGEgNTAlIG1peHR1cmUgZ2l2ZXMgNTAl IGdyYXkuIG90aGVyIHJhdGlvcwo+IHdvdWxkIGdpdmUgdXMgYWxsIHZhbHVlcyBiZXR3ZWVuIHdo aXRlIGFuZCBibGFjayB0aG91Z2ggd2l0aCBkaXRoZXJpbmcKPiBzb21lIHJhdGlvcyB3b3JrIGJl dHRlciBsaWtlIDUwJSBsb29rcyBnb29kIHdoaWxlIHJhdGlvcyB2ZXJ5IGNsb3NlIHRvCj4gMCBh bmQgMTAwJSBidXQgbm90IGV4YWN0eSAwIGFuZCAxMDAgbG9vayBiYWQgd2l0aCBmZXcgaGlnaGx5 IHZpc3NpYmxlCj4gYmxhY2sgb3Igd2hpdGUgcGl4ZWxzIGluIGEgc2VlIG9mIHRoZSBvcHBvc2lu ZyBjb2xvci4KPiAKPiBOb3cgdGhpcyByZXN1bHRzIGluIDIgdGhpbmdzIGF0IGxlYXN0Lgo+IDEu IFdlIHNob3VsZCBiZSBhYmxlIHRvIGltcHJvdmUgY29sb3IgcXVhbnRpemF0aW9uIGJ5IHRoaXMu Cj4gIElmIHdlIGhhdmUgY29sb3JzIEEgYW5kIEIgdGhlIChBK0IpLzIgcG9pbnQgaXMgYmFzaWNh bGx5IGZyZWUsIGl0cyBkaXRoZXIKPiAgcGF0dGVybiBsb29rcyBnb29kIG9uIGFueSBoaWdoIHJl c29sdXRpb24gZGlzcGxheSBhbmQgaWYgd2UgY29uc2lkZXIgc3VjaAo+ICBwb2ludHMgdGhlcmUg YXJlIG1vcmUgb2YgY291cnNlIGxpa2UgbWF5YmUgKEErQitDK0QpLzQgd2UgY2FuIGNvdmVyIG1v cmUKPiAgb3V0cHV0IGNvbG9ycyB3aXRoIGEgc21hbGxlciBwYWxldHRlLgoKVGhhdCdzIGludGVy ZXN0aW5nLiBCYXNpY2FsbHkgeW91J2QgZnJlZSBjZXJ0YWluIHNsb3RzIG9mIHRoZSBwYWxldHRl IGlmCnlvdSBkZXRlY3QgdGhhdCB0aGlzIHBhcnRpY3VsYXIgY29sb3IgaXMgYXQgdGhlIG1pZCBw b2ludCBvZiB0d28gb3RoZXJzIGluCnRoZSBwYWxldHRlPyBBbmQgc28geW91IGNvdWxkIHVzZSB0 aGF0IHNsb3QgZm9yIGFub3RoZXIgdGludOKApgoKWWVhaCBJIGRvbid0IGtub3cgd2hhdCB0byBk byB3aXRoIHRoaXMgaW5mb3JtYXRpb24sIGl0IGxvb2tzIG5vdCB0cml2aWFsCnRvIGltcGxlbWVu dC4KCj4gMi4gZGVzYXR1cmF0aW9uIGhhcHBlbnMgaW4gZGl0aGVyZWQgaW1hZ2VzIGJlY2F1c2Ug Y29sb3JzIGFyZSBzaW1wbHkgbm90Cj4gIHJlcHJlc2VudGFibGUsIHRoZSBzYW1lIHdheSBhIGFy dGlzdCBjYW50IHBhaW50IDEwMCUgd2hpdGUgaWYgdGhlIGJyaWdodGVzdAo+ICBjb2xvciBzaGUg aGFzIGlzIDgwJSB3aGl0ZS4gU2hlIGNhbnQgbWl4IHRoYXQgd2l0aCBhbnl0aGluZyB0byBtYWtl IGl0Cj4gIGJyaWdodGVyLiBBbiBhbGdvcml0aG0gd2hpY2ggd291bGQgZW5zdXJlIHRoYXQgdGhl IGNvbG9ycyBmcm9tIHRoZSBwYWxldHRlCj4gIGZvcm0gYSBjb252ZXggaHVsbCBhcm91bmQgYWxs IHRoZSBjb2xvcnMgb2YgdGhlIGlucHV0IHdvdWxkIGVuc3VyZSBhbGwKPiAgY29sb3JzIGFyZSBy ZXByZXNlbnRhYmxlIGFuZCBubyBkZXNhdHVyYXRpb24gc2hvdWxkIGhhcHBlbi4gaXQgb2YgY291 cnNlCj4gIG1heSBsb29rIGJhZCwgaSBkb250IGtub3csIEEgY29udmV4IGh1bGwgbGlrZWx5IGlz IG5vdCB0aGUgZ2xvYmFsIG9wdGltdW0KPiAgZnJvbSBhIHBlcmNlcHR1YWwgUE9WLiBCdXQgb25l IG9ubHkgbmVlZHMgOCBjb2xvcnMgdG8gZ3VyYW50ZWUgYWxsIGNvbG9ycwo+ICBhcmUgcmVwcmVz ZW50YWJsZSB3aXRoIGRpdGhlcmluZwoKSSBmZWVsIGxpa2UgYSBjaGVhcCBoYWNrIHdvdWxkIGJl IHRvIGNyZWF0ZSBhIGZpbHRlciBzdWNoIGFzCiJwYWxldHRlc291cmNlIiB3aGljaCBnZW5lcmF0 ZXMgYSBwYWxldHRlIHVzaW5nIE9rTENoIChzYW1lIGFzIE9rTGFiIGJ1dApjaXJjdWxhciBzcGFj ZSwgdGhlIGh1ZSBpcyBhbiBhbmdsZSkgdG8gZGVzaWduIHN1Y2ggcGFsZXR0ZS4gVGhhdCdzIGVh c3kKdG8gZG8gYW5kIHlvdSBjb3VsZCBpbW1lZGlhdGVseSB0ZXN0IGl0IGJ5IGZlZWRpbmcgaXQg dG8gcGFsZXR0ZXVzZS4KCj4gIEFub3RoZXIgd2F5IHRvIG1heWJlIHNlZSB0aGlzIGlzIHRoYXQg aWYgeW91IGhhdmUgMSBjb2xvciB0aGUgYmVzdCBwbGFjZQo+ICBpcyB0ZWggb25lIHdoZXJlIGl0 IG1pbmltaXplcyB0aGUgZGlzdGFuY2UgdG8gYWxsLiBCdXQgYXMgbW9yZSBwb2ludHMgYXJlCj4g IGFkZGVkIGF2ZXJhZ2UgcG9pbnRzIGJldHdlZW4gdGhlbSBiZWNvbWUgdXNhYmxlIGluIGEgZGl0 aGVyZWQgaW1hZ2Ugc28KPiAgdGhlIHRoaW5nIHN0YXJ0cyBmaWxsaW5nIHVwIHdoaWxlIHRoZSBw ZXJpbWV0ZXIgYW5kIG91dHNpZGUgaXMgaGFyZGVyCj4gIHRvIHJlcHJlc2VudAo+ICBPbmUgY291 bGQgYWxzbyBzYXkgdGhhdCB3aXRoIDIgY29sb3JzIGFsbCBwb2ludHMgb24gdGhlIGxpbmUgam9p bmluZwo+ICB0aGVtIGNhbiBiZSByZXByZXNlbnRlZCBhbmQgc28gZGlzdGFuY2UgdG8gdGhhdCBs aW5lIGNvdWxkIGJlIG1pbmltaXplZAo+ICBidXQgYXMgbm90IHJlYWxseSBhbGwgcG9pbnRzIG9u IHRoYXQgbGluZSBmb3JtIHBsZWFzaW5nIGRpdGhlciBwYXR0ZXJucwo+ICBpYW0gaGVzaXRhbnQg YWJvdXQgdGhpcyByZXByZXNlbnRhdGlvbiBidXQgaXQgY2FuIGJlIGV4dGVuZGVkIHRvIGEgdHJp YW5nbGUKPiAgYW5kIHNvIGZvcnRoIHdpdGggbW9yZSBwb2ludHMKPiAgCj4gTm93IGkgaG9wZSBp IGhhdmUgbm90IGdpdmVuIGFueSBpZGVhcyB0aGF0IG1ha2UgeW91IHNwZW5kIG1vcmUgbW9udGhz IG9uCj4gdGhpcyBpZiB5b3UgZG9udCBlbmpveSBpdCA6KSBCdXQgaSBmaW5kIHRoZSB3aG9sZSBt eXNlbGYgYSBiaXQgaW50ZXJyZXN0aW5nCgpIZWgsIHllYWggSSdtIGFscmVhZHkgb250byBhbm90 aGVyIGNyYXp5IHRvcGljIGN1cnJlbnRseSBzbyB5b3UnbGwgaGF2ZSB0bwpkbyBpdCBvbiB5b3Vy IG93biA6KQoKQlRXIGl0IHdhcyByaWdodGZ1bGx5IHBvaW50ZWQgb3V0IHRvIG1lIHRoYXQgaW4g YWRkaXRpb24gdG8gdGhlIGJveCBhbmQKdGhlIGF4aXMgc2VsZWN0aW9ucywgdGhlcmUgaXMgYSAz cmQgYXNwZWN0IHRvIHN0dWR5OiB0aGUgbWVkaWFuIGN1dAppdHNlbGYuCgpUaGVyZSBpcyBsaWtl bHkgc29tZXRoaW5nIGJldHRlciB0byBkbyBoZXJlIHRoYXQgd291bGQgdXNlIHRoZSB2YWx1ZXMK dGhlbXNlbHZlcyBpbnN0ZWFkIG9mIGp1c3QgYSBjdXQgYXQgdGhlIG1lZGlhbiBvZiB0aGUgc2V0 LCBzcGVjaWZpY2FsbHkgaWYKdGhlcmUgYXJlIGxhcmdlIGdhcHMgaW4gdGhlIHZhbHVlcy4gRm9y IGV4YW1wbGUgWzEsMiwzLDYsNyw4LDIzMSwyNTVdCihhc3N1bWluZyB3ZWlnaHRzIG9mIDEpIHdv dWxkIGJlIGN1dCBbMSwyLDMsNl0gWzcsOCwyMzEsMjU1XSB3aGVuClsxLDIsMyw2LDcsOF0gWzIz MSwyNTVdIHdvdWxkIHByb2JhYmx5IGJlIG11Y2ggbW9yZSBhcHByb3ByaWF0ZS4KCkl0IG1pZ2h0 IGhlbHAgYWRkcmVzc2luZyB0aGUgYmlhcyB0b3dhcmQgTCogZm9yIGxvdyBudW1iZXIgb2YgY29s b3JzCndoZXJlIHRoZXNlIGlycmVndWxhcml0aWVzIGFyZSBwYXJ0aWN1bGFybHkgY29tbW9uIChh bmQgdGVuZCB0byBzbW9vdGggb3V0Cm92ZXIgY3V0cyBiZWNhdXNlIHR5cGljYWxseSBbNyw4LDIz MSwyNTVdIGlzIGxpa2VseSB0byBiZSBjdXQgYWdhaW4gc29vbgpkdWUgdG8gaXRzIHZhcmlhbmNl KS4KCkkgZmVlbCBsaWtlIGl0IG1pZ2h0IG5vdCBiZSB0aGF0IGhhcmQgdG8gYWN0dWFsbHkgaW1w cm92ZSB0aGUgbG93IGNvbG9yCmNvdW50IGJ5IHRyeWluZyBvdXQgc29tZSBhbHRlcm5hdGl2ZXMu IEJ1dCB0aGVyZSBhcmUgbWFueSBjdXQgc29sdXRpb25zCmFwcHJvYWNoZXMgd2hpY2ggbmVlZCB0 byBiZSBtZWFzdXJlZC4KCkknbSBoYXBweSB0byBwcm92aWRlIGd1aWRhbmNlIGluIGhvdyB0byB0 cnkgdGhlbSBvdXQgaW4gbXkgcmVzZWFyY2gKcmVwb3NpdG9yeS4gSXQgc2hvdWxkIGJlIHByZXR0 eSBlYXN5IHRvIGhhY2suCgpSZWdhcmRzLAoKLS0gCkNsw6ltZW50IEIuCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxp c3QKZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlz dGluZm8vZmZtcGVnLWRldmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3Ig ZW1haWwKZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vi c2NyaWJlIi4K