From 4f9bfe73fd500af05e4b25a0eda0a5fad4a3068c Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Thu, 28 Oct 2004 02:33:47 +0000 Subject: [PATCH] gst-libs/gst/audio/gstaudiofilter.c: fix link function to always query channels and query width for floats Original commit message from CVS: * gst-libs/gst/audio/gstaudiofilter.c: (gst_audiofilter_link): fix link function to always query channels and query width for floats * configure.ac: add equalizer dir * gst/equalizer/Makefile.am: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_get_type), (gst_iir_equalizer_base_init), (gst_iir_equalizer_class_init), (gst_iir_equalizer_init), (gst_iir_equalizer_finalize), (arg_to_scale), (setup_filter), (gst_iir_equalizer_compute_frequencies), (gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property), (gst_iir_equalizer_filter_inplace), (gst_iir_equalizer_setup), (plugin_init): add an equalizer --- ChangeLog | 18 ++++++++++++++++++ configure.ac | 2 ++ gst-libs/gst/audio/gstaudiofilter.c | 8 +++++--- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 58ab3130e6..64f145b721 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,21 @@ +2004-10-28 Benjamin Otte + + * gst-libs/gst/audio/gstaudiofilter.c: (gst_audiofilter_link): + fix link function to always query channels and query width for + floats + * configure.ac: + add equalizer dir + * gst/equalizer/Makefile.am: + * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_get_type), + (gst_iir_equalizer_base_init), (gst_iir_equalizer_class_init), + (gst_iir_equalizer_init), (gst_iir_equalizer_finalize), + (arg_to_scale), (setup_filter), + (gst_iir_equalizer_compute_frequencies), + (gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property), + (gst_iir_equalizer_filter_inplace), (gst_iir_equalizer_setup), + (plugin_init): + add an equalizer + 2004-10-27 Thomas Vander Stichele Submitted by: Kjartan Maraas diff --git a/configure.ac b/configure.ac index f5bf7eb317..11b17ff0d5 100644 --- a/configure.ac +++ b/configure.ac @@ -342,6 +342,7 @@ GST_PLUGINS_ALL="\ debug \ deinterlace \ effectv \ + equalizer \ festival \ ffmpegcolorspace \ filter \ @@ -1832,6 +1833,7 @@ gst/cutter/Makefile gst/debug/Makefile gst/deinterlace/Makefile gst/effectv/Makefile +gst/equalizer/Makefile gst/festival/Makefile gst/ffmpegcolorspace/Makefile gst/filter/Makefile diff --git a/gst-libs/gst/audio/gstaudiofilter.c b/gst-libs/gst/audio/gstaudiofilter.c index 0666862ce2..da0064d3df 100644 --- a/gst-libs/gst/audio/gstaudiofilter.c +++ b/gst-libs/gst/audio/gstaudiofilter.c @@ -141,15 +141,17 @@ gst_audiofilter_link (GstPad * pad, const GstCaps * caps) if (strcmp (gst_structure_get_name (structure), "audio/x-raw-int") == 0) { ret = gst_structure_get_int (structure, "depth", &audiofilter->depth); ret &= gst_structure_get_int (structure, "width", &audiofilter->width); - ret &= - gst_structure_get_int (structure, "channels", &audiofilter->channels); } else if (strcmp (gst_structure_get_name (structure), "audio/x-raw-float") == 0) { - + ret &= gst_structure_get_int (structure, "width", &audiofilter->width); } else { g_assert_not_reached (); } ret &= gst_structure_get_int (structure, "rate", &audiofilter->rate); + ret &= gst_structure_get_int (structure, "channels", &audiofilter->channels); + + if (!ret) + return GST_PAD_LINK_REFUSED; audiofilter->bytes_per_sample = (audiofilter->width / 8) * audiofilter->channels;