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 1BAB34C061 for ; Mon, 28 Jul 2025 22:02:02 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 7A72F68D5B0; Tue, 29 Jul 2025 01:01:58 +0300 (EEST) Received: from nef.ens.fr (nef2.ens.fr [129.199.96.40]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id ACB6168C68E for ; Tue, 29 Jul 2025 01:01:51 +0300 (EEST) X-ENS-nef-client: 129.199.129.80 ( name = phare.normalesup.org ) Received: from phare.normalesup.org (phare.normalesup.org [129.199.129.80]) by nef.ens.fr (8.14.4/1.01.28121999) with ESMTP id 56SM1oQr027219 for ; Tue, 29 Jul 2025 00:01:51 +0200 Received: by phare.normalesup.org (Postfix, from userid 1001) id DD0E12EFE3; Tue, 29 Jul 2025 00:01:50 +0200 (CEST) Date: Tue, 29 Jul 2025 00:01:50 +0200 From: Nicolas George To: FFmpeg development discussions and patches Message-ID: References: <20250702144355.GE29660@pb2> <20250702171641.GF29660@pb2> <20250703155205.GK29660@pb2> <20250706143354.GA29660@pb2> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20250706143354.GA29660@pb2> X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.4.3 (nef.ens.fr [129.199.96.32]); Tue, 29 Jul 2025 00:01:51 +0200 (CEST) Subject: Re: [FFmpeg-devel] [RFC] Advanced Error Codes 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: TWljaGFlbCBOaWVkZXJtYXllciAoSEUxMjAyNS0wNy0wNik6Cj4gSGkgTmljb2xhcwoKSGkuIFNv cnJ5IEkgcHJvY3Jhc3RpbmF0ZWQgdG8gcmVwbHkgdG8gdGhhdCB0b28uCgo+IHRoZXJlcyBhIGZp eGVkIGxlbmd0aCBhcnJheSBvZiBBZHZhbmNlZEVycm9yIHN0cnVjdHMuCgpNb3JlIGdsb2JhbCBz dGF0ZSBpcyBub3QgYSBnb29kIGlkZWEuCgo+IEFkdmFuY2VkRXJyb3IgaGFzIGEgZml4ZWQgbGVu Z3RoIGNoYXIgZmllbGQuCj4gVGhhdHMgd2hlcmUgYSBzaW5nbGUgY3VzdG9tIHRleHQgc3RyaW5n IGNhbiBiZSBzdG9yZWQuCj4gV2hpY2ggd291bGQgYmUgbWF5YmUgIldoYWV0dmVyIHlvdSBsaWtl IHBpenphIiBpZiBmYXZvcml0ZV9mb29kIHdhcyAicGl6emEiCj4gaXRzIHZlcnkgdmVyeSBzaW1w bGUKPiAKPiB0eXBkZWYgc3RydWN0IEFkdmFuY2VkRXJyb3Igewo+ICAgICBjb25zdCBjaGFyICpl cnJvcl9uYW1lOyAgICAgICAgICAvLy88IGxpa2UgIlRpbWVvdXQiICAgICAgIG9yICAiSW52YWxp ZCBCaXRzdHJlYW0iCj4gICAgIGNvbnN0IGNoYXIgKm9wZXJhdGlvbl9uYW1lOyAgICAgIC8vLzwg bGlrZSAiTmV0d29yayBSZWFkIiAgb3IgICJILjI2NCBibG9jayBwYXJzaW5nIgo+ICAgICBjb25z dCBjaGFyICpzb3VyY2VfZmlsZW5hbWU7ICAgICAvLy88IGxpa2UgZmZtcGVnLmMKPiAgICAgaW50 IHNvdXJjZV9saW5lX251bWJlcjsgICAgICAgICAgLy8vPCBsaWtlIDEyMyBmb3IgbGluZSAxMjMg aW4gZmZtcGVnLmMKPiAgICAgY2hhciBmcmVlX2Zvcm1fZGVzY3JpcHRpb25bRlJFRV9GT1JNX0xF Tl07ICAvLy88IGFueXRoaW5nIGV4dHJhIHRoYXQgZG9lc250IGZpdCBpbiBwb2ludGVycyB0byBz dGF0aWMgY29uc3Qgc3RyaW5ncwo+ICAgICBpbnQ2NF90IHRoaXNfZXJyb3I7Cj4gICAgIGludDY0 X3QgcHJldmlvdXNfZXJyb3I7ICAgICAgICAgIC8vLzwgQSBwcmV2aW91cyByZWxhdGVkIGVycm9y LCBpZiBhbnkKPiAgICAgaW50NjRfdCB0aW1lc3RhbXA7ICAgICAgICAgICAgICAgLy8vPCBUaW1l c3RhbXAgYXQgd2hpY2ggdGhlIGVycm9yIG9jY3VyZWQKPiAgICAgaW50IHRocmVhZF9pZDsKPiB9 IEFkdmFuY2VkRXJyb3I7CgpPbiBwcmluY2lwbGUsIEkgdGhpbmsgdGhpcyBraW5kIG9mIHN0cnVj dHVyZSBpcyBhIGdvb2QgaWRlYSwgYW5kIG15IHBsYW4Kd291bGQgdXNlIGEgc2ltaWxhciBzdHJ1 Y3R1cmUuCgpNeSBwb2ludCBpcyB0aGF0IGl0IHNob3VsZCByZXNpZGUgaW4gY29udGV4dHMsIG5v dCBhcyBnbG9iYWwgc3RhdGUuCgooQXMgYSBtb3JlIHBlZGVzdHJpYW4gY29tbWVudCwgSSB3b3Vs ZCBzdWdnZXN0IHRvIGhhdmUgdGhlIGZyZWUtZm9ybQpkZXNjcmlwdGlvbiBhIOKAnGNvbnN0IGNo YXIgKuKAnSBmb3JtYXQgc3RyaW5nIHdpdGggcGxhY2Vob2xkZXJzIGFuZCB1c2UgdGhlCmJ1ZmZl ciBmb3Iga2V5LXZhbHVlIHBhaXJzIHRvIGJlIHVzZWQgaW4gdGhlIGZvcm1hdCBzdHJpbmcuKQoK PiA+IFdlIGFscmVhZHkgcGFzcyBjb250ZXh0cyBhcm91bmQgZXZlcnl3aGVyZS4KPiAKPiAqIE1h bnkgcGxhY2VzIGJ1dCBub3QgZXZlcnl3aGVyZSwKCkdyYW50ZWQsIGl0IHdhcyBoeXBlcmJvbGUu IEJ1dOKApgoKSSB0aGluayB3ZSBjYW4gc29ydCB0aGUgZnVuY3Rpb25zIGluIG91ciBjb2RlIGlu dG8gdHdvIGdyb3VwczoKClRoZSBmaXJzdCBncm91cDoKCi0gZG8gbm90IGdldCBhIGNvbnRleHQ7 CgotIHBlcmZvcm0gYSByYXRoZXIgc2ltcGxlIHRhc2s7CgotIGNvdWxkIGJlIGNhbGxlZCBpbiB0 aWdodCBsb29wcywgZXZlbiB3aGVuIHRoZXkgZmFpbCByZXBlYXRlZGx5LCBhbmQKICB0aGVyZWZv cmUgc2hvdWxkIG5vdCB3YXN0ZSB0aW1lIGZpZGRsaW5nIHdpdGggc3RyaW5nczsKCi0gZG8gbm90 IGhhdmUgZW5vdWdoIGluZm9ybWF0aW9uIHRvIGRlc2lnbiBhIHVzZWZ1bCBlcnJvciBtZXNzYWdl CiAgYW55d2F5LgoKVGhlIHNlY29uZCBncm91cCwgaXMgYWxsIHRoZSBvcHBvc2l0ZS4gSSBkbyBu b3QgdGhpbmsgdGhlcmUgaXMgbXVjaCBpbgpiZXR3ZWVuLgoKTXkgcG9pbnQgaXM6IHdoZW4gYSBz bWFsbCBmdW5jdGlvbiBpbiB0aGUgZmlyc3QgZ3JvdXAgZmFpbHMsIGl0IGlzIHRoZQpyZXNwb25z aWJpbGl0eSBvZiB0aGUgbGFyZ2UgZnVuY3Rpb24gdGhhdCBjYWxscyBpdCB0byBidWlsZCB0aGUg ZXJyb3IKbWVzc2FnZSwgdXNpbmcgdGhlIGVycm9yIGNvZGUgdGhlIHNpbXBsZSBmdW5jdGlvbiBy ZXR1cm5lZC4gQW5kIHRoZW4gd2UKaGF2ZSBhIGNvbnRleHQuCgo+ICogVGhlIGNvbnRleHRzIGRv IG5vdCBtYXRjaCB0aGUgbGlmZXRpbWUgb2YgdGhlIGVycm9ycwoKSG93IHNvPyBUaGUgdHlwaWNh bCBjb2RlIGxvb2tzIGxpa2U6Cgo0MglyZXQgPSBhdl9kb19zb21ldGhpbmcoY3R4LCBwYXJhbXMp Owo0MwlpZiAocmV0IDwgMCkgewo0NAkgICAgcmVwb3J0X2Vycm9yKGN0eCwgcmV0KTsKNDUJICAg IHJldHVybiBzb21lX2NvZGU7CjQ2CX0KCmN0eCBkb2VzIG5vdCBkaXNhcHBlYXIgYmV0d2VlbiBs aW5lIDQyIGFuZCBsaW5lIDQ0LgoKPiAqIFRoZSBjb250ZXh0cyBjYW4gYmUgYWNjZXNzZWQgZnJv bSBtdWx0aXBsZSB0aHJlYWRzCgpPbmx5IHdpdGggbXV0ZXhlcy4gRm9yIG91ciBtdWx0aXRocmVh ZGVkIGNvZGUsIHdlIGNhbiBzeW5jaHJvbml6ZSBlcnJvcnMKdG9vIGlmIG5lY2Vzc2FyeS4gQW5k IGZvciBtdWx0aXRocmVhZGVkIGFwcGxpY2F0aW9ucyB3ZSBjYW4gZG9jdW1lbnQKdGhhdCBhY2Nl c3NpbmcgdGhlIGVycm9yIG11c3QgYmUgZG9uZSBiZWZvcmUgcmVsZWFzaW5nIHRoZSBtdXRleCwg aW4KY2FzZSB0aGUgYXBwbGljYXRpb24gaXMgbm90IHZlcnkgc21hcnQgYW5kIGRpZCBub3QgZ3Vl c3MgaXQuCgo+ICogVGhlcmUgY2FuIGJlIG11bHRpcGxlIHJlbGV2YW50IGVycm9ycyBmb3IgYSBz aW5nbGUgY29udGV4dAoKQWdhaW46IGhvdyBzbz8gSWYgbXVsdGlwbGUgZXJyb3JzIGFwcGVhciBp biBzdWNjZXNzaW9uLCB0aGUgcHJvcGVyIHdheQp0byBkZWFsIHdpdGggaXQgaXMgdG8gcmVwb3J0 IHRoZSBmaXJzdCBlcnJvciBhcyBpdCBoYXMgaGFwcGVuZWQuIE9yCnBvc3NpYmx5IGNvcHkgaXQu IFRoZW4gcHJvY2Vzc2luZyBjb250aW51ZXMgYW5kIHRoZSBuZXh0IGVycm9yIGhhcHBlbnMsCml0 IGNhbiByZXVzZSB0aGUgc3RvcmFnZS4KCk9yIGRvIHlvdSBtZWFuIGNhc2NhZGluZyBlcnJvcnM6 IGVycm9yIEEgY2F1c2VkIGVycm9yIEIgY2F1c2VkIGVycm9yIEM/ClRoZW4gc3VyZSwgd2UgbXVz dCBoYW5kbGUgdGhhdCwgdGhhdCB3YXMgYWxzbyBteSBwbGFuLiBXZSBjYW4gaW5jbHVkZQpyb29t IGZvciBhIGZldyBlcnJvcnMgaW4gdGhlIGNvbnRleHQsIG5vdCBqdXN0IG9uZS4gT3IgYmV0dGVy LCBkZXNpZ24KdGhlIHN0cnVjdHVyZSB0byBiZSBhYmxlIHRvIHN0b3JlIGEgZmV3IGNhc2NhZGlu ZyBlcnJvcnMgYWxsIHVzaW5nIHRoZQpzYW1lIGJ1ZmZlcjogdGhhdCB3YXksIGlmIHRoZSBmaXJz dCBlcnJvciBpcyB0ZXJzZSwgdGhlIHNlY29uZCBlcnJvciBoYXMKbW9yZSByb29tLgoKPiAic3F1 YXJlIHJvb3Qgb2YgbmVnYXRpdmUgYXJndW1lbnQiIGluIG15ZGVjb2Rlci5jIGF0IGxpbmUgMTIz IGlzIG1vcmUKPiBpbmZvcm1hdGl2ZSB0aGFuIEVJTlZBTCwgYW5kIGhhdmluZyBubyBjbHVlIHdo ZXJlIG9yIHdoeSB0aGF0IGhhcHBlbmVkCj4gCj4gZm9yIGV4YW1wbGUgZGVjb2RlKCkgcmV0dXJu aW5nCj4gQVZFUlJPUihFSU5WQUwpCj4gd2l0aCA1MDAwIGxpbmVzIG9mIGNyeXB0aWMgcGFyc2Vy IGVycm9ycyBpbiBtZXNzYWdlcwo+IAo+IHZzLgo+IAo+ICJzcXVhcmUgcm9vdCBvZiBuZWdhdGl2 ZSBhcmd1bWVudCIgaW4gbXlkZWNvZGVyLmMgYXQgbGluZSAxMjMsIGNhbGxlZCBieQo+IHZlY3Rv cl9sZW5ndGhfY29tcHV0ZSgpIGxpbmUgNTExIGNhbGxlZCBieQo+IHJlYWRfbm5ldCgpIGxpbmUg NzMyIGZyZWVfZm9ybV9kZXNjcmlwdGlvbj0idHJhaW5pbmdfc2V0X21heWJlX2NvcnJ1cHRlZC5k YXQiCgpJIHdpbGwgc3RvcCB5b3UgcmlnaHQgaGVyZTogdGhlIGZpcnN0IG9uZSBpcyB0ZXJyaWJs ZSwgYnV0IHlvdXJzIGlzCnRlcnJpYmxlIHRvby4KCkVycm9ycyBtZXNzYWdlcyBhcmUgZm9yIHVz ZXJzLiBXaGF0IHlvdSBzdWdnZXN0IGlzIG5vdCBhbiBlcnJvciBtZXNzYWdlLAppdCBpcyBhIGRl YnVnIG1lc3NhZ2UgbWVhbnQgZm9yIGRldmVsb3BlcnMuCgpJbiBwYXJ0aWN1bGFyLCB0aGUgZXJy b3IgbWVzc2FnZSBwcmVzZW50ZWQgdG8gdXNlcnMgc2hvdWxkIG5vdCBieQpkZWZhdWx0IGluY2x1 ZGUgc291cmNlIGZpbGUgbmFtZXMgYW5kIGxpbmVzLCBiZWNhdXNlIGl0IGNvbmZ1c2VzIHVzZXJz LgooV2UgbWlnaHQgd2FudCB0byBlbmFibGUgdGhlbSBpbiB0aGUgZmZ0b29scywgYmVjYXVzZSB0 aGUgZmZ0b29scyBhcmUKbWVhbnQgZm9yIHBvd2VyIHVzZXJzLiBCdXQgcmVtZW1iZXIgdGhhdCB0 aGlzIGlzIGFsc28gZm9yIEdVSQphcHBsaWNhdGlvbnMuKQoKVGhlIGlzc3VlIGlzIG5vdCBqdXN0 IHRoZSBsaW5lIG51bWJlcnMuIOKAnFNxdWFyZSByb290IG9mIG5lZ2F0aXZlCmFyZ3VtZW504oCd IGlzIGFic29sdXRlbHkgdXNlbGVzcyB0b286IHVzZXIgbmV2ZXIgYXNrZWQgdG8gY29tcHV0ZSBh CnNxdWFyZSByb290LCB0aGV5IGFza2VkIHRvIHBsYXkgYSBtZWRpYSBmaWxlLiBXaGF0IHRoZSB1 c2VyIG5lZWRzIHRvCmtub3cgaXMgaG93IHRvIGZpeCB0aGUgZXJyb3I6IGNoYW5nZSBhIGNvbW1h bmQtbGluZSBvcHRpb24sIGNoYW5nZSB0aGUKcGVybWlzc2lvbiBvZiBhIGZpbGUsIHJlcG9ydCBh IGJ1ZyB0byB0aGUgZGV2ZWxvcGVycywgb3IganVzdCB0b28gYmFkCnRoZSBmaWxlIGlzIGRhbWFn ZWQgYmV5b25kIHJlcGFpci4KCj4gTm90ZSBieSB0aGUgdGltZSB0aGlzIGlzIHJldHVybmVkIGRl Y29kZSBmYWlsZWQgYW5kIG1hbnkgY29udGV4dHMgaGF2ZQo+IGJlZW4gZGVzdHJveWVkLgoKWW91 IG1lYW46Cgo0MglyZXQgPSBhdl9kb19zb21ldGhpbmcoY3R4LCBwYXJhbXMpOwo0MwlpZiAocmV0 IDwgMCkgewo0NAkgICAgYXZfZnJlZV90aGlzX2NvbnRleHQoJmN0eCk7CjQ1CSAgICByZXR1cm4g c29tZV9jb2RlOwo0Ngl9Cgo/IFdlbGwsIGl0IHNob3VsZCBiZToKCjQyCXJldCA9IGF2X2RvX3Nv bWV0aGluZyhjdHgsIHBhcmFtcyk7CjQzCWlmIChyZXQgPCAwKSB7CjQ0CSAgICBhdl9mb3J3YXJk X2Vycm9yKGNhbGxlcl9jdHgsIGN0eCk7CjQ1CSAgICBhdl9mcmVlX3RoaXNfY29udGV4dCgmY3R4 KTsKNDYJICAgIHJldHVybiBzb21lX2NvZGU7CjQ3CX0KCkkuZS46IHdoZW4gZnJlZWluZyBhIGNv bnRleHQgb24gZXJyb3IsIHRoZSBlcnJvciBtZXNzYWdlcyBtdXN0IGJlCmZvcndhcmRlZCB0byB0 aGUgY2FsbGVyLgoKPiA+IC0gV2UgYWxsb2NhdGUgdGhlIG1lbW9yeSBmb3IgZXJyb3IgbWVzc2Fn ZXMgY29udGV4dHMuIFRoYXQgd2F5LCB3ZSBhdm9pZAo+ID4gICB0aGUgaXNzdWUgb2YgdXNpbmcg bG9ja3Mgb3IgdGhyZWFkLWxvY2FsIHN0b3JhZ2UgYnV0IGRvIG5vdCBoYXZlIGEKPiA+ICAgaGFy ZCBsaW1pdCBvbiBzaW11bHRhbmVvdXMgZXJyb3JzLgo+IG1hbGxvYygpIGNhbiBmYWlsIGFuZCBp dCBuZWVkcyB0byBiZSBmcmVlZCBleGFjdGx5IG9uY2UuIEFuZCBub3QgZnJlZWQKPiBiZWZvcmUg dGhlIGNhbGxlciBpcyBmaW5pc2hlZCBkb2luZyBhbnl0aGluZyBpdCBsaWtlcyB0byBkbyB3aXRo IHRoZSBlcnJvcgo+IGluZm9ybWF0aW9uLiBBbmQgaXQgdmVyeSBwb3NzaWJseSB3YW50cyB0byBw YXNzIGl0IG9uIHRvIGl0cyBjYWxsZXIKClNvcnJ5LCB0aGVyZSB3YXMgdHdvIHdvcmRzIG1pc3Np bmcgaW4gbXkgc2VudGVuY2UsIGFuZCB0aGF0IG1hZGUgaXQKbm9uc2Vuc2ljYWwuIEl0IHNob3Vs ZCBoYXZlIGJlZW46CgotIFdlIGFsbG9jYXRlIHRoZSBtZW1vcnkgZm9yIGVycm9yIG1lc3NhZ2Vz IElOIFRIRSBjb250ZXh0cy4KCmkuZS4gd2UgYWRkIHRoZSByb29tIGZvciB0aGUgZXJyb3Igc3Ry dWN0dXJlKHMpIHRvIHRoZSBtZW1vcnkgd2UgcmVzZXJ2ZQpmb3IgdGhlIGNvbnRleHRzIHdoZW4g Y3JlYXRpbmcgdGhlbSwgYW5kIHdlIGZyZWUgYWxsIGF0IHRoZSBzYW1lIHRpbWUuClBvc3NpYmx5 LCB3ZSBldmVuIGFsbG9jYXRlIGl0IGluIHNhbWUgbWFsbG9jKCkgYXMgdGhlIGNvbnRleHQuCgo+ ID4gLSBXZSBkbyBub3QgY2hhbmdlIHRoZSByZXR1cm4gdHlwZSBvZiBhbGwgb3VyIEFQSSwgd2Ug c3RpbGwgcmV0dXJuIOKAnGEKPiA+ICAgbmVnYXRpdmUgQVZFUlJPUiBjb2Rl4oCdIHRvIGtlZXAg c291cmNlIGNvbXBhdGliaWxpdHksIGFuZCB1c2UgdGhlIGJlc3QKPiA+ICAgY29kZSB3ZSBjYW4g ZmluZC4KPiBUaGVuIHlvdSBubyBsb25nZXIga25vdyB3aGljaCBlcnJvciByZWxhdGVzIHRvIHdo aWNoIG1lc3NhZ2UKCldoZW4g4oCccmV0ID0gYXZfZG9fc29tZXRoaW5nKGN0eCwg4oCmKeKAnSBp cyBuZWdhdGl2ZSwgdGhlIGVycm9yIGlzIGluIGN0eAphbmQgc3RheXMgdGhlcmUgdW50aWwgdGhl IGFwcGxpY2F0aW9uIGRvZXMgc29tZXRoaW5nIGVsc2Ugd2l0aCBjdHguIFRoZQphcHBsaWNhdGlv biBpcyBzdXBwb3NlZCB0byBkbyBzb21ldGhpbmcgd2l0aCB0aGUgZXJyb3IgYmVmb3JlIHRoYXQu IElmCml0IGlzIGEgbXVsdGl0aHJlYWRlZCBhcHBsaWNhdGlvbiwgaXQgbXVzdCBub3QgcmVsZWFz ZSB0aGUgbXV0ZXgKcHJvdGVjdGluZyBjdHggYmVmb3JlIHVzaW5nIHRoZSBlcnJvci4KCj4gU28g dGhlIHByb2JsZW0gdGhhdCBJIHNlZSwgaXNudCBzb2x2ZWQuCgpJIHRoaW5rIGl0IGlzLgoKUmVn YXJkcywKCi0tIAogIE5pY29sYXMgR2VvcmdlCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVnLWRldmVs QGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZtcGVnLWRl dmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKZmZtcGVnLWRl dmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K