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 C8B8945B52 for ; Tue, 20 Jun 2023 14:27:43 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6323B68C07A; Tue, 20 Jun 2023 17:27:40 +0300 (EEST) Received: from smtp.tiscali.it (michael-notr.mail.tiscali.it [213.205.33.216]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 96EB168BF08 for ; Tue, 20 Jun 2023 17:27:33 +0300 (EEST) Received: from [192.168.20.100] ([95.243.137.154]) by michael.mail.tiscali.it with id BSTX2A01Y3L3PKz01STYBD; Tue, 20 Jun 2023 14:27:32 +0000 X-Spam-Final-Verdict: clean X-Spam-State: 0 X-Spam-Score: 0 X-Spam-Verdict: clean x-auth-user: klimklim@tiscali.it Message-ID: <34fc428a-b788-f9e3-1ee9-444d24765ca7@tiscali.it> Date: Tue, 20 Jun 2023 16:27:31 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Content-Language: it To: ffmpeg-devel@ffmpeg.org References: <20230619163347.1317-1-mark.ren77@gmail.com> From: Francesco Carusi In-Reply-To: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tiscali.it; s=smtp; t=1687271252; bh=nkR6DETgxd1DlW3w4WpGxiZt0fJ4oXENERrotbpOmaQ=; h=Date:Subject:To:References:From:In-Reply-To; b=IF11O99ZHjVkjB4/GMa4vLqWh0vIgPU9JygBPspSNWGVd3v8s2j9AafyYij9GRsSP Ne/Q7QYTVTryeCOgj4tnAg3F972kzbWs8+1pkzRGcVcoCqOHOWpEVU8Dnn+hCH5SF8 OxmcVjC34LYVsr+JwqX8mlZ2JZftttGyPszvw06o= Subject: Re: [FFmpeg-devel] [PATCH] libavfilter/vf_drawtext: add letter_spacing as an evaluated parameter 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: WW91IGNhbiBmaW5kIGFuIG92ZXJ2aWV3IG9mIHRoZSBjaGFuZ2VzIGhlcmU6CgpodHRwczovL2dp dGh1Yi5jb20veWV0aGllL0ZGbXBlZy9ibG9iL21hc3Rlci9kcmF3dGV4dC9DSEFOR0VTLm1kCgph bmQgdGhlIG5ldyBjb2RlIGhlcmU6CgpodHRwczovL2dpdGh1Yi5jb20veWV0aGllL0ZGbXBlZy9i bG9iL21hc3Rlci9saWJhdmZpbHRlci92Zl9kcmF3dGV4dC5jCgoKT24gMTkvMDYvMjAyMyAxOTo1 NiwgTWFyayBSZW4gd3JvdGU6Cj4gQWggYWxyaWdodCBJIHNlZS4gV2hlbiBtaWdodCB0aGF0IHB1 c2ggY29tZSB0aHJvdWdoIGFuZCBpcyB0aGVyZSBzb21ld2hlcmUKPiBJIGNhbiBsb29rIGF0IHRo ZSBraW5kIG9mIGNoYW5nZXMgaW4gdGhlIG1lYW50aW1lPwo+Cj4gT24gTW9uLCBKdW4gMTksIDIw MjMgYXQgMTI6MznigK9QTSBQYXVsIEIgTWFob2wgPG9uZW1kYUBnbWFpbC5jb20+IHdyb3RlOgo+ Cj4+Cj4+IE9uIE1vbiwgSnVuIDE5LCAyMDIzIGF0IDY6MzTigK9QTSBNYXJrIFJlbiA8bWFyay5y ZW43N0BnbWFpbC5jb20+IHdyb3RlOgo+Pgo+Pj4gV2hlbiBlbmFibGVkIGl0IHdpbGwgYWRkIHBp eGVscyAob3Igc3VidHJhY3QgaWYgZ2l2ZW4gYSBuZWdhdGl2ZSB2YWx1ZSkKPj4+IGJldHdlZW4g ZWFjaCBsZXR0ZXJzLAo+Pj4gc2V0IHVzZV9rZXJuaW5nIHRvIGZhbHNlLAo+Pj4gYW5kIGFkZCB0 aGUgcGl4ZWxzIHRvIHRleHRfdy4KPj4+Cj4+IENvbmZsaWN0cyB3aXRoIGJpZyBkcmF3dGV4dCBm aWx0ZXIgc2V0IHRoYXQgd2lsbCBiZSBwdXNoZWQgc29vbi4KPj4KPj4KPj4+IFNpZ25lZC1vZmYt Ynk6IE1hcmsgUmVuIDxtYXJrLnJlbjc3QGdtYWlsLmNvbT4KPj4+IC0tLQo+Pj4gICBsaWJhdmZp bHRlci92Zl9kcmF3dGV4dC5jIHwgMjQgKysrKysrKysrKysrKysrKysrKystLS0tCj4+PiAgIDEg ZmlsZSBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQo+Pj4KPj4+IGRp ZmYgLS1naXQgYS9saWJhdmZpbHRlci92Zl9kcmF3dGV4dC5jIGIvbGliYXZmaWx0ZXIvdmZfZHJh d3RleHQuYwo+Pj4gaW5kZXggNzFhYjg1MTQ2Mi4uZWM4MzEzODIwZCAxMDA2NDQKPj4+IC0tLSBh L2xpYmF2ZmlsdGVyL3ZmX2RyYXd0ZXh0LmMKPj4+ICsrKyBiL2xpYmF2ZmlsdGVyL3ZmX2RyYXd0 ZXh0LmMKPj4+IEBAIC0xODMsNiArMTgzLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgRHJhd1RleHRDb250 ZXh0IHsKPj4+ICAgICAgIHVuc2lnbmVkIGludCBmb250c2l6ZTsgICAgICAgICAgLy8vPCBmb250 IHNpemUgdG8gdXNlCj4+PiAgICAgICB1bnNpZ25lZCBpbnQgZGVmYXVsdF9mb250c2l6ZTsgIC8v LzwgZGVmYXVsdCBmb250IHNpemUgdG8gdXNlCj4+Pgo+Pj4gKyAgICBpbnQgbGV0dGVyX3NwYWNp bmc7ICAgICAgICAgICAgIC8vLzwgbGV0dGVyIHNwYWNpbmcgaW4gcGl4ZWxzCj4+PiAgICAgICBp bnQgbGluZV9zcGFjaW5nOyAgICAgICAgICAgICAgIC8vLzwgbGluZXMgc3BhY2luZyBpbiBwaXhl bHMKPj4+ICAgICAgIHNob3J0IGludCBkcmF3X2JveDsgICAgICAgICAgICAgLy8vPCBkcmF3IGJv eCBhcm91bmQgdGV4dCAtIHRydWUgb3IKPj4+IGZhbHNlCj4+PiAgICAgICBpbnQgYm94Ym9yZGVy dzsgICAgICAgICAgICAgICAgIC8vLzwgYm94IGJvcmRlciB3aWR0aAo+Pj4gQEAgLTIwOCw2ICsy MDksOCBAQCB0eXBlZGVmIHN0cnVjdCBEcmF3VGV4dENvbnRleHQgewo+Pj4gICAgICAgY2hhciAg ICphX2V4cHI7Cj4+PiAgICAgICBBVkV4cHIgKmFfcGV4cHI7Cj4+PiAgICAgICBpbnQgYWxwaGE7 Cj4+PiArICAgIGNoYXIqIGxldHRlcl9zcGFjaW5nX2V4cHI7ICAgICAgLy8vPCBleHByZXNzaW9u IGZvciBsZXR0ZXIgc3BhY2luZwo+Pj4gKyAgICBBVkV4cHIqIGxldHRlcl9zcGFjaW5nX3BleHBy OyAgIC8vLzwgcGFyc2VkIGV4cHJlc3Npb24gZm9yIGxldHRlcgo+Pj4gc3BhY2luZwo+Pj4gICAg ICAgQVZMRkcgIHBybmc7ICAgICAgICAgICAgICAgICAgICAvLy88IHJhbmRvbQo+Pj4gICAgICAg Y2hhciAgICAgICAqdGNfb3B0X3N0cmluZzsgICAgICAvLy88IHNwZWNpZmllZCB0aW1lY29kZSBv cHRpb24gc3RyaW5nCj4+PiAgICAgICBBVlJhdGlvbmFsICB0Y19yYXRlOyAgICAgICAgICAgIC8v LzwgZnJhbWUgcmF0ZSBmb3IgdGltZWNvZGUKPj4+IEBAIC0yMzcsNiArMjQwLDcgQEAgc3RhdGlj IGNvbnN0IEFWT3B0aW9uIGRyYXd0ZXh0X29wdGlvbnNbXT0gewo+Pj4gICAgICAgeyJzaGFkb3dj b2xvciIsICJzZXQgc2hhZG93IGNvbG9yIiwgICAgIE9GRlNFVChzaGFkb3djb2xvci5yZ2JhKSwK Pj4+ICAgQVZfT1BUX1RZUEVfQ09MT1IsICB7LnN0cj0iYmxhY2sifSwgMCwgMCwgRkxBR1N9LAo+ Pj4gICAgICAgeyJib3giLCAgICAgICAgICJzZXQgYm94IiwgICAgICAgICAgICAgIE9GRlNFVChk cmF3X2JveCksCj4+PiAgIEFWX09QVF9UWVBFX0JPT0wsICAgey5pNjQ9MH0sICAgICAwLCAgICAg ICAgMSAgICAgICAsIEZMQUdTfSwKPj4+ICAgICAgIHsiYm94Ym9yZGVydyIsICAic2V0IGJveCBi b3JkZXIgd2lkdGgiLCBPRkZTRVQoYm94Ym9yZGVydyksCj4+PiAgIEFWX09QVF9UWVBFX0lOVCwg ICAgey5pNjQ9MH0sICAgICBJTlRfTUlOLCAgSU5UX01BWCAsIEZMQUdTfSwKPj4+ICsgICAgeyJs ZXR0ZXJfc3BhY2luZyIsICJzZXQgbGV0dGVyIHNwYWNpbmcgaW4gcGl4ZWxzIiwKPj4+IE9GRlNF VChsZXR0ZXJfc3BhY2luZ19leHByKSwgQVZfT1BUX1RZUEVfU1RSSU5HLCB7LnN0cj0iMCJ9LCAw LCAwLCBGTEFHU30sCj4+PiAgICAgICB7ImxpbmVfc3BhY2luZyIsICAic2V0IGxpbmUgc3BhY2lu ZyBpbiBwaXhlbHMiLAo+Pj4gT0ZGU0VUKGxpbmVfc3BhY2luZyksICAgQVZfT1BUX1RZUEVfSU5U LCAgICB7Lmk2ND0wfSwgICAgIElOVF9NSU4sCj4+PiBJTlRfTUFYLEZMQUdTfSwKPj4+ICAgICAg IHsiZm9udHNpemUiLCAgICAic2V0IGZvbnQgc2l6ZSIsICAgICAgICBPRkZTRVQoZm9udHNpemVf ZXhwciksCj4+PiBBVl9PUFRfVFlQRV9TVFJJTkcsIHsuc3RyPU5VTEx9LCAgMCwgMCAsIEZMQUdT fSwKPj4+ICAgICAgIHsieCIsICAgICAgICAgICAic2V0IHggZXhwcmVzc2lvbiIsICAgICBPRkZT RVQoeF9leHByKSwKPj4+ICAgQVZfT1BUX1RZUEVfU1RSSU5HLCB7LnN0cj0iMCJ9LCAgIDAsIDAs IEZMQUdTfSwKPj4+IEBAIC04MTIsNyArODE2LDcgQEAgc3RhdGljIGF2X2NvbGQgaW50IGluaXQo QVZGaWx0ZXJDb250ZXh0ICpjdHgpCj4+PiAgICAgICAgICAgICAgICAgICAgICAgICAgRlRfU1RS T0tFUl9MSU5FSk9JTl9ST1VORCwgMCk7Cj4+PiAgICAgICB9Cj4+Pgo+Pj4gLSAgICBzLT51c2Vf a2VybmluZyA9IEZUX0hBU19LRVJOSU5HKHMtPmZhY2UpOwo+Pj4gKyAgICBzLT51c2Vfa2Vybmlu ZyA9IEZUX0hBU19LRVJOSU5HKHMtPmZhY2UpICYmICFzLT5sZXR0ZXJfc3BhY2luZzsKPj4+Cj4+ PiAgICAgICAvKiBsb2FkIHRoZSBmYWxsYmFjayBnbHlwaCB3aXRoIGNvZGUgMCAqLwo+Pj4gICAg ICAgbG9hZF9nbHlwaChjdHgsIE5VTEwsIDApOwo+Pj4gQEAgLTg1Nyw4ICs4NjEsOSBAQCBzdGF0 aWMgYXZfY29sZCB2b2lkIHVuaW5pdChBVkZpbHRlckNvbnRleHQgKmN0eCkKPj4+ICAgICAgIGF2 X2V4cHJfZnJlZShzLT55X3BleHByKTsKPj4+ICAgICAgIGF2X2V4cHJfZnJlZShzLT5hX3BleHBy KTsKPj4+ICAgICAgIGF2X2V4cHJfZnJlZShzLT5mb250c2l6ZV9wZXhwcik7Cj4+PiArICAgIGF2 X2V4cHJfZnJlZShzLT5sZXR0ZXJfc3BhY2luZ19wZXhwcik7Cj4+Pgo+Pj4gLSAgICBzLT54X3Bl eHByID0gcy0+eV9wZXhwciA9IHMtPmFfcGV4cHIgPSBzLT5mb250c2l6ZV9wZXhwciA9IE5VTEw7 Cj4+PiArICAgIHMtPnhfcGV4cHIgPSBzLT55X3BleHByID0gcy0+YV9wZXhwciA9IHMtPmZvbnRz aXplX3BleHByID0KPj4+IHMtPmxldHRlcl9zcGFjaW5nX3BleHByID0gTlVMTDsKPj4+Cj4+PiAg ICAgICBhdl9mcmVlcCgmcy0+cG9zaXRpb25zKTsKPj4+ICAgICAgIHMtPm5iX3Bvc2l0aW9ucyA9 IDA7Cj4+PiBAQCAtOTAzLDEzICs5MDgsMTYgQEAgc3RhdGljIGludCBjb25maWdfaW5wdXQoQVZG aWx0ZXJMaW5rICppbmxpbmspCj4+PiAgICAgICBhdl9leHByX2ZyZWUocy0+eF9wZXhwcik7Cj4+ PiAgICAgICBhdl9leHByX2ZyZWUocy0+eV9wZXhwcik7Cj4+PiAgICAgICBhdl9leHByX2ZyZWUo cy0+YV9wZXhwcik7Cj4+PiAtICAgIHMtPnhfcGV4cHIgPSBzLT55X3BleHByID0gcy0+YV9wZXhw ciA9IE5VTEw7Cj4+PiArICAgIGF2X2V4cHJfZnJlZShzLT5sZXR0ZXJfc3BhY2luZ19wZXhwcik7 Cj4+PiArICAgIHMtPnhfcGV4cHIgPSBzLT55X3BleHByID0gcy0+YV9wZXhwciA9IHMtPmxldHRl cl9zcGFjaW5nX3BleHByID0KPj4+IE5VTEw7Cj4+Pgo+Pj4gICAgICAgaWYgKChyZXQgPSBhdl9l eHByX3BhcnNlKCZzLT54X3BleHByLCBleHByID0gcy0+eF9leHByLCB2YXJfbmFtZXMsCj4+PiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgZnVuMl9uYW1lcywgZnVu MiwgMCwgY3R4KSkgPCAwCj4+PiB8fAo+Pj4gICAgICAgICAgIChyZXQgPSBhdl9leHByX3BhcnNl KCZzLT55X3BleHByLCBleHByID0gcy0+eV9leHByLCB2YXJfbmFtZXMsCj4+PiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgZnVuMl9uYW1lcywgZnVuMiwgMCwgY3R4 KSkgPCAwCj4+PiB8fAo+Pj4gICAgICAgICAgIChyZXQgPSBhdl9leHByX3BhcnNlKCZzLT5hX3Bl eHByLCBleHByID0gcy0+YV9leHByLCB2YXJfbmFtZXMsCj4+PiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOVUxMLCBOVUxMLCBmdW4yX25hbWVzLCBmdW4yLCAwLCBjdHgpKSA8IDAKPj4+ IHx8Cj4+PiArICAgICAgICAocmV0ID0gYXZfZXhwcl9wYXJzZSgmcy0+bGV0dGVyX3NwYWNpbmdf cGV4cHIsIGV4cHIgPQo+Pj4gcy0+bGV0dGVyX3NwYWNpbmdfZXhwciwgdmFyX25hbWVzLAo+Pj4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIGZ1bjJfbmFtZXMsIGZ1 bjIsIDAsIGN0eCkpIDwgMCkKPj4+IHsKPj4+ICAgICAgICAgICBhdl9sb2coY3R4LCBBVl9MT0df RVJST1IsICJGYWlsZWQgdG8gcGFyc2UgZXhwcmVzc2lvbjogJXMgXG4iLAo+Pj4gZXhwcik7Cj4+ PiAgICAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlOVkFMKTsKPj4+IEBAIC0xNTI1LDYgKzE1MzMs OSBAQCBjb250aW51ZV9vbl9pbnZhbGlkMjoKPj4+ICAgICAgICAgICBkdW1teS5mb250c2l6ZSA9 IHMtPmZvbnRzaXplOwo+Pj4gICAgICAgICAgIGdseXBoID0gYXZfdHJlZV9maW5kKHMtPmdseXBo cywgJmR1bW15LCBnbHlwaF9jbXAsIE5VTEwpOwo+Pj4KPj4+ICsgICAgICAgIC8qIGxldHRlciBz cGFjaW5nICovCj4+PiArICAgICAgICB4ICs9IHMtPmxldHRlcl9zcGFjaW5nOwo+Pj4gKwo+Pj4g ICAgICAgICAgIC8qIGtlcm5pbmcgKi8KPj4+ICAgICAgICAgICBpZiAocy0+dXNlX2tlcm5pbmcg JiYgcHJldl9nbHlwaCAmJiBnbHlwaC0+Y29kZSkgewo+Pj4gICAgICAgICAgICAgICBGVF9HZXRf S2VybmluZyhzLT5mYWNlLCBwcmV2X2dseXBoLT5jb2RlLCBnbHlwaC0+Y29kZSwKPj4+IEBAIC0x NTM5LDcgKzE1NTAsMTIgQEAgY29udGludWVfb25faW52YWxpZDI6Cj4+PiAgICAgICAgICAgZWxz ZSAgICAgICAgICAgICAgeCArPSBnbHlwaC0+YWR2YW5jZTsKPj4+ICAgICAgIH0KPj4+Cj4+PiAt ICAgIG1heF90ZXh0X2xpbmVfdyA9IEZGTUFYKHgsIG1heF90ZXh0X2xpbmVfdyk7Cj4+PiArICAg IHMtPmxldHRlcl9zcGFjaW5nID0gYXZfZXhwcl9ldmFsKHMtPmxldHRlcl9zcGFjaW5nX3BleHBy LAo+Pj4gcy0+dmFyX3ZhbHVlcywgJnMtPnBybmcpOwo+Pj4gKyAgICBpZiAocy0+bGV0dGVyX3Nw YWNpbmcgPCAwKSB7Cj4+PiArICAgICAgICBtYXhfdGV4dF9saW5lX3cgPSB4KyBzLT5sZXR0ZXJf c3BhY2luZzsKPj4+ICsgICAgfSBlbHNlIHsKPj4+ICsgICAgICAgIG1heF90ZXh0X2xpbmVfdyA9 IEZGTUFYKHgsIG1heF90ZXh0X2xpbmVfdykgKyBzLT5sZXR0ZXJfc3BhY2luZzsKPj4+ICsgICAg fQo+Pj4KPj4+ICAgICAgIHMtPnZhcl92YWx1ZXNbVkFSX1RXXSA9IHMtPnZhcl92YWx1ZXNbVkFS X1RFWFRfV10gPSBtYXhfdGV4dF9saW5lX3c7Cj4+PiAgICAgICBzLT52YXJfdmFsdWVzW1ZBUl9U SF0gPSBzLT52YXJfdmFsdWVzW1ZBUl9URVhUX0hdID0geSArCj4+PiBzLT5tYXhfZ2x5cGhfaDsK Pj4+IC0tCj4+PiAyLjQwLjEKPj4+Cj4+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwo+Pj4gZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdAo+Pj4gZmZtcGVn LWRldmVsQGZmbXBlZy5vcmcKPj4+IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ZmbXBlZy1kZXZlbAo+Pj4KPj4+IFRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBv ciBlbWFpbAo+Pj4gZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3Qg InVuc3Vic2NyaWJlIi4KPj4+Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KPiBmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0Cj4gZmZtcGVnLWRldmVsQGZm bXBlZy5vcmcKPiBodHRwczovL2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0aW5mby9mZm1wZWctZGV2 ZWwKPgo+IFRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbAo+IGZmbXBl Zy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2 ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxp bmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBz dWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==