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 2F98F471A6 for ; Mon, 28 Aug 2023 18:54:51 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2C35B68C653; Mon, 28 Aug 2023 21:54:49 +0300 (EEST) Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F34C368C3C4 for ; Mon, 28 Aug 2023 21:54:42 +0300 (EEST) Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-99c93638322so739172266b.1 for ; Mon, 28 Aug 2023 11:54:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ylo-ph.20221208.gappssmtp.com; s=20221208; t=1693248882; x=1693853682; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=0GvPJaA+/TQ9RjyQ4L6mXQkLLp+heYdOCPkv31nEANY=; b=yxqNtSPxrAxX2tQDkNw6TYMIExFkl33rGSe/zgAjkoswAhmROfkz9EBK0IW3OlwDpu nBCBObkSNvRfJTdLQxpsjgAr6nmbWXgk1AKRo+lCyKMYF/INHuNO79jVKua/gV7bQtAO +GP4rYWLIGm+5CN+nDRXO9vywFRfwnhd0B+CbR8H3AB+UyAs7UF71Y6+DAWoOf5bVRup /AUW3jo0fa+LYH+eHZ5fpvbjLEpnEYXc6NDYVxDUhcWHrg1CWzyWPctRo4HwQRXWV+Gi TdAKZt9sPk9JB/EQ0AVgRWm9RSq7XyuYNFZxz2QXjxs/+t7W6yUBsOLpBZQwz61RAYkv pBZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693248882; x=1693853682; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=0GvPJaA+/TQ9RjyQ4L6mXQkLLp+heYdOCPkv31nEANY=; b=cDnRcrxgqR796WwEajXrxoSGxofhvfmyXkm9h2NwHS8tG9SOlwQ8JNWbNfDuNWiuvk yJu2N0cOCeWHf+B4wzrb8tz9qojmLUlNGSLN+4n7zeU2RWUPIIh/iP8JOck41AOXjKTJ hu5xWEiFeMnSTdOiLAgJNthdwAKsxVtlcXP16IBOmdV1n+elJ/bb3ns5rg3sHz08BLAr DL/Mn1FKM5CXkjLA0NV01g/WbjsBS/2uGo7btG76gXFQaMlQTnPHOUp6h/UEsMB/akkE r+28TRYHjJibFcNlfQL6N0MV4StpfD/pjyn6q0v8myOmFTtMU8bXz3Mx8GRvo0O2aT0m wnHA== X-Gm-Message-State: AOJu0Yydsz5fXzAER2bkAUcdP55YkqQSBaR8NGqFRkix2qpCtDwOxLUi bGeBjU7AfBNWs91A07poKPhKjCNqgsVw5WPevrfGyLRcZoPGH4eT X-Google-Smtp-Source: AGHT+IFDSsyhbSE43hHV1SjqLwZDgFc+sWv/JJiPf6A65M4AFbguXeoANJ06oO7gtENjfdT23C7SlBFYB3lu8wuy/jo= X-Received: by 2002:a17:906:8458:b0:9a3:7148:5041 with SMTP id e24-20020a170906845800b009a371485041mr572888ejy.16.1693248881799; Mon, 28 Aug 2023 11:54:41 -0700 (PDT) MIME-Version: 1.0 References: <97c138ad-457f-d098-e145-983bdd3e7f69@rothenpieler.org> In-Reply-To: From: Kyle Swanson Date: Mon, 28 Aug 2023 11:54:30 -0700 Message-ID: To: FFmpeg development discussions and patches Content-Type: multipart/mixed; boundary="0000000000001df55b0604003afd" Subject: Re: [FFmpeg-devel] [PATCH] avfilter: add libvmaf_cuda 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: --0000000000001df55b0604003afd Content-Type: text/plain; charset="UTF-8" Hi, Added filter docs, new patch attached. Unless there are any other reviews I will plan on pushing this in a few days. Thanks, Kyle --0000000000001df55b0604003afd Content-Type: application/octet-stream; name="0001-avfilter-add-libvmaf_cuda.patch" Content-Disposition: attachment; filename="0001-avfilter-add-libvmaf_cuda.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_llv8mack0 RnJvbSBmNmYwYWZmZmFkZmM1ZmFlOTdiMTFiMGZlYjdjMWQ3NDBiN2M4NmFiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLeWxlIFN3YW5zb24gPGtzd2Fuc29uQG5ldGZsaXguY29tPgpE YXRlOiBNb24sIDI4IEF1ZyAyMDIzIDExOjQ5OjM0IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gYXZm aWx0ZXI6IGFkZCBsaWJ2bWFmX2N1ZGEKCi0tLQogY29uZmlndXJlICAgICAgICAgICAgICAgIHwg ICA0ICsKIGRvYy9maWx0ZXJzLnRleGkgICAgICAgICB8ICAyNiArKysrKwogbGliYXZmaWx0ZXIv TWFrZWZpbGUgICAgIHwgICAxICsKIGxpYmF2ZmlsdGVyL2FsbGZpbHRlcnMuYyB8ICAgMSArCiBs aWJhdmZpbHRlci92Zl9saWJ2bWFmLmMgfCAyMTAgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrCiA1IGZpbGVzIGNoYW5nZWQsIDI0MiBpbnNlcnRpb25zKCspCgpkaWZmIC0t Z2l0IGEvY29uZmlndXJlIGIvY29uZmlndXJlCmluZGV4IGJkN2Y3Njk3YzguLjZmNmM2YWFmMjIg MTAwNzU1Ci0tLSBhL2NvbmZpZ3VyZQorKysgYi9jb25maWd1cmUKQEAgLTI4Niw2ICsyODYsNyBA QCBFeHRlcm5hbCBsaWJyYXJ5IHN1cHBvcnQ6CiAgIC0tZW5hYmxlLWxpYnY0bDIgICAgICAgICBl bmFibGUgbGlidjRsMi92NGwtdXRpbHMgW25vXQogICAtLWVuYWJsZS1saWJ2aWRzdGFiICAgICAg ZW5hYmxlIHZpZGVvIHN0YWJpbGl6YXRpb24gdXNpbmcgdmlkLnN0YWIgW25vXQogICAtLWVuYWJs ZS1saWJ2bWFmICAgICAgICAgZW5hYmxlIHZtYWYgZmlsdGVyIHZpYSBsaWJ2bWFmIFtub10KKyAg LS1lbmFibGUtbGlidm1hZi1jdWRhICAgIGVuYWJsZSBjdWRhIHZtYWYgZmlsdGVyIHZpYSBsaWJ2 bWFmIFtub10KICAgLS1lbmFibGUtbGlidm8tYW1yd2JlbmMgIGVuYWJsZSBBTVItV0IgZW5jb2Rp bmcgdmlhIGxpYnZvLWFtcndiZW5jIFtub10KICAgLS1lbmFibGUtbGlidm9yYmlzICAgICAgIGVu YWJsZSBWb3JiaXMgZW4vZGVjb2RpbmcgdmlhIGxpYnZvcmJpcywKICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG5hdGl2ZSBpbXBsZW1lbnRhdGlvbiBleGlzdHMgW25vXQpAQCAtMTkwMiw2ICsx OTAzLDcgQEAgRVhURVJOQUxfTElCUkFSWV9MSVNUPSIKICAgICBsaWJ1YXZzM2QKICAgICBsaWJ2 NGwyCiAgICAgbGlidm1hZgorICAgIGxpYnZtYWZfY3VkYQogICAgIGxpYnZvcmJpcwogICAgIGxp YnZweAogICAgIGxpYndlYnAKQEAgLTM4MzEsNiArMzgzMyw3IEBAIHZmbGlwX3Z1bGthbl9maWx0 ZXJfZGVwcz0idnVsa2FuIHNwaXJ2X2NvbXBpbGVyIgogdmlkc3RhYmRldGVjdF9maWx0ZXJfZGVw cz0ibGlidmlkc3RhYiIKIHZpZHN0YWJ0cmFuc2Zvcm1fZmlsdGVyX2RlcHM9ImxpYnZpZHN0YWIi CiBsaWJ2bWFmX2ZpbHRlcl9kZXBzPSJsaWJ2bWFmIgorbGlidm1hZl9jdWRhX2ZpbHRlcl9kZXBz PSJsaWJ2bWFmIGN1ZGFfbnZjYyIKIHptcV9maWx0ZXJfZGVwcz0ibGliem1xIgogem9vbXBhbl9m aWx0ZXJfZGVwcz0ic3dzY2FsZSIKIHpzY2FsZV9maWx0ZXJfZGVwcz0ibGliemltZyBjb25zdF9u YW4iCkBAIC02ODExLDYgKzY4MTQsNyBAQCBlbmFibGVkIGxpYnVhdnMzZCAgICAgICAgICYmIHJl cXVpcmVfcGtnX2NvbmZpZyBsaWJ1YXZzM2QgInVhdnMzZCA+PSAxLjEuNDEiIHVhdgogZW5hYmxl ZCBsaWJ2NGwyICAgICAgICAgICAmJiByZXF1aXJlX3BrZ19jb25maWcgbGlidjRsMiBsaWJ2NGwy IGxpYnY0bDIuaCB2NGwyX2lvY3RsCiBlbmFibGVkIGxpYnZpZHN0YWIgICAgICAgICYmIHJlcXVp cmVfcGtnX2NvbmZpZyBsaWJ2aWRzdGFiICJ2aWRzdGFiID49IDAuOTgiIHZpZC5zdGFiL2xpYnZp ZHN0YWIuaCB2c01vdGlvbkRldGVjdEluaXQKIGVuYWJsZWQgbGlidm1hZiAgICAgICAgICAgJiYg cmVxdWlyZV9wa2dfY29uZmlnIGxpYnZtYWYgImxpYnZtYWYgPj0gMi4wLjAiIGxpYnZtYWYuaCB2 bWFmX2luaXQKK2VuYWJsZWQgbGlidm1hZl9jdWRhICAgICAgJiYgcmVxdWlyZV9wa2dfY29uZmln IGxpYnZtYWYgImxpYnZtYWYgPj0gMi4wLjAiIGxpYnZtYWZfY3VkYS5oIHZtYWZfY3VkYV9zdGF0 ZV9pbml0CiBlbmFibGVkIGxpYnZvX2FtcndiZW5jICAgICYmIHJlcXVpcmUgbGlidm9fYW1yd2Jl bmMgdm8tYW1yd2JlbmMvZW5jX2lmLmggRV9JRl9pbml0IC1sdm8tYW1yd2JlbmMKIGVuYWJsZWQg bGlidm9yYmlzICAgICAgICAgJiYgcmVxdWlyZV9wa2dfY29uZmlnIGxpYnZvcmJpcyB2b3JiaXMg dm9yYmlzL2NvZGVjLmggdm9yYmlzX2luZm9faW5pdCAmJgogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICByZXF1aXJlX3BrZ19jb25maWcgbGlidm9yYmlzZW5jIHZvcmJpc2VuYyB2b3JiaXMv dm9yYmlzZW5jLmggdm9yYmlzX2VuY29kZV9pbml0CmRpZmYgLS1naXQgYS9kb2MvZmlsdGVycy50 ZXhpIGIvZG9jL2ZpbHRlcnMudGV4aQppbmRleCAxNGE2YmU0OWFjLi5lYWZmM2YxZGRjIDEwMDY0 NAotLS0gYS9kb2MvZmlsdGVycy50ZXhpCisrKyBiL2RvYy9maWx0ZXJzLnRleGkKQEAgLTE2OTI4 LDYgKzE2OTI4LDMyIEBAIGZmbXBlZyAtaSBkaXN0b3J0ZWQubXBnIC1pIHJlZmVyZW5jZS5ta3Yg LWxhdmZpICJbMDp2XXNldHRiPUFWVEIsc2V0cHRzPVBUUy1TVEFSCiBAZW5kIGV4YW1wbGUKIEBl bmQgaXRlbWl6ZQogCitAc2VjdGlvbiBsaWJ2bWFmX2N1ZGEKKworVGhpcyBpcyB0aGUgQ1VEQSB2 YXJpYW50IG9mIHRoZSBAcmVme2xpYnZtYWZ9IGZpbHRlci4gSXQgb25seSBhY2NlcHRzIENVREEg ZnJhbWVzLgorCitJdCByZXF1aXJlcyBOZXRmbGl4J3Mgdm1hZiBsaWJyYXJ5IChsaWJ2bWFmKSBh cyBhIHByZS1yZXF1aXNpdGUuCitBZnRlciBpbnN0YWxsaW5nIHRoZSBsaWJyYXJ5IGl0IGNhbiBi ZSBlbmFibGVkIHVzaW5nOgorQGNvZGV7Li9jb25maWd1cmUgLS1lbmFibGUtbm9uZnJlZSAtLWVu YWJsZS1jdWRhLW52Y2MgLS1lbmFibGUtbGlidm1hZi1jdWRhfS4KKworQHN1YnNlY3Rpb24gRXhh bXBsZXMKK0BpdGVtaXplCisKK0BpdGVtCitCYXNpYyB1c2FnZSBzaG93aW5nIENVVklEIGhhcmR3 YXJlIGRlY29kaW5nIGFuZCBDVURBIHNjYWxpbmcgd2l0aCBAcmVme3NjYWxlX2N1ZGF9OgorQGV4 YW1wbGUKK2ZmbXBlZyBcCisgICAgLWh3YWNjZWwgY3VkYSAtaHdhY2NlbF9vdXRwdXRfZm9ybWF0 IGN1ZGEgLWNvZGVjOnYgYXYxX2N1dmlkIC1pIGRpcy5vYnUgXAorICAgIC1od2FjY2VsIGN1ZGEg LWh3YWNjZWxfb3V0cHV0X2Zvcm1hdCBjdWRhIC1jb2RlYzp2IGF2MV9jdXZpZCAtaSByZWYub2J1 IFwKKyAgICAtZmlsdGVyX2NvbXBsZXggIgorICAgICAgICBbMDp2XXNjYWxlX2N1ZGE9Zm9ybWF0 PXl1djQyMHBbcmVmXTsgXAorICAgICAgICBbMTp2XXNjYWxlX2N1ZGE9Zm9ybWF0PXl1djQyMHBb ZGlzXTsgXAorICAgICAgICBbZGlzXVtyZWZdbGlidm1hZl9jdWRhPWxvZ19mbXQ9anNvbjpsb2df cGF0aD1vdXRwdXQuanNvbgorICAgICIgXAorICAgIC1mIG51bGwgLQorQGVuZCBleGFtcGxlCitA ZW5kIGl0ZW1pemUKKwogQHNlY3Rpb24gbGltaXRkaWZmCiBBcHBseSBsaW1pdGVkIGRpZmZlcmVu Y2UgZmlsdGVyIHVzaW5nIHNlY29uZCBhbmQgb3B0aW9uYWxseSB0aGlyZCB2aWRlbyBzdHJlYW0u CiAKZGlmZiAtLWdpdCBhL2xpYmF2ZmlsdGVyL01ha2VmaWxlIGIvbGliYXZmaWx0ZXIvTWFrZWZp bGUKaW5kZXggMmZlMDAzM2IyMS4uNTdmNTgwOWFjYiAxMDA2NDQKLS0tIGEvbGliYXZmaWx0ZXIv TWFrZWZpbGUKKysrIGIvbGliYXZmaWx0ZXIvTWFrZWZpbGUKQEAgLTM2Myw2ICszNjMsNyBAQCBP QkpTLSQoQ09ORklHX0xFTlNDT1JSRUNUSU9OX0ZJTFRFUikgICAgICAgICArPSB2Zl9sZW5zY29y cmVjdGlvbi5vCiBPQkpTLSQoQ09ORklHX0xFTlNGVU5fRklMVEVSKSAgICAgICAgICAgICAgICAr PSB2Zl9sZW5zZnVuLm8KIE9CSlMtJChDT05GSUdfTElCUExBQ0VCT19GSUxURVIpICAgICAgICAg ICAgICs9IHZmX2xpYnBsYWNlYm8ubyB2dWxrYW4ubyB2dWxrYW5fZmlsdGVyLm8KIE9CSlMtJChD T05GSUdfTElCVk1BRl9GSUxURVIpICAgICAgICAgICAgICAgICs9IHZmX2xpYnZtYWYubyBmcmFt ZXN5bmMubworT0JKUy0kKENPTkZJR19MSUJWTUFGX0NVREFfRklMVEVSKSAgICAgICAgICAgKz0g dmZfbGlidm1hZi5vIGZyYW1lc3luYy5vCiBPQkpTLSQoQ09ORklHX0xJTUlURElGRl9GSUxURVIp ICAgICAgICAgICAgICArPSB2Zl9saW1pdGRpZmYubyBmcmFtZXN5bmMubwogT0JKUy0kKENPTkZJ R19MSU1JVEVSX0ZJTFRFUikgICAgICAgICAgICAgICAgKz0gdmZfbGltaXRlci5vCiBPQkpTLSQo Q09ORklHX0xPT1BfRklMVEVSKSAgICAgICAgICAgICAgICAgICArPSBmX2xvb3AubwpkaWZmIC0t Z2l0IGEvbGliYXZmaWx0ZXIvYWxsZmlsdGVycy5jIGIvbGliYXZmaWx0ZXIvYWxsZmlsdGVycy5j CmluZGV4IGQ0MTg0ZDZlODAuLmFhNDk3MDNjNmUgMTAwNjQ0Ci0tLSBhL2xpYmF2ZmlsdGVyL2Fs bGZpbHRlcnMuYworKysgYi9saWJhdmZpbHRlci9hbGxmaWx0ZXJzLmMKQEAgLTMzOSw2ICszMzks NyBAQCBleHRlcm4gY29uc3QgQVZGaWx0ZXIgZmZfdmZfbGVuc2NvcnJlY3Rpb247CiBleHRlcm4g Y29uc3QgQVZGaWx0ZXIgZmZfdmZfbGVuc2Z1bjsKIGV4dGVybiBjb25zdCBBVkZpbHRlciBmZl92 Zl9saWJwbGFjZWJvOwogZXh0ZXJuIGNvbnN0IEFWRmlsdGVyIGZmX3ZmX2xpYnZtYWY7CitleHRl cm4gY29uc3QgQVZGaWx0ZXIgZmZfdmZfbGlidm1hZl9jdWRhOwogZXh0ZXJuIGNvbnN0IEFWRmls dGVyIGZmX3ZmX2xpbWl0ZGlmZjsKIGV4dGVybiBjb25zdCBBVkZpbHRlciBmZl92Zl9saW1pdGVy OwogZXh0ZXJuIGNvbnN0IEFWRmlsdGVyIGZmX3ZmX2xvb3A7CmRpZmYgLS1naXQgYS9saWJhdmZp bHRlci92Zl9saWJ2bWFmLmMgYi9saWJhdmZpbHRlci92Zl9saWJ2bWFmLmMKaW5kZXggMjU4NmYz N2Q5OS4uZDdkODUzYWMzZSAxMDA2NDQKLS0tIGEvbGliYXZmaWx0ZXIvdmZfbGlidm1hZi5jCisr KyBiL2xpYmF2ZmlsdGVyL3ZmX2xpYnZtYWYuYwpAQCAtMjQsNiArMjQsOCBAQAogICogQ2FsY3Vs YXRlIHRoZSBWTUFGIGJldHdlZW4gdHdvIGlucHV0IHZpZGVvcy4KICAqLwogCisjaW5jbHVkZSAi Y29uZmlnLmgiCisKICNpbmNsdWRlIDxsaWJ2bWFmLmg+CiAKICNpbmNsdWRlICJsaWJhdnV0aWwv YXZzdHJpbmcuaCIKQEAgLTM2LDYgKzM4LDEzIEBACiAjaW5jbHVkZSAiaW50ZXJuYWwuaCIKICNp bmNsdWRlICJ2aWRlby5oIgogCisjaWZkZWYgQ09ORklHX0xJQlZNQUZfQ1VEQQorI2luY2x1ZGUg PGxpYnZtYWZfY3VkYS5oPgorCisjaW5jbHVkZSAibGliYXZ1dGlsL2h3Y29udGV4dC5oIgorI2lu Y2x1ZGUgImxpYmF2dXRpbC9od2NvbnRleHRfY3VkYV9pbnRlcm5hbC5oIgorI2VuZGlmCisKIHR5 cGVkZWYgc3RydWN0IExJQlZNQUZDb250ZXh0IHsKICAgICBjb25zdCBBVkNsYXNzICpjbGFzczsK ICAgICBGRkZyYW1lU3luYyBmczsKQEAgLTU4LDYgKzY3LDkgQEAgdHlwZWRlZiBzdHJ1Y3QgTElC Vk1BRkNvbnRleHQgewogICAgIHVuc2lnbmVkIG1vZGVsX2NudDsKICAgICB1bnNpZ25lZCBmcmFt ZV9jbnQ7CiAgICAgdW5zaWduZWQgYnBjOworI2lmZGVmIENPTkZJR19MSUJWTUFGX0NVREEKKyAg ICBWbWFmQ3VkYVN0YXRlICpjdV9zdGF0ZTsKKyNlbmRpZgogfSBMSUJWTUFGQ29udGV4dDsKIAog I2RlZmluZSBPRkZTRVQoeCkgb2Zmc2V0b2YoTElCVk1BRkNvbnRleHQsIHgpCkBAIC03MTAsMyAr NzIyLDIwMSBAQCBjb25zdCBBVkZpbHRlciBmZl92Zl9saWJ2bWFmID0gewogICAgIEZJTFRFUl9P VVRQVVRTKGxpYnZtYWZfb3V0cHV0cyksCiAgICAgRklMVEVSX1BJWEZNVFNfQVJSQVkocGl4X2Zt dHMpLAogfTsKKworI2lmZGVmIENPTkZJR19MSUJWTUFGX0NVREEKK3N0YXRpYyBjb25zdCBlbnVt IEFWUGl4ZWxGb3JtYXQgc3VwcG9ydGVkX2Zvcm1hdHNbXSA9IHsKKyAgICBBVl9QSVhfRk1UX1lV VjQyMFAsCisgICAgQVZfUElYX0ZNVF9ZVVY0NDRQMTYsCit9OworCitzdGF0aWMgaW50IGZvcm1h dF9pc19zdXBwb3J0ZWQoZW51bSBBVlBpeGVsRm9ybWF0IGZtdCkKK3sKKyAgICBpbnQgaTsKKwor ICAgIGZvciAoaSA9IDA7IGkgPCBGRl9BUlJBWV9FTEVNUyhzdXBwb3J0ZWRfZm9ybWF0cyk7IGkr KykKKyAgICAgICAgaWYgKHN1cHBvcnRlZF9mb3JtYXRzW2ldID09IGZtdCkKKyAgICAgICAgICAg IHJldHVybiAxOworICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IGNvbmZpZ19wcm9wc19j dWRhKEFWRmlsdGVyTGluayAqb3V0bGluaykKK3sKKyAgICBpbnQgZXJyOworICAgIEFWRmlsdGVy Q29udGV4dCAqY3R4ID0gb3V0bGluay0+c3JjOworICAgIExJQlZNQUZDb250ZXh0ICpzID0gY3R4 LT5wcml2OworICAgIEFWRmlsdGVyTGluayAqaW5saW5rID0gY3R4LT5pbnB1dHNbMF07CisgICAg QVZIV0ZyYW1lc0NvbnRleHQgKmZyYW1lc19jdHggPSAoQVZIV0ZyYW1lc0NvbnRleHQqKSBpbmxp bmstPmh3X2ZyYW1lc19jdHgtPmRhdGE7CisgICAgQVZDVURBRGV2aWNlQ29udGV4dCAqZGV2aWNl X2h3Y3R4ID0gZnJhbWVzX2N0eC0+ZGV2aWNlX2N0eC0+aHdjdHg7CisgICAgQ1Vjb250ZXh0IGN1 X2N0eCA9IGRldmljZV9od2N0eC0+Y3VkYV9jdHg7CisgICAgY29uc3QgQVZQaXhGbXREZXNjcmlw dG9yICpkZXNjID0gYXZfcGl4X2ZtdF9kZXNjX2dldChmcmFtZXNfY3R4LT5zd19mb3JtYXQpOwor CisgICAgVm1hZkNvbmZpZ3VyYXRpb24gY2ZnID0geworICAgICAgICAubG9nX2xldmVsID0gbG9n X2xldmVsX21hcChhdl9sb2dfZ2V0X2xldmVsKCkpLAorICAgICAgICAubl9zdWJzYW1wbGUgPSBz LT5uX3N1YnNhbXBsZSwKKyAgICAgICAgLm5fdGhyZWFkcyA9IHMtPm5fdGhyZWFkcywKKyAgICB9 OworCisgICAgVm1hZkN1ZGFQaWN0dXJlQ29uZmlndXJhdGlvbiBjdWRhX3BpY19jZmcgPSB7Cisg ICAgICAgIC5waWNfcGFyYW1zID0geworICAgICAgICAgICAgLmJwYyA9IGRlc2MtPmNvbXBbMF0u ZGVwdGgsCisgICAgICAgICAgICAudyA9IGlubGluay0+dywKKyAgICAgICAgICAgIC5oID0gaW5s aW5rLT5oLAorICAgICAgICAgICAgLnBpeF9mbXQgPSBwaXhfZm10X21hcChmcmFtZXNfY3R4LT5z d19mb3JtYXQpLAorICAgICAgICB9LAorICAgICAgICAucGljX3ByZWFsbG9jX21ldGhvZCA9IFZN QUZfQ1VEQV9QSUNUVVJFX1BSRUFMTE9DQVRJT05fTUVUSE9EX0RFVklDRSwKKyAgICB9OworCisg ICAgVm1hZkN1ZGFDb25maWd1cmF0aW9uIGN1ZGFfY2ZnID0geworICAgICAgICAuY3VfY3R4ID0g Y3VfY3R4LAorICAgIH07CisKKyAgICBpZiAoIWZvcm1hdF9pc19zdXBwb3J0ZWQoZnJhbWVzX2N0 eC0+c3dfZm9ybWF0KSkgeworICAgICAgICBhdl9sb2cocywgQVZfTE9HX0VSUk9SLAorICAgICAg ICAgICAgICAgIlVuc3VwcG9ydGVkIGlucHV0IGZvcm1hdDogJXNcbiIsIGRlc2MtPm5hbWUpOwor ICAgICAgICByZXR1cm4gQVZFUlJPUihFSU5WQUwpOworICAgIH0KKworICAgIGVyciA9IHZtYWZf aW5pdCgmcy0+dm1hZiwgY2ZnKTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gQVZFUlJP UihFSU5WQUwpOworCisgICAgZXJyID0gdm1hZl9jdWRhX3N0YXRlX2luaXQoJnMtPmN1X3N0YXRl LCBjdWRhX2NmZyk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIEFWRVJST1IoRUlOVkFM KTsKKworICAgIGVyciA9IHZtYWZfY3VkYV9pbXBvcnRfc3RhdGUocy0+dm1hZiwgcy0+Y3Vfc3Rh dGUpOworICAgIGlmIChlcnIpCisgICAgICAgIHJldHVybiBBVkVSUk9SKEVJTlZBTCk7CisKKyAg ICBlcnIgPSB2bWFmX2N1ZGFfcHJlYWxsb2NhdGVfcGljdHVyZXMocy0+dm1hZiwgY3VkYV9waWNf Y2ZnKTsKKyAgICBpZiAoZXJyIDwgMCkKKyAgICAgICAgcmV0dXJuIGVycjsKKworICAgIGVyciA9 IHBhcnNlX2RlcHJlY2F0ZWRfb3B0aW9ucyhjdHgpOworICAgIGlmIChlcnIpCisgICAgICAgIHJl dHVybiBlcnI7CisKKyAgICBlcnIgPSBwYXJzZV9tb2RlbHMoY3R4KTsKKyAgICBpZiAoZXJyKQor ICAgICAgICByZXR1cm4gZXJyOworCisgICAgZXJyID0gcGFyc2VfZmVhdHVyZXMoY3R4KTsKKyAg ICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gZXJyOworCisgICAgcmV0dXJuIGNvbmZpZ19vdXRw dXQob3V0bGluayk7Cit9CisKK3N0YXRpYyBpbnQgY29weV9waWN0dXJlX2RhdGFfY3VkYShWbWFm Q29udGV4dCogdm1hZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBVkNVREFE ZXZpY2VDb250ZXh0KiBkZXZpY2VfaHdjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgQVZGcmFtZSogc3JjLCBWbWFmUGljdHVyZSogZHN0LAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGVudW0gQVZQaXhlbEZvcm1hdCBwaXhfZm10KQoreworICAgIGNvbnN0 IEFWUGl4Rm10RGVzY3JpcHRvciAqcGl4X2Rlc2MgPSBhdl9waXhfZm10X2Rlc2NfZ2V0KHBpeF9m bXQpOworICAgIEN1ZGFGdW5jdGlvbnMgKmN1ID0gZGV2aWNlX2h3Y3R4LT5pbnRlcm5hbC0+Y3Vk YV9kbDsKKworICAgIENVREFfTUVNQ1BZMkQgbSA9IHsKKyAgICAgICAgLnNyY01lbW9yeVR5cGUg PSBDVV9NRU1PUllUWVBFX0RFVklDRSwKKyAgICAgICAgLmRzdE1lbW9yeVR5cGUgPSBDVV9NRU1P UllUWVBFX0RFVklDRSwKKyAgICB9OworCisgICAgaW50IGVyciA9IHZtYWZfY3VkYV9mZXRjaF9w cmVhbGxvY2F0ZWRfcGljdHVyZSh2bWFmLCBkc3QpOworICAgIGlmIChlcnIpCisgICAgICAgIHJl dHVybiBBVkVSUk9SKEVOT01FTSk7CisKKyAgICBlcnIgPSBjdS0+Y3VDdHhQdXNoQ3VycmVudChk ZXZpY2VfaHdjdHgtPmN1ZGFfY3R4KTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gQVZF UlJPUl9FWFRFUk5BTDsKKworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBwaXhfZGVzYy0+ bmJfY29tcG9uZW50czsgaSsrKSB7CisgICAgICAgIG0uc3JjRGV2aWNlID0gKENVZGV2aWNlcHRy KSBzcmMtPmRhdGFbaV07CisgICAgICAgIG0uc3JjUGl0Y2ggPSBzcmMtPmxpbmVzaXplW2ldOwor ICAgICAgICBtLmRzdERldmljZSA9IChDVWRldmljZXB0cikgZHN0LT5kYXRhW2ldOworICAgICAg ICBtLmRzdFBpdGNoID0gZHN0LT5zdHJpZGVbaV07CisgICAgICAgIG0uV2lkdGhJbkJ5dGVzID0g ZHN0LT53W2ldICogKChkc3QtPmJwYyArIDcpIC8gOCk7CisgICAgICAgIG0uSGVpZ2h0ID0gZHN0 LT5oW2ldOworCisgICAgICAgIGVyciA9IGN1LT5jdU1lbWNweTJEKCZtKTsKKyAgICAgICAgaWYg KGVycikKKyAgICAgICAgICAgIHJldHVybiBBVkVSUk9SX0VYVEVSTkFMOworICAgICAgICBicmVh azsKKyAgICB9CisKKyAgICBlcnIgPSBjdS0+Y3VDdHhQb3BDdXJyZW50KE5VTEwpOworICAgIGlm IChlcnIpCisgICAgICAgIHJldHVybiBBVkVSUk9SX0VYVEVSTkFMOworCisgICAgcmV0dXJuIDA7 Cit9CisKK3N0YXRpYyBpbnQgZG9fdm1hZl9jdWRhKEZGRnJhbWVTeW5jKiBmcykKK3sKKyAgICBB VkZpbHRlckNvbnRleHQqIGN0eCA9IGZzLT5wYXJlbnQ7CisgICAgTElCVk1BRkNvbnRleHQqIHMg PSBjdHgtPnByaXY7CisgICAgQVZGaWx0ZXJMaW5rICppbmxpbmsgPSBjdHgtPmlucHV0c1swXTsK KyAgICBBVkhXRnJhbWVzQ29udGV4dCAqZnJhbWVzX2N0eCA9IChBVkhXRnJhbWVzQ29udGV4dCop IGlubGluay0+aHdfZnJhbWVzX2N0eC0+ZGF0YTsKKyAgICBBVkNVREFEZXZpY2VDb250ZXh0ICpk ZXZpY2VfaHdjdHggPSBmcmFtZXNfY3R4LT5kZXZpY2VfY3R4LT5od2N0eDsKKyAgICBWbWFmUGlj dHVyZSBwaWNfcmVmLCBwaWNfZGlzdDsKKyAgICBBVkZyYW1lICpyZWYsICpkaXN0OworCisgICAg aW50IGVyciA9IDA7CisKKyAgICBlcnIgPSBmZl9mcmFtZXN5bmNfZHVhbGlucHV0X2dldChmcywg JmRpc3QsICZyZWYpOworICAgIGlmIChlcnIgPCAwKQorICAgICAgICByZXR1cm4gZXJyOworICAg IGlmIChjdHgtPmlzX2Rpc2FibGVkIHx8ICFyZWYpCisgICAgICAgIHJldHVybiBmZl9maWx0ZXJf ZnJhbWUoY3R4LT5vdXRwdXRzWzBdLCBkaXN0KTsKKworICAgIGVyciA9IGNvcHlfcGljdHVyZV9k YXRhX2N1ZGEocy0+dm1hZiwgZGV2aWNlX2h3Y3R4LCByZWYsICZwaWNfcmVmLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVzX2N0eC0+c3dfZm9ybWF0KTsKKyAgICBpZiAo ZXJyKSB7CisgICAgICAgIGF2X2xvZyhzLCBBVl9MT0dfRVJST1IsICJwcm9ibGVtIGR1cmluZyBj b3B5X3BpY3R1cmVfZGF0YV9jdWRhLlxuIik7CisgICAgICAgIHJldHVybiBBVkVSUk9SKEVOT01F TSk7CisgICAgfQorCisgICAgZXJyID0gY29weV9waWN0dXJlX2RhdGFfY3VkYShzLT52bWFmLCBk ZXZpY2VfaHdjdHgsIGRpc3QsICZwaWNfZGlzdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGZyYW1lc19jdHgtPnN3X2Zvcm1hdCk7CisgICAgaWYgKGVycikgeworICAgICAgICBh dl9sb2cocywgQVZfTE9HX0VSUk9SLCAicHJvYmxlbSBkdXJpbmcgY29weV9waWN0dXJlX2RhdGFf Y3VkYS5cbiIpOworICAgICAgICByZXR1cm4gQVZFUlJPUihFTk9NRU0pOworICAgIH0KKworICAg IGVyciA9IHZtYWZfcmVhZF9waWN0dXJlcyhzLT52bWFmLCAmcGljX3JlZiwgJnBpY19kaXN0LCBz LT5mcmFtZV9jbnQrKyk7CisgICAgaWYgKGVycikgeworICAgICAgICBhdl9sb2cocywgQVZfTE9H X0VSUk9SLCAicHJvYmxlbSBkdXJpbmcgdm1hZl9yZWFkX3BpY3R1cmVzLlxuIik7CisgICAgICAg IHJldHVybiBBVkVSUk9SKEVJTlZBTCk7CisgICAgfQorCisgICAgcmV0dXJuIGZmX2ZpbHRlcl9m cmFtZShjdHgtPm91dHB1dHNbMF0sIGRpc3QpOworfQorCitzdGF0aWMgYXZfY29sZCBpbnQgaW5p dF9jdWRhKEFWRmlsdGVyQ29udGV4dCAqY3R4KQoreworICAgIExJQlZNQUZDb250ZXh0ICpzID0g Y3R4LT5wcml2OworICAgIHMtPmZzLm9uX2V2ZW50ID0gZG9fdm1hZl9jdWRhOworICAgIHJldHVy biAwOworfQorCitzdGF0aWMgY29uc3QgQVZGaWx0ZXJQYWQgbGlidm1hZl9vdXRwdXRzX2N1ZGFb XSA9IHsKKyAgICB7CisgICAgICAgIC5uYW1lICAgICAgICAgPSAiZGVmYXVsdCIsCisgICAgICAg IC50eXBlICAgICAgICAgPSBBVk1FRElBX1RZUEVfVklERU8sCisgICAgICAgIC5jb25maWdfcHJv cHMgPSBjb25maWdfcHJvcHNfY3VkYSwKKyAgICB9LAorfTsKKworY29uc3QgQVZGaWx0ZXIgZmZf dmZfbGlidm1hZl9jdWRhID0geworICAgIC5uYW1lICAgICAgICAgICA9ICJsaWJ2bWFmX2N1ZGEi LAorICAgIC5kZXNjcmlwdGlvbiAgICA9IE5VTExfSUZfQ09ORklHX1NNQUxMKCJDYWxjdWxhdGUg dGhlIFZNQUYgYmV0d2VlbiB0d28gdmlkZW8gc3RyZWFtcy4iKSwKKyAgICAucHJlaW5pdCAgICAg ICAgPSBsaWJ2bWFmX2ZyYW1lc3luY19wcmVpbml0LAorICAgIC5pbml0ICAgICAgICAgICA9IGlu aXRfY3VkYSwKKyAgICAudW5pbml0ICAgICAgICAgPSB1bmluaXQsCisgICAgLmFjdGl2YXRlICAg ICAgID0gYWN0aXZhdGUsCisgICAgLnByaXZfc2l6ZSAgICAgID0gc2l6ZW9mKExJQlZNQUZDb250 ZXh0KSwKKyAgICAucHJpdl9jbGFzcyAgICAgPSAmbGlidm1hZl9jbGFzcywKKyAgICBGSUxURVJf SU5QVVRTKGxpYnZtYWZfaW5wdXRzKSwKKyAgICBGSUxURVJfT1VUUFVUUyhsaWJ2bWFmX291dHB1 dHNfY3VkYSksCisgICAgRklMVEVSX1NJTkdMRV9QSVhGTVQoQVZfUElYX0ZNVF9DVURBKSwKKyAg ICAuZmxhZ3NfaW50ZXJuYWwgPSBGRl9GSUxURVJfRkxBR19IV0ZSQU1FX0FXQVJFLAorfTsKKyNl bmRpZgotLSAKMi4yNC4zIChBcHBsZSBHaXQtMTI4KQoK --0000000000001df55b0604003afd 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". --0000000000001df55b0604003afd--