summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2007-08-24gst/flv/gstflvdemux.c: Implement seeking in push mode.Julien Moutte3-34/+175
Original commit message from CVS: 2007-08-24 Julien MOUTTE <julien@moutte.net> * gst/flv/gstflvdemux.c: (gst_flv_demux_flush), (gst_flv_demux_cleanup), (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push), (gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event), (gst_flv_demux_src_event): Implement seeking in push mode. * gst/flv/gstflvdemux.h:
2007-08-24gst/mpegtsparse/: Update licences to reflect LGPL-ness of these files also.Zaheer Abbas Merali5-0/+51
Original commit message from CVS: * gst/mpegtsparse/flutspatinfo.c: * gst/mpegtsparse/flutspatinfo.h: * gst/mpegtsparse/flutspmtinfo.c: * gst/mpegtsparse/flutspmtinfo.h: Update licences to reflect LGPL-ness of these files also.
2007-08-23Rename all GstRTPFoo structs to GstRtpFoo so that GST_BOILERPLATE registers ↵Tim-Philipp Müller17-399/+431
a GType that's different than the GstRTPF... Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpclient.h: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpptdemux.h: * gst/rtpmanager/gstrtpsession.c: * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/rtpmanager/gstrtpssrcdemux.h: Rename all GstRTPFoo structs to GstRtpFoo so that GST_BOILERPLATE registers a GType that's different than the GstRTPFoo types that farsight registers (luckily GType names are case sensitive). Should finally fix #430664.
2007-08-23Automatically generate win32/common/config.h via configure (this ensures the ↵Tim-Philipp Müller4-92/+86
win32 version of config.h is up-to-date ... Original commit message from CVS: * configure.ac: * win32/common/config.h: * win32/common/config.h.in: Automatically generate win32/common/config.h via configure (this ensures the win32 version of config.h is up-to-date when a release is made, #433373). config.h.in file might need some more work.
2007-08-23Port festival plugin to GStreamer-0.10 (#461377).Jonathan Matthew4-61/+131
Original commit message from CVS: Patch by: Jonathan Matthew <jonathan at kaolin wh9 net> * configure.ac: * gst/festival/Makefile.am: * gst/festival/gstfestival.c: Port festival plugin to GStreamer-0.10 (#461377).
2007-08-22ext/faad/gstfaad.c: Don't unref the buffer when it was clipped.Wim Taymans2-2/+6
Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_chain): Don't unref the buffer when it was clipped.
2007-08-22gst/flv/: Handle pixel aspect ratio through metadata tags like ASF does. ↵Julien Moutte4-1/+39
Fluendo muxer supports this and Original commit message from CVS: 2007-08-22 Julien MOUTTE <julien@moutte.net> * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_pull_tag): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Handle pixel aspect ratio through metadata tags like ASF does. Fluendo muxer supports this and Flash players can support it as well this way.
2007-08-22gst/flv/: Make sure we don't try filling up the index if no times object was ↵Julien Moutte3-23/+49
parsed. Fix the way we decide to push ta... Original commit message from CVS: 2007-08-22 Julien MOUTTE <julien@moutte.net> * gst/flv/gstflvdemux.c: (gst_flv_demux_pull_tag): * gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Make sure we don't try filling up the index if no times object was parsed. Fix the way we decide to push tags and emit no-more-pads. Fix some printf typing in debugging.
2007-08-21gst/rtpmanager/gstrtpjitterbuffer.c: When drop-on-latency is set but we have ↵Wim Taymans2-4/+15
no latency configured, just push the buf... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_set_property): When drop-on-latency is set but we have no latency configured, just push the buffer as fast as possible. Fix typo in comment.
2007-08-21gst/rtpmanager/rtpjitterbuffer.*: Fix undefined overflow prone ts_diff handling.Wim Taymans3-5/+12
Original commit message from CVS: * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_get_ts_diff): * gst/rtpmanager/rtpjitterbuffer.h: Fix undefined overflow prone ts_diff handling.
2007-08-21gst/modplug/gstmodplug.cc: Fix compiler warning.Wim Taymans3-1/+6
Original commit message from CVS: * gst/modplug/gstmodplug.cc: Fix compiler warning.
2007-08-21gst/modplug/gstmodplug.cc: Don't use NULL caps for srcpad is not yet connected.Stefan Kost2-24/+34
Original commit message from CVS: * gst/modplug/gstmodplug.cc: Don't use NULL caps for srcpad is not yet connected.
2007-08-20Add mpeg transport stream parser written by:Zaheer Abbas Merali15-0/+2490
Original commit message from CVS: * configure.ac: * gst/mpegtsparse/Makefile.am: * gst/mpegtsparse/flutspatinfo.c: * gst/mpegtsparse/flutspatinfo.h: * gst/mpegtsparse/flutspmtinfo.c: * gst/mpegtsparse/flutspmtinfo.h: * gst/mpegtsparse/flutspmtstreaminfo.c: * gst/mpegtsparse/flutspmtstreaminfo.h: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtspacketizer.h: * gst/mpegtsparse/mpegtsparse.c: * gst/mpegtsparse/mpegtsparse.h: * gst/mpegtsparse/mpegtsparsemarshal.list: Add mpeg transport stream parser written by: Alessandro Decina. Includes a couple of files from the Fluendo transport stream demuxer that Fluendo have kindly allowed to be licenced under LGPL also.
2007-08-20ext/mythtv/gstmythtvsrc.c: Add examples for live mythtv:// URIs to docs ↵Bastien Nocera2-14/+25
(#468039). Original commit message from CVS: Patch by: Bastien Nocera <hadess at hadess net> * ext/mythtv/gstmythtvsrc.c: Add examples for live mythtv:// URIs to docs (#468039). Also convert some tabs into spaces.
2007-08-19gst/filter/: Add small comparision with the chebyshev filters in the docs.Sebastian Dröge3-2/+16
Original commit message from CVS: * gst/filter/gstbpwsinc.c: * gst/filter/gstlpwsinc.c: Add small comparision with the chebyshev filters in the docs.
2007-08-19tests/check/elements/: Also test everything in 32 bit float mode.Sebastian Dröge3-42/+793
Original commit message from CVS: * tests/check/elements/bpwsinc.c: (GST_START_TEST), (bpwsinc_suite): * tests/check/elements/lpwsinc.c: (GST_START_TEST), (lpwsinc_suite): Also test everything in 32 bit float mode.
2007-08-17Use generator macros for the process functions for the different sample ↵Sebastian Dröge9-190/+255
types, add lower upper boundaries for the GOb... Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init), (bpwsinc_set_property), (bpwsinc_get_property): * gst/filter/gstbpwsinc.h: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init), (gst_lpwsinc_init), (lpwsinc_build_kernel), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: * tests/check/elements/lpwsinc.c: (GST_START_TEST): 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 change frequency properties to floats to save a bit of memory, even ints would in theory be enough. Also rename frequency to cutoff for consistency reasons. * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-gstrtpmanager.xml: Regenerated for the above changes.
2007-08-17ext/amrwb/gstamrwbparse.c: Don't leak the adapter.Stefan Kost2-0/+24
Original commit message from CVS: * ext/amrwb/gstamrwbparse.c: Don't leak the adapter.
2007-08-16gst/filter/gstbpwsinc.*: Implement latency query and only forward those ↵Sebastian Dröge5-76/+411
samples downstream that actually contain the ... Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init), (gst_bpwsinc_init), (process_32), (process_64), (bpwsinc_build_kernel), (bpwsinc_push_residue), (bpwsinc_transform), (bpwsinc_start), (bpwsinc_query), (bpwsinc_query_type), (bpwsinc_event), (bpwsinc_set_property): * gst/filter/gstbpwsinc.h: Implement latency query and only forward those samples downstream that actually contain the data we want, i.e. drop kernel_length/2 in the beginning and append kernel_length/2 (created by convolving the filter kernel with zeroes) to the end. * tests/check/elements/bpwsinc.c: (GST_START_TEST): Adjust the unit test for this slightly changed behaviour. * gst/filter/gstlpwsinc.c: (lpwsinc_build_kernel): Reset residue length only when actually creating a residue.
2007-08-16gst-libs/gst/app/gstappsink.c: Override the preroll vmethod instead of ↵Wim Taymans2-1/+7
overriding the render method twice. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init): Override the preroll vmethod instead of overriding the render method twice.
2007-08-16gst/rtpmanager/gstrtpjitterbuffer.c: Fix EOS handling.Wim Taymans4-14/+66
Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Fix EOS handling. Convert some DEBUG into WARNINGs. Pause task when flushing. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (rtcp_thread), (gst_rtp_session_event_recv_rtcp_sink): Use system clock for RTCP session management timeouts. * gst/rtpmanager/rtpsession.c: (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout): Release the session lock when emiting signals.
2007-08-16ext/faad/gstfaad.c: Add some debug info.Wim Taymans2-1/+11
Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_setcaps), (gst_faad_chanpos_to_gst): Add some debug info.
2007-08-16gst/filter/gstlpwsinc.*: Implement latency query and only forward those ↵Sebastian Dröge4-54/+372
samples downstream that actually contain the ... Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init), (gst_lpwsinc_init), (process_32), (process_64), (lpwsinc_build_kernel), (lpwsinc_push_residue), (lpwsinc_transform), (lpwsinc_start), (lpwsinc_query), (lpwsinc_query_type), (lpwsinc_event), (lpwsinc_set_property): * gst/filter/gstlpwsinc.h: Implement latency query and only forward those samples downstream that actually contain the data we want, i.e. drop kernel_length/2 in the beginning and append kernel_length/2 (created by convolving the filter kernel with zeroes) to the end. * tests/check/elements/lpwsinc.c: (GST_START_TEST): Adjust the unit test for this slightly changed behaviour.
2007-08-16ext/ladspa/gstladspa.c: Don't leak like hell.Stefan Kost2-5/+18
Original commit message from CVS: * ext/ladspa/gstladspa.c: Don't leak like hell.
2007-08-16tests/check/: Add generic state-change test suite to help to fi leaks.Stefan Kost4-0/+130
Original commit message from CVS: * tests/check/Makefile.am: * tests/check/generic/.cvsignore: * tests/check/generic/states.c: Add generic state-change test suite to help to fi leaks.
2007-08-15ChangeLog surgeryStefan Kost1-3/+2
Original commit message from CVS: ChangeLog surgery
2007-08-15ext/timidity/gstwildmidi.*: Stefan Kost3-1/+27
Original commit message from CVS: reviewed by: <delete if not using a buddy> patch by: <delete if not someone else's patch> * ext/timidity/gstwildmidi.c: * ext/timidity/gstwildmidi.h:
2007-08-14gst-libs/gst/app/gstappsink.c: Don't use new API.Wim Taymans2-2/+9
Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_flush_unlocked): Don't use new API.
2007-08-14gst-libs/gst/app/gstappsink.*: Make love to appsink.Wim Taymans3-18/+247
Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_base_init), (gst_app_sink_class_init), (gst_app_sink_dispose), (gst_app_sink_flush_unlocked), (gst_app_sink_start), (gst_app_sink_stop), (gst_app_sink_event), (gst_app_sink_preroll), (gst_app_sink_render), (gst_app_sink_get_caps), (gst_app_sink_set_caps), (gst_app_sink_end_of_stream), (gst_app_sink_pull_preroll), (gst_app_sink_pull_buffer): * gst-libs/gst/app/gstappsink.h: Make love to appsink. Make it support pulling of the preroll buffer. Add docs and debug statements. Fix some races wrt to EOS handling and stopping. Implement getcaps. Implement FLUSHING. API: gst_app_sink_pull_preroll()
2007-08-14gst/flv/gstflvdemux.c: Fix locking and refcounting on the index.Wim Taymans2-1/+18
Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_set_index), (gst_flv_demux_get_index): Fix locking and refcounting on the index.
2007-08-14gst/flv/gstflvdemux.c: First method for seeking in pull mode using the index ↵Julien Moutte4-68/+510
built step by step or coming from metadata. Original commit message from CVS: 2007-08-14 Julien MOUTTE <julien@moutte.net> * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_adapter_flush), (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_do_seek), (gst_flv_demux_handle_seek), (gst_flv_demux_sink_event), (gst_flv_demux_src_event), (gst_flv_demux_query), (gst_flv_demux_change_state), (gst_flv_demux_set_index), (gst_flv_demux_get_index), (gst_flv_demux_dispose), (gst_flv_demux_class_init): First method for seeking in pull mode using the index built step by step or coming from metadata. * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (FLV_GET_STRING), (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Parse more metadata types and keyframes index.
2007-08-13Add docs for lpwsinc and bpwsinc and integrate them into the build system. ↵Sebastian Dröge34-268/+678
While doing that also update all other doc... Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst/filter/gstbpwsinc.c: * gst/filter/gstbpwsinc.h: * gst/filter/gstlpwsinc.c: * gst/filter/gstlpwsinc.h: Add docs for lpwsinc and bpwsinc and integrate them into the build system. While doing that also update all other docs via make update in docs/plugins.
2007-08-13gst/rtpmanager/rtpjitterbuffer.c: Include stdlib.Stefan Kost2-0/+6
Original commit message from CVS: * gst/rtpmanager/rtpjitterbuffer.c: Include stdlib.
2007-08-12tests/check/elements/bpwsinc.c: Make one test constraint a bit stricter.Sebastian Dröge2-1/+6
Original commit message from CVS: * tests/check/elements/bpwsinc.c: (GST_START_TEST): Make one test constraint a bit stricter.
2007-08-12tests/check/: Add unit tests for bpwsinc, testing fundamental functionality ↵Sebastian Dröge4-0/+535
again. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/bpwsinc.c: (setup_bpwsinc), (cleanup_bpwsinc), (GST_START_TEST), (bpwsinc_suite), (main): Add unit tests for bpwsinc, testing fundamental functionality again.
2007-08-12tests/check/: Add unit tests for lpwsinc, testing fundamental functionality.Sebastian Dröge4-0/+398
Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/lpwsinc.c: (setup_lpwsinc), (cleanup_lpwsinc), (GST_START_TEST), (lpwsinc_suite), (main): Add unit tests for lpwsinc, testing fundamental functionality.
2007-08-12gst/filter/: Improve debugging a bit.Sebastian Dröge3-11/+21
Original commit message from CVS: * gst/filter/gstbpwsinc.c: (bpwsinc_build_kernel): * gst/filter/gstlpwsinc.c: (lpwsinc_build_kernel): Improve debugging a bit.
2007-08-12gst/filter/: Reset the residue in BaseTransform::start to get a clean ↵Sebastian Dröge3-2/+48
residue on stream changes. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init), (bpwsinc_start): * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init), (lpwsinc_start): Reset the residue in BaseTransform::start to get a clean residue on stream changes.
2007-08-11Changelog surgerySebastian Dröge1-1/+1
Original commit message from CVS: Changelog surgery
2007-08-11gst/filter/: Fix processing with buffer sizes that are larger than the ↵Sebastian Dröge3-8/+55
filter kernel size. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (process_32), (process_64): * gst/filter/gstlpwsinc.c: (process_32), (process_64): Fix processing with buffer sizes that are larger than the filter kernel size.
2007-08-10gst/rtpmanager/: Remove complicated async queue and replace with more simple ↵Wim Taymans13-965/+748
jitterbuffer code while also fixing some... Original commit message from CVS: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/async_jitter_queue.c: * gst/rtpmanager/async_jitter_queue.h: * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_class_init), (rtp_jitter_buffer_init), (rtp_jitter_buffer_finalize), (rtp_jitter_buffer_new), (compare_seqnum), (rtp_jitter_buffer_insert), (rtp_jitter_buffer_pop), (rtp_jitter_buffer_flush), (rtp_jitter_buffer_num_packets), (rtp_jitter_buffer_get_ts_diff): * gst/rtpmanager/rtpjitterbuffer.h: Remove complicated async queue and replace with more simple jitterbuffer code while also fixing some bugs. * gst/rtpmanager/gstrtpbin-marshal.list: * gst/rtpmanager/gstrtpbin.c: (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout), (create_session), (gst_rtp_bin_class_init), (create_recv_rtp), (create_send_rtp): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_dispose), (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_flush_start), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_set_property): * gst/rtpmanager/gstrtpsession.c: (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout), (gst_rtp_session_class_init), (gst_rtp_session_init): * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/rtpsession.c: (on_bye_ssrc), (session_cleanup): Use new jitterbuffer code. Expose some new signals in preparation for handling EOS.
2007-08-10gst/filter/gstbpwsinc.c: Fix a segfault with more than one channel and don't ↵Sebastian Dröge2-1/+10
rebuild the kernel & residue with every ... Original commit message from CVS: * gst/filter/gstbpwsinc.c: (bpwsinc_build_kernel): Fix a segfault with more than one channel and don't rebuild the kernel & residue with every buffer.
2007-08-10gst/filter/gstbpwsinc.*: Add support for a bandreject mode and allow ↵Sebastian Dröge4-16/+123
specifying the window function that should be used. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_mode_get_type), (gst_bpwsinc_window_get_type), (gst_bpwsinc_class_init), (gst_bpwsinc_init), (bpwsinc_build_kernel), (bpwsinc_set_property), (bpwsinc_get_property): * gst/filter/gstbpwsinc.h: Add support for a bandreject mode and allow specifying the window function that should be used. * gst/filter/gstlpwsinc.c: And another small formatting fix.
2007-08-10gst/filter/gstbpwsinc.*: Apply the same changes to the bandpass filter:Sebastian Dröge4-122/+249
Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init), (gst_bpwsinc_init), (process_32), (process_64), (bpwsinc_build_kernel), (bpwsinc_setup), (bpwsinc_get_unit_size), (bpwsinc_transform), (bpwsinc_set_property), (bpwsinc_get_property): * gst/filter/gstbpwsinc.h: Apply the same changes to the bandpass filter: - Support double input - Fix processing for input with >1 channels - Specify frequency in Hz - Specify actual filter kernel length - Use transform instead of transform_ip as we're working out of place anyway - Factor out filter kernel generation and update the filter kernel when the properties are set Fix bandpass filter kernel generation to actually generate a bandpass filter by creating a highpass instead of a second lowpass. * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init): Small formatting fix.
2007-08-10gst/filter/gstlpwsinc.*: Specify the actual filter length instead of a weird ↵Sebastian Dröge3-28/+40
2N+1. Setting the property will round to... Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init), (gst_lpwsinc_init), (process_32), (process_64), (lpwsinc_build_kernel), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: Specify the actual filter length instead of a weird 2N+1. Setting the property will round to the next odd number. Also remove now obsolete FIXMEs.
2007-08-10gst/filter/gstlpwsinc.*: Allow choosing between hamming and blackman window. ↵Sebastian Dröge3-3/+62
The blackman window provides a better st... Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_window_get_type), (gst_lpwsinc_class_init), (gst_lpwsinc_init), (lpwsinc_build_kernel), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: Allow choosing between hamming and blackman window. The blackman window provides a better stopband attenuation but a bit slower rolloff.
2007-08-10gst/filter/gstlpwsinc.*: Add a highpass mode.Sebastian Dröge3-10/+67
Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_mode_get_type), (gst_lpwsinc_class_init), (process_32), (process_64), (lpwsinc_build_kernel), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: Add a highpass mode.
2007-08-10gst/filter/gstlpwsinc.c: Fix processing if the input has more than one channel.Sebastian Dröge2-18/+42
Original commit message from CVS: * gst/filter/gstlpwsinc.c: (process_32), (process_64), (lpwsinc_build_kernel): Fix processing if the input has more than one channel.
2007-08-09gst/filter/gstbpwsinc.c: "this" is a C++ keyword, use "self" instead.Sebastian Dröge3-58/+74
Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_dispose), (gst_bpwsinc_init), (bpwsinc_setup), (bpwsinc_transform_ip), (bpwsinc_set_property), (bpwsinc_get_property): "this" is a C++ keyword, use "self" instead. Add TODOs and FIXMEs and remove two wrong FIXMEs. * gst/filter/gstlpwsinc.c: Add FIXMEs and a new TODO.
2007-08-09gst/filter/gstlpwsinc.*: Add double support, replace "this" with "self" as ↵Sebastian Dröge3-103/+190
the former is a C++ keyword. Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_dispose), (gst_lpwsinc_class_init), (gst_lpwsinc_init), (process_32), (process_64), (lpwsinc_build_kernel), (lpwsinc_setup), (lpwsinc_get_unit_size), (lpwsinc_transform), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: Add double support, replace "this" with "self" as the former is a C++ keyword. Implement the frequency property in Hz instead of fraction of sampling frequency. Remove some unecessary FIXMEs and add some TODOs, add some required locking and refactor the kernel generation into a separate function that is also called when the properties change now. And use BaseTransform::transform instead of transform_ip as the convolution is done out of place anyway. Should be done in place later.