summaryrefslogtreecommitdiffstats
path: root/gst/audiofx/audiocheblimit.c
Commit message (Collapse)AuthorAgeFilesLines
* audiofx: Remove unused variable.Edward Hervey2009-04-181-4/+2
| | | | rz is never used in these methods.
* Update and add documentation for plugins with no deps (gst).Stefan Kost2009-01-281-17/+10
| | | | Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered.
* gst/audiofx/: Use a custom mutex for protecting the instance fields instead ↵Sebastian Dröge2009-01-131-10/+25
| | | | | | | | | | | | | | | | | | | | | | | | | of the GstObject lock. Using the latter c... Original commit message from CVS: * gst/audiofx/audiochebband.c: (gst_audio_cheb_band_class_init), (gst_audio_cheb_band_init), (gst_audio_cheb_band_finalize), (gst_audio_cheb_band_set_property): * gst/audiofx/audiochebband.h: * gst/audiofx/audiocheblimit.c: (gst_audio_cheb_limit_class_init), (gst_audio_cheb_limit_init), (gst_audio_cheb_limit_finalize), (gst_audio_cheb_limit_set_property): * gst/audiofx/audiocheblimit.h: * gst/audiofx/audiowsincband.c: (gst_audio_wsincband_class_init), (gst_audio_wsincband_init), (gst_audio_wsincband_finalize), (gst_audio_wsincband_set_property): * gst/audiofx/audiowsincband.h: * gst/audiofx/audiowsinclimit.c: (gst_audio_wsinclimit_class_init), (gst_audio_wsinclimit_init), (gst_audio_wsinclimit_finalize), (gst_audio_wsinclimit_set_property): * gst/audiofx/audiowsinclimit.h: Use a custom mutex for protecting the instance fields instead of the GstObject lock. Using the latter can lead to deadlocks, especially with the FIR filters when updating the latency.
* gst/audiofx/: Implement a base class for IIR filters.Sebastian Dröge2009-01-051-323/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/audiofx/Makefile.am: * gst/audiofx/audiofxbaseiirfilter.c: (gst_audio_fx_base_iir_filter_base_init), (gst_audio_fx_base_iir_filter_dispose), (gst_audio_fx_base_iir_filter_class_init), (gst_audio_fx_base_iir_filter_init), (gst_audio_fx_base_iir_filter_calculate_gain), (gst_audio_fx_base_iir_filter_set_coefficients), (gst_audio_fx_base_iir_filter_setup), (process), (gst_audio_fx_base_iir_filter_transform_ip), (gst_audio_fx_base_iir_filter_stop): * gst/audiofx/audiofxbaseiirfilter.h: Implement a base class for IIR filters. * gst/audiofx/audiochebband.c: (gst_audio_cheb_band_base_init), (gst_audio_cheb_band_class_init), (gst_audio_cheb_band_init), (generate_coefficients), (gst_audio_cheb_band_set_property), (gst_audio_cheb_band_setup): * gst/audiofx/audiochebband.h: * gst/audiofx/audiocheblimit.c: (gst_audio_cheb_limit_base_init), (gst_audio_cheb_limit_class_init), (gst_audio_cheb_limit_init), (generate_coefficients), (gst_audio_cheb_limit_set_property), (gst_audio_cheb_limit_setup): * gst/audiofx/audiocheblimit.h: Use the IIR filter base class for the chebyshev filters.
* Make stuff compile with GST_DISABLE_GST_DEBUG.Tim-Philipp Müller2008-08-301-0/+4
| | | | | | | | | | | | | Original commit message from CVS: * ext/raw1394/gsthdv1394src.c: (gst_hdv1394src_create): * gst/alpha/gstalpha.c: (gst_alpha_get_unit_size): * gst/audiofx/audiocheblimit.c: (generate_coefficients): * gst/avi/gstavidemux.c: (gst_avi_demux_src_convert): * gst/matroska/ebml-read.c: (gst_ebml_read_element_id), (gst_ebml_read_element_length): * gst/matroska/matroska-demux.c: (gst_matroska_demux_check_subtitle_buffer): Make stuff compile with GST_DISABLE_GST_DEBUG.
* Check for sinh(), cosh() and asinh() and define our own implementations if ↵Sebastian Dröge2008-03-071-0/+2
| | | | | | | | | | | | | they're not available. Fixes bug #520880. Original commit message from CVS: * configure.ac: * gst/audiofx/Makefile.am: * gst/audiofx/audiochebband.c: * gst/audiofx/audiocheblimit.c: * gst/audiofx/math_compat.h: Check for sinh(), cosh() and asinh() and define our own implementations if they're not available. Fixes bug #520880.
* gst/audiofx/: Fix long description of audiofx elements. Fixes bug #515457.Sebastian Dröge2008-02-101-1/+1
| | | | | | | | | | | | | Original commit message from CVS: * gst/audiofx/audioamplify.c: * gst/audiofx/audiochebband.c: * gst/audiofx/audiocheblimit.c: * gst/audiofx/audiodynamic.c: * gst/audiofx/audioinvert.c: * gst/audiofx/audiopanorama.c: * gst/audiofx/audiowsincband.c: * gst/audiofx/audiowsinclimit.c: Fix long description of audiofx elements. Fixes bug #515457.
* Rename audiochebyshevfreqband -> audiochebband and audiochebyshevfreqlimit ↵Jan Schmidt2008-02-061-63/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -> audiocheblimit and do the requisite CVS... Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/inspect/plugin-audiofx.xml: * gst/audiofx/Makefile.am: * gst/audiofx/audiochebband.c: * gst/audiofx/audiochebband.h: * gst/audiofx/audiocheblimit.c: * gst/audiofx/audiocheblimit.h: * gst/audiofx/audiochebyshevfreqband.c: * gst/audiofx/audiochebyshevfreqband.h: * gst/audiofx/audiochebyshevfreqlimit.c: * gst/audiofx/audiochebyshevfreqlimit.h: * gst/audiofx/audiofx.c: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/audiochebband.c: * tests/check/elements/audiocheblimit.c: * tests/check/elements/audiochebyshevfreqband.c: * tests/check/elements/audiochebyshevfreqlimit.c: Rename audiochebyshevfreqband -> audiochebband and audiochebyshevfreqlimit -> audiocheblimit and do the requisite CVS surgery. Closes: #491811
* Make elements GST_BUFFER_FLAG_GAP aware and call ↵Sebastian Dröge2008-01-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | gst_base_transform_set_gap_aware for this. Original commit message from CVS: * configure.ac: * gst/audiofx/audioamplify.c: (gst_audio_amplify_clipping_method_get_type), (gst_audio_amplify_init), (gst_audio_amplify_transform_ip): * gst/audiofx/audiodynamic.c: (gst_audio_dynamic_init), (gst_audio_dynamic_transform_ip): * gst/audiofx/audioinvert.c: (gst_audio_invert_init), (gst_audio_invert_transform_ip): * gst/audiofx/audiopanorama.c: (gst_audio_panorama_init), (gst_audio_panorama_transform): * gst/level/gstlevel.c: (gst_level_init): Make elements GST_BUFFER_FLAG_GAP aware and call gst_base_transform_set_gap_aware for this. Bump core requirement to CVS. * gst/audiofx/audiochebyshevfreqband.c: (gst_audio_chebyshev_freq_band_transform_ip): * gst/audiofx/audiochebyshevfreqlimit.c: (gst_audio_chebyshev_freq_limit_transform_ip): Also sync GObject properties to the controller if operating in passthrough mode.
* gst/audiofx/: The transform_ip() methods should do nothing if in passthrough ↵Sebastian Dröge2007-12-061-1/+1
| | | | | | | | | | | | | | | | | | | mode. Original commit message from CVS: * gst/audiofx/audioamplify.c: (gst_audio_amplify_transform_ip): * gst/audiofx/audiochebyshevfreqband.c: (gst_audio_chebyshev_freq_band_transform_ip): * gst/audiofx/audiochebyshevfreqlimit.c: (gst_audio_chebyshev_freq_limit_transform_ip): * gst/audiofx/audiodynamic.c: (gst_audio_dynamic_transform_ip): * gst/audiofx/audioinvert.c: (gst_audio_invert_transform_ip): The transform_ip() methods should do nothing if in passthrough mode. It might get non-writable buffers in that case but the buffer might as well be writable. * gst/audiofx/audiopanorama.c: (gst_audio_panorama_transform): The transform() methods won't be called in passthrough mode and otherwise the buffer is always writable so don't check here.
* gst/audiofx/: Add small comparision with the windowed sinc filters in the docs.Sebastian Dröge2007-08-191-0/+5
| | | | | | | Original commit message from CVS: * gst/audiofx/audiochebyshevfreqband.c: * gst/audiofx/audiochebyshevfreqlimit.c: Add small comparision with the windowed sinc filters in the docs.
* gst/audiofx/: Use generator macros for the process functions for the ↵Sebastian Dröge2007-08-171-28/+30
| | | | | | | | | | | | | | | | | different sample types, add lower upper boundari... Original commit message from CVS: * gst/audiofx/audiochebyshevfreqband.c: (gst_audio_chebyshev_freq_band_class_init): * gst/audiofx/audiochebyshevfreqlimit.c: (gst_audio_chebyshev_freq_limit_class_init): Use generator macros for the process functions for the different sample types, add lower upper boundaries for the GObject properties so automatically generated UIs can use sliders and add a note about the number of poles as a too high number of poles combined with very low or very high frequencies will produce only noise. * docs/plugins/gst-plugins-good-plugins.args: Regenerated for the property changes.
* gst/audiofx/: Add Chebyshev lowpass/highpass and bandpass/bandreject elements.Sebastian Dröge2007-08-161-0/+816
Original commit message from CVS: reviewed by: Stefan Kost <ensonic@users.sf.net> * gst/audiofx/Makefile.am: * gst/audiofx/audiochebyshevfreqband.c: (gst_audio_chebyshev_freq_band_mode_get_type), (gst_audio_chebyshev_freq_band_base_init), (gst_audio_chebyshev_freq_band_dispose), (gst_audio_chebyshev_freq_band_class_init), (gst_audio_chebyshev_freq_band_init), (generate_biquad_coefficients), (calculate_gain), (generate_coefficients), (gst_audio_chebyshev_freq_band_set_property), (gst_audio_chebyshev_freq_band_get_property), (gst_audio_chebyshev_freq_band_setup), (process), (process_64), (process_32), (gst_audio_chebyshev_freq_band_transform_ip), (gst_audio_chebyshev_freq_band_start): * gst/audiofx/audiochebyshevfreqband.h: * gst/audiofx/audiochebyshevfreqlimit.c: (gst_audio_chebyshev_freq_limit_mode_get_type), (gst_audio_chebyshev_freq_limit_base_init), (gst_audio_chebyshev_freq_limit_dispose), (gst_audio_chebyshev_freq_limit_class_init), (gst_audio_chebyshev_freq_limit_init), (generate_biquad_coefficients), (calculate_gain), (generate_coefficients), (gst_audio_chebyshev_freq_limit_set_property), (gst_audio_chebyshev_freq_limit_get_property), (gst_audio_chebyshev_freq_limit_setup), (process), (process_64), (process_32), (gst_audio_chebyshev_freq_limit_transform_ip), (gst_audio_chebyshev_freq_limit_start): * gst/audiofx/audiochebyshevfreqlimit.h: * gst/audiofx/audiofx.c: (plugin_init): Add Chebyshev lowpass/highpass and bandpass/bandreject elements. Fixes #464800. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/audiochebyshevfreqband.c: (setup_audiochebyshevfreqband), (cleanup_audiochebyshevfreqband), (GST_START_TEST), (audiochebyshevfreqband_suite), (main): * tests/check/elements/audiochebyshevfreqlimit.c: (setup_audiochebyshevfreqlimit), (cleanup_audiochebyshevfreqlimit), (GST_START_TEST), (audiochebyshevfreqlimit_suite), (main): Add unit tests for the chebyshev filters. * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-good-plugins-docs.sgml: * docs/plugins/gst-plugins-good-plugins-sections.txt: * docs/plugins/gst-plugins-good-plugins.args: * docs/plugins/inspect/plugin-1394.xml: * docs/plugins/inspect/plugin-audiofx.xml: * docs/plugins/inspect/plugin-dv.xml: * docs/plugins/inspect/plugin-flac.xml: * docs/plugins/inspect/plugin-jpeg.xml: * docs/plugins/inspect/plugin-png.xml: * docs/plugins/inspect/plugin-rtp.xml: * docs/plugins/inspect/plugin-shout2send.xml: * docs/plugins/inspect/plugin-wavpack.xml: And add docs for the chebyshev filters. While doing that also run make update in docs/plugins.