Vincent Penquerc'h
49ec6899f4
audioresample: fix quality setting being ignored by the resampler state
...
https://bugzilla.gnome.org/show_bug.cgi?id=636562
2011-08-12 09:55:17 +02:00
Vincent Penquerc'h
746415a6e3
audioresample: use SSE/SSE2 when possible
...
Compile in the code on i386 and x86_64, and use ORC to determine
when the runtime platform can run the code.
https://bugzilla.gnome.org/show_bug.cgi?id=636562
2011-08-12 09:55:11 +02:00
Vincent Penquerc'h
58fd202b7d
audioresample: fix SSE2 building with double precision
...
The full double implementation was missing.
https://bugzilla.gnome.org/show_bug.cgi?id=636562
2011-08-12 09:53:12 +02:00
David Schleef
4db89c82bb
convert M_PI to G_PI, for msvc
2011-06-10 23:56:34 -07:00
Tim-Philipp Müller
c692191c33
GST_PLUGINS_BASE_LIBS is not defined in -base.
2011-06-08 12:21:43 +01:00
Marc Plano-Lesay
2ccd243d55
audioresample: fix unused-but-set-variable warnings with gcc 4.6
...
https://bugzilla.gnome.org/show_bug.cgi?id=647294
2011-04-24 12:43:33 +01:00
Alessandro Decina
030f639a8e
android: make it ready for androgenizer
...
Remove the android/ top dir
Fixe the Makefile.am to be androgenized
To build gstreamer for android we are now using androgenizer which generates the
needed Android.mk files.
Androgenizer can be found here:
http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 07:23:21 +02:00
Havard Graff
8ff295a788
audioresample: Make src query MT-safe
...
It is possible that the element might be going down while the event arrives
2011-04-08 15:04:41 +02:00
Mark Nauwelaerts
5c8ed3bd47
audioresample: minor simplification
...
... which avoids crashing in the off-chance that structure == NULL.
2011-04-06 12:26:08 +02:00
Leo Singer
5bfe1baab3
audioresample: corrected buffer duration calculation to account for nonzero initial timestamp
...
Since we calculate timestamps by:
timestamp = t0 + (out samples) / (out rate)
and durations by:
duration = ((out samples) + (processed samples)) / (out rate) - timestamp
if t0 is nonzero, this would simplify to
duration = t0 + (processed samples) / (out rate).
This duration is too large by the amount t0. We should have done:
duration = t0 + ((out samples) + (processed samples)) / (out rate) - timestamp
so that
duration = (processed samples) / (out rate).
2010-12-17 19:34:42 +01:00
Leo Singer
25a154be5f
audioresample: changed num_gap_samples, num_nongap_samples from guint32 to guint64 so that gaps of greater than or equal to 2^32 samples do not cause integer overflow
2010-12-17 19:34:42 +01:00
Leo Singer
d6d2aa44ab
audioresample: push half a history length, instead of a full history length, at end-of-stream so that output segment and input segment have same duration
2010-12-17 19:34:42 +01:00
Leo Singer
aac8b21678
audioresample: renamed count_gap, count_nongap to more descriptive num_gap_samples, num_nongap_samples
2010-12-17 19:34:42 +01:00
Leo Singer
6832b38527
audioresample: replaced void* with gpointer
2010-12-17 19:34:42 +01:00
Leo Singer
87f2422737
audioresample: initial filter transient discarded; unit tests passing
2010-12-17 19:34:41 +01:00
Leo Singer
b4cd3329a9
Revert "Revert "audioresample: Add GAP flag support""
...
This reverts commit 35c76b3409
.
Conflicts:
gst/audioresample/gstaudioresample.c
gst/audioresample/gstaudioresample.h
2010-12-17 19:34:41 +01:00
Mark Nauwelaerts
93d68ec77d
audioresample: relax discont checking slightly
2010-12-13 10:10:30 +01:00
Mark Nauwelaerts
a7cf165289
audioresample: provide as much valid output ts and offset as valid input
...
... by independently tracking time and offset, rather than having no offset
leading to no output ts.
2010-12-13 10:10:15 +01:00
Stefan Kost
83c14483ed
various: add a missing G_PARAM_STATIC_STRINGS flag to object properties
2010-10-13 16:13:31 +03:00
Sebastian Dröge
35c76b3409
Revert "audioresample: Add GAP flag support"
...
This reverts commit 129af0d8e6
.
This shouldn't be committed at all, it isn't ready and apparently
was in the wrong branch locally.
2010-09-15 11:28:29 +02:00
Leo Singer
129af0d8e6
audioresample: Add GAP flag support
...
Fixes bug #586570 .
2010-09-15 11:01:45 +02:00
Tim-Philipp Müller
164a91d10d
Fix build if orc is not installed
...
Orc is not a hard requirement. Things should still compile and
work without orc, but slow fallback code may be used in this
case. Fix up configure to not error out if orc is not installed
and wrap use of orc profiling in audioresample in #ifdefs.
Fixes #620136 some more.
2010-06-08 13:26:53 +01:00
David Schleef
e39e729a70
audioresample: convert from liboil to orc
2010-06-07 23:58:54 -07:00
Sebastian Dröge
6723bf429f
audioresample: Update speex resampler to latest GIT
2009-11-10 12:22:27 +01:00
Robert Swain
fc56adc2e3
audioresample: fix printf variable type
...
Change printf variable type from %lu to %" G_GUINT64_FORMAT " as it
should be for guint64.
Fixes #596981
2009-10-06 22:37:00 +02:00
Sebastian Dröge
1e450f21f8
audioresample: Fix drain processing
...
In case we have to convert internally don't process output length input samples
but history length input samples.
2009-08-26 09:10:18 +02:00
Sebastian Dröge
2e585ac7ac
audioresample: On the first buffer we need discont handling
...
Otherwise we won't get upstream timestamps and everything and all
output buffers would have -1 timestamps.
2009-08-26 09:10:18 +02:00
Kipp Cannon
86b4c51c8c
audioresample: Fix buffer overflow when pushing the drain
2009-08-26 09:10:17 +02:00
Kipp Cannon
a69068d70d
audioresample: Fix timestamp drift
...
Fixes bug #591934 .
2009-08-26 09:10:17 +02:00
Edward Hervey
8cd1b5209b
gst: Remove dead assignments and resulting unused variables
2009-08-08 15:54:02 +02:00
Kipp Cannon
4689acd68f
audioresample: Take the output offsets from the input if possible
...
Fixes bug #588915 .
2009-08-06 06:43:33 +02:00
David Schleef
1dae15d762
Run liboil benchmark multiple times
...
The statistics function requires multiple runs, otherwise
it causes a divide by zero error.
2009-05-22 17:34:56 -07:00
Edward Hervey
65c046b1ea
audioresample: Don't drain remaining buffers after a flush.
...
If we were resetted (due to a flush), we can not drain the remaining
buffers since they would be pushed before a valid new newsegment event.
2009-05-19 11:20:19 +02:00
Jan Schmidt
02a7b31f0e
audioresample: Fix buffer size transformations
...
When calculating the input/output buffer sizes in the transform_size function,
take the number of channels into account, so we don't end up calculating
a buffer size that only contains a partial number of audio frames.
Also, when going from output size to input size, round down rather than
up, so as to calculate the minimum number of samples that *might* yield
a buffer of the intended destination size.
Fixes : #580470 and #580952
2009-05-01 16:47:53 +01:00
René Stadler
22a69b49a3
audioresample: Fix unused variable in compilation with --disable-gst-debug
...
Fixes : #579668
2009-04-21 22:18:02 +01:00
Tim-Philipp Müller
d271c8de53
audioresample: fix negotiation so that upstream can actually fixate to downstream's rate
...
If one side has a preference for a particular sample rate or set of sample rates, we
should honour this in the caps we advertise and transform to and from, so that elements
actually know about the other side's sample rate preference and can negotiate to it
if supported. Also add unit test for this.
2009-04-01 15:36:38 +01:00
Stefan Kost
388fa77c11
audioresample: add missing break in event handling, remove dead code
2009-03-05 10:39:33 +02:00
Sebastian Dröge
6c28744f76
audioresample: Add locking to protect the resampling context
...
When setting the quality/filter-length while PLAYING the
resampling context will be destroyed and created again in
some cases, which will cause crashes in the transform function
if it's called at that time.
2009-02-15 07:30:17 +01:00
Stefan Kost
c6ab453eed
audioresample: Add a proper deprecation comment and also drop G_PARAM_CONSTRUCT.
...
The comment will ensure that is is marked properly in the docs and the
GParamSpecflag was causing a duplicated initialisation of the same value.
2009-02-04 13:56:13 +02:00
Stefan Kost
b08c0a9003
audioresample: Only pull in liboil if its actualy used.
...
Liboil still has quite significant startup overhead especialy on embedded
platforms. In audioresample it was only used for the profiling timer.
2009-02-04 10:31:21 +02:00
Stefan Kost
0ea2afee42
Allow to configure the resampler function for integer to skip the benchmarking. Fix releasing the intger resampler in benchmark.
2009-02-02 15:45:44 +02:00
Sebastian Dröge
5dfcb63252
Rename files and types from speexresample to audioresample
...
Rename files and types from speexresample to audioresample
to finish the move and to prevent any confusion.
2009-01-23 12:33:41 +01:00
Sebastian Dröge
7afac6e23a
Remove audioresample files.
...
Original commit message from CVS:
* gst/audioresample/Makefile.am:
* gst/audioresample/buffer.c:
* gst/audioresample/buffer.h:
* gst/audioresample/debug.c:
* gst/audioresample/debug.h:
* gst/audioresample/functable.c:
* gst/audioresample/functable.h:
* gst/audioresample/gstaudioresample.c:
* gst/audioresample/gstaudioresample.h:
* gst/audioresample/resample.c:
* gst/audioresample/resample.h:
* gst/audioresample/resample_chunk.c:
* gst/audioresample/resample_functable.c:
* gst/audioresample/resample_ref.c:
* tests/check/elements/audioresample.c:
Remove audioresample files.
2008-11-27 19:13:59 +00:00
Jan Schmidt
ca161e799f
gst/audioresample/gstaudioresample.c: Guard against a NULL dereference I somehow encountered - with a FLUSH_STOP arri...
...
Original commit message from CVS:
* gst/audioresample/gstaudioresample.c:
Guard against a NULL dereference I somehow encountered -
with a FLUSH_STOP arriving either before basetransform _start(),
or after _stop().
* gst/typefind/gsttypefindfunctions.c:
Make sure we never jump backwards when typefinding corrupt mov files.
2008-11-14 21:44:33 +00:00
Stefan Kost
087676f09b
gst/audioresample/gstaudioresample.c: Return the result of parent_class->event().
...
Original commit message from CVS:
* gst/audioresample/gstaudioresample.c:
Return the result of parent_class->event().
2008-10-30 11:43:12 +00:00
Sebastian Dröge
70348d7327
gst/audioresample/gstaudioresample.c: Fixate the rate to the nearest supported rate instead of the first one. Fixes b...
...
Original commit message from CVS:
* gst/audioresample/gstaudioresample.c:
(gst_audioresample_class_init), (audioresample_fixate_caps):
Fixate the rate to the nearest supported rate instead of
the first one. Fixes bug #549510 .
2008-10-28 16:25:00 +00:00
Stefan Kost
2cd4c7e2b9
Don't install static libs for plugins. Fixes #550851 for base.
...
Original commit message from CVS:
* ext/alsa/Makefile.am:
* ext/cdparanoia/Makefile.am:
* ext/gio/Makefile.am:
* ext/gnomevfs/Makefile.am:
* ext/libvisual/Makefile.am:
* ext/ogg/Makefile.am:
* ext/pango/Makefile.am:
* ext/theora/Makefile.am:
* ext/vorbis/Makefile.am:
* gst/adder/Makefile.am:
* gst/audioconvert/Makefile.am:
* gst/audiorate/Makefile.am:
* gst/audioresample/Makefile.am:
* gst/audiotestsrc/Makefile.am:
* gst/ffmpegcolorspace/Makefile.am:
* gst/gdp/Makefile.am:
* gst/playback/Makefile.am:
* gst/subparse/Makefile.am:
* gst/tcp/Makefile.am:
* gst/typefind/Makefile.am:
* gst/videorate/Makefile.am:
* gst/videoscale/Makefile.am:
* gst/videotestsrc/Makefile.am:
* gst/volume/Makefile.am:
* sys/v4l/Makefile.am:
* sys/ximage/Makefile.am:
* sys/xvimage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for base.
2008-10-16 15:07:00 +00:00
Stefan Kost
2b33c755b6
Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe...
...
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/alsa/gstalsamixer.c:
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c:
* ext/gio/gstgiosink.c:
* ext/gio/gstgiosrc.c:
* ext/gio/gstgiostreamsink.c:
* ext/gio/gstgiostreamsrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/theora/theoraparse.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* ext/vorbis/vorbisparse.c:
* ext/vorbis/vorbistag.c:
* gst/adder/gstadder.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gstqueue2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpserversink.c:
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
Cleanup Plugin docs. Link to signals and properties. Fix sub-section
titles. Drop mentining that all our example pipelines are "simple"
pipelines.
2008-07-10 21:06:06 +00:00
Tim-Philipp Müller
d92ff26d29
gst/audioresample/gstaudioresample.c: Revert previous change which made basetransform handle buffer_alloc and which b...
...
Original commit message from CVS:
* gst/audioresample/gstaudioresample.c: (gst_audioresample_init):
Revert previous change which made basetransform handle buffer_alloc
and which breaks things badly in the non-passthrough case since it
returned buffers with a different (ie. sometimes smaller) size than
the size requested.
2008-05-14 13:57:41 +00:00
Sjoerd Simons
09163ca363
gst/audioresample/gstaudioresample.c: Let audioresample use the buffer allocation of basetransform instead of it's ow...
...
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/audioresample/gstaudioresample.c: (gst_audioresample_init):
Let audioresample use the buffer allocation of basetransform instead
of it's own stuff.
* tests/check/elements/audioresample.c: (alloc_only_48000),
(GST_START_TEST), (audioresample_suite):
Add unit test for the recent basetransform bugfix, where upstream
changes caps to something that can't be passed through anymore.
2008-05-08 06:20:42 +00:00