From f0a5543898dad040b8f2d1b44fb6b278c06c3460 Mon Sep 17 00:00:00 2001 From: "S.N. Hemanth Meenakshisundaram" Date: Sat, 25 Sep 2010 01:57:01 +0000 Subject: [PATCH] Add asink_anullsink - null audio sink. Patch by "S.N. Hemanth Meenakshisundaram" /smeenaks/ucsd/edu. Originally committed as revision 25189 to svn://svn.ffmpeg.org/ffmpeg/trunk --- doc/filters.texi | 13 ++++++++++++ libavfilter/Makefile | 2 ++ libavfilter/allfilters.c | 2 ++ libavfilter/asink_anullsink.c | 38 +++++++++++++++++++++++++++++++++++ libavfilter/avfilter.h | 2 +- 5 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 libavfilter/asink_anullsink.c diff --git a/doc/filters.texi b/doc/filters.texi index e6e187dec0..d0fcbca3eb 100644 --- a/doc/filters.texi +++ b/doc/filters.texi @@ -48,6 +48,19 @@ anullsrc=48000:mono @c man end AUDIO SOURCES +@chapter Audio Sinks +@c man begin AUDIO SINKS + +Below is a description of the currently available audio sinks. + +@section anullsink + +Null audio sink, do absolutely nothing with the input audio. It is +mainly useful as a template and to be employed in analysis / debugging +tools. + +@c man end AUDIO SINKS + @chapter Video Filters @c man begin VIDEO FILTERS diff --git a/libavfilter/Makefile b/libavfilter/Makefile index 29fbb62fe0..39c4b3b47b 100644 --- a/libavfilter/Makefile +++ b/libavfilter/Makefile @@ -18,6 +18,8 @@ OBJS-$(CONFIG_ANULL_FILTER) += af_anull.o OBJS-$(CONFIG_ANULLSRC_FILTER) += asrc_anullsrc.o +OBJS-$(CONFIG_ANULLSINK_FILTER) += asink_anullsink.o + OBJS-$(CONFIG_ASPECT_FILTER) += vf_aspect.o OBJS-$(CONFIG_CROP_FILTER) += vf_crop.o OBJS-$(CONFIG_FIFO_FILTER) += vf_fifo.o diff --git a/libavfilter/allfilters.c b/libavfilter/allfilters.c index a29a2740e3..ac54bd0cb4 100644 --- a/libavfilter/allfilters.c +++ b/libavfilter/allfilters.c @@ -38,6 +38,8 @@ void avfilter_register_all(void) REGISTER_FILTER (ANULLSRC, anullsrc, asrc); + REGISTER_FILTER (ANULLSINK, anullsink, asink); + REGISTER_FILTER (ASPECT, aspect, vf); REGISTER_FILTER (CROP, crop, vf); REGISTER_FILTER (FIFO, fifo, vf); diff --git a/libavfilter/asink_anullsink.c b/libavfilter/asink_anullsink.c new file mode 100644 index 0000000000..5a89c2792e --- /dev/null +++ b/libavfilter/asink_anullsink.c @@ -0,0 +1,38 @@ +/* + * 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 + */ + +#include "avfilter.h" + +static void null_filter_samples(AVFilterLink *link, AVFilterBufferRef *samplesref) { } + +AVFilter avfilter_asink_anullsink = { + .name = "anullsink", + .description = NULL_IF_CONFIG_SMALL("Do absolutely nothing with the input audio."), + + .priv_size = 0, + + .inputs = (AVFilterPad[]) { + { + .name = "default", + .type = AVMEDIA_TYPE_AUDIO, + .filter_samples = null_filter_samples, + }, + { .name = NULL}, + }, + .outputs = (AVFilterPad[]) {{ .name = NULL }}, +}; diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index f4fb3e6365..b4e9f7745f 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -25,7 +25,7 @@ #include "libavutil/avutil.h" #define LIBAVFILTER_VERSION_MAJOR 1 -#define LIBAVFILTER_VERSION_MINOR 43 +#define LIBAVFILTER_VERSION_MINOR 44 #define LIBAVFILTER_VERSION_MICRO 0 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \