Commit graph

8 commits

Author SHA1 Message Date
Tim-Philipp Müller
882151502d fft: GST_EXPORT -> GST_FFT_API
We need different export decorators for the different libs.
For now no actual change though, just rename before the release,
and add prelude headers to define the new decorator to GST_EXPORT.
2018-03-13 12:10:29 +00:00
Tim-Philipp Müller
fda887179e fft: mark symbols explicitly for export with GST_EXPORT 2017-05-16 15:22:30 +01:00
Sebastian Dröge
3f82e919dd libs: Use foo/foo.h as single-include header consistently everywhere
https://bugzilla.gnome.org/show_bug.cgi?id=688785
2012-12-12 17:13:10 +00:00
Evan Nemerson
4d77fba46c libs: Add missing single include headers and use them in GIRs 2012-11-21 11:01:24 +01:00
Tim-Philipp Müller
5f59b4f7ee Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 23:05:09 +00:00
Philippe Normand
0a841f6712 fft: Bracket public headers
This is especially needed if the gstfftw library is used from C++
code.

Fixes #665074
2011-11-28 20:28:19 +01:00
Sebastian Dröge
445311bff4 fft: Mark one function as const and add notes that the structs should be private in 0.11 2009-09-11 07:22:15 +02:00
Sebastian Dröge
9022ca9d1b Add libgstfft, a FFT library based on Kiss FFT which is
Original commit message from CVS:
Reviewed by:  Stefan Kost  <ensonic@users.sf.net>
* configure.ac:
* gst-libs/gst/Makefile.am:
* gst-libs/gst/fft/Makefile.am:
* gst-libs/gst/fft/_kiss_fft_guts_f32.h:
* gst-libs/gst/fft/_kiss_fft_guts_f64.h:
* gst-libs/gst/fft/_kiss_fft_guts_s16.h:
* gst-libs/gst/fft/_kiss_fft_guts_s32.h:
* gst-libs/gst/fft/gstfft.c: (gst_fft_next_fast_length):
* gst-libs/gst/fft/gstfft.h:
* gst-libs/gst/fft/gstfftf32.c: (gst_fft_f32_new),
(gst_fft_f32_fft), (gst_fft_f32_inverse_fft), (gst_fft_f32_free),
(gst_fft_f32_window), (gst_fft_f32_magnitude), (gst_fft_f32_phase):
* gst-libs/gst/fft/gstfftf32.h:
* gst-libs/gst/fft/gstfftf64.c: (gst_fft_f64_new),
(gst_fft_f64_fft), (gst_fft_f64_inverse_fft), (gst_fft_f64_free),
(gst_fft_f64_window), (gst_fft_f64_magnitude), (gst_fft_f64_phase):
* gst-libs/gst/fft/gstfftf64.h:
* gst-libs/gst/fft/gstffts16.c: (gst_fft_s16_new),
(gst_fft_s16_fft), (gst_fft_s16_inverse_fft), (gst_fft_s16_free),
(gst_fft_s16_window), (gst_fft_s16_magnitude), (gst_fft_s16_phase):
* gst-libs/gst/fft/gstffts16.h:
* gst-libs/gst/fft/gstffts32.c: (gst_fft_s32_new),
(gst_fft_s32_fft), (gst_fft_s32_inverse_fft), (gst_fft_s32_free),
(gst_fft_s32_window), (gst_fft_s32_magnitude), (gst_fft_s32_phase):
* gst-libs/gst/fft/gstffts32.h:
* gst-libs/gst/fft/kiss_fft_f32.c: (kf_bfly2), (kf_bfly4),
(kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor),
(kiss_fft_f32_alloc), (kiss_fft_f32_stride), (kiss_fft_f32),
(kiss_fft_f32_cleanup), (kiss_fft_f32_next_fast_size):
* gst-libs/gst/fft/kiss_fft_f32.h:
* gst-libs/gst/fft/kiss_fft_f64.c: (kf_bfly2), (kf_bfly4),
(kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor),
(kiss_fft_f64_alloc), (kiss_fft_f64_stride), (kiss_fft_f64),
(kiss_fft_f64_cleanup), (kiss_fft_f64_next_fast_size):
* gst-libs/gst/fft/kiss_fft_f64.h:
* gst-libs/gst/fft/kiss_fft_s16.c: (kf_bfly2), (kf_bfly4),
(kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor),
(kiss_fft_s16_alloc), (kiss_fft_s16_stride), (kiss_fft_s16),
(kiss_fft_s16_cleanup), (kiss_fft_s16_next_fast_size):
* gst-libs/gst/fft/kiss_fft_s16.h:
* gst-libs/gst/fft/kiss_fft_s32.c: (kf_bfly2), (kf_bfly4),
(kf_bfly3), (kf_bfly5), (kf_bfly_generic), (kf_work), (kf_factor),
(kiss_fft_s32_alloc), (kiss_fft_s32_stride), (kiss_fft_s32),
(kiss_fft_s32_cleanup), (kiss_fft_s32_next_fast_size):
* gst-libs/gst/fft/kiss_fft_s32.h:
* gst-libs/gst/fft/kiss_fftr_f32.c: (kiss_fftr_f32_alloc),
(kiss_fftr_f32), (kiss_fftri_f32):
* gst-libs/gst/fft/kiss_fftr_f32.h:
* gst-libs/gst/fft/kiss_fftr_f64.c: (kiss_fftr_f64_alloc),
(kiss_fftr_f64), (kiss_fftri_f64):
* gst-libs/gst/fft/kiss_fftr_f64.h:
* gst-libs/gst/fft/kiss_fftr_s16.c: (kiss_fftr_s16_alloc),
(kiss_fftr_s16), (kiss_fftri_s16):
* gst-libs/gst/fft/kiss_fftr_s16.h:
* gst-libs/gst/fft/kiss_fftr_s32.c: (kiss_fftr_s32_alloc),
(kiss_fftr_s32), (kiss_fftri_s32):
* gst-libs/gst/fft/kiss_fftr_s32.h:
* gst-libs/gst/fft/kiss_version:
* pkgconfig/gstreamer-plugins-base-uninstalled.pc.in:
* pkgconfig/gstreamer-plugins-base.pc.in:
Add libgstfft, a FFT library based on Kiss FFT which is
BSD licensed. Supported sample formats are int16, int32,
float and double. For those formats a real FFT and IFFT
can be done, different windowing functions can be applied
and functions for extracting the magnitude and phase exist.
Fixes #468619.
* docs/libs/Makefile.am:
* docs/libs/gst-plugins-base-libs-docs.sgml:
* docs/libs/gst-plugins-base-libs-sections.txt:
Integrate libgstfft into the docs.
* tests/check/Makefile.am:
* tests/check/libs/fft.c: (GST_START_TEST), (fft_suite), (main):
Add unit tests for libgstfft, currently only testing the FFT.
Unit tests for IFFT will follow soon.
2007-09-06 07:00:36 +00:00