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 DD727475E2 for ; Thu, 14 Sep 2023 07:27:15 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C0AC268C6FA; Thu, 14 Sep 2023 10:27:12 +0300 (EEST) Received: from mail-yb1-f170.google.com (mail-yb1-f170.google.com [209.85.219.170]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0221168C6CB for ; Thu, 14 Sep 2023 10:27:05 +0300 (EEST) Received: by mail-yb1-f170.google.com with SMTP id 3f1490d57ef6-d819b185e74so277593276.0 for ; Thu, 14 Sep 2023 00:27:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=visionlabs-ai.20230601.gappssmtp.com; s=20230601; t=1694676423; x=1695281223; darn=ffmpeg.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=1YsY+LKDJrUchJ6G2rKJshkBqYb2szg1Lj1UWpRPxGQ=; b=3LFmnuR7tCH9DVSyHXPQCaIKsMeTCGwbLpnqptWzO3kl8VuGAVtaIwel/Lp+Xs3MYY Df2qC67615qIFUFKAl53OKUita10h+zuIDGBPQUF5Gc49rPq/22h8Rv3PSM51Mq42x7b iwVjzbTFjRONwtWnexQAO2oMBK0iEjR41KWo0dSAUgSnJE9KZdvreHV9kIP94wUWI2aC +pz9L/zNKWM8xEPPe2aHsPLQrnMy3USL56PovBP8zuEI1K1Q3QSbs6eykka1610dFOJY 5oORmryLpBqVGZ8N60f0OxQn99uGoK6f1paL9YPxofzrLzMyoEu0FfRrZ0ETtc10sufI T8Rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694676423; x=1695281223; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=1YsY+LKDJrUchJ6G2rKJshkBqYb2szg1Lj1UWpRPxGQ=; b=TDOSD6z5gpJFg6kQvV9EKZtbYr2wHiP2TiNE2qQNOOq50CZJH0pfuJztCXaXueQPct ZHQIWF0cq9FiZDByviPjJmHcRU7blXXNI/BBCjWACgrAfZqoJIdQqjIIMkz3V4wrziza HwCU6TbBnbEW24D73V9D4/iQaT97ZLRR5RkodnM7Hzk5EsBLe/j9hiKnoBsdnaQQ2V+M JWowb37MxZuedaCZdLbevoSOhHyluMedMIhmWeiDyWD8nSvSY8cFqRiN4CWOv4NTYzQ2 mAHa+R4aRijVJUL95f9uC8Tl/hrhVSyNqa7Ntv+zjVlFKezgGh2K0f1+kKZGx7mlRgs2 o33Q== X-Gm-Message-State: AOJu0Yw4zSJFuQPkb59a+y4AzrezoiZeZklfJGMIHHxClQrVavyKY9J9 4JOSZCeG5kNONDPD/evq/7dZsOoMTbrt30odoVSZhSh+h1aAf12GL7U= X-Google-Smtp-Source: AGHT+IGoZroYlk+SaNwh8vgTiEsH5NPtLeY3NTn/FZa58Noumh4wsSgFQKV57Rae5qtepCX8SLCHhgMtZ7TCU2dmXlA= X-Received: by 2002:a25:d74b:0:b0:d7b:89af:b942 with SMTP id o72-20020a25d74b000000b00d7b89afb942mr835035ybg.27.1694676423593; Thu, 14 Sep 2023 00:27:03 -0700 (PDT) MIME-Version: 1.0 From: Roman Arzumanyan Date: Thu, 14 Sep 2023 10:26:52 +0300 Message-ID: To: FFmpeg development discussions and patches Content-Type: multipart/mixed; boundary="0000000000003d0b1c06054c9a21" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: [FFmpeg-devel] [PATCH 2/2] libavutil/hwcontect_cuda: add option to use current CUDA context 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: --0000000000003d0b1c06054c9a21 Content-Type: text/plain; charset="UTF-8" Hello, This is the second patch of the group which adds the option to use CUDA context current to calling thread. It simplifies the usage of ffmpeg libraries in applications which rely on CUDA runtime API. Example: AVDictionary *opts = NULL; AVBufferRef *hwDeviceCtx; av_dict_set(&opts, "current_ctx", "1", 0); av_hwdevice_ctx_create(&hwDeviceCtx, type, NULL, opts, 0); --0000000000003d0b1c06054c9a21 Content-Type: application/octet-stream; name="0001-libavutil-hwcontext_cuda-option-added-to-use-context.patch" Content-Disposition: attachment; filename="0001-libavutil-hwcontext_cuda-option-added-to-use-context.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lmiuf6zi0 RnJvbSAxMmVhMzQzMDliNTdjZTE1ZGY5NTU5Y2NjMWFhMDU1MjM4ZGYwYTNlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBSb21hbiBBcnp1bWFueWFuIDxyLmFyenVtYW55YW5AdmlzaW9u bGFicy5haT4KRGF0ZTogVHVlLCAxMiBTZXAgMjAyMyAxNzozMTozMCArMDMwMApTdWJqZWN0OiBb UEFUQ0hdIGxpYmF2dXRpbC9od2NvbnRleHRfY3VkYTogb3B0aW9uIGFkZGVkIHRvIHVzZSBjb250 ZXh0IHdoaWNoCiBpcyBjdXJyZW50IGZvciBjYWxsaW5nIHRocmVhZAoKLS0tCiBkb2MvZmZtcGVn LnRleGkgICAgICAgICAgICB8ICA0ICsrKysKIGxpYmF2dXRpbC9od2NvbnRleHRfY3VkYS5jIHwg MjYgKysrKysrKysrKysrKysrKysrKysrKysrKy0KIGxpYmF2dXRpbC9od2NvbnRleHRfY3VkYS5o IHwgIDUgKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL2RvYy9mZm1wZWcudGV4aSBiL2RvYy9mZm1wZWcudGV4aQppbmRl eCAyMjczYzM5MjE0Li40YjUzMmVlZjg5IDEwMDY0NAotLS0gYS9kb2MvZmZtcGVnLnRleGkKKysr IGIvZG9jL2ZmbXBlZy50ZXhpCkBAIC0xMTU2LDYgKzExNTYsOCBAQCBUaGUgZm9sbG93aW5nIG9w dGlvbnMgYXJlIHJlY29nbml6ZWQ6CiBAdGFibGUgQG9wdGlvbgogQGl0ZW0gcHJpbWFyeV9jdHgK IElmIHNldCB0byAxLCB1c2VzIHRoZSBwcmltYXJ5IGRldmljZSBjb250ZXh0IGluc3RlYWQgb2Yg Y3JlYXRpbmcgYSBuZXcgb25lLgorQGl0ZW0gY3VycmVudF9jdHgKK0lmIHNldCB0byAxLCB1c2Vz IGNvbnRleHQgY3VycmVudCB0byBjYWxsaW5nIHRocmVhZCBpbnN0ZWFkIG9mIGNyZWF0aW5nIGEg bmV3IG9uZS4KIEBlbmQgdGFibGUKIAogRXhhbXBsZXM6CkBAIC0xMTY1LDYgKzExNjcsOCBAQCBD aG9vc2UgdGhlIHNlY29uZCBkZXZpY2Ugb24gdGhlIHN5c3RlbS4KIAogQGl0ZW0gLWluaXRfaHdf ZGV2aWNlIGN1ZGE6MCxwcmltYXJ5X2N0eD0xCiBDaG9vc2UgdGhlIGZpcnN0IGRldmljZSBhbmQg dXNlIHRoZSBwcmltYXJ5IGRldmljZSBjb250ZXh0LgorQGl0ZW0gLWluaXRfaHdfZGV2aWNlIGN1 ZGE6MCxjdXJyZW50X2N0eD0xCitDaG9vc2UgY29udGV4dCBjdXJyZW50IHRvIGNhbGxpbmcgdGhy ZWFkLgogQGVuZCB0YWJsZQogCiBAaXRlbSBkeHZhMgpkaWZmIC0tZ2l0IGEvbGliYXZ1dGlsL2h3 Y29udGV4dF9jdWRhLmMgYi9saWJhdnV0aWwvaHdjb250ZXh0X2N1ZGEuYwppbmRleCA0YjI5OGZh OTNlLi5hZDliZjkxNzE3IDEwMDY0NAotLS0gYS9saWJhdnV0aWwvaHdjb250ZXh0X2N1ZGEuYwor KysgYi9saWJhdnV0aWwvaHdjb250ZXh0X2N1ZGEuYwpAQCAtMzYxLDYgKzM2MSwxMCBAQCBzdGF0 aWMgaW50IGN1ZGFfY29udGV4dF9pbml0KEFWSFdEZXZpY2VDb250ZXh0ICpkZXZpY2VfY3R4LCBp bnQgZmxhZ3MpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBod2N0eC0+aW50ZXJuYWwtPmN1ZGFfZGV2aWNlKSk7CiAgICAgICAgIGlmIChyZXQg PCAwKQogICAgICAgICAgICAgcmV0dXJuIHJldDsKKyAgICB9IGVsc2UgaWYgKGZsYWdzICYgQVZf Q1VEQV9VU0VfQ1VSUkVOVF9DT05URVhUKSB7CisgICAgICAgIHJldCA9IENIRUNLX0NVKGN1LT5j dUN0eEdldEN1cnJlbnQoJmh3Y3R4LT5jdWRhX2N0eCkpOworICAgICAgICBpZiAocmV0IDwgMCkK KyAgICAgICAgICAgIHJldHVybiByZXQ7CiAgICAgfSBlbHNlIHsKICAgICAgICAgcmV0ID0gQ0hF Q0tfQ1UoY3UtPmN1Q3R4Q3JlYXRlKCZod2N0eC0+Y3VkYV9jdHgsIGRlc2lyZWRfZmxhZ3MsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBod2N0eC0+aW50ZXJuYWwtPmN1 ZGFfZGV2aWNlKSk7CkBAIC0zODEsMTkgKzM4NSwzOSBAQCBzdGF0aWMgaW50IGN1ZGFfY29udGV4 dF9pbml0KEFWSFdEZXZpY2VDb250ZXh0ICpkZXZpY2VfY3R4LCBpbnQgZmxhZ3MpIHsKIHN0YXRp YyBpbnQgY3VkYV9mbGFnc19mcm9tX29wdHMoQVZIV0RldmljZUNvbnRleHQgKmRldmljZV9jdHgs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFWRGljdGlvbmFyeSAqb3B0cywgaW50 ICpmbGFncykKIHsKKyAgICBpbnQgdXNlX3ByaW1hcnlfY3R4ID0gMCwgdXNlX2N1cnJlbnRfY3R4 ID0gMDsKICAgICBBVkRpY3Rpb25hcnlFbnRyeSAqcHJpbWFyeV9jdHhfb3B0ID0gYXZfZGljdF9n ZXQob3B0cywgInByaW1hcnlfY3R4IiwgTlVMTCwgMCk7CisgICAgQVZEaWN0aW9uYXJ5RW50cnkg KmN1cnJlbnRfY3R4X29wdCA9IGF2X2RpY3RfZ2V0KG9wdHMsICJjdXJyZW50X2N0eCIsIE5VTEws IDApOworCisgICAgaWYgKHByaW1hcnlfY3R4X29wdCkKKyAgICAgICAgdXNlX3ByaW1hcnlfY3R4 ID0gc3RydG9sKHByaW1hcnlfY3R4X29wdC0+dmFsdWUsIE5VTEwsIDEwKTsKKyAgICAKKyAgICBp ZiAoY3VycmVudF9jdHhfb3B0KQorICAgICAgICB1c2VfY3VycmVudF9jdHggPSBzdHJ0b2woY3Vy cmVudF9jdHhfb3B0LT52YWx1ZSwgTlVMTCwgMTApOwogCi0gICAgaWYgKHByaW1hcnlfY3R4X29w dCAmJiBzdHJ0b2wocHJpbWFyeV9jdHhfb3B0LT52YWx1ZSwgTlVMTCwgMTApKSB7CisgICAgaWYg KHVzZV9wcmltYXJ5X2N0eCAmJiB1c2VfY3VycmVudF9jdHgpCisgICAgICAgIGF2X2xvZyhkZXZp Y2VfY3R4LCBBVl9MT0dfRVJST1IsICJDYW4ndCB1c2UgcHJpbWFyeSBhbmQgY3VycmVudCBDVURB IGN0eCBzaW11bHRhbmVvdXNseS5cbiIpOworCisgICAgaWYgKHVzZV9wcmltYXJ5X2N0eCkgewog ICAgICAgICBhdl9sb2coZGV2aWNlX2N0eCwgQVZfTE9HX1ZFUkJPU0UsICJVc2luZyBDVURBIHBy aW1hcnkgZGV2aWNlIGNvbnRleHRcbiIpOwogICAgICAgICAqZmxhZ3MgfD0gQVZfQ1VEQV9VU0Vf UFJJTUFSWV9DT05URVhUOwogICAgIH0gZWxzZSBpZiAocHJpbWFyeV9jdHhfb3B0KSB7CiAgICAg ICAgIGF2X2xvZyhkZXZpY2VfY3R4LCBBVl9MT0dfVkVSQk9TRSwgIkRpc2FibGluZyB1c2Ugb2Yg Q1VEQSBwcmltYXJ5IGRldmljZSBjb250ZXh0XG4iKTsKICAgICAgICAgKmZsYWdzICY9IH5BVl9D VURBX1VTRV9QUklNQVJZX0NPTlRFWFQ7CisgICAgfSAKKyAgICAKKyAgICBpZiAodXNlX2N1cnJl bnRfY3R4KSB7CisgICAgICAgIGF2X2xvZyhkZXZpY2VfY3R4LCBBVl9MT0dfVkVSQk9TRSwgIlVz aW5nIENVREEgY3VycmVudCBkZXZpY2UgY29udGV4dFxuIik7CisgICAgICAgICpmbGFncyB8PSBB Vl9DVURBX1VTRV9DVVJSRU5UX0NPTlRFWFQ7CisgICAgfSBlbHNlIGlmIChjdXJyZW50X2N0eF9v cHQpIHsKKyAgICAgICAgYXZfbG9nKGRldmljZV9jdHgsIEFWX0xPR19WRVJCT1NFLCAiRGlzYWJs aW5nIHVzZSBvZiBDVURBIGN1cnJlbnQgZGV2aWNlIGNvbnRleHRcbiIpOworICAgICAgICAqZmxh Z3MgJj0gfkFWX0NVREFfVVNFX0NVUlJFTlRfQ09OVEVYVDsKICAgICB9CiAKICAgICByZXR1cm4g MDsKIH0KIAorCiBzdGF0aWMgaW50IGN1ZGFfZGV2aWNlX2NyZWF0ZShBVkhXRGV2aWNlQ29udGV4 dCAqZGV2aWNlX2N0eCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIg KmRldmljZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFWRGljdGlvbmFyeSAqb3B0 cywgaW50IGZsYWdzKQpkaWZmIC0tZ2l0IGEvbGliYXZ1dGlsL2h3Y29udGV4dF9jdWRhLmggYi9s aWJhdnV0aWwvaHdjb250ZXh0X2N1ZGEuaAppbmRleCBjZWZiZTBjZWFiLi5jYmFkNDM0ZmVhIDEw MDY0NAotLS0gYS9saWJhdnV0aWwvaHdjb250ZXh0X2N1ZGEuaAorKysgYi9saWJhdnV0aWwvaHdj b250ZXh0X2N1ZGEuaApAQCAtNjIsNiArNjIsMTEgQEAgdHlwZWRlZiBzdHJ1Y3QgQVZDVURBRGV2 aWNlQ29udGV4dCB7CiAgKi8KICNkZWZpbmUgQVZfQ1VEQV9VU0VfUFJJTUFSWV9DT05URVhUICgx IDw8IDApCiAKKy8qKgorICogVXNlIGN1cnJlbnQgZGV2aWNlIGNvbnRleHQgaW5zdGVhZCBvZiBj cmVhdGluZyBhIG5ldyBvbmUuCisgKi8KKyNkZWZpbmUgQVZfQ1VEQV9VU0VfQ1VSUkVOVF9DT05U RVhUICgxIDw8IDEpCisKIC8qKgogICogQH0KICAqLwotLSAKMi4zOS4yIChBcHBsZSBHaXQtMTQz KQoK --0000000000003d0b1c06054c9a21 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". --0000000000003d0b1c06054c9a21--