Commit graph

119 commits

Author SHA1 Message Date
Stefan Sauer
6a8194e121 level: fix level calculations for mutliple channels
This was broken with 7b90bf3215.
2015-08-27 10:16:38 +02:00
Tim-Philipp Müller
03d3d36053 level: fix infinite loop for very low interval values
https://bugzilla.gnome.org/show_bug.cgi?id=745515
2015-04-24 00:51:29 +01:00
Sebastian Dröge
7b90bf3215 level: Don't read over the end of the input memory
Previously we advanced the in_data pointer by bps for every channel, and then
later again for block_size*bps. This caused us to be one sample further than
expected if an input buffer covered two analysis frames. And in the end lead
to completely bogus values reported by level.

https://bugzilla.gnome.org/show_bug.cgi?id=746065
2015-03-12 13:51:56 +00:00
Tim-Philipp Müller
3956f5addc Sprinkle some G_PARAM_DEPRECATED and #ifndef GST_REMOVE_DEPRECATED 2014-11-02 16:58:30 +00:00
Sebastian Dröge
b21b46a07a level: Use the correct number of samples to iterate over the input array
Fixes invalid memory accesses and accesses to uninitialised data.
2014-04-16 18:50:50 +02:00
Stefan Sauer
a4fd0f9351 docs: use docbook markup for xi:include
It turns out that the change in gtk-doc-1.20 which wraps the |[]| content in
CDATA break xi:inlcude examples. As in a whole jhbuild checkout these where
the only 4, we're fixing them instead.
2014-02-18 22:54:45 +01:00
Stefan Sauer
35da463618 docs: use the gtk-doc syntax to link to properties
Don't use docbook unless needed. Also stip other docbook tags in the the files we fix.
2014-02-18 22:35:00 +01:00
Stefan Sauer
6feaf69bec level: misc cleanups
Fix some oudated comments. Sort out some confusion of interval_frames and num_frames.
2013-05-30 17:38:55 +02:00
Stefan Sauer
52282b5faa level: fix discontinuities in timestamps 2013-05-28 19:09:12 +02:00
Stefan Sauer
b79f667ef4 level: resync on discont
Drop pending data on discont and start a new cycle with a new base timestamp.
Cleanup some variables.
2013-04-04 22:49:49 +02:00
Stefan Sauer
2e56032031 level: subdivide buffers for sample accurate interval handling
Previously we would skip level message when processing buffers > the requested
interval. Also the message frequency would contain quite some jitter due to only
considering them at the end of buffers.

Cleanup the tests while we're at it.
2013-04-03 21:40:17 +02:00
Stefan Sauer
b62cb3edcd level: add a "post-messages" property and deprecate "message"
In spectrum this was changed from 0.10 to 1.0, lets do this here too.
2013-02-28 09:43:12 +01:00
Thomas Vander Stichele
df8f5f2f83 level: put back deprecation warnings 2013-02-25 00:35:58 +01:00
Thomas Vander Stichele
52b7aab711 level: send last message on EOS 2013-02-25 00:19:22 +01:00
Olivier Crête
fe3e535853 level: Add missing coma between formats 2013-02-03 13:14:50 +01:00
Tim-Philipp Müller
230cf41cc9 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:07:18 +00:00
Tim-Philipp Müller
e6d37eb30a Purge references to liboil
https://bugzilla.gnome.org/show_bug.cgi?id=673285
2012-09-29 12:41:37 +01:00
Stefan Sauer
242321e376 level: remove obsolete liboil comment 2012-07-24 21:42:40 +02:00
Tim-Philipp Müller
e09ae5736d Use new gst_element_class_set_static_metadata() 2012-04-10 00:51:41 +01:00
Sebastian Dröge
aa2cd462da gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 17:36:38 +02:00
Peteris Krisjanis
d44b3fd8ec level: use GValueArray instead of GstValueList in messages
Updated GstLevel element to use GValueArray instead of
GstValueList for rms/peak/decay keys attached to element
message.

https://bugzilla.gnome.org/show_bug.cgi?id=670303
2012-02-18 11:37:41 +00:00
Wim Taymans
583d39dd8d update for new memory API 2012-01-25 12:30:28 +01:00
Sebastian Dröge
261a42c9ef level: Update for the new raw audio layout field 2012-01-05 10:30:34 +01:00
Wim Taymans
77ad0a1363 port more elements to new audio caps and API 2011-08-19 14:01:45 +02:00
Mark Nauwelaerts
696ffc85d7 level: port to 0.11
* use G_DEFINE_TYPE
* adjust to new GstBuffer
2011-06-30 11:19:12 +02:00
Stefan Kost
d8167e3071 various (gst): add a missing G_PARAM_STATIC_STRINGS flags 2010-10-13 18:00:28 +03:00
Havard Graff
3e894a1f29 level: avoid division by zero on silence
Fixes bug #630458.
2010-09-23 21:19:01 +02:00
David Schleef
bd893e4dfb level: remove unused liboil include 2010-06-08 17:25:35 -07:00
Benjamin Otte
cccfeaa59c gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 14:32:00 +01:00
Edward Hervey
3e08a0cb4e level: fix typo in 'message' property description 2010-01-07 15:38:36 +01:00
Stefan Kost
03d2f4bdec level: fix decay to be smooth
The length not having any fractional part as it was promoted to gdouble after
dividing two guint64.
2009-11-01 00:31:48 +02:00
Stefan Kost
71044b37b6 level: calculate the message-intervall when it changes 2009-11-01 00:31:48 +02:00
Stefan Kost
f5b3392fa6 level: clocktime is a guint64, use right macro to init fields 2009-11-01 00:31:48 +02:00
Stefan Kost
519e424494 level: use more g-style types 2009-11-01 00:31:48 +02:00
Stefan Kost
217b54a8f6 level: code cleanup
Use gdouble instead of double. Calculate falloff_time once instead of twice.
2009-10-18 23:53:42 +03:00
Stefan Kost
948d5168ce level: don't give wrong number of fields in the message docs 2009-10-02 13:44:41 +03:00
Stefan Kost
a99d3f8769 Update and add documentation for plugins with no deps (gst).
Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered.
2009-01-28 12:32:59 +02:00
Edward Hervey
9b7172ae9e gst/level/gstlevel.c: Fix compilation (also known as the classic 'fix code that someone committed without compiling i...
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_message_new):
Fix compilation (also known as the classic 'fix code that someone
committed without compiling it first').
2008-08-11 10:53:06 +00:00
Stefan Kost
20b5b4c2d9 gst/level/gstlevel.c: Little renaming (l -> level).
Original commit message from CVS:
* gst/level/gstlevel.c:
Little renaming (l -> level).
* gst/spectrum/gstspectrum.c:
* gst/spectrum/gstspectrum.h:
Also send full timestamp/duration details here.
2008-08-10 15:52:42 +00:00
Stefan Kost
cac09e5a1b gst/level/gstlevel.*: Send same timestamp/duration details as videoanalysis. This gives applications better chance to...
Original commit message from CVS:
* gst/level/gstlevel.c:
* gst/level/gstlevel.h:
Send same timestamp/duration details as videoanalysis. This gives
applications better chance to sync analysis results with playback.
2008-08-10 11:32:03 +00:00
Stefan Kost
a0369011e7 gst/level/gstlevel.c: Also support 32bit (e.g. whe having it after 'mad'). Add more notes about whats needed for libo...
Original commit message from CVS:
* gst/level/gstlevel.c:
Also support 32bit (e.g. whe having it after 'mad'). Add more notes
about whats needed for liboil acceleration. Simplify docs a bit.
2008-05-08 10:20:52 +00:00
Sebastian Dröge
8cc6592938 gst/level/gstlevel.c: Use #include <math.h> instead of #include "math.h".
Original commit message from CVS:
* gst/level/gstlevel.c:
Use #include <math.h> instead of #include "math.h".
2008-01-23 17:05:32 +00:00
Sebastian Dröge
b76819bbd2 Make elements GST_BUFFER_FLAG_GAP aware and call 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.
2008-01-08 14:58:18 +00:00
Stefan Kost
d37e93af90 gst/level/gstlevel.c: Add GAP-flag support.
Original commit message from CVS:
* gst/level/gstlevel.c:
Add GAP-flag support.
2007-11-26 12:26:20 +00:00
Stefan Kost
15ebc39939 gst/level/gstlevel.c: Remove some dead code and do cleanups.
Original commit message from CVS:
* gst/level/gstlevel.c:
Remove some dead code and do cleanups.
2007-11-26 10:04:49 +00:00
Wim Taymans
80dc806b65 gst/level/gstlevel.*: Use basetransform segment so that it is correctly managed on flushes and start/stop.
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_class_init), (gst_level_start),
(gst_level_transform_ip):
* gst/level/gstlevel.h:
Use basetransform segment so that it is correctly managed on flushes and
start/stop.
Report message timestamp as stream time, which is what an application
can understand.
2007-09-13 17:31:16 +00:00
Sébastien Moutte
603656d1bf gst/level/gstlevel.c: Use guint8 * instead of gpointer then vs6 can build in_data += (filter->width / 8).
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_transform_ip):
Use guint8 * instead of gpointer then vs6 can build
in_data += (filter->width / 8).
2007-05-13 15:47:13 +00:00
David Schleef
7ab6d2b0b0 gst/level/gstlevel.c: Revert last change.
Original commit message from CVS:
* gst/level/gstlevel.c:
Revert last change.
2007-05-10 01:21:19 +00:00
Sébastien Moutte
f636fb8b34 gst/level/gstlevel.c: Use guint8 * instead of gpointer then vs6 know the size of data pointed when moving the pointer.
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_calculate_##TYPE),
(gst_level_transform_ip):
Use guint8 * instead of gpointer then vs6 know the size of data
pointed when moving the pointer.
* gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_handle_buffer):
Move instructions after variables declaration.
* win32/vs6/autogen.dsp:
* win32/vs6/libgstrtp.dsp:
* win32/vs6/libgstrtsp.dsp:
Update vs6 project files.
2007-05-09 21:30:53 +00:00
Stefan Kost
143708a433 gst/level/gstlevel.*: Resolve message timestamps against the playback segment.
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_class_init),
(gst_level_set_caps), (gst_level_start), (gst_level_event),
(gst_level_transform_ip):
* gst/level/gstlevel.h:
Resolve message timestamps against the playback segment.
2007-03-07 11:24:05 +00:00