From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <ffmpeg-devel-bounces@ffmpeg.org>
Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100])
	by master.gitmailbox.com (Postfix) with ESMTPS id B13394E170
	for <ffmpegdev@gitmailbox.com>; Tue, 29 Apr 2025 01:02:51 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5997B68B508;
	Tue, 29 Apr 2025 04:01:23 +0300 (EEST)
Received: from mail-pf1-f173.google.com (mail-pf1-f173.google.com
 [209.85.210.173])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B181368B629
 for <ffmpeg-devel@ffmpeg.org>; Tue, 29 Apr 2025 04:01:13 +0300 (EEST)
Received: by mail-pf1-f173.google.com with SMTP id
 d2e1a72fcca58-736bfa487c3so4505796b3a.1
 for <ffmpeg-devel@ffmpeg.org>; Mon, 28 Apr 2025 18:01:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1745888472; x=1746493272; darn=ffmpeg.org;
 h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date
 :references:in-reply-to:message-id:from:from:to:cc:subject:date
 :message-id:reply-to;
 bh=6QkCzdNcu9Ltu8afG4QeySxQc5HsESa2paiuYmJ1Y14=;
 b=Tf4hzHNhRpiCQaPW+hEQOeJaK6GDnSWaz6l87uHWBKos5YPeJHYsLy1SK/kc6x7Cdj
 VIJ9EmB2sE/Rb4VjUXoS5ILlmldUFGbASfYxb4IyUeS+aPMenXZf57QMzyu/48PW9oXy
 +sSRsBHR3EVRZfVXPmhp7pYvAzHPKWzttWe6MEreaQRs44DzDBk5Ryvd2Ji9kOcXXxrA
 mcMlROjw3u2j5XbaMHsB4V8QJ6iC1Twv/OvMnmwmpX5esRK1f5UEBmC5pNS4U5B7t/Ow
 SP0mYjmHfY/7tBKzIblTzt1eG3pusZm/V95Sjm04UvIBzQw4PvYFEXDRjDMtenSq3GjY
 lTgQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1745888472; x=1746493272;
 h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date
 :references:in-reply-to:message-id:from:x-gm-message-state:from:to
 :cc:subject:date:message-id:reply-to;
 bh=6QkCzdNcu9Ltu8afG4QeySxQc5HsESa2paiuYmJ1Y14=;
 b=exxVlelVRCi54dc3+Nxm03kyoIA1eQrLh9dkcmmLVMLdFwAHCx2s0hulR0ElkZ2aiD
 esyWl+9y6JaS0Rpvid9Dou644uhit9Kawngo3Y5k87/WIp9aps/sDuz+O2MdgHWEtue3
 An9tVBgH4hjJoEkO//ifELXexmbghTN7/SZhpYSCroWDvqmrXnGoVPNF4BSDHPxNZxgt
 SPuuFr7hbJlKOKA1eHVgLdOiMjksVMg4SOp0/6RdlLoxf9TaUJlptvPNBRV511AGHgxW
 +fjS50J4lPL/yxZxAFsJ/Bn+fZkZi1ThUSQ3zJ9tckgX0fKW0WoFIu9uODOfK4HEQQ+u
 H9sw==
X-Gm-Message-State: AOJu0Yyr0OWUtyXJqoe7ZfwkOMQ8/chkcknbTe3ruhAkRu5kUO/0zho7
 0pkye8QBYlRsNGQluh0WfAlaalVgDIg0QlLYOp+I9xpMqOvCagdG10JC8Q==
X-Gm-Gg: ASbGncvq+IKLSUtPSuEkz7YHVgqfoXFSfc8TEJK5dBtFMZn8d1EuQlOh3H2kHpuPbBg
 DBufG6e4bRwEUCmW57A4gN5gq/WQRxsjgbHnZtcFyaILFQPXHDlig2S1ojVENKs8lVDW0UdSZkK
 EUSRYhQQK8p3XPnpZUxc0voeOMjqSY6VmKTo/Uylkthei2JZvcRucFvf4FKk+X9XAJvQl6399T6
 RAoMvKnepPMfBFuaiQYmFINECogfACr++NwldWAQQLWA5M3GhCIS0b4nvupyamsln9vOk/5QRCE
 EBBZZyF4LLnmkKLIXu/LE9k7fFr7zWdscuoOH35UtCIjgI5DsNAd7qc/uVltpEIWEi1SKw==
