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 8F60F4D89F
	for <ffmpegdev@gitmailbox.com>; Sun, 20 Apr 2025 23:00:54 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5D50E68A43A;
	Mon, 21 Apr 2025 02:00:03 +0300 (EEST)
Received: from mail-pf1-f174.google.com (mail-pf1-f174.google.com
 [209.85.210.174])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3818A68A408
 for <ffmpeg-devel@ffmpeg.org>; Mon, 21 Apr 2025 02:00:01 +0300 (EEST)
Received: by mail-pf1-f174.google.com with SMTP id
 d2e1a72fcca58-736c062b1f5so2620088b3a.0
 for <ffmpeg-devel@ffmpeg.org>; Sun, 20 Apr 2025 16:00:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1745189999; x=1745794799; 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=AX3JCKCavy9xUbhi3GsQB5lSChDE4Zi+aNpqsWi9ImmnzFBxcOLOivVvV1UAdOYcSk
 7mGLzRqzD8Wk+Iv81/XuGKvjTD1X/WPbzFLycf3BWd7/eE4vWDEEiq3M/nfSPe0gbXtt
 dnSTTvH6tnOvTcCA1OSmMIzDgMhHUd0thrTzdAv7gu57xbajRKDkNdCnteAKAxwBJmMG
 r6jk4GUbt1yjQOO6JPrbfwThCnMXX5sIPs1rkO5ZoQ9xQxeBSnBFjBIL3p08BobbF1qt
 0TCtYxMSN7dcuFpg0i4sRjXZis2Qpu/jco2C6IoJSusQbflNpncuZOXwDHtdxDv8D6pR
 gnGA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1745189999; x=1745794799;
 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=jQPMbVHG466tuKWQOhxWYEZq9wVZcZtdcKEN3rYKklSB321k4afbxrFrDQQbh/Va06
 /ktqBh9tltKpCUueSrqo3M+jvp/U5UJjiZbMUN4Fx/ygR1H/1qvpyUccDCeFNEKT3zbf
 aBDjjBL/Ur52VwdopTUVAMUj/sNdWp1MOEPB5HgI5aWsN0SirxXUiBqho29u/GGXC8Vh
 CTOXe3p6EQ3NjM52PBeETh16+bLOdhI1KJ2arwzot3x/us1CY8dlzfL+2iaeOkeS3X58
 n/RFRkv2wEObwzHE0CL3lKTJXHm/FsDRNCMymNBOM0AGvch7zpsvJaDussnOTh9z5x5G
 5fHg==
X-Gm-Message-State: AOJu0YxEa2AB8+KYUQruHCb7qrmJOSGSF5QksoFGlQaZFSXpRKw1RkZU
 Ab4w63R4wYxmFH0mL6gj13cjOUsuylsAHg6BlabLoD1Xm0Vl32hWZ6m7xA==
X-Gm-Gg: ASbGncsRBLyovlPOQjyyqg4g0vgI5phfxM6VDVB79+OynENr9uua9ON+PQlPAZ3s15J
 8Q9CM2qfw3Lql1K6CWVRDZdN3e2U0sRTd+35xCavEh0nZkxSkSb+N6U4KVJH593Y+4/IKKpi7cg
 yRbYnPatjvCJRgSgjE+x2spOshousuQmLMx/jYgVdGjnuecQpLQtuk9sCxBwOoEy2WNT2+sV0ve
 9E4S/S8y3ON709yJeg2uszLZtZyYgSiP3DJ3VqaedwC/NslzHxnFFjbeDs7ywDuUxZnDwWWfNSz
 tn4RpQgbKgCsVMF9Zcf8BWRK1WMj18H0xKSv0+1aLtfkKNShglABkRT0mDc=
X-Google-Smtp-Source: AGHT+IFevFbQZ1PcPJgz7TsZjgAJ7rZr6XRUwD1i44EdIQ5mMqmrpjdal35za2bzlWVwER7PUQm5/w==
X-Received: by 2002:a05:6a20:d70b:b0:203:bb3b:5f03 with SMTP id
 adf61e73a8af0-203cbc09185mr13719649637.6.1745189999425; 
 Sun, 20 Apr 2025 15:59:59 -0700 (PDT)
Received: from [127.0.0.1] (master.gitmailbox.com. [34.83.118.50])
 by smtp.gmail.com with ESMTPSA id
 41be03b00d2f7-b102701e679sm1337375a12.55.2025.04.20.15.59.59
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sun, 20 Apr 2025 15:59:59 -0700 (PDT)
From: softworkz <ffmpegagent@gmail.com>
X-Google-Original-From: softworkz <softworkz@hotmail.com>
Message-Id: <d2ad11ac8560fed7db0ce8c12500a08cd165fc07.1745189955.git.ffmpegagent@gmail.com>
In-Reply-To: <pull.66.v4.ffstaging.FFmpeg.1745189954.ffmpegagent@gmail.com>
References: <pull.66.v3.ffstaging.FFmpeg.1744945024.ffmpegagent@gmail.com>
 <pull.66.v4.ffstaging.FFmpeg.1745189954.ffmpegagent@gmail.com>
Date: Sun, 20 Apr 2025 22:59:10 +0000
Fcc: Sent
MIME-Version: 1.0
To: ffmpeg-devel@ffmpeg.org
Subject: [FFmpeg-devel] [PATCH v4 07/11] 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/d2ad11ac8560fed7db0ce8c12500a08cd165fc07.1745189955.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".