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 D1CE94914E for ; Sun, 4 Feb 2024 13:50:17 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 1F16C68D128; Sun, 4 Feb 2024 15:50:15 +0200 (EET) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01olkn2025.outbound.protection.outlook.com [40.92.64.25]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2044168BC30 for ; Sun, 4 Feb 2024 15:50:09 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=f+QftcWK+DhYZ611kuvZsjxGwc+NeUuBW3Nlb3gMFLjY1pSthd+YYWcsZJfhkwpkR8GknJkf3f9097w5bny9w1/YPKNEbCMRFHC2BkBcDtmVuEGfAGjNp0NTemSMEsNLX966OtUjPO0UnOepyl0oYxaNF/Z7Ss1y4PPITYIAze9ZUtF1zRlYnnH74c7hLQ9SqeLCvvvfPIQWIssO1aA1H8SpD91by+5Cpdv0dSYo5mitJpfqRLFXVy1L4Zi96ZoCmjcbLTQCTNnreMZJS9ToskOhQwZF8VfMAQMlYfNEdMNIlcxltuUvAQUhtOgRDvwMuCPdN79e0DPcPw4DRyEtdQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LwRiUjDCvZiuaieQ7F04+m2dXz89jTbpNNBtME+l8vE=; b=LjMQ/eobL7mNup2maNWukPRtTgdGoI2klDhbyYye5761f8bmw3iyouz8oThTKOOVTRzPAjc1pT08ulSEZByFYJUQreQ1XKNe/RFnZ5/zWLq1dWQynfPYUS6uuS1Q2KyS+IvwxPT2tUQSrHAg4JZ6yHiT7q9e7Al2RL79lwmo9SeEy9L9KETYO7ca6C+n4tCElYMKVp06OhNCGtO3c7uF6A7cFolccKlNHJRHg02j6PzxlQ505lKItX/vgw0gsR0qENdgq9D3S6ods3kp9WqV0nPgNPGHDk+KGoXcBBz31+aBVE/fDH1xBpKWPlXgUJCMuXipDdXizLeg7nSjxhuwyg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LwRiUjDCvZiuaieQ7F04+m2dXz89jTbpNNBtME+l8vE=; b=GU1mWGDBlmSjkdJMgZh76dH2KGkaRfb5Jhr62le/kHl+F+HXcMA8N8vaCVMIHlYZWK/gznKi7S8jND012EGeT84Xazln+v/slTzA6Ef2CCGY0Pyep4vd7g1bUNQ25X9bDUB7L9yDQS0qaDEgEN8hpkAYegmsyJe2Kf/mIpYsLhpBghNb9vdgTZvxlQOx7YFDq/HJ8GBx/9/dwjlGYxdthU09PoY8MCvDpJaRh3SJtWY2KTIJWQYWYuoDFlmFHFky99q6viL0f8I9XbW9tjZGP53N/cXEGZmx2SwRwvatHbDjE8qkqpYLl3m+NfeB56pYUpM61e1NzWSBdW/EEblcbA== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AM8P250MB0344.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:32b::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.33; Sun, 4 Feb 2024 13:50:07 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::65aa:deb0:a18e:d48d]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::65aa:deb0:a18e:d48d%5]) with mapi id 15.20.7202.031; Sun, 4 Feb 2024 13:50:07 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Sun, 4 Feb 2024 14:51:54 +0100 Message-ID: X-Mailer: git-send-email 2.34.1 X-TMN: [28wgy2QjRXj/Afjw6VvuzQ9mpbgU0QNorVPz+qHHroc=] X-ClientProxiedBy: FR0P281CA0040.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:48::11) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20240204135154.2615024-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AM8P250MB0344:EE_ X-MS-Office365-Filtering-Correlation-Id: 33732804-015c-4223-b720-08dc25883244 X-MS-Exchange-SLBlob-MailProps: q6Zzr5Fg03GO9n0Wo4wBY0MGnr1b7Rj/Nx1NDXYuo1zDyo4PGVJbGbvPIUwDO98DIwRx9wCnyWSWh9jS9PP9PJQcBEIdj7/ur8xki3s/Zzdu+g9rD3aL78VZwbgOoygHUnJFuCAX0GBkCr9OHB6I5kqwpN0YW2XRk6TL+4br1yknCsiWj4Eo379PfbK6jJSm8XgZrczWGAaoEsVKTLA2LmtHQgKwfn1oJupYWvY4e1a0TTE8BI6ecJ8NPKgJ+foYJAUOXSt+K/ot7lUl0uSWBPcM7bHfMZ117qacG6lJrFtWjUcF4nQKAYQ5ebi8Cm87d6I389KKlzZ7mcsEioPp4tp5TZpqsgCkaQJ/xmjjGYkSWxYiUjtGCgOm27avw9uS+mEOZyIfv3P7p44VpFpYG+tBPjX9YanEOUFgzVpkw4zF94Ekor6+PpmSzAYuRs2QpbH3dXhce/0VEvELFJg0Qz8kc0+8oP/ed5PYFwog+DE+v11qpl5GwPLV+2CSoP+fEBvx5Mt5AO6Wxs+aj8WVNT/U9RXguL9C9h/w4p0C+3tXsIgvBW52HuX8H6KTKm/enJe6HSq9qEsDWm21hShRe4fzRwvv7Gmgg8rFjvhnhSN6m0GGSvvhebzswfqo7qq+veIufVLSP5TvZz1WM86dhgmj2yVJ/0TnbQo8nJSxlam+ayo+hRLSwodOCRgPxhq9 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 8MeKE7WQDSKZQK15D1bUugbpCjQFVs79MZgNePVGkxSpIAZ8FB3HXsnorAV5Ck+zFgaf1t5+006fiiXEH1DlDTN/fJrs4cWjGpI9Nk8H2vw9dKrY5EVUezCGVjJ2yI7KlZa3t6CMqUt4mLN80B+SCIgXN1fL6luVOHDM4cy0BT08EoP6cLusUDDjOugSR5Ffko/81ae7LrIJ6csRvdB6CIffsSGulr1M5s262439XNZ17WD4r6xIoAPfkfVCIJe19Hkflf/kONzgSpO2LI2bk/IulNRXAnyCZ/BA1u2hd9PiOezuK1NCAr4ZNbx3uWfN7DqQtSr2Nl1wEQjq/zXZdHS+d1yICGXUknI/5J75MnTfGHQbbsWJbysqZkJ6qQCUK8xvGfgiTvqlA6nx33wVIRzUj61rfAcxP36sp1z4jPdqinKfVKtqmOJXm2E2oiHZYcEblOubgtpgJmu/l9wPkrxm77zocZLutNdmZVyw5DzBrU9VPb+55nCXlApX6GeF6DCoX3d6ZftyyN7ZzDROVuERELQ8Ymkys7F84KYil/OL5K6zL2nPFpnPh/ygmx1erlLFPHZ08qkZ+xxMA2arjqbNAk0ZSykaonZNzBmnSTEv44eCUsDLHC6iy8LI97uU X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?YGN73xBlf+by8dSaQVUOL/130NxYEdagvvLNVT8uYW7iebDPWnGlF15Z72Qf?= =?us-ascii?Q?tgtOO/GgDMGCLj1mlxp6Fco5i2cHv3ZbprAo4oj3rhM/A5rPBPuPS/Kx0QFx?= =?us-ascii?Q?ADfcFUiySz68jaGKSpX0erCzKh25B3t+YgKJl8TcOFS0XbCqDGVoI3SH8KlQ?= =?us-ascii?Q?2QxtDlGE2FbrW0JnPuvrG66Cj6YI2Hn5T4djRhPU2kvtsutwhZBXgLmmVjkD?= =?us-ascii?Q?zdUTzZ+nNggL2LcR0EGHtK9eWlF28pd6YEznQtLUNQig5WGINPVrOCXsxxB7?= =?us-ascii?Q?I6s915hbzDOI1OrP4hTVJGBT/S+2E9s263eaqMqxbkcKHZs1PlufMdU8msTq?= =?us-ascii?Q?w1MRvVf4b4pEMlyvFT1shUxlDPV2OyECDqxHSlMq2jgB284l4XBTfk95FsOo?= =?us-ascii?Q?5ylbJEjS7ztnsGDr42ezfY/I3UPRCk/h21nvunoSUsi1ZgL0Ww9xmputDVgk?= =?us-ascii?Q?qDt/nG6lnjIRvv6ZO7EjIiwJZS4nMpVR3pcWY0X0Qh7U1pI3sX4dNduzIx96?= =?us-ascii?Q?LpFPop3/LeJ519uPrp/Mt7Z2TQ/U4yWJCqQ3FB8jQVkoEFZNEFAIDGYOg6zQ?= =?us-ascii?Q?TWVPHgcWb+Z+YLrX2uXrKurDRQFtsgoOrFCVeiw+5x1DCsRVcc4ZSVvaolPX?= =?us-ascii?Q?u8LSfXJmIAqoHxe4VDab2jc9gy2s+1P3ZmPjqSDVkgC0tzcnEEJaHPgJcwIh?= =?us-ascii?Q?CwwmlVl1f8u6f2XptzYyQGshnxpZR15PpSwk9nbwwDQzPdh6XihRyzjzQ+aS?= =?us-ascii?Q?cub8ubCqQX/OvszNm9r9+JAUt9wtL8xwjxhYfY6qY3PihsAFB2Q6yfJndN1y?= =?us-ascii?Q?Rbqsytm9+v79m8gpMoxoqEwKyC5f2XUghlb1fTzplotAGoQz1uekck8XezJt?= =?us-ascii?Q?TANPz03H2/pNS8YRj6uytiN3eNNFt9v4ITgnEMZ5CHGqYRMOXABUjT4k2V4K?= =?us-ascii?Q?SMzw5dFHMAFkekR5NJ6eK+ftQ3NwlpJd8Raj6S7tXOPtZs1la7Sf7CpczK31?= =?us-ascii?Q?ooFzbApPtImbbdBWKke63Vme21AtUMYmuQBbCErbm/D96+B7kyg+5UT9ta//?= =?us-ascii?Q?6fHkAYymHCX8sDN0ZWBBQDIoVkQaEmSSSy6paKrJRG07bhZBvs0W83kLENPf?= =?us-ascii?Q?puDno23kQ9n+LkAbMiEkLpNfUB6dOOuyS5hdIwHoKJcP968RVwt+Mwt6GTag?= =?us-ascii?Q?hl37eVV2LqjvcIOYnDvxZP31o/frrX54Wv31SUvt5f9opBXeR5YYOwrK9B5J?= =?us-ascii?Q?nyZse8p2wC6dRA9YH2ml?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 33732804-015c-4223-b720-08dc25883244 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Feb 2024 13:50:07.0778 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8P250MB0344 Subject: [FFmpeg-devel] [PATCH] avfilter/fifo: Remove (a)fifo filters 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 Cc: Andreas Rheinhardt Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Obsolete since 4ca1fb9d2a91757c8c4c34dd456abf340e3f765f. Signed-off-by: Andreas Rheinhardt --- doc/filters.texi | 9 --- libavfilter/Makefile | 1 - libavfilter/allfilters.c | 2 - libavfilter/fifo.c | 165 --------------------------------------- 4 files changed, 177 deletions(-) delete mode 100644 libavfilter/fifo.c diff --git a/doc/filters.texi b/doc/filters.texi index b9b539acee..e0436a5755 100644 --- a/doc/filters.texi +++ b/doc/filters.texi @@ -14122,15 +14122,6 @@ For example: ffmpeg -i in.vob -vf "fieldorder=bff" out.dv @end example -@section fifo, afifo - -Buffer input images and send them when they are requested. - -It is mainly useful when auto-inserted by the libavfilter -framework. - -It does not take parameters. - @section fillborders Fill borders of the input video, without changing video stream dimensions. diff --git a/libavfilter/Makefile b/libavfilter/Makefile index bba0219876..f6c1d641d6 100644 --- a/libavfilter/Makefile +++ b/libavfilter/Makefile @@ -16,7 +16,6 @@ OBJS = allfilters.o \ colorspace.o \ ccfifo.o \ drawutils.o \ - fifo.o \ formats.o \ framepool.o \ framequeue.o \ diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c index af84aa3d97..149bf50997 100644 --- a/libavfilter/allfilters.c +++ b/libavfilter/allfilters.c @@ -611,8 +611,6 @@ extern const AVFilter ff_asrc_abuffer; extern const AVFilter ff_vsrc_buffer; extern const AVFilter ff_asink_abuffer; extern const AVFilter ff_vsink_buffer; -extern const AVFilter ff_af_afifo; -extern const AVFilter ff_vf_fifo; #include "libavfilter/filter_list.c" diff --git a/libavfilter/fifo.c b/libavfilter/fifo.c deleted file mode 100644 index 1c7be88ae1..0000000000 --- a/libavfilter/fifo.c +++ /dev/null @@ -1,165 +0,0 @@ -/* - * Copyright (c) 2007 Bobby Bingham - * - * This file is part of FFmpeg. - * - * FFmpeg is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * FFmpeg is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/** - * @file - * FIFO buffering filter - */ - -#include "libavutil/common.h" -#include "libavutil/mathematics.h" - -#include "audio.h" -#include "avfilter.h" -#include "internal.h" - -typedef struct Buf { - AVFrame *frame; - struct Buf *next; -} Buf; - -typedef struct FifoContext { - Buf root; - Buf *last; ///< last buffered frame - - /** - * When a specific number of output samples is requested, the partial - * buffer is stored here - */ - AVFrame *out; - int allocated_samples; ///< number of samples out was allocated for -} FifoContext; - -static av_cold int init(AVFilterContext *ctx) -{ - FifoContext *s = ctx->priv; - s->last = &s->root; - - return 0; -} - -static av_cold void uninit(AVFilterContext *ctx) -{ - FifoContext *s = ctx->priv; - Buf *buf, *tmp; - - for (buf = s->root.next; buf; buf = tmp) { - tmp = buf->next; - av_frame_free(&buf->frame); - av_free(buf); - } - - av_frame_free(&s->out); -} - -static int add_to_queue(AVFilterLink *inlink, AVFrame *frame) -{ - FifoContext *s = inlink->dst->priv; - - s->last->next = av_mallocz(sizeof(Buf)); - if (!s->last->next) { - av_frame_free(&frame); - return AVERROR(ENOMEM); - } - - s->last = s->last->next; - s->last->frame = frame; - - return 0; -} - -static void queue_pop(FifoContext *s) -{ - Buf *tmp = s->root.next->next; - if (s->last == s->root.next) - s->last = &s->root; - av_freep(&s->root.next); - s->root.next = tmp; -} - -static int request_frame(AVFilterLink *outlink) -{ - FifoContext *s = outlink->src->priv; - int ret = 0; - - if (!s->root.next) { - if ((ret = ff_request_frame(outlink->src->inputs[0])) < 0) - return ret; - if (!s->root.next) - return 0; - } - ret = ff_filter_frame(outlink, s->root.next->frame); - queue_pop(s); - return ret; -} - -static const AVFilterPad avfilter_vf_fifo_inputs[] = { - { - .name = "default", - .type = AVMEDIA_TYPE_VIDEO, - .filter_frame = add_to_queue, - }, -}; - -static const AVFilterPad avfilter_vf_fifo_outputs[] = { - { - .name = "default", - .type = AVMEDIA_TYPE_VIDEO, - .request_frame = request_frame, - }, -}; - -const AVFilter ff_vf_fifo = { - .name = "fifo", - .description = NULL_IF_CONFIG_SMALL("Buffer input images and send them when they are requested."), - .init = init, - .uninit = uninit, - .priv_size = sizeof(FifoContext), - .flags = AVFILTER_FLAG_METADATA_ONLY, - FILTER_INPUTS(avfilter_vf_fifo_inputs), - FILTER_OUTPUTS(avfilter_vf_fifo_outputs), -}; - -static const AVFilterPad avfilter_af_afifo_inputs[] = { - { - .name = "default", - .type = AVMEDIA_TYPE_AUDIO, - .filter_frame = add_to_queue, - }, -}; - -static const AVFilterPad avfilter_af_afifo_outputs[] = { - { - .name = "default", - .type = AVMEDIA_TYPE_AUDIO, - .request_frame = request_frame, - }, -}; - -const AVFilter ff_af_afifo = { - .name = "afifo", - .description = NULL_IF_CONFIG_SMALL("Buffer input frames and send them when they are requested."), - .init = init, - .uninit = uninit, - .priv_size = sizeof(FifoContext), - .flags = AVFILTER_FLAG_METADATA_ONLY, - FILTER_INPUTS(avfilter_af_afifo_inputs), - FILTER_OUTPUTS(avfilter_af_afifo_outputs), -}; -- 2.34.1 _______________________________________________ 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".