X-Google-Smtp-Source: AGHT+IFFwIDjpkFOryjf3LRHzZWngWe+ic+vfUxUFIrmtViSDU4l4Al/le4hZpPE9ope+9S1l3nyNQ==
X-Received: by 2002:a05:6a21:9104:b0:1f5:79c4:5da2 with SMTP id
 adf61e73a8af0-2046a646a01mr17416496637.31.1745888471862; 
 Mon, 28 Apr 2025 18:01:11 -0700 (PDT)
Received: from [127.0.0.1] (master.gitmailbox.com. [34.83.118.50])
 by smtp.gmail.com with ESMTPSA id
 d2e1a72fcca58-73e25acccd0sm9006167b3a.178.2025.04.28.18.01.11
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Mon, 28 Apr 2025 18:01:11 -0700 (PDT)
From: softworkz <ffmpegagent@gmail.com>
X-Google-Original-From: softworkz <softworkz@hotmail.com>
Message-Id: <07c0d5b09ba481fd884a4acf04677d96e697d06d.1745888404.git.ffmpegagent@gmail.com>
In-Reply-To: <pull.66.v8.ffstaging.FFmpeg.1745888404.ffmpegagent@gmail.com>
References: <pull.66.v7.ffstaging.FFmpeg.1745623868.ffmpegagent@gmail.com>
 <pull.66.v8.ffstaging.FFmpeg.1745888404.ffmpegagent@gmail.com>
Date: Tue, 29 Apr 2025 01:00:00 +0000
Fcc: Sent
MIME-Version: 1.0
To: ffmpeg-devel@ffmpeg.org
Subject: [FFmpeg-devel] [PATCH v8 11/15] avfilter/avfilter: Add
 avfilter_link_get_hw_frames_ctx()
X-BeenThere: ffmpeg-devel@ffmpeg.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org>
List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe>
List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel>
List-Post: <mailto:ffmpeg-devel@ffmpeg.org>
List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help>
List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe>
Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Cc: softworkz <softworkz@hotmail.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: ffmpeg-devel-bounces@ffmpeg.org
Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org>
Archived-At: <https://master.gitmailbox.com/ffmpegdev/07c0d5b09ba481fd884a4acf04677d96e697d06d.1745888404.git.ffmpegagent@gmail.com/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

From: softworkz <softworkz@hotmail.com>

Signed-off-by: softworkz <softworkz@hotmail.com>
---
 doc/APIchanges         |  3 +++
 libavfilter/avfilter.c |  9 +++++++++
 libavfilter/avfilter.h | 12 ++++++++++++
 3 files changed, 24 insertions(+)

diff --git a/doc/APIchanges b/doc/APIchanges
index 75d66f87f3..d0869561f3 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -2,6 +2,9 @@ The last version increases of all libraries were on 2025-03-28
 
 API changes, most recent first:
 
+2025-02-xx - xxxxxxxxxx - lavfi 10.10.100 - avfilter.h
+  Add avfilter_link_get_hw_frames_ctx().
+
 2025-04-21 - xxxxxxxxxx - lavu 60.2.100 - log.h
   Add AV_CLASS_CATEGORY_HWDEVICE.
 
diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index 64c1075c40..c76d43a215 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -989,6 +989,15 @@ enum AVMediaType avfilter_pad_get_type(const AVFilterPad *pads, int pad_idx)
     return pads[pad_idx].type;
 }
 
+AVBufferRef *avfilter_link_get_hw_frames_ctx(AVFilterLink *link)
+{
+    FilterLink *plink = ff_filter_link(link);
+    if (plink->hw_frames_ctx)
+        return av_buffer_ref(plink->hw_frames_ctx);
+
+    return NULL;
+}
+
 static int default_filter_frame(AVFilterLink *link, AVFrame *frame)
 {
     return ff_filter_frame(link->dst->outputs[0], frame);
diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h
index a89d3cf658..f85929dc5c 100644
--- a/libavfilter/avfilter.h
+++ b/libavfilter/avfilter.h
@@ -96,6 +96,18 @@ const char *avfilter_pad_get_name(const AVFilterPad *pads, int pad_idx);
  */
 enum AVMediaType avfilter_pad_get_type(const AVFilterPad *pads, int pad_idx);
 
+/**
+ * Get the hardware frames context of a filter link.
+ *
+ * @param link an AVFilterLink
+ *
+ * @return a ref-counted copy of the link's hw_frames_ctx field if there is
+ *         a hardware frames context associated with the link or NULL otherwise.
+ *         The returned AVBufferRef needs to be released with av_buffer_unref()
+ *         when it is no longer used.
+ */
+AVBufferRef* avfilter_link_get_hw_frames_ctx(AVFilterLink *link);
+
 /**
  * Lists of formats / etc. supported by an end of a link.
  *
-- 
ffmpeg-codebot

_______________________________________________
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".