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 B93CE40E91 for ; Fri, 10 Jun 2022 10:06:57 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BF01468B721; Fri, 10 Jun 2022 13:06:53 +0300 (EEST) Received: from mail-yw1-f172.google.com (mail-yw1-f172.google.com [209.85.128.172]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id ED5C768B6A4 for ; Fri, 10 Jun 2022 13:06:46 +0300 (EEST) Received: by mail-yw1-f172.google.com with SMTP id 00721157ae682-30fa61b1a83so261792427b3.0 for ; Fri, 10 Jun 2022 03:06:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=SKs+39T9rQ0QEUUa43Gn3y+/Fyf+VuI/ElfJgbjxe9Y=; b=RF3eAPd45LpED4otf+tLWVJi3ARpqyTAq4ELow4ONFhZiM1V1dStO6i7HmdQgvWgf8 1FHj6wF7O4eKSQ4qq0YxAiXA7eoGKQ59rkhml+FxF8jE/mv2A7ezYwwovhmOL2tAj4C5 RgntMd7yn8h3aaIIrOjxdFNVA0xTxIFLdFwAthy6GK9Ql4Uef5ogo3mHZomeaD/uEjN6 bD3TQcTfxm+SV1cShsW1Zb5kuWRN0C0h35krwd0f6X/idCWh9Bno6KwoObQ8SWXDC2T8 AcevZc9iqi5otHutx2nhGMkXf1nqdRLR4fb3zjE24QQh1GG6DoMDVEBrET26q1FnePcQ 5Qvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=SKs+39T9rQ0QEUUa43Gn3y+/Fyf+VuI/ElfJgbjxe9Y=; b=4E9olmEaVjUo35dSVmSHT4GkUN4GxmYMBKw7jT3uQwwm7+RxLSB/QJzhmykfMwBCCq +jIsGeLmGf5ZKNSFYTr1X75XPku8LS6aeDfcyw13KDcBGNP30+CKyHke3GyfqtyMtESr uB8Wf7bO9oZKO15AgwwyfPsnGIkZjsiPfxywP96gyLu4pFBiN+xfyfGgqN9wK+6chP+Z eNn2wz9KkuvO3TIRz9hsK1t/Gsi3sJbq32rd/XvyjQznKJMQ6gdhvHokCEYA2zm61Uft W8ucChgQR/p2xGbQ6cG+cGD2xqhkozi/32aA4XVFZXv4XeeHQ8Y/p3+4sVii2WQnVWV+ f94g== X-Gm-Message-State: AOAM531VMfLS8tatt/Tjoo1wsnDfwu8qbvGBUrLELhHXSmPvcXn1HTm1 /50fIWvHTEJGpMAMHfVweAzIw2dE8TjagKgCdl69cQ2u5OE= X-Google-Smtp-Source: ABdhPJxT8mowtjeZldvWbnVvZNvWHsxy81dJbAT0UeRVPOdT7klkEAXgknmFF+N2Uh6Nk27Vf6v1Z2yBhB69vCj6SBQ= X-Received: by 2002:a81:598a:0:b0:30c:cdd5:f2fd with SMTP id n132-20020a81598a000000b0030ccdd5f2fdmr44539643ywb.177.1654855605486; Fri, 10 Jun 2022 03:06:45 -0700 (PDT) MIME-Version: 1.0 From: Paul B Mahol Date: Fri, 10 Jun 2022 12:09:38 +0200 Message-ID: To: FFmpeg development discussions and patches Content-Type: multipart/mixed; boundary="000000000000851d2805e115188e" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [FFmpeg-devel] [PATCH] avfilter: add virtualbass filter 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: --000000000000851d2805e115188e Content-Type: text/plain; charset="UTF-8" Hi, Patch attached. --000000000000851d2805e115188e Content-Type: text/x-patch; charset="US-ASCII"; name="0001-avfilter-add-virtualbass-filter.patch" Content-Disposition: attachment; filename="0001-avfilter-add-virtualbass-filter.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_l48adqsh0 RnJvbSA2OGIxZWRmMTljNDQxYTU5ZmQ1M2MwMjg2ZWVlODQxMjQ0Y2Y1ZjExIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEIgTWFob2wgPG9uZW1kYUBnbWFpbC5jb20+CkRhdGU6 IE1vbiwgMzAgTWF5IDIwMjIgMTE6MzY6MjIgKzAyMDAKU3ViamVjdDogW1BBVENIXSBhdmZpbHRl cjogYWRkIHZpcnR1YWxiYXNzIGZpbHRlcgoKU2lnbmVkLW9mZi1ieTogUGF1bCBCIE1haG9sIDxv bmVtZGFAZ21haWwuY29tPgotLS0KIGRvYy9maWx0ZXJzLnRleGkgICAgICAgICAgICAgfCAgMjAg KysrKwogbGliYXZmaWx0ZXIvTWFrZWZpbGUgICAgICAgICB8ICAgMSArCiBsaWJhdmZpbHRlci9h Zl92aXJ0dWFsYmFzcy5jIHwgMTgzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr CiBsaWJhdmZpbHRlci9hbGxmaWx0ZXJzLmMgICAgIHwgICAxICsKIDQgZmlsZXMgY2hhbmdlZCwg MjA1IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWJhdmZpbHRlci9hZl92aXJ0 dWFsYmFzcy5jCgpkaWZmIC0tZ2l0IGEvZG9jL2ZpbHRlcnMudGV4aSBiL2RvYy9maWx0ZXJzLnRl eGkKaW5kZXggZDY1ZTgzZDRkMC4uNWFiYWI1ZGUxOCAxMDA2NDQKLS0tIGEvZG9jL2ZpbHRlcnMu dGV4aQorKysgYi9kb2MvZmlsdGVycy50ZXhpCkBAIC02OTI3LDYgKzY5MjcsMjYgQEAgRGVwdGgg b2YgbW9kdWxhdGlvbiBhcyBhIHBlcmNlbnRhZ2UuIFJhbmdlIGlzIDAuMCAtIDEuMC4KIERlZmF1 bHQgdmFsdWUgaXMgMC41LgogQGVuZCB0YWJsZQogCitAc2VjdGlvbiB2aXJ0dWFsYmFzcworCitB cHBseSBhdWRpbyBWaXJ0dWFsIEJhc3MgZmlsdGVyLgorCitUaGlzIGZpbHRlciBhY2NlcHRzIHN0 ZXJlbyBpbnB1dCBhbmQgcHJvZHVjZSBzdGVyZW8gd2l0aCBMRkUgKDIuMSkgY2hhbm5lbHMgb3V0 cHV0LgorVGhlIG5ld2x5IHByb2R1Y2VkIExGRSBjaGFubmVsIGhhdmUgZW5oYW5jZWQgdmlydHVh bCBiYXNzIG9yaWdpbmFsbHkgb2J0YWluZWQgZnJvbSBib3RoIHN0ZXJlbyBjaGFubmVscy4KK1Ro aXMgZmlsdGVyIG91dHB1dHMgZnJvbnQgbGVmdCBhbmQgZnJvbnQgcmlnaHQgY2hhbm5lbHMgdW5j aGFuZ2VkIGFzIGF2YWlsYWJsZSBpbiBzdGVyZW8gaW5wdXQuCisKK1RoZSBmaWx0ZXIgYWNjZXB0 cyB0aGUgZm9sbG93aW5nIG9wdGlvbnM6CisKK0B0YWJsZSBAb3B0aW9uCitAaXRlbSBjdXRvZmYK K1NldCB0aGUgdmlydHVhbCBiYXNzIGN1dG9mZiBmcmVxdWVuY3kuIERlZmF1bHQgdmFsdWUgaXMg MjUwIEh6LgorQWxsb3dlZCByYW5nZSBpcyBmcm9tIDEwMCB0byA1MDAgSHouCisKK0BpdGVtIHN0 cmVuZ3RoCitTZXQgdGhlIHZpcnR1YWwgYmFzcyBzdHJlbmd0aC4gQWxsb3dlZCByYW5nZSBpcyBm cm9tIDAuNSB0byAzLgorRGVmYXVsdCB2YWx1ZSBpcyAzLgorQGVuZCB0YWJsZQorCiBAc2VjdGlv biB2b2x1bWUKIAogQWRqdXN0IHRoZSBpbnB1dCBhdWRpbyB2b2x1bWUuCmRpZmYgLS1naXQgYS9s aWJhdmZpbHRlci9NYWtlZmlsZSBiL2xpYmF2ZmlsdGVyL01ha2VmaWxlCmluZGV4IGUwZTRkMGRl MmMuLjdiYTFjOGE4NjEgMTAwNjQ0Ci0tLSBhL2xpYmF2ZmlsdGVyL01ha2VmaWxlCisrKyBiL2xp YmF2ZmlsdGVyL01ha2VmaWxlCkBAIC0xNjQsNiArMTY0LDcgQEAgT0JKUy0kKENPTkZJR19TVVJS T1VORF9GSUxURVIpICAgICAgICAgICAgICAgKz0gYWZfc3Vycm91bmQubwogT0JKUy0kKENPTkZJ R19UUkVCTEVfRklMVEVSKSAgICAgICAgICAgICAgICAgKz0gYWZfYmlxdWFkcy5vCiBPQkpTLSQo Q09ORklHX1RSRU1PTE9fRklMVEVSKSAgICAgICAgICAgICAgICArPSBhZl90cmVtb2xvLm8KIE9C SlMtJChDT05GSUdfVklCUkFUT19GSUxURVIpICAgICAgICAgICAgICAgICs9IGFmX3ZpYnJhdG8u byBnZW5lcmF0ZV93YXZlX3RhYmxlLm8KK09CSlMtJChDT05GSUdfVklSVFVBTEJBU1NfRklMVEVS KSAgICAgICAgICAgICs9IGFmX3ZpcnR1YWxiYXNzLm8KIE9CSlMtJChDT05GSUdfVk9MVU1FX0ZJ TFRFUikgICAgICAgICAgICAgICAgICs9IGFmX3ZvbHVtZS5vCiBPQkpTLSQoQ09ORklHX1ZPTFVN RURFVEVDVF9GSUxURVIpICAgICAgICAgICArPSBhZl92b2x1bWVkZXRlY3QubwogCmRpZmYgLS1n aXQgYS9saWJhdmZpbHRlci9hZl92aXJ0dWFsYmFzcy5jIGIvbGliYXZmaWx0ZXIvYWZfdmlydHVh bGJhc3MuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwLi45NTAxNTkwOTZi Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYXZmaWx0ZXIvYWZfdmlydHVhbGJhc3MuYwpAQCAtMCww ICsxLDE4MyBAQAorLyoKKyAqIENvcHlyaWdodCAoYykgMjAyMiBQYXVsIEIgTWFob2wKKyAqCisg KiBUaGlzIGZpbGUgaXMgcGFydCBvZiBGRm1wZWcuCisgKgorICogRkZtcGVnIGlzIGZyZWUgc29m dHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBh cyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisgKiB2 ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg dmVyc2lvbi4KKyAqCisgKiBGRm1wZWcgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBp dCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBl dmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVT UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgTGVzc2VyIEdlbmVy YWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhh dmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vu c2UKKyAqIGFsb25nIHdpdGggRkZtcGVnOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIEluYy4sCisgKiA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29y LCBCb3N0b24sIE1BIDAyMTEwLTEzMDEgVVNBCisgKi8KKworI2luY2x1ZGUgImxpYmF2dXRpbC9j aGFubmVsX2xheW91dC5oIgorI2luY2x1ZGUgImxpYmF2dXRpbC9vcHQuaCIKKyNpbmNsdWRlICJh dWRpby5oIgorI2luY2x1ZGUgImF2ZmlsdGVyLmgiCisjaW5jbHVkZSAiZmlsdGVycy5oIgorI2lu Y2x1ZGUgImludGVybmFsLmgiCisKKyNpbmNsdWRlIDxmbG9hdC5oPgorCit0eXBlZGVmIHN0cnVj dCBBdWRpb1ZpcnR1YWxCYXNzQ29udGV4dCB7CisgICAgY29uc3QgQVZDbGFzcyAqY2xhc3M7CisK KyAgICBkb3VibGUgY3V0b2ZmOworICAgIGRvdWJsZSBzdHJlbmd0aDsKKworICAgIGRvdWJsZSBh WzNdLCBtWzNdLCBjZlsyXTsKK30gQXVkaW9WaXJ0dWFsQmFzc0NvbnRleHQ7CisKKyNkZWZpbmUg T0ZGU0VUKHgpIG9mZnNldG9mKEF1ZGlvVmlydHVhbEJhc3NDb250ZXh0LCB4KQorI2RlZmluZSBU RkxBR1MgQVZfT1BUX0ZMQUdfQVVESU9fUEFSQU0gfCBBVl9PUFRfRkxBR19GSUxURVJJTkdfUEFS QU0gfCBBVl9PUFRfRkxBR19SVU5USU1FX1BBUkFNCisjZGVmaW5lIEZMQUdTIEFWX09QVF9GTEFH X0FVRElPX1BBUkFNIHwgQVZfT1BUX0ZMQUdfRklMVEVSSU5HX1BBUkFNCisKK3N0YXRpYyBjb25z dCBBVk9wdGlvbiB2aXJ0dWFsYmFzc19vcHRpb25zW10gPSB7CisgICAgeyAiY3V0b2ZmIiwgICAi c2V0IHZpcnR1YWwgYmFzcyBjdXRvZmYiLCAgIE9GRlNFVChjdXRvZmYpLCAgIEFWX09QVF9UWVBF X0RPVUJMRSwgey5kYmw9MjUwfSwxMDAsNTAwLCBGTEFHUyB9LAorICAgIHsgInN0cmVuZ3RoIiwg InNldCB2aXJ0dWFsIGJhc3Mgc3RyZW5ndGgiLCBPRkZTRVQoc3RyZW5ndGgpLCBBVl9PUFRfVFlQ RV9ET1VCTEUsIHsuZGJsPTN9LCAgMC41LCAgMywgVEZMQUdTIH0sCisgICAge05VTEx9Cit9Owor CitBVkZJTFRFUl9ERUZJTkVfQ0xBU1ModmlydHVhbGJhc3MpOworCitzdGF0aWMgaW50IHF1ZXJ5 X2Zvcm1hdHMoQVZGaWx0ZXJDb250ZXh0ICpjdHgpCit7CisgICAgQVZGaWx0ZXJDaGFubmVsTGF5 b3V0cyAqaW5fbGF5b3V0ID0gTlVMTCwgKm91dF9sYXlvdXQgPSBOVUxMOworICAgIEFWRmlsdGVy Rm9ybWF0cyAqZm9ybWF0cyA9IE5VTEw7CisgICAgaW50IHJldDsKKworICAgIGlmICgocmV0ID0g ZmZfYWRkX2Zvcm1hdCAgICAgICAgICAgICAgICAgKCZmb3JtYXRzLCBBVl9TQU1QTEVfRk1UX0RC TFAgKSkgPCAwIHx8CisgICAgICAgIChyZXQgPSBmZl9zZXRfY29tbW9uX2Zvcm1hdHMgICAgICAg ICAoY3R4LCAgICAgIGZvcm1hdHMgICAgICAgICAgICApKSA8IDAgfHwKKyAgICAgICAgKHJldCA9 IGZmX2FkZF9jaGFubmVsX2xheW91dCAgICAgICAgICgmaW5fbGF5b3V0LCAmKEFWQ2hhbm5lbExh eW91dClBVl9DSEFOTkVMX0xBWU9VVF9TVEVSRU8pKSA8IDAgfHwKKyAgICAgICAgKHJldCA9IGZm X2NoYW5uZWxfbGF5b3V0c19yZWYoaW5fbGF5b3V0LCAmY3R4LT5pbnB1dHNbMF0tPm91dGNmZy5j aGFubmVsX2xheW91dHMpKSA8IDAgfHwKKyAgICAgICAgKHJldCA9IGZmX2FkZF9jaGFubmVsX2xh eW91dCAgICAgICAgICgmb3V0X2xheW91dCwgJihBVkNoYW5uZWxMYXlvdXQpQVZfQ0hBTk5FTF9M QVlPVVRfMlBPSU5UMSkpIDwgMCB8fAorICAgICAgICAocmV0ID0gZmZfY2hhbm5lbF9sYXlvdXRz X3JlZihvdXRfbGF5b3V0LCAmY3R4LT5vdXRwdXRzWzBdLT5pbmNmZy5jaGFubmVsX2xheW91dHMp KSA8IDApCisgICAgICAgIHJldHVybiByZXQ7CisKKyAgICByZXR1cm4gZmZfc2V0X2NvbW1vbl9h bGxfc2FtcGxlcmF0ZXMoY3R4KTsKK30KKworc3RhdGljIGludCBjb25maWdfaW5wdXQoQVZGaWx0 ZXJMaW5rICppbmxpbmspCit7CisgICAgQVZGaWx0ZXJDb250ZXh0ICpjdHggPSBpbmxpbmstPmRz dDsKKyAgICBBdWRpb1ZpcnR1YWxCYXNzQ29udGV4dCAqcyA9IGN0eC0+cHJpdjsKKyAgICBjb25z dCBkb3VibGUgUSA9IDAuNzA3OworICAgIGRvdWJsZSBnLCBrOworCisgICAgZyA9IHRhbihNX1BJ ICogcy0+Y3V0b2ZmIC8gaW5saW5rLT5zYW1wbGVfcmF0ZSk7CisgICAgayA9IDEuIC8gUTsKKyAg ICBzLT5hWzBdID0gMS4gLyAoMS4gKyBnICogKGcgKyBrKSk7CisgICAgcy0+YVsxXSA9IGcgKiBz LT5hWzBdOworICAgIHMtPmFbMl0gPSBnICogcy0+YVsxXTsKKyAgICBzLT5tWzBdID0gMC47Cisg ICAgcy0+bVsxXSA9IDAuOworICAgIHMtPm1bMl0gPSAxLjsKKworICAgIHJldHVybiAwOworfQor CisjZGVmaW5lIFNRUih4KSAoKHgpICogKHgpKQorCitzdGF0aWMgZG91YmxlIHZiX2Z1bihkb3Vi bGUgeCkKK3sKKyAgICBkb3VibGUgeSA9IDIuNSAqIGF0YW4oMC45ICogeCkgKyAyLjUgKiBzcXJ0 KDEuIC0gU1FSKDAuOSAqIHgpKSAtIDIuNTsKKworICAgIHJldHVybiB5IDwgMC4gPyBzaW4oeSkg OiB5OworfQorCitzdGF0aWMgdm9pZCB2Yl9zdGVyZW8oQVZGaWx0ZXJDb250ZXh0ICpjdHgsIEFW RnJhbWUgKm91dCwgQVZGcmFtZSAqaW4pCit7CisgICAgQXVkaW9WaXJ0dWFsQmFzc0NvbnRleHQg KnMgPSBjdHgtPnByaXY7CisgICAgY29uc3QgZG91YmxlICpsc3JjID0gKGNvbnN0IGRvdWJsZSAq KWluLT5leHRlbmRlZF9kYXRhWzBdOworICAgIGNvbnN0IGRvdWJsZSAqcnNyYyA9IChjb25zdCBk b3VibGUgKilpbi0+ZXh0ZW5kZWRfZGF0YVsxXTsKKyAgICBkb3VibGUgKmxkc3QgPSAoZG91Ymxl ICopb3V0LT5leHRlbmRlZF9kYXRhWzBdOworICAgIGRvdWJsZSAqcmRzdCA9IChkb3VibGUgKilv dXQtPmV4dGVuZGVkX2RhdGFbMV07CisgICAgZG91YmxlICpsZmUgPSAoZG91YmxlICopb3V0LT5l eHRlbmRlZF9kYXRhWzJdOworICAgIGNvbnN0IGRvdWJsZSBzdCA9IE1fUEkgLyBzLT5zdHJlbmd0 aDsKKyAgICBjb25zdCBkb3VibGUgYTAgPSBzLT5hWzBdOworICAgIGNvbnN0IGRvdWJsZSBhMSA9 IHMtPmFbMV07CisgICAgY29uc3QgZG91YmxlIGEyID0gcy0+YVsyXTsKKyAgICBjb25zdCBkb3Vi bGUgbTAgPSBzLT5tWzBdOworICAgIGNvbnN0IGRvdWJsZSBtMSA9IHMtPm1bMV07CisgICAgY29u c3QgZG91YmxlIG0yID0gcy0+bVsyXTsKKyAgICBkb3VibGUgYjAgPSBzLT5jZlswXTsKKyAgICBk b3VibGUgYjEgPSBzLT5jZlsxXTsKKworICAgIG1lbWNweShsZHN0LCBsc3JjLCBpbi0+bmJfc2Ft cGxlcyAqIHNpemVvZihkb3VibGUpKTsKKyAgICBtZW1jcHkocmRzdCwgcnNyYywgaW4tPm5iX3Nh bXBsZXMgKiBzaXplb2YoZG91YmxlKSk7CisKKyAgICBmb3IgKGludCBuID0gMDsgbiA8IGluLT5u Yl9zYW1wbGVzOyBuKyspIHsKKyAgICAgICAgY29uc3QgZG91YmxlIGNlbnRlciA9IChsc3JjW25d ICsgcnNyY1tuXSkgKiAwLjU7CisgICAgICAgIGNvbnN0IGRvdWJsZSB2MCA9IGNlbnRlcjsKKyAg ICAgICAgY29uc3QgZG91YmxlIHYzID0gdjAgLSBiMTsKKyAgICAgICAgY29uc3QgZG91YmxlIHYx ID0gYTAgKiBiMCArIGExICogdjM7CisgICAgICAgIGNvbnN0IGRvdWJsZSB2MiA9IGIxICsgYTEg KiBiMCArIGEyICogdjM7CisgICAgICAgIGRvdWJsZSBiLCB2YjsKKworICAgICAgICBiMCA9IDIu ICogdjEgLSBiMDsKKyAgICAgICAgYjEgPSAyLiAqIHYyIC0gYjE7CisKKyAgICAgICAgYiA9IG0w ICogdjAgKyBtMSAqIHYxICsgbTIgKiB2MjsKKyAgICAgICAgdmIgPSBzaW4odmJfZnVuKGIpICog c3QpOworCisgICAgICAgIGxmZVtuXSA9IHZiOworICAgIH0KKworICAgIHMtPmNmWzBdID0gYjA7 CisgICAgcy0+Y2ZbMV0gPSBiMTsKK30KKworc3RhdGljIGludCBmaWx0ZXJfZnJhbWUoQVZGaWx0 ZXJMaW5rICppbmxpbmssIEFWRnJhbWUgKmluKQoreworICAgIEFWRmlsdGVyQ29udGV4dCAqY3R4 ID0gaW5saW5rLT5kc3Q7CisgICAgQVZGaWx0ZXJMaW5rICpvdXRsaW5rID0gY3R4LT5vdXRwdXRz WzBdOworICAgIEFWRnJhbWUgKm91dDsKKworICAgIG91dCA9IGZmX2dldF9hdWRpb19idWZmZXIo b3V0bGluaywgaW4tPm5iX3NhbXBsZXMpOworICAgIGlmICghb3V0KSB7CisgICAgICAgIGF2X2Zy YW1lX2ZyZWUoJmluKTsKKyAgICAgICAgcmV0dXJuIEFWRVJST1IoRU5PTUVNKTsKKyAgICB9CisK KyAgICB2Yl9zdGVyZW8oY3R4LCBvdXQsIGluKTsKKworICAgIG91dC0+cHRzID0gaW4tPnB0czsK KyAgICBhdl9mcmFtZV9mcmVlKCZpbik7CisgICAgcmV0dXJuIGZmX2ZpbHRlcl9mcmFtZShvdXRs aW5rLCBvdXQpOworfQorCitzdGF0aWMgY29uc3QgQVZGaWx0ZXJQYWQgaW5wdXRzW10gPSB7Cisg ICAgeworICAgICAgICAubmFtZSAgICAgICAgID0gImRlZmF1bHQiLAorICAgICAgICAudHlwZSAg ICAgICAgID0gQVZNRURJQV9UWVBFX0FVRElPLAorICAgICAgICAuZmlsdGVyX2ZyYW1lID0gZmls dGVyX2ZyYW1lLAorICAgICAgICAuY29uZmlnX3Byb3BzID0gY29uZmlnX2lucHV0LAorICAgIH0s Cit9OworCitzdGF0aWMgY29uc3QgQVZGaWx0ZXJQYWQgb3V0cHV0c1tdID0geworICAgIHsKKyAg ICAgICAgLm5hbWUgPSAiZGVmYXVsdCIsCisgICAgICAgIC50eXBlID0gQVZNRURJQV9UWVBFX0FV RElPLAorICAgIH0sCit9OworCitjb25zdCBBVkZpbHRlciBmZl9hZl92aXJ0dWFsYmFzcyA9IHsK KyAgICAubmFtZSAgICAgICAgICAgID0gInZpcnR1YWxiYXNzIiwKKyAgICAuZGVzY3JpcHRpb24g ICAgID0gTlVMTF9JRl9DT05GSUdfU01BTEwoIkF1ZGlvIFZpcnR1YWwgQmFzcy4iKSwKKyAgICAu cHJpdl9zaXplICAgICAgID0gc2l6ZW9mKEF1ZGlvVmlydHVhbEJhc3NDb250ZXh0KSwKKyAgICAu cHJpdl9jbGFzcyAgICAgID0gJnZpcnR1YWxiYXNzX2NsYXNzLAorICAgIEZJTFRFUl9JTlBVVFMo aW5wdXRzKSwKKyAgICBGSUxURVJfT1VUUFVUUyhvdXRwdXRzKSwKKyAgICBGSUxURVJfUVVFUllf RlVOQyhxdWVyeV9mb3JtYXRzKSwKKyAgICAuZmxhZ3MgICAgICAgICAgID0gQVZGSUxURVJfRkxB R19TVVBQT1JUX1RJTUVMSU5FX0lOVEVSTkFMLAorICAgIC5wcm9jZXNzX2NvbW1hbmQgPSBmZl9m aWx0ZXJfcHJvY2Vzc19jb21tYW5kLAorfTsKZGlmZiAtLWdpdCBhL2xpYmF2ZmlsdGVyL2FsbGZp bHRlcnMuYyBiL2xpYmF2ZmlsdGVyL2FsbGZpbHRlcnMuYwppbmRleCAyZjcyNDc3NTIzLi5lYzcw ZmVlZjExIDEwMDY0NAotLS0gYS9saWJhdmZpbHRlci9hbGxmaWx0ZXJzLmMKKysrIGIvbGliYXZm aWx0ZXIvYWxsZmlsdGVycy5jCkBAIC0xNTMsNiArMTUzLDcgQEAgZXh0ZXJuIGNvbnN0IEFWRmls dGVyIGZmX2FmX3RpbHRzaGVsZjsKIGV4dGVybiBjb25zdCBBVkZpbHRlciBmZl9hZl90cmVibGU7 CiBleHRlcm4gY29uc3QgQVZGaWx0ZXIgZmZfYWZfdHJlbW9sbzsKIGV4dGVybiBjb25zdCBBVkZp bHRlciBmZl9hZl92aWJyYXRvOworZXh0ZXJuIGNvbnN0IEFWRmlsdGVyIGZmX2FmX3ZpcnR1YWxi YXNzOwogZXh0ZXJuIGNvbnN0IEFWRmlsdGVyIGZmX2FmX3ZvbHVtZTsKIGV4dGVybiBjb25zdCBB VkZpbHRlciBmZl9hZl92b2x1bWVkZXRlY3Q7CiAKLS0gCjIuMzYuMQoK --000000000000851d2805e115188e 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". --000000000000851d2805e115188e--