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 1055C43882 for ; Tue, 2 Aug 2022 11:03:40 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A1EE068BA71; Tue, 2 Aug 2022 14:03:37 +0300 (EEST) Received: from mail0.khirnov.net (red.khirnov.net [176.97.15.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 59CAB68B9D4 for ; Tue, 2 Aug 2022 14:03:31 +0300 (EEST) Received: from localhost (localhost [IPv6:::1]) by mail0.khirnov.net (Postfix) with ESMTP id E6243240179 for ; Tue, 2 Aug 2022 13:03:30 +0200 (CEST) Received: from mail0.khirnov.net ([IPv6:::1]) by localhost (mail0.khirnov.net [IPv6:::1]) (amavisd-new, port 10024) with ESMTP id 2QvPF5Y_1kwk for ; Tue, 2 Aug 2022 13:03:30 +0200 (CEST) Received: from lain.khirnov.net (lain.khirnov.net [IPv6:2001:67c:1138:4306::3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "lain.khirnov.net", Issuer "smtp.khirnov.net SMTP CA" (verified OK)) by mail0.khirnov.net (Postfix) with ESMTPS id 07D752400F5 for ; Tue, 2 Aug 2022 13:03:30 +0200 (CEST) Received: by lain.khirnov.net (Postfix, from userid 1000) id 10CBE1601B2; Tue, 2 Aug 2022 13:03:30 +0200 (CEST) From: Anton Khirnov To: FFmpeg development discussions and patches In-Reply-To: <20220729133537.53269-1-jeebjp@gmail.com> References: <20220722134808.16692-1-jeebjp@gmail.com> <20220729133537.53269-1-jeebjp@gmail.com> Mail-Followup-To: FFmpeg development discussions and patches Date: Tue, 02 Aug 2022 13:03:30 +0200 Message-ID: <165943821004.15471.11720790086798224227@lain.khirnov.net> User-Agent: alot/0.8.1 MIME-Version: 1.0 Subject: Re: [FFmpeg-devel] [PATCH v3 1/2] ffmpeg: refactor post-decoding steps for subtitles into a function 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: UXVvdGluZyBKYW4gRWtzdHLDtm0gKDIwMjItMDctMjkgMTU6MzU6MzYpCj4gRnJvbTogSmFuIEVr c3Ryw7ZtIDxqYW4uZWtzdHJvbUAyNGkuY29tPgo+IAo+IFRoaXMgZW5hYmxlcyB1cyB0byBsYXRl ciBjYWxsIHRoaXMgd2hlbiBnZW5lcmF0aW5nIGFkZGl0aW9uYWwKPiBzdWJ0aXRsZXMgZm9yIHNw bGl0dGluZyBwdXJwb3Nlcy4KPiAKPiBDby1hdXRob3JlZC1ieTogQW5kcnplaiBOYWRhY2hvd3Nr aSA8YW5kcnplai5uYWRhY2hvd3NraUAyNGkuY29tPgo+IAo+IFNpZ25lZC1vZmYtYnk6IEphbiBF a3N0csO2bSA8amFuLmVrc3Ryb21AMjRpLmNvbT4KPiAtLS0KPiAgZmZ0b29scy9mZm1wZWcuYyB8 IDUwICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAx IGZpbGUgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCj4gCj4gZGlm ZiAtLWdpdCBhL2ZmdG9vbHMvZmZtcGVnLmMgYi9mZnRvb2xzL2ZmbXBlZy5jCj4gaW5kZXggNDc0 Njc0MmMwMi4uYWRjYWI0M2EzMCAxMDA2NDQKPiAtLS0gYS9mZnRvb2xzL2ZmbXBlZy5jCj4gKysr IGIvZmZ0b29scy9mZm1wZWcuYwo+IEBAIC0yMzAxLDI3ICsyMzAxLDE2IEBAIGZhaWw6Cj4gICAg ICByZXR1cm4gZXJyIDwgMCA/IGVyciA6IHJldDsKPiAgfQo+ICAKPiAtc3RhdGljIGludCB0cmFu c2NvZGVfc3VidGl0bGVzKElucHV0U3RyZWFtICppc3QsIEFWUGFja2V0ICpwa3QsIGludCAqZ290 X291dHB1dCwKPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqZGVjb2RlX2Zh aWxlZCkKPiArc3RhdGljIGludCBlbmNvZGVfbXV4X3N1YnRpdGxlcyhJbnB1dFN0cmVhbSAqaXN0 LCBBVlN1YnRpdGxlICpzdWJ0aXRsZSwgaW50ICpnb3Rfb3V0cHV0KQo+ICB7Cj4gLSAgICBBVlN1 YnRpdGxlIHN1YnRpdGxlOwo+ICsgICAgaW50IHJldCA9IDA7Cj4gICAgICBpbnQgZnJlZV9zdWIg PSAxOwo+IC0gICAgaW50IGksIHJldCA9IGF2Y29kZWNfZGVjb2RlX3N1YnRpdGxlMihpc3QtPmRl Y19jdHgsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdWJ0 aXRsZSwgZ290X291dHB1dCwgcGt0KTsKPiAgCj4gLSAgICBjaGVja19kZWNvZGVfcmVzdWx0KE5V TEwsIGdvdF9vdXRwdXQsIHJldCk7Cj4gLQo+IC0gICAgaWYgKHJldCA8IDAgfHwgISpnb3Rfb3V0 cHV0KSB7Cj4gLSAgICAgICAgKmRlY29kZV9mYWlsZWQgPSAxOwo+IC0gICAgICAgIGlmICghcGt0 LT5zaXplKQo+IC0gICAgICAgICAgICBzdWIydmlkZW9fZmx1c2goaXN0KTsKPiAtICAgICAgICBy ZXR1cm4gcmV0Owo+IC0gICAgfQo+ICAKPiAgICAgIGlmIChpc3QtPmZpeF9zdWJfZHVyYXRpb24p IHsKPiAgICAgICAgICBpbnQgZW5kID0gMTsKPiAgICAgICAgICBpZiAoaXN0LT5wcmV2X3N1Yi5n b3Rfb3V0cHV0KSB7Cj4gLSAgICAgICAgICAgIGVuZCA9IGF2X3Jlc2NhbGUoc3VidGl0bGUucHRz IC0gaXN0LT5wcmV2X3N1Yi5zdWJ0aXRsZS5wdHMsCj4gKyAgICAgICAgICAgIGVuZCA9IGF2X3Jl c2NhbGUoc3VidGl0bGUtPnB0cyAtIGlzdC0+cHJldl9zdWIuc3VidGl0bGUucHRzLAo+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDEwMDAsIEFWX1RJTUVfQkFTRSk7Cj4gICAgICAgICAg ICAgIGlmIChlbmQgPCBpc3QtPnByZXZfc3ViLnN1YnRpdGxlLmVuZF9kaXNwbGF5X3RpbWUpIHsK PiAgICAgICAgICAgICAgICAgIGF2X2xvZyhOVUxMLCBBVl9MT0dfREVCVUcsCj4gQEAgLTIzMzMs NyArMjMyMiw3IEBAIHN0YXRpYyBpbnQgdHJhbnNjb2RlX3N1YnRpdGxlcyhJbnB1dFN0cmVhbSAq aXN0LCBBVlBhY2tldCAqcGt0LCBpbnQgKmdvdF9vdXRwdXQsCj4gICAgICAgICAgfQo+ICAgICAg ICAgIEZGU1dBUChpbnQsICAgICAgICAqZ290X291dHB1dCwgaXN0LT5wcmV2X3N1Yi5nb3Rfb3V0 cHV0KTsKPiAgICAgICAgICBGRlNXQVAoaW50LCAgICAgICAgcmV0LCAgICAgICAgIGlzdC0+cHJl dl9zdWIucmV0KTsKPiAtICAgICAgICBGRlNXQVAoQVZTdWJ0aXRsZSwgc3VidGl0bGUsICAgIGlz dC0+cHJldl9zdWIuc3VidGl0bGUpOwo+ICsgICAgICAgIEZGU1dBUChBVlN1YnRpdGxlLCAqc3Vi dGl0bGUsICAgaXN0LT5wcmV2X3N1Yi5zdWJ0aXRsZSk7Cj4gICAgICAgICAgaWYgKGVuZCA8PSAw KQo+ICAgICAgICAgICAgICBnb3RvIG91dDsKPiAgICAgIH0KPiBAQCAtMjM0Miw0MCArMjMzMSw1 OSBAQCBzdGF0aWMgaW50IHRyYW5zY29kZV9zdWJ0aXRsZXMoSW5wdXRTdHJlYW0gKmlzdCwgQVZQ YWNrZXQgKnBrdCwgaW50ICpnb3Rfb3V0cHV0LAo+ICAgICAgICAgIHJldHVybiByZXQ7Cj4gIAo+ ICAgICAgaWYgKGlzdC0+c3ViMnZpZGVvLmZyYW1lKSB7Cj4gLSAgICAgICAgc3ViMnZpZGVvX3Vw ZGF0ZShpc3QsIElOVDY0X01JTiwgJnN1YnRpdGxlKTsKPiArICAgICAgICBzdWIydmlkZW9fdXBk YXRlKGlzdCwgSU5UNjRfTUlOLCBzdWJ0aXRsZSk7Cj4gICAgICB9IGVsc2UgaWYgKGlzdC0+bmJf ZmlsdGVycykgewo+ICAgICAgICAgIGlmICghaXN0LT5zdWIydmlkZW8uc3ViX3F1ZXVlKQo+ICAg ICAgICAgICAgICBpc3QtPnN1YjJ2aWRlby5zdWJfcXVldWUgPSBhdl9maWZvX2FsbG9jMig4LCBz aXplb2YoQVZTdWJ0aXRsZSksIEFWX0ZJRk9fRkxBR19BVVRPX0dST1cpOwo+ICAgICAgICAgIGlm ICghaXN0LT5zdWIydmlkZW8uc3ViX3F1ZXVlKQo+ICAgICAgICAgICAgICBleGl0X3Byb2dyYW0o MSk7Cj4gIAo+IC0gICAgICAgIHJldCA9IGF2X2ZpZm9fd3JpdGUoaXN0LT5zdWIydmlkZW8uc3Vi X3F1ZXVlLCAmc3VidGl0bGUsIDEpOwo+ICsgICAgICAgIHJldCA9IGF2X2ZpZm9fd3JpdGUoaXN0 LT5zdWIydmlkZW8uc3ViX3F1ZXVlLCBzdWJ0aXRsZSwgMSk7Cj4gICAgICAgICAgaWYgKHJldCA8 IDApCj4gICAgICAgICAgICAgIGV4aXRfcHJvZ3JhbSgxKTsKPiAgICAgICAgICBmcmVlX3N1YiA9 IDA7Cj4gICAgICB9Cj4gIAo+IC0gICAgaWYgKCFzdWJ0aXRsZS5udW1fcmVjdHMpCj4gKyAgICBp ZiAoIXN1YnRpdGxlLT5udW1fcmVjdHMpCj4gICAgICAgICAgZ290byBvdXQ7Cj4gIAo+ICAgICAg aXN0LT5mcmFtZXNfZGVjb2RlZCsrOwo+ICAKPiAtICAgIGZvciAoaSA9IDA7IGkgPCBuYl9vdXRw dXRfc3RyZWFtczsgaSsrKSB7Cj4gKyAgICBmb3IgKGludCBpID0gMDsgaSA8IG5iX291dHB1dF9z dHJlYW1zOyBpKyspIHsKPiAgICAgICAgICBPdXRwdXRTdHJlYW0gKm9zdCA9IG91dHB1dF9zdHJl YW1zW2ldOwo+ICAKPiAgICAgICAgICBpZiAoIWNoZWNrX291dHB1dF9jb25zdHJhaW50cyhpc3Qs IG9zdCkgfHwgIW9zdC0+ZW5jb2RpbmdfbmVlZGVkCj4gICAgICAgICAgICAgIHx8IG9zdC0+ZW5j LT50eXBlICE9IEFWTUVESUFfVFlQRV9TVUJUSVRMRSkKPiAgICAgICAgICAgICAgY29udGludWU7 Cj4gIAo+IC0gICAgICAgIGRvX3N1YnRpdGxlX291dChvdXRwdXRfZmlsZXNbb3N0LT5maWxlX2lu ZGV4XSwgb3N0LCAmc3VidGl0bGUpOwo+ICsgICAgICAgIGRvX3N1YnRpdGxlX291dChvdXRwdXRf ZmlsZXNbb3N0LT5maWxlX2luZGV4XSwgb3N0LCBzdWJ0aXRsZSk7Cj4gICAgICB9Cj4gIAo+ICBv dXQ6Cj4gICAgICBpZiAoZnJlZV9zdWIpCj4gLSAgICAgICAgYXZzdWJ0aXRsZV9mcmVlKCZzdWJ0 aXRsZSk7Cj4gKyAgICAgICAgYXZzdWJ0aXRsZV9mcmVlKHN1YnRpdGxlKTsKPiAgICAgIHJldHVy biByZXQ7Cj4gIH0KPiAgCj4gK3N0YXRpYyBpbnQgdHJhbnNjb2RlX3N1YnRpdGxlcyhJbnB1dFN0 cmVhbSAqaXN0LCBBVlBhY2tldCAqcGt0LCBpbnQgKmdvdF9vdXRwdXQsCj4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpbnQgKmRlY29kZV9mYWlsZWQpCj4gK3sKPiArICAgIEFWU3Vi dGl0bGUgc3VidGl0bGU7Cj4gKyAgICBpbnQgcmV0ID0gYXZjb2RlY19kZWNvZGVfc3VidGl0bGUy KGlzdC0+ZGVjX2N0eCwKPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg JnN1YnRpdGxlLCBnb3Rfb3V0cHV0LCBwa3QpOwo+ICsKPiArICAgIGNoZWNrX2RlY29kZV9yZXN1 bHQoTlVMTCwgZ290X291dHB1dCwgcmV0KTsKPiArCj4gKyAgICBpZiAocmV0IDwgMCB8fCAhKmdv dF9vdXRwdXQpIHsKPiArICAgICAgICAqZGVjb2RlX2ZhaWxlZCA9IDE7Cj4gKyAgICAgICAgaWYg KCFwa3QtPnNpemUpCj4gKyAgICAgICAgICAgIHN1YjJ2aWRlb19mbHVzaChpc3QpOwo+ICsgICAg ICAgIHJldHVybiByZXQ7Cj4gKyAgICB9Cj4gKwo+ICsgICAgcmV0dXJuIGVuY29kZV9tdXhfc3Vi dGl0bGVzKGlzdCwgJnN1YnRpdGxlLCBnb3Rfb3V0cHV0KTsKPiArfQo+ICsKPiAgc3RhdGljIGlu dCBzZW5kX2ZpbHRlcl9lb2YoSW5wdXRTdHJlYW0gKmlzdCkKPiAgewo+ICAgICAgaW50IGksIHJl dDsKPiAtLSAKPiAyLjM3LjEKPiAKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwo+IGZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKPiBmZm1wZWctZGV2ZWxA ZmZtcGVnLm9yZwo+IGh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1k ZXZlbAo+IAo+IFRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbAo+IGZm bXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIu CgotLSAKQW50b24gS2hpcm5vdgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGluZyBsaXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcu b3JnCmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8g dW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9yIGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1 ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCg==