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 03B2A48C40 for ; Tue, 23 Jan 2024 08:33:25 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id AC46368CF59; Tue, 23 Jan 2024 10:33:23 +0200 (EET) Received: from mail-ej1-f41.google.com (mail-ej1-f41.google.com [209.85.218.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F38CA68C43B for ; Tue, 23 Jan 2024 10:33:16 +0200 (EET) Received: by mail-ej1-f41.google.com with SMTP id a640c23a62f3a-a2821884a09so304187166b.2 for ; Tue, 23 Jan 2024 00:33:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1705998796; x=1706603596; darn=ffmpeg.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=sNcUIM1jojc0jfEfFp3UgUmhLUmCOMZEd1Rm/mpAWHk=; b=aPfx27DnEPcSrdFroeCYT4nRqbMnvGHoX8Yoo5qfJYZWuxmzZRnovw9E2lTdB0YI1+ BNvOphJK40eKQJWYneG9eoPcRgjW4S04jqHiwszEIL6TFsHz/I52rioWICydmBwSH9OV XzhCQ/G574ZyUeaOwOXjN7JsbcsKumOuirkudv3cev/jWHCYC7kGwgxB7M9/Dvqs9EAj 6eQgR02EiefI7nye6ZCwG62NegIBa6ijpHxhHOYuV+Qn8WTD2Q88yHRJxDl0XHKqwR9n giZcDaU6kJVhVzATWGG1qViflx3U0t7z/PQjdPCdF9dN7vjySCUbiNUOiCYsYK68F6ou FSXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705998796; x=1706603596; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=sNcUIM1jojc0jfEfFp3UgUmhLUmCOMZEd1Rm/mpAWHk=; b=lKVun+eP7QDSd2FsiBoHfFc1UmHgq4bnKQNQjbLV7cghnvs3No043FFNYFIBPb7pnB J3PUMGEfFO9LvA3IA8rZMeVpAplB9wtsPrbmFHuJKtQoIITpUMWI8d3Y1leAe62w/Gd1 oy7UvUAOt8tD0gaccBeGLzbFzAoJc1Zt2WFn1Zjv7FwCCP4XRpQ6gMkAtk0vZfGRfUzM GqISMSA05w+/HHTzIH+UeONAgFtYRWLDz8V1fgemEFsvkJ/KhBOrsbrjJciTcf8Khjv1 HTBQOUDOEq6J3Nfjq9oCVbsGERE/a5vxzNmt6Kw5ZNYmzPKJVj3gfYZt7oIA78h7kqta C7HA== X-Gm-Message-State: AOJu0YxOIedS/JhWjHUKYtyi8smspLVBR9lSsYxwSLcPCyNsrtS4Qcwp g/1LewF0ENU2tv5MVrZbQIpTyZretg1BlFPK5bGGeb6yGdeUsskQd0wqvjSUKXGTPNbqkx0q0ce xpI/wEohzh/HYtO1YzQ7/myzEtbNnsUbYcQs= X-Google-Smtp-Source: AGHT+IGgjE10iF4TFlWYNeedAzVqXHuvofQb4WIW5S79zvL1ObTFBptaOchUWq50qtXwdrkhyvqhPllnMhTqPn37URI= X-Received: by 2002:a17:907:75cb:b0:a2e:556:f114 with SMTP id jl11-20020a17090775cb00b00a2e0556f114mr2428907ejc.25.1705998795907; Tue, 23 Jan 2024 00:33:15 -0800 (PST) MIME-Version: 1.0 From: Victor Luchitz Date: Tue, 23 Jan 2024 11:33:04 +0300 Message-ID: To: FFmpeg development discussions and patches Content-Type: multipart/mixed; boundary="00000000000037f13a060f98cc81" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [FFmpeg-devel] [PATCH] libavcodec: add bit-rate support to RoQ video encoder 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: --00000000000037f13a060f98cc81 Content-Type: text/plain; charset="UTF-8" Re-posting the patch as an attachment. Sorry for the inconvenience! -- Best regards, Victor Luchitz --00000000000037f13a060f98cc81 Content-Type: application/octet-stream; name="0001-libavcodec-add-bit-rate-support-to-RoQ-video-encoder.patch" Content-Disposition: attachment; filename="0001-libavcodec-add-bit-rate-support-to-RoQ-video-encoder.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lrq3l2z60 RnJvbSBiNjgyNTExMjQ0NmVlMjIwZDg5Y2FiOTc1ZThiY2VmODIzODg0MTQxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBWaWN0b3IgTHVjaGl0cyA8dmx1Y2hpdHNAZ21haWwuY29tPgpE YXRlOiBUdWUsIDIzIEphbiAyMDI0IDExOjI3OjA3ICswMzAwClN1YmplY3Q6IFtQQVRDSF0gbGli YXZjb2RlYzogYWRkIGJpdC1yYXRlIHN1cHBvcnQgdG8gUm9RIHZpZGVvIGVuY29kZXIKClRoZSBi aXRyYXRlIG9wdGlvbiAoLWI6dikgY2FuIG5vdyBiZSB1c2VkIHRvIHNwZWNpZnkgdGhlIGJpdCBy YXRlCm9mIHRoZSB2aWRlbyBzdHJlYW0gb2YgdGhlIFJvUSBlbmNvZGVyLgoKT3JpZ2luYWwgcGF0 Y2ggYnkgSm9zZXBoIEZlbnRvbiBha2EgQ2hpbGx5IFdpbGx5CgpTaWduZWQtb2ZmLWJ5OiBWaWN0 b3IgTHVjaGl0cyA8dmx1Y2hpdHNAZ21haWwuY29tPgotLS0KIENoYW5nZWxvZyAgICAgICAgICAg ICAgICB8ICAgMSArCiBsaWJhdmNvZGVjL3JvcXZpZGVvLmggICAgfCAgIDEgKwogbGliYXZjb2Rl Yy9yb3F2aWRlb2RlYy5jIHwgIDE2ICsrKysrKwogbGliYXZjb2RlYy9yb3F2aWRlb2VuYy5jIHwg MTA3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLQogbGliYXZjb2RlYy92 ZXJzaW9uLmggICAgIHwgICAyICstCiA1IGZpbGVzIGNoYW5nZWQsIDExNyBpbnNlcnRpb25zKCsp LCAxMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9DaGFuZ2Vsb2cgYi9DaGFuZ2Vsb2cKaW5k ZXggYzQwYjZkMDhmZC4uNjk3NDMxMmY5ZCAxMDA2NDQKLS0tIGEvQ2hhbmdlbG9nCisrKyBiL0No YW5nZWxvZwpAQCAtMjIsNiArMjIsNyBAQCB2ZXJzaW9uIDxuZXh0PjoKIC0gZmZtcGVnIENMSSAt YnNmIG9wdGlvbiBtYXkgbm93IGJlIHVzZWQgZm9yIGlucHV0IGFzIHdlbGwgYXMgb3V0cHV0CiAt IGZmbXBlZyBDTEkgb3B0aW9ucyBtYXkgbm93IGJlIHVzZWQgYXMgLS9vcHQgPHBhdGg+LCB3aGlj aCBpcyBlcXVpdmFsZW50CiAgIHRvIC1vcHQgPGNvbnRlbnRzIG9mIGZpbGUgPHBhdGg+PgorLSBS b1EgdmlkZW8gYml0IHJhdGUgb3B0aW9uIHN1cHBvcnQKIAogdmVyc2lvbiA2LjE6CiAtIGxpYmFy aWJjYXB0aW9uIGRlY29kZXIKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcm9xdmlkZW8uaCBiL2xp YmF2Y29kZWMvcm9xdmlkZW8uaAppbmRleCAyYzJlNDI4ODRkLi42ZDMwYmNhYWRhIDEwMDY0NAot LS0gYS9saWJhdmNvZGVjL3JvcXZpZGVvLmgKKysrIGIvbGliYXZjb2RlYy9yb3F2aWRlby5oCkBA IC00Myw2ICs0Myw3IEBAIHR5cGVkZWYgc3RydWN0IFJvcUNvbnRleHQgewogICAgIEFWRnJhbWUg Kmxhc3RfZnJhbWU7CiAgICAgQVZGcmFtZSAqY3VycmVudF9mcmFtZTsKICAgICBpbnQgd2lkdGgs IGhlaWdodDsKKyAgICBpbnQga2V5X2ZyYW1lOwogCiAgICAgcm9xX2NlbGwgY2IyeDJbMjU2XTsK ICAgICByb3FfcWNlbGwgY2I0eDRbMjU2XTsKZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcm9xdmlk ZW9kZWMuYyBiL2xpYmF2Y29kZWMvcm9xdmlkZW9kZWMuYwppbmRleCBiZmM2OWE2NWM5Li5iNGFk ZTNhNDNiIDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3JvcXZpZGVvZGVjLmMKKysrIGIvbGliYXZj b2RlYy9yb3F2aWRlb2RlYy5jCkBAIC03MCw2ICs3MCw3IEBAIHN0YXRpYyB2b2lkIHJvcXZpZGVv X2RlY29kZV9mcmFtZShSb3FDb250ZXh0ICpyaSwgR2V0Qnl0ZUNvbnRleHQgKmdiKQogCiAgICAg Y2h1bmtfc3RhcnQgPSBieXRlc3RyZWFtMl90ZWxsKGdiKTsKICAgICB4cG9zID0geXBvcyA9IDA7 CisgICAgcmktPmtleV9mcmFtZSA9IDE7CiAKICAgICBpZiAoY2h1bmtfc2l6ZSA+IGJ5dGVzdHJl YW0yX2dldF9ieXRlc19sZWZ0KGdiKSkgewogICAgICAgICBhdl9sb2cocmktPmxvZ2N0eCwgQVZf TE9HX0VSUk9SLCAiQ2h1bmsgZG9lcyBub3QgZml0IGluIGlucHV0IGJ1ZmZlclxuIik7CkBAIC05 MiwxMiArOTMsMTQgQEAgc3RhdGljIHZvaWQgcm9xdmlkZW9fZGVjb2RlX2ZyYW1lKFJvcUNvbnRl eHQgKnJpLCBHZXRCeXRlQ29udGV4dCAqZ2IpCiAKICAgICAgICAgICAgICAgICBzd2l0Y2godnFp ZCkgewogICAgICAgICAgICAgICAgIGNhc2UgUm9RX0lEX01PVDoKKyAgICAgICAgICAgICAgICAg ICAgcmktPmtleV9mcmFtZSA9IDA7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAg ICAgICAgICAgIGNhc2UgUm9RX0lEX0ZDQzogewogICAgICAgICAgICAgICAgICAgICBpbnQgYnl0 ZSA9IGJ5dGVzdHJlYW0yX2dldF9ieXRlKGdiKTsKICAgICAgICAgICAgICAgICAgICAgbXggPSA4 IC0gKGJ5dGUgPj4gNCkgLSAoKHNpZ25lZCBjaGFyKSAoY2h1bmtfYXJnID4+IDgpKTsKICAgICAg ICAgICAgICAgICAgICAgbXkgPSA4IC0gKGJ5dGUgJiAweGYpIC0gKChzaWduZWQgY2hhcikgY2h1 bmtfYXJnKTsKICAgICAgICAgICAgICAgICAgICAgZmZfYXBwbHlfbW90aW9uXzh4OChyaSwgeHAs IHlwLCBteCwgbXkpOworICAgICAgICAgICAgICAgICAgICByaS0+a2V5X2ZyYW1lID0gMDsKICAg ICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg ICAgIGNhc2UgUm9RX0lEX1NMRDoKQEAgLTEyNSwxMiArMTI4LDE0IEBAIHN0YXRpYyB2b2lkIHJv cXZpZGVvX2RlY29kZV9mcmFtZShSb3FDb250ZXh0ICpyaSwgR2V0Qnl0ZUNvbnRleHQgKmdiKQog ICAgICAgICAgICAgICAgICAgICAgICAgdnFmbGdfcG9zLS07CiAgICAgICAgICAgICAgICAgICAg ICAgICBzd2l0Y2godnFpZCkgewogICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSBSb1FfSURf TU9UOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpLT5rZXlfZnJhbWUgPSAwOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAg Y2FzZSBSb1FfSURfRkNDOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGJ5dGUg PSBieXRlc3RyZWFtMl9nZXRfYnl0ZShnYik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bXggPSA4IC0gKGJ5dGUgPj4gNCkgLSAoKHNpZ25lZCBjaGFyKSAoY2h1bmtfYXJnID4+IDgpKTsK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBteSA9IDggLSAoYnl0ZSAmIDB4ZikgLSAoKHNp Z25lZCBjaGFyKSBjaHVua19hcmcpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZmX2Fw cGx5X21vdGlvbl80eDQocmksIHgsIHksIG14LCBteSk7CisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcmktPmtleV9mcmFtZSA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJl YWs7CiAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICBj YXNlIFJvUV9JRF9TTEQ6CkBAIC0yMTQsNiArMjE5LDE3IEBAIHN0YXRpYyBpbnQgcm9xX2RlY29k ZV9mcmFtZShBVkNvZGVjQ29udGV4dCAqYXZjdHgsIEFWRnJhbWUgKnJmcmFtZSwKIAogICAgIGlm ICgocmV0ID0gYXZfZnJhbWVfcmVmKHJmcmFtZSwgcy0+Y3VycmVudF9mcmFtZSkpIDwgMCkKICAg ICAgICAgcmV0dXJuIHJldDsKKworICAgIC8qIEtleWZyYW1lIHdoZW4gbm8gTU9UIG9yIEZDQyBj b2RlcyBpbiBmcmFtZSAqLworICAgIGlmIChzLT5rZXlfZnJhbWUpIHsKKyAgICAgICAgYXZfbG9n KGF2Y3R4LCBBVl9MT0dfVkVSQk9TRSwgIlxuRm91bmQga2V5ZnJhbWUhXG4iKTsKKyAgICAgICAg cmZyYW1lLT5waWN0X3R5cGUgPSBBVl9QSUNUVVJFX1RZUEVfSTsKKyAgICAgICAgYXZwa3QtPmZs YWdzIHw9IEFWX1BLVF9GTEFHX0tFWTsKKyAgICB9IGVsc2UgeworICAgICAgICByZnJhbWUtPnBp Y3RfdHlwZSA9IEFWX1BJQ1RVUkVfVFlQRV9QOworICAgICAgICBhdnBrdC0+ZmxhZ3MgJj0gfkFW X1BLVF9GTEFHX0tFWTsKKyAgICB9CisKICAgICAqZ290X2ZyYW1lICAgICAgPSAxOwogCiAgICAg Lyogc2h1ZmZsZSBmcmFtZXMgKi8KZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvcm9xdmlkZW9lbmMu YyBiL2xpYmF2Y29kZWMvcm9xdmlkZW9lbmMuYwppbmRleCAwOTMzYWJmNGY5Li45NzYwMTVkOTE4 IDEwMDY0NAotLS0gYS9saWJhdmNvZGVjL3JvcXZpZGVvZW5jLmMKKysrIGIvbGliYXZjb2RlYy9y b3F2aWRlb2VuYy5jCkBAIC0xMzYsNiArMTM2LDggQEAgdHlwZWRlZiBzdHJ1Y3QgUm9xRW5jQ29u dGV4dCB7CiAgICAgc3RydWN0IEVMQkdDb250ZXh0ICplbGJnOwogICAgIEFWTEZHIHJhbmRjdHg7 CiAgICAgdWludDY0X3QgbGFtYmRhOworICAgIHVpbnQ2NF90IGxhc3RfbGFtYmRhOworICAgIGlu dCBsYW1iZGFfZGVsdGE7CiAKICAgICBtb3Rpb25fdmVjdCAqdGhpc19tb3Rpb240OwogICAgIG1v dGlvbl92ZWN0ICpsYXN0X21vdGlvbjQ7CkBAIC04ODcsOCArODg5LDkgQEAgc3RhdGljIGludCBn ZW5lcmF0ZV9uZXdfY29kZWJvb2tzKFJvcUVuY0NvbnRleHQgKmVuYykKICAgICByZXR1cm4gMDsK IH0KIAotc3RhdGljIGludCByb3FfZW5jb2RlX3ZpZGVvKFJvcUVuY0NvbnRleHQgKmVuYykKK3N0 YXRpYyBpbnQgcm9xX2VuY29kZV92aWRlbyhBVkNvZGVjQ29udGV4dCAqYXZjdHgpCiB7CisgICAg Um9xRW5jQ29udGV4dCAqY29uc3QgZW5jID0gYXZjdHgtPnByaXZfZGF0YTsKICAgICBSb3FUZW1w RGF0YSAqY29uc3QgdGVtcERhdGEgPSAmZW5jLT50bXBfZGF0YTsKICAgICBSb3FDb250ZXh0ICpj b25zdCByb3EgPSAmZW5jLT5jb21tb247CiAgICAgaW50IHJldDsKQEAgLTkxMCwxNCArOTEzLDE0 IEBAIHN0YXRpYyBpbnQgcm9xX2VuY29kZV92aWRlbyhSb3FFbmNDb250ZXh0ICplbmMpCiAKICAg ICAvKiBRdWFrZSAzIGNhbid0IGhhbmRsZSBjaHVua3MgYmlnZ2VyIHRoYW4gNjU1MzUgYnl0ZXMg Ki8KICAgICBpZiAodGVtcERhdGEtPm1haW5DaHVua1NpemUvOCA+IDY1NTM1ICYmIGVuYy0+cXVh a2UzX2NvbXBhdCkgewotICAgICAgICBpZiAoZW5jLT5sYW1iZGEgPiAxMDAwMDApIHsKKyAgICAg ICAgaWYgKGVuYy0+bGFtYmRhID4gMTAwMDAwMDAwKSB7CiAgICAgICAgICAgICBhdl9sb2cocm9x LT5sb2djdHgsIEFWX0xPR19FUlJPUiwgIkNhbm5vdCBlbmNvZGUgdmlkZW8gaW4gUXVha2UgY29t cGF0aWJsZSBmb3JtXG4iKTsKICAgICAgICAgICAgIHJldHVybiBBVkVSUk9SKEVJTlZBTCk7CiAg ICAgICAgIH0KICAgICAgICAgYXZfbG9nKHJvcS0+bG9nY3R4LCBBVl9MT0dfRVJST1IsCiAgICAg ICAgICAgICAgICAiV2FybmluZywgZ2VuZXJhdGVkIGEgZnJhbWUgdG9vIGJpZyBmb3IgUXVha2Ug KCVkID4gNjU1MzUpLCAiCi0gICAgICAgICAgICAgICAibm93IHN3aXRjaGluZyB0byBhIGJpZ2dl ciBxc2NhbGUgdmFsdWUuXG4iLAotICAgICAgICAgICAgICAgdGVtcERhdGEtPm1haW5DaHVua1Np emUvOCk7CisgICAgICAgICAgICAgICAibm93IHN3aXRjaGluZyB0byBhIGJpZ2dlciBxc2NhbGUg dmFsdWUgKCVkKS5cbiIsCisgICAgICAgICAgICAgICB0ZW1wRGF0YS0+bWFpbkNodW5rU2l6ZS84 LCAoaW50KWVuYy0+bGFtYmRhKTsKICAgICAgICAgZW5jLT5sYW1iZGEgKj0gMS41OwogICAgICAg ICB0ZW1wRGF0YS0+bWFpbkNodW5rU2l6ZSA9IDA7CiAgICAgICAgIG1lbXNldCh0ZW1wRGF0YS0+ dXNlZF9vcHRpb24sIDAsIHNpemVvZih0ZW1wRGF0YS0+dXNlZF9vcHRpb24pKTsKQEAgLTkzMSw2 ICs5MzQsODAgQEAgc3RhdGljIGludCByb3FfZW5jb2RlX3ZpZGVvKFJvcUVuY0NvbnRleHQgKmVu YykKIAogICAgIHJlbWFwX2NvZGVib29rcyhlbmMpOwogCisgICAgLyogYml0IHJhdGUgY29udHJv bCBjb2RlIC0gY291bGQgbWFrZSBlbmNvZGluZyB2ZXJ5IHNsb3cgKi8KKyAgICBpZiAoYXZjdHgt PmJpdF9yYXRlKSB7CisgICAgICAgIC8qIGEgYml0IHJhdGUgaGFzIGJlZW4gc3BlY2lmaWVkIC0g dHJ5IHRvIG1hdGNoIGl0ICovCisgICAgICAgIGludCBmdG90YWwgPSAodGVtcERhdGEtPm1haW5D aHVua1NpemUgLyA4ICsgdGVtcERhdGEtPm51bUNCMio2ICsgdGVtcERhdGEtPm51bUNCNCo0KSAq IGF2Y3R4LT50aW1lX2Jhc2UuZGVuICogODsKKyAgICAgICAgaW50NjRfdCB0b2wgPSBhdmN0eC0+ Yml0X3JhdGVfdG9sZXJhbmNlOworCisgICAgICAgIC8qIHRvbGVyYW5jZSA+IGJpdCByYXRlLCBz ZXQgdG8gNSUgb2YgdGhlIGJpdCByYXRlICovCisgICAgICAgIGlmICh0b2wgPiBhdmN0eC0+Yml0 X3JhdGUpCisgICAgICAgICAgICB0b2wgPSBhdmN0eC0+Yml0X3JhdGUgLyAyMDsKKworICAgICAg ICBhdl9sb2cocm9xLT5sb2djdHgsIEFWX0xPR19WRVJCT1NFLAorICAgICAgICAgICAgICAgIlxu RGVzaXJlZCBiaXQgcmF0ZSAoJWQga2JwcyksICIKKyAgICAgICAgICAgICAgICJCaXQgcmF0ZSB0 b2xlcmFuY2UgKCVkKSwgIgorICAgICAgICAgICAgICAgIkZyYW1lIHJhdGUgKCVkKVxuIiwKKyAg ICAgICAgICAgICAgIChpbnQpYXZjdHgtPmJpdF9yYXRlLCAoaW50KXRvbCwgYXZjdHgtPnRpbWVf YmFzZS5kZW4pOworCisgICAgICAgIGlmIChmdG90YWwgPiAoYXZjdHgtPmJpdF9yYXRlICsgdG9s KSkgeworICAgICAgICAgICAgLyogZnJhbWUgaXMgdG9vIGJpZyAtIGluY3JlYXNlIHFzY2FsZSAq LworICAgICAgICAgICAgaWYgKGVuYy0+bGFtYmRhID4gMTAwMDAwMDAwKSB7CisgICAgICAgICAg ICAgICAgYXZfbG9nKHJvcS0+bG9nY3R4LCBBVl9MT0dfRVJST1IsICJcbkNhbm5vdCBlbmNvZGUg dmlkZW8gYXQgZGVzaXJlZCBiaXRyYXRlXG4iKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gQVZF UlJPUihFSU5WQUwpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZW5jLT5sYW1iZGFfZGVs dGEgPSBlbmMtPmxhbWJkYV9kZWx0YSA8PSAwID8gMSA6IGVuYy0+bGFtYmRhX2RlbHRhIDwgNjU1 MzYgPyBlbmMtPmxhbWJkYV9kZWx0YSoyIDogNjU1MzY7CisgICAgICAgICAgICBlbmMtPmxhc3Rf bGFtYmRhID0gZW5jLT5sYW1iZGE7CisgICAgICAgICAgICBlbmMtPmxhbWJkYSArPSBlbmMtPmxh bWJkYV9kZWx0YTsKKyAgICAgICAgICAgIGF2X2xvZyhyb3EtPmxvZ2N0eCwgQVZfTE9HX0lORk8s CisgICAgICAgICAgICAgICAgICAgIlxuR2VuZXJhdGVkIGEgZnJhbWUgdG9vIGJpZyBmb3IgZGVz aXJlZCBiaXQgcmF0ZSAoJWQga2JwcyksICIKKyAgICAgICAgICAgICAgICAgICAibm93IHN3aXRj aGluZyB0byBhIGJpZ2dlciBxc2NhbGUgdmFsdWUgKCVkKS5cbiIsCisgICAgICAgICAgICAgICAg ICAgZnRvdGFsIC8gMTAwMCwgKGludCllbmMtPmxhbWJkYSk7CisgICAgICAgICAgICB0ZW1wRGF0 YS0+bWFpbkNodW5rU2l6ZSA9IDA7CisgICAgICAgICAgICBtZW1zZXQodGVtcERhdGEtPnVzZWRf b3B0aW9uLCAwLCBzaXplb2YodGVtcERhdGEtPnVzZWRfb3B0aW9uKSk7CisgICAgICAgICAgICBt ZW1zZXQodGVtcERhdGEtPmNvZGVib29rcy51c2VkQ0I0LCAwLAorICAgICAgICAgICAgICAgICAg IHNpemVvZih0ZW1wRGF0YS0+Y29kZWJvb2tzLnVzZWRDQjQpKTsKKyAgICAgICAgICAgIG1lbXNl dCh0ZW1wRGF0YS0+Y29kZWJvb2tzLnVzZWRDQjIsIDAsCisgICAgICAgICAgICAgICAgICAgc2l6 ZW9mKHRlbXBEYXRhLT5jb2RlYm9va3MudXNlZENCMikpOworCisgICAgICAgICAgICBnb3RvIHJl dHJ5X2VuY29kZTsKKyAgICAgICAgfSBlbHNlIGlmIChmdG90YWwgPCAoYXZjdHgtPmJpdF9yYXRl IC0gdG9sKSkgeworICAgICAgICAgICAgLyogZnJhbWUgaXMgdG9vIHNtYWxsIC0gZGVjcmVhc2Ug cXNjYWxlICovCisgICAgICAgICAgICBpZiAoZW5jLT5sYW1iZGEgPD0gMSkgeworICAgICAgICAg ICAgICAgIGF2X2xvZyhyb3EtPmxvZ2N0eCwgQVZfTE9HX1dBUk5JTkcsCisgICAgICAgICAgICAg ICAgICAgICAgICJcbkdlbmVyYXRlZCBhIGZyYW1lIHRvbyBzbWFsbCBmb3IgZGVzaXJlZCBiaXQg cmF0ZSAoJWQga2JwcyksICIKKyAgICAgICAgICAgICAgICAgICAgICAgInFzY2FsZSB2YWx1ZSBj YW5ub3QgYmUgbG93ZXJlZCBhbnkgZnVydGhlciAoJWQpLlxuIiwKKyAgICAgICAgICAgICAgICAg ICAgICAgZnRvdGFsIC8gMTAwMCwgKGludCllbmMtPmxhbWJkYSk7CisgICAgICAgICAgICB9IGVs c2UgaWYgKChlbmMtPmxhbWJkYSAtIGVuYy0+bGFzdF9sYW1iZGEpID09IDEpIHsKKyAgICAgICAg ICAgICAgICBhdl9sb2cocm9xLT5sb2djdHgsIEFWX0xPR19XQVJOSU5HLAorICAgICAgICAgICAg ICAgICAgICAgICAiXG5DYW5ub3QgZmluZCBxc2NhbGUgdGhhdCBnaXZlcyBkZXNpcmVkIGJpdCBy YXRlIHdpdGhpbiBkZXNpcmVkIHRvbGVyYW5jZSwgIgorICAgICAgICAgICAgICAgICAgICAgICAi dXNpbmcgbG93ZXIgYml0cmF0ZSAoJWQga2Jwcykgd2l0aCBoaWdoZXIgcXNjYWxlIHZhbHVlICgl ZCkuXG4iLAorICAgICAgICAgICAgICAgICAgICAgICBmdG90YWwgLyAxMDAwLCAoaW50KWVuYy0+ bGFtYmRhKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgZW5jLT5sYW1i ZGFfZGVsdGEgPSAwOworICAgICAgICAgICAgICAgIGlmIChlbmMtPmxhbWJkYSA9PSBlbmMtPmxh c3RfbGFtYmRhKSB7CisgICAgICAgICAgICAgICAgICAgIGVuYy0+bGFtYmRhID4+PSAxOworICAg ICAgICAgICAgICAgICAgICBlbmMtPmxhc3RfbGFtYmRhID0gZW5jLT5sYW1iZGE7CisgICAgICAg ICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgZW5jLT5sYW1iZGEgPSBlbmMt Pmxhc3RfbGFtYmRhOworICAgICAgICAgICAgICAgICAgICAvL2VuYy0+bGFtYmRhICo9IChmbG9h dCkodGVtcERhdGEtPm1haW5DaHVua1NpemUgKiBhdmN0eC0+dGltZV9iYXNlLmRlbikgLyBhdmN0 eC0+Yml0X3JhdGU7CisgICAgICAgICAgICAgICAgICAgIGF2X2xvZyhyb3EtPmxvZ2N0eCwgQVZf TE9HX0lORk8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiXG5HZW5lcmF0ZWQgYSBmcmFt ZSB0b28gc21hbGwgZm9yIGRlc2lyZWQgYml0IHJhdGUgKCVkIGticHMpLCAiCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAicmV2ZXJ0aW5nIGxhbWJkYSBhbmQgdXNpbmcgc21hbGxlciBpbmMg b24gcXNjYWxlICglZCkuXG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZnRvdGFsIC8g MTAwMCwgKGludCllbmMtPmxhbWJkYSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg ICAgIHRlbXBEYXRhLT5tYWluQ2h1bmtTaXplID0gMDsKKyAgICAgICAgICAgICAgICBtZW1zZXQo dGVtcERhdGEtPnVzZWRfb3B0aW9uLCAwLCBzaXplb2YodGVtcERhdGEtPnVzZWRfb3B0aW9uKSk7 CisgICAgICAgICAgICAgICAgbWVtc2V0KHRlbXBEYXRhLT5jb2RlYm9va3MudXNlZENCNCwgMCwK KyAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHRlbXBEYXRhLT5jb2RlYm9va3MudXNlZENC NCkpOworICAgICAgICAgICAgICAgIG1lbXNldCh0ZW1wRGF0YS0+Y29kZWJvb2tzLnVzZWRDQjIs IDAsCisgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZih0ZW1wRGF0YS0+Y29kZWJvb2tzLnVz ZWRDQjIpKTsKKworICAgICAgICAgICAgICAgIGdvdG8gcmV0cnlfZW5jb2RlOworICAgICAgICAg ICAgfQorICAgICAgICB9CisgICAgfQorCiAgICAgd3JpdGVfY29kZWJvb2tzKGVuYyk7CiAKICAg ICByZWNvbnN0cnVjdF9hbmRfZW5jb2RlX2ltYWdlKGVuYywgcm9xLT53aWR0aCwgcm9xLT5oZWln aHQsCkBAIC05OTEsOCArMTA2OCwxMSBAQCBzdGF0aWMgYXZfY29sZCBpbnQgcm9xX2VuY29kZV9p bml0KEFWQ29kZWNDb250ZXh0ICphdmN0eCkKICAgICByb3EtPndpZHRoICA9IGF2Y3R4LT53aWR0 aDsKICAgICByb3EtPmhlaWdodCA9IGF2Y3R4LT5oZWlnaHQ7CiAKKyAgICBlbmMtPmxhbWJkYSA9 IDIqUk9RX0xBTUJEQV9TQ0FMRTsKICAgICBlbmMtPmZyYW1lc1NpbmNlS2V5ZnJhbWUgPSAwOwog ICAgIGVuYy0+Zmlyc3RfZnJhbWUgPSAxOworICAgIGVuYy0+bGFzdF9sYW1iZGEgPSAxOworICAg IGVuYy0+bGFtYmRhX2RlbHRhID0gMDsKIAogICAgIHJvcS0+bGFzdF9mcmFtZSAgICA9IGF2X2Zy YW1lX2FsbG9jKCk7CiAgICAgcm9xLT5jdXJyZW50X2ZyYW1lID0gYXZfZnJhbWVfYWxsb2MoKTsK QEAgLTEwNTksMTAgKzExMzksMTMgQEAgc3RhdGljIGludCByb3FfZW5jb2RlX2ZyYW1lKEFWQ29k ZWNDb250ZXh0ICphdmN0eCwgQVZQYWNrZXQgKnBrdCwKIAogICAgIGVuYy0+ZnJhbWVfdG9fZW5j ID0gZnJhbWU7CiAKLSAgICBpZiAoZnJhbWUtPnF1YWxpdHkpCi0gICAgICAgIGVuYy0+bGFtYmRh ID0gZnJhbWUtPnF1YWxpdHkgLSAxOwotICAgIGVsc2UKLSAgICAgICAgZW5jLT5sYW1iZGEgPSAy KlJPUV9MQU1CREFfU0NBTEU7CisgICAgaWYgKCFhdmN0eC0+Yml0X3JhdGUpIHsKKyAgICAgICAg Lyogbm8gc3BlY2lmaWMgYml0IHJhdGUgZGVzaXJlZCwgdXNlIGZyYW1lIHF1YWxpdHkgKi8KKyAg ICAgICAgaWYgKGZyYW1lLT5xdWFsaXR5KQorICAgICAgICAgICAgZW5jLT5sYW1iZGEgPSBmcmFt ZS0+cXVhbGl0eSAtIDE7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGVuYy0+bGFtYmRhID0g MipST1FfTEFNQkRBX1NDQUxFOworICAgIH0KIAogICAgIC8qIDEzOCBiaXRzIG1heCBwZXIgOHg4 IGJsb2NrICsKICAgICAgKiAgICAgMjU2IGNvZGVib29rcyooNiBieXRlcyAyeDIgKyA0IGJ5dGVz IDR4NCkgKyA4IGJ5dGVzIGZyYW1lIGhlYWRlciAqLwpAQCAtMTA4OSw3ICsxMTcyLDcgQEAgc3Rh dGljIGludCByb3FfZW5jb2RlX2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0eCwgQVZQYWNrZXQg KnBrdCwKICAgICB9CiAKICAgICAvKiBFbmNvZGUgdGhlIGFjdHVhbCBmcmFtZSAqLwotICAgIHJl dCA9IHJvcV9lbmNvZGVfdmlkZW8oZW5jKTsKKyAgICByZXQgPSByb3FfZW5jb2RlX3ZpZGVvKGF2 Y3R4KTsKICAgICBpZiAocmV0IDwgMCkKICAgICAgICAgcmV0dXJuIHJldDsKIApAQCAtMTExNSw2 ICsxMTk4LDExIEBAIHN0YXRpYyBjb25zdCBBVkNsYXNzIHJvcV9jbGFzcyA9IHsKICAgICAudmVy c2lvbiAgICA9IExJQkFWVVRJTF9WRVJTSU9OX0lOVCwKIH07CiAKK3N0YXRpYyBjb25zdCBGRkNv ZGVjRGVmYXVsdCByb3FfZGVmYXVsdHNbXSA9IHsKKyAgICB7ICJiIiwgICAgICAgICAgICAgICAg IjAiIH0sCisgICAgeyBOVUxMIH0sCit9OworCiBjb25zdCBGRkNvZGVjIGZmX3JvcV9lbmNvZGVy ID0gewogICAgIC5wLm5hbWUgICAgICAgICAgICAgICA9ICJyb3F2aWRlbyIsCiAgICAgQ09ERUNf TE9OR19OQU1FKCJpZCBSb1EgdmlkZW8iKSwKQEAgLTExMjksNCArMTIxNyw1IEBAIGNvbnN0IEZG Q29kZWMgZmZfcm9xX2VuY29kZXIgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEFWX1BJWF9GTVRfTk9ORSB9LAogICAgIC5wLnByaXZf Y2xhc3MgICA9ICZyb3FfY2xhc3MsCiAgICAgLmNhcHNfaW50ZXJuYWwgICAgICAgID0gRkZfQ09E RUNfQ0FQX0lOSVRfQ0xFQU5VUCwKKyAgICAuZGVmYXVsdHMgICAgICAgICAgICAgPSByb3FfZGVm YXVsdHMsCiB9OwpkaWZmIC0tZ2l0IGEvbGliYXZjb2RlYy92ZXJzaW9uLmggYi9saWJhdmNvZGVj L3ZlcnNpb24uaAppbmRleCAzNzYzODhjNWJiLi41ODExNTFjZGE3IDEwMDY0NAotLS0gYS9saWJh dmNvZGVjL3ZlcnNpb24uaAorKysgYi9saWJhdmNvZGVjL3ZlcnNpb24uaApAQCAtMzAsNyArMzAs NyBAQAogI2luY2x1ZGUgInZlcnNpb25fbWFqb3IuaCIKIAogI2RlZmluZSBMSUJBVkNPREVDX1ZF UlNJT05fTUlOT1IgIDM3Ci0jZGVmaW5lIExJQkFWQ09ERUNfVkVSU0lPTl9NSUNSTyAxMDAKKyNk ZWZpbmUgTElCQVZDT0RFQ19WRVJTSU9OX01JQ1JPIDEwMQogCiAjZGVmaW5lIExJQkFWQ09ERUNf VkVSU0lPTl9JTlQgIEFWX1ZFUlNJT05fSU5UKExJQkFWQ09ERUNfVkVSU0lPTl9NQUpPUiwgXAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJBVkNPREVD X1ZFUlNJT05fTUlOT1IsIFwKLS0gCjIuMjUuMQoK --00000000000037f13a060f98cc81 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". --00000000000037f13a060f98cc81--