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 E143A40330 for ; Fri, 21 Jan 2022 13:58:18 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 4865E68B2E2; Fri, 21 Jan 2022 15:58:15 +0200 (EET) Received: from mail8.parnet.fi (mail8.parnet.fi [77.234.108.134]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3D17F68AFF5 for ; Fri, 21 Jan 2022 15:58:08 +0200 (EET) Received: from mail9.parnet.fi (mail9.parnet.fi [77.234.108.21]) by mail8.parnet.fi with ESMTP id 20LDw6Nc013538-20LDw6Nd013538 for ; Fri, 21 Jan 2022 15:58:07 +0200 Received: from foo.martin.st (host-97-187.parnet.fi [77.234.97.187]) by mail9.parnet.fi (Postfix) with ESMTPS id E66DDA142A for ; Fri, 21 Jan 2022 15:58:06 +0200 (EET) Date: Fri, 21 Jan 2022 15:58:06 +0200 (EET) From: =?ISO-8859-15?Q?Martin_Storsj=F6?= To: FFmpeg development discussions and patches In-Reply-To: Message-ID: <4cf21020-5cdf-6532-f6fb-3995ba1f3d78@martin.st> References: <20220119203837.9047-1-martin@martin.st> <20220119203837.9047-2-martin@martin.st> MIME-Version: 1.0 X-FE-Policy-ID: 3:14:2:SYSTEM X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [FFmpeg-devel] [PATCH 2/2] libfdk-aacdec: Flush delayed samples at the end 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: T24gRnJpLCAyMSBKYW4gMjAyMiwgQW5kcmVhcyBSaGVpbmhhcmR0IHdyb3RlOgoKPiBNYXJ0aW4g U3RvcnNqw7Y6Cj4+IEFsc28gdHJpbSBvZmYgZGVsYXkgc2FtcGxlcyBhdCB0aGUgc3RhcnQgaW5z dGVhZCBvZiBhZGp1c3RpbmcgcHRzCj4+IHRvIGNvbXBlbnNhdGUgZm9yIHRoZW07IHRoaXMgYXZv aWRzIHVud2FudGVkIG9mZnNldHMgaWYgd29ya2luZwo+PiB3aXRoIHJhdyBzYW1wbGVzIHdpdGhv dXQgY29uc2lkZXJpbmcgdGhlaXIgcHRzLgo+PiAtLS0KPj4gIGxpYmF2Y29kZWMvbGliZmRrLWFh Y2RlYy5jIHwgODAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KPj4gIDEg ZmlsZSBjaGFuZ2VkLCA2NSBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKPj4gCj4+IGRp ZmYgLS1naXQgYS9saWJhdmNvZGVjL2xpYmZkay1hYWNkZWMuYyBiL2xpYmF2Y29kZWMvbGliZmRr LWFhY2RlYy5jCj4+IGluZGV4IDkzYjUyMDIzYjAuLmQ1NjBlMzEzY2EgMTAwNjQ0Cj4+IC0tLSBh L2xpYmF2Y29kZWMvbGliZmRrLWFhY2RlYy5jCj4+ICsrKyBiL2xpYmF2Y29kZWMvbGliZmRrLWFh Y2RlYy5jCj4+IEBAIC01OCw3ICs1OCwxMSBAQCB0eXBlZGVmIHN0cnVjdCBGREtBQUNEZWNDb250 ZXh0IHsKPj4gICAgICBpbnQgZHJjX2N1dDsKPj4gICAgICBpbnQgYWxidW1fbW9kZTsKPj4gICAg ICBpbnQgbGV2ZWxfbGltaXQ7Cj4+IC0gICAgaW50IG91dHB1dF9kZWxheTsKPj4gKyNpZiBGREtE RUNfVkVSX0FUX0xFQVNUKDIsIDUpIC8vIDIuNS4xMAo+PiArICAgIGludCBvdXRwdXRfZGVsYXlf c2V0Owo+PiArICAgIGludCBmbHVzaF9zYW1wbGVzOwo+PiArICAgIGludCBkZWxheV9zYW1wbGVz Owo+PiArI2VuZGlmCj4+ICB9IEZES0FBQ0RlY0NvbnRleHQ7Cj4+Cj4+IAo+PiBAQCAtMTIzLDcg KzEyNywxMiBAQCBzdGF0aWMgaW50IGdldF9zdHJlYW1faW5mbyhBVkNvZGVjQ29udGV4dCAqYXZj dHgpCj4+ICAgICAgYXZjdHgtPnNhbXBsZV9yYXRlID0gaW5mby0+c2FtcGxlUmF0ZTsKPj4gICAg ICBhdmN0eC0+ZnJhbWVfc2l6ZSAgPSBpbmZvLT5mcmFtZVNpemU7Cj4+ICAjaWYgRkRLREVDX1ZF Ul9BVF9MRUFTVCgyLCA1KSAvLyAyLjUuMTAKPj4gLSAgICBzLT5vdXRwdXRfZGVsYXkgICAgPSBp bmZvLT5vdXRwdXREZWxheTsKPj4gKyAgICBpZiAoIXMtPm91dHB1dF9kZWxheV9zZXQgJiYgaW5m by0+b3V0cHV0RGVsYXkpIHsKPj4gKyAgICAgICAgLy8gU2V0IHRoaXMgb25seSBvbmNlLgo+PiAr ICAgICAgICBzLT5mbHVzaF9zYW1wbGVzICAgID0gaW5mby0+b3V0cHV0RGVsYXk7Cj4+ICsgICAg ICAgIHMtPmRlbGF5X3NhbXBsZXMgICAgPSBpbmZvLT5vdXRwdXREZWxheTsKPj4gKyAgICAgICAg cy0+b3V0cHV0X2RlbGF5X3NldCA9IDE7Cj4+ICsgICAgfQo+PiAgI2VuZGlmCj4+Cj4+ICAgICAg Zm9yIChpID0gMDsgaSA8IGluZm8tPm51bUNoYW5uZWxzOyBpKyspIHsKPj4gQEAgLTM2NywxNCAr Mzc2LDMxIEBAIHN0YXRpYyBpbnQgZmRrX2FhY19kZWNvZGVfZnJhbWUoQVZDb2RlY0NvbnRleHQg KmF2Y3R4LCB2b2lkICpkYXRhLAo+PiAgICAgIGludCByZXQ7Cj4+ICAgICAgQUFDX0RFQ09ERVJf RVJST1IgZXJyOwo+PiAgICAgIFVJTlQgdmFsaWQgPSBhdnBrdC0+c2l6ZTsKPj4gKyAgICBVSU5U IGZsYWdzID0gMDsKPj4gKyAgICBpbnQgaW5wdXRfb2Zmc2V0ID0gMDsKPj4gCj4+IC0gICAgZXJy ID0gYWFjRGVjb2Rlcl9GaWxsKHMtPmhhbmRsZSwgJmF2cGt0LT5kYXRhLCAmYXZwa3QtPnNpemUs ICZ2YWxpZCk7Cj4+IC0gICAgaWYgKGVyciAhPSBBQUNfREVDX09LKSB7Cj4+IC0gICAgICAgIGF2 X2xvZyhhdmN0eCwgQVZfTE9HX0VSUk9SLCAiYWFjRGVjb2Rlcl9GaWxsKCkgZmFpbGVkOiAleFxu IiwgZXJyKTsKPj4gLSAgICAgICAgcmV0dXJuIEFWRVJST1JfSU5WQUxJRERBVEE7Cj4+ICsgICAg aWYgKGF2cGt0LT5zaXplKSB7Cj4+ICsgICAgICAgIGVyciA9IGFhY0RlY29kZXJfRmlsbChzLT5o YW5kbGUsICZhdnBrdC0+ZGF0YSwgJmF2cGt0LT5zaXplLCAmdmFsaWQpOwo+PiArICAgICAgICBp ZiAoZXJyICE9IEFBQ19ERUNfT0spIHsKPj4gKyAgICAgICAgICAgIGF2X2xvZyhhdmN0eCwgQVZf TE9HX0VSUk9SLCAiYWFjRGVjb2Rlcl9GaWxsKCkgZmFpbGVkOiAleFxuIiwgZXJyKTsKPj4gKyAg ICAgICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOwo+PiArICAgICAgICB9Cj4+ICsg ICAgfSBlbHNlIHsKPj4gKyNpZiBGREtERUNfVkVSX0FUX0xFQVNUKDIsIDUpIC8vIDIuNS4xMAo+ PiArICAgICAgICAvKiBIYW5kbGUgZGVjb2RlciBkcmFpbmluZyAqLwo+PiArICAgICAgICBpZiAo cy0+Zmx1c2hfc2FtcGxlcyA+IDApIHsKPj4gKyAgICAgICAgICAgIGZsYWdzIHw9IEFBQ0RFQ19G TFVTSDsKPj4gKyAgICAgICAgfSBlbHNlIHsKPj4gKyAgICAgICAgICAgIHJldHVybiBBVkVSUk9S X0VPRjsKPj4gKyAgICAgICAgfQo+PiArI2Vsc2UKPj4gKyAgICAgICAgcmV0dXJuIEFWRVJST1Jf RU9GOwo+PiArI2VuZGlmCj4+ICAgICAgfQo+PiAKPj4gLSAgICBlcnIgPSBhYWNEZWNvZGVyX0Rl Y29kZUZyYW1lKHMtPmhhbmRsZSwgKElOVF9QQ00gKikgcy0+ZGVjb2Rlcl9idWZmZXIsIHMtPmRl Y29kZXJfYnVmZmVyX3NpemUgLyBzaXplb2YoSU5UX1BDTSksIDApOwo+PiArICAgIGVyciA9IGFh Y0RlY29kZXJfRGVjb2RlRnJhbWUocy0+aGFuZGxlLCAoSU5UX1BDTSAqKSBzLT5kZWNvZGVyX2J1 ZmZlciwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMtPmRlY29kZXJfYnVm ZmVyX3NpemUgLyBzaXplb2YoSU5UX1BDTSksCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBmbGFncyk7Cj4+ICAgICAgaWYgKGVyciA9PSBBQUNfREVDX05PVF9FTk9VR0hfQklU Uykgewo+PiAgICAgICAgICByZXQgPSBhdnBrdC0+c2l6ZSAtIHZhbGlkOwo+PiAgICAgICAgICBn b3RvIGVuZDsKPj4gQEAgLTM5MCwxNiArNDE2LDM2IEBAIHN0YXRpYyBpbnQgZmRrX2FhY19kZWNv ZGVfZnJhbWUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4LCB2b2lkICpkYXRhLAo+PiAgICAgICAgICBn b3RvIGVuZDsKPj4gICAgICBmcmFtZS0+bmJfc2FtcGxlcyA9IGF2Y3R4LT5mcmFtZV9zaXplOwo+ PiAKPj4gKyNpZiBGREtERUNfVkVSX0FUX0xFQVNUKDIsIDUpIC8vIDIuNS4xMAo+PiArICAgIGlm IChmbGFncyAmIEFBQ0RFQ19GTFVTSCkgewo+PiArICAgICAgICAvLyBPbmx5IHJldHVybiB0aGUg cmlnaHQgYW1vdW50IG9mIHNhbXBsZXMgYXQgdGhlIGVuZDsgaWYgY2FsbGluZyB0aGUKPj4gKyAg ICAgICAgLy8gZGVjb2RlciB3aXRoIEFBQ0RFQ19GTFVTSCwgaXQgd2lsbCBrZWVwIHJldHVybmlu ZyBmcmFtZXMgaW5kZWZpbml0ZWx5Lgo+PiArICAgICAgICBmcmFtZS0+bmJfc2FtcGxlcyA9IEZG TUlOKHMtPmZsdXNoX3NhbXBsZXMsIGZyYW1lLT5uYl9zYW1wbGVzKTsKPj4gKyAgICAgICAgYXZf bG9nKHMsIEFWX0xPR19ERUJVRywgIlJldHVybmluZyAlZC8lZCBkZWxheWVkIHNhbXBsZXMuXG4i LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZS0+bmJfc2FtcGxlcywg cy0+Zmx1c2hfc2FtcGxlcyk7Cj4+ICsgICAgICAgIHMtPmZsdXNoX3NhbXBsZXMgLT0gZnJhbWUt Pm5iX3NhbXBsZXM7Cj4+ICsgICAgfSBlbHNlIHsKPj4gKyAgICAgICAgLy8gVHJpbSBvZmYgc2Ft cGxlcyBmcm9tIHRoZSBzdGFydCB0byBjb21wZW5zYXRlIGZvciBleHRyYSBkZWNvZGVyCj4+ICsg ICAgICAgIC8vIGRlbGF5LiBXZSBjb3VsZCBhbHNvIGp1c3QgYWRqdXN0IHRoZSBwdHMsIGJ1dCB0 aGlzIGF2b2lkcwo+PiArICAgICAgICAvLyBpbmNsdWRpbmcgdGhlIGV4dHJhIHNhbXBsZXMgaW4g dGhlIG91dHB1dCBhbHRvZ2V0aGVyLgo+PiArICAgICAgICBpZiAocy0+ZGVsYXlfc2FtcGxlcykg ewo+PiArICAgICAgICAgICAgaW50IGRyb3Bfc2FtcGxlcyA9IEZGTUlOKHMtPmRlbGF5X3NhbXBs ZXMsIGZyYW1lLT5uYl9zYW1wbGVzKTsKPj4gKyAgICAgICAgICAgIGF2X2xvZyhzLCBBVl9MT0df REVCVUcsICJEcm9wcGluZyAlZC8lZCBkZWxheWVkIHNhbXBsZXMuXG4iLAo+PiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJvcF9zYW1wbGVzLCBzLT5kZWxheV9zYW1wbGVz KTsKPj4gKyAgICAgICAgICAgIHMtPmRlbGF5X3NhbXBsZXMgIC09IGRyb3Bfc2FtcGxlczsKPj4g KyAgICAgICAgICAgIGZyYW1lLT5uYl9zYW1wbGVzIC09IGRyb3Bfc2FtcGxlczsKPj4gKyAgICAg ICAgICAgIGlucHV0X29mZnNldCA9IGRyb3Bfc2FtcGxlcyAqIGF2Y3R4LT5jaGFubmVsczsKPj4g KyAgICAgICAgICAgIGlmIChmcmFtZS0+bmJfc2FtcGxlcyA8PSAwKQo+PiArICAgICAgICAgICAg ICAgIHJldHVybiAwOwo+PiArICAgICAgICB9Cj4+ICsgICAgfQo+PiArI2VuZGlmCj4+ICsKPj4g ICAgICBpZiAoKHJldCA9IGZmX2dldF9idWZmZXIoYXZjdHgsIGZyYW1lLCAwKSkgPCAwKQo+PiAg ICAgICAgICBnb3RvIGVuZDsKPj4gCj4+IC0gICAgaWYgKGZyYW1lLT5wdHMgIT0gQVZfTk9QVFNf VkFMVUUpCj4+IC0gICAgICAgIGZyYW1lLT5wdHMgLT0gYXZfcmVzY2FsZV9xKHMtPm91dHB1dF9k ZWxheSwKPj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKEFWUmF0aW9uYWwp ezEsIGF2Y3R4LT5zYW1wbGVfcmF0ZX0sCj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGF2Y3R4LT50aW1lX2Jhc2UpOwo+PiAtCj4+IC0gICAgbWVtY3B5KGZyYW1lLT5leHRl bmRlZF9kYXRhWzBdLCBzLT5kZWNvZGVyX2J1ZmZlciwKPj4gLSAgICAgICAgICAgYXZjdHgtPmNo YW5uZWxzICogYXZjdHgtPmZyYW1lX3NpemUgKgo+PiArICAgIG1lbWNweShmcmFtZS0+ZXh0ZW5k ZWRfZGF0YVswXSwgcy0+ZGVjb2Rlcl9idWZmZXIgKyBpbnB1dF9vZmZzZXQsCj4+ICsgICAgICAg ICAgIGF2Y3R4LT5jaGFubmVscyAqIGZyYW1lLT5uYl9zYW1wbGVzICoKPj4gICAgICAgICAgICAg YXZfZ2V0X2J5dGVzX3Blcl9zYW1wbGUoYXZjdHgtPnNhbXBsZV9mbXQpKTsKPj4KPj4gICAgICAq Z290X2ZyYW1lX3B0ciA9IDE7Cj4+IEBAIC00MzIsNyArNDc4LDExIEBAIGNvbnN0IEFWQ29kZWMg ZmZfbGliZmRrX2FhY19kZWNvZGVyID0gewo+PiAgICAgIC5kZWNvZGUgICAgICAgICA9IGZka19h YWNfZGVjb2RlX2ZyYW1lLAo+PiAgICAgIC5jbG9zZSAgICAgICAgICA9IGZka19hYWNfZGVjb2Rl X2Nsb3NlLAo+PiAgICAgIC5mbHVzaCAgICAgICAgICA9IGZka19hYWNfZGVjb2RlX2ZsdXNoLAo+ PiAtICAgIC5jYXBhYmlsaXRpZXMgICA9IEFWX0NPREVDX0NBUF9EUjEgfCBBVl9DT0RFQ19DQVBf Q0hBTk5FTF9DT05GLAo+PiArICAgIC5jYXBhYmlsaXRpZXMgICA9IEFWX0NPREVDX0NBUF9EUjEg fCBBVl9DT0RFQ19DQVBfQ0hBTk5FTF9DT05GCj4+ICsjaWYgRkRLREVDX1ZFUl9BVF9MRUFTVCgy LCA1KSAvLyAyLjUuMTAKPj4gKyAgICAgICAgICAgICAgICAgICAgICB8IEFWX0NPREVDX0NBUF9E RUxBWQo+PiArI2VuZGlmCj4+ICsgICAgLAo+PiAgICAgIC5wcml2X2NsYXNzICAgICA9ICZmZGtf YWFjX2RlY19jbGFzcywKPj4gICAgICAuY2Fwc19pbnRlcm5hbCAgPSBGRl9DT0RFQ19DQVBfSU5J VF9USFJFQURTQUZFIHwKPj4gICAgICAgICAgICAgICAgICAgICAgICBGRl9DT0RFQ19DQVBfSU5J VF9DTEVBTlVQLAo+PiAKPgo+IFdoZW4gSSB1c2UgdGhlIGxpYmZkay1hYWMgZGVjb2RlciBJIGdl dCB0aGUgZXhhY3QgbnVtYmVyIG9mIHNhbXBsZXMgbGlrZQo+IHdpdGggdGhlIG5hdGl2ZSBhYWMg ZGVjb2RlciAobmFtZWx5IG51bWJlciBvZiBmcmFtZXMgKiAxMDI0LCBhcwo+IGV4cGVjdGVkKS4g V2hhdCBtYWtlcyB5b3UgYmVsaWV2ZSB0aGlzIGlzIG5lY2Vzc2FyeT8KClRoZSBmZGstYWFjIGRl Y29kZXIgY2FuIGhhdmUsIGRlcGVuZGluZyBvbiBjb21iaW5hdGlvbiBvZiBvcHRpb25zLCBzb21l IAphbW91bnQgb2YgZXh0cmEgaW50ZXJuYWwgZGVsYXksIHRoYXQgdGhlIGxpYmF2Y29kZWMgaW50 ZXJuYWwgYWFjIGRlY29kZXIgCmRvZXNuJ3QgaGF2ZS4gKEl0J3MgYWxzbyBwb3NzaWJsZSB0byBz ZXQgdGhlIG9wdGlvbnMgaW4gYSBzdGF0ZSB3aGVyZSB0aGUgCmZkay1hYWMgZGVjb2RlciBkb2Vz bid0IGluZHVjZSBhbnkgZXh0cmEgZGVsYXkuKQoKQ3VycmVudGx5LCB3ZSBjb21wZW5zYXRlIGZv ciB0aGF0IGV4dHJhIGRlbGF5IGJ5IGp1c3Qgb2Zmc2V0dGluZyBwdHMgCmJhY2t3YXJkcywgc28g Zm9yIGEgc3RyZWFtIHdpdGggTiBwYWNrZXRzLCB3ZSByZXR1cm4gc2FtcGxlcyB3aXRoIAp0aW1l c3RhbXBzIFstZGVsYXksTipmcmFtZXNpemUtZGVsYXldLgoKSW4gb3JkZXIgbm90IHRvIGxvc2Ug ZGF0YSBhdCB0aGUgZW5kLCB3ZSBtdXN0IG1ha2UgdGhlIGRlY29kZXIgZmx1c2hhYmxlIAphbmQg Zmx1c2ggdXAgdG8gKGRlbGF5KSBzYW1wbGVzIGF0IHRoZSBlbmQuIEFuZCBzaW5jZSBvbmUgZG9l c24ndCBub3JtYWxseSAKZXhwZWN0IGV4dHJhIGRlbGF5IHNhbXBsZXMgYXQgdGhlIHN0YXJ0IG9m IGFuIEFBQyBkZWNvZGVyIG91dHB1dCwgd2UgYWxzbyAKdHJpbSBvdXQgdGhlIHNhbWUgYW1vdW50 IG9mIHNhbXBsZXMgYXQgdGhlIHN0YXJ0ICh0byBzaW1wbGlmeSBmb3IgdXNlcnMgCnRoYXQgZG9u J3Qgb2JzZXJ2ZSB0aGUgcHRzLCB3aG8gb3RoZXJ3aXNlIGFyZSBzdXJwcmlzZWQgYnkgdGhlIHN0 cmVhbSAKc3RhcnRpbmcgZnJvbSBwdHMgLWRlbGF5IGluc3RlYWQgb2YgYXQgcHRzIDApLgoKLy8g TWFydGluCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmZm bXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9m Zm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRldmVsCgpUbyB1bnN1YnNjcmliZSwg dmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9y ZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K