Commit graph

1503 commits

Author SHA1 Message Date
Dave Robillard
fa47a5ff3a More tolerate port group support, plugin cleanup.
Gracefully handle plugins with illegal groups that contain no symbol by
treating ports in that group normally (i.e. as if they weren't part of a
group).  The port groups spec mandates that groups have a valid unique
symbol, but plugins aren't perfect...

Make (conceptually) static plugin variables actually (C) static,
and clean up SLV2 related things with a GCC shared library destructor,
if GCC is in use.
2009-09-17 09:46:50 +03:00
Dave Robillard
9956118be8 Make mono warning visible in public documentation. 2009-09-17 09:46:49 +03:00
Dave Robillard
374d52d257 Multi-channel support with channel positions.
This queries port roles from the LV2 data and converts it into GStreamer
channel positions.  This should allow any type of multi-channel plugin
(including beyond stereo, e.g. surround) to work fine in GStreamer,
and with elements that require channel positions to be explicitly stated.
2009-09-17 09:46:49 +03:00
Dave Robillard
8538d382e3 Add documentation for LV2 element. 2009-09-17 09:46:49 +03:00
Dave Robillard
d051620fcc Fix typo in LADSPA element documentation. 2009-09-17 09:46:49 +03:00
Dave Robillard
00a4088950 Add swh and calf LV2 port group patches. 2009-09-17 09:46:48 +03:00
Dave Robillard
403f58b562 Working multi-channel pads for LV2 plugins. 2009-09-17 09:46:48 +03:00
Dave Robillard
c076e7d34f Allocate a static predicate for pg:inGroup. 2009-09-17 09:46:48 +03:00
Dave Robillard
1ef08edb7c Only allocate lv2:inPlaceBroken predicate once. 2009-09-17 09:46:48 +03:00
Dave Robillard
b849ae89b5 Separate port discovery from pad template creation.
This first counts ports (using the builtin slv2 functions to do so
rather than manually as before), then creates descriptors for each port
and finds all port groups.  Only then are pad templates created (towards
using group information for creating multi-channel pads).
2009-09-17 09:46:48 +03:00
Dave Robillard
28b35ae923 Use silly glib types :). 2009-09-17 09:46:48 +03:00
Dave Robillard
8eeb2f3751 Query and store port group information.
Replace port index arrays with a struct for holding more information
than just indices (e.g. groups).
2009-09-17 09:46:48 +03:00
Dave Robillard
db1a4ba50b Working basic LV2 signal processing.
LV2 plugins, short of any surprises, should work with the same basic
functionality as LADSPA plugins.
2009-09-17 09:46:47 +03:00
Dave Robillard
ab96789f58 Set class inPlaceBroken property. 2009-09-17 09:46:47 +03:00
Stefan Kost
9e12fb5675 docs: fix example and mention difference to vorbisdec 2009-09-17 09:46:47 +03:00
Sebastian Dröge
5a8e9cd080 signalprocessor: Fix various build/dist issues
Install the headers, version the library with @GST_MAJORMINOR@,
add all required libraries to _LIBADD instead of _LDFLAGS,
and add GST_*_LDFLAGS to _LDFLAGS.

Fixes bug #594715.
2009-09-10 07:56:25 +02:00
Mark Nauwelaerts
4082652c4d faac: add some debug statements for discrepancy cases and plug memleak 2009-09-08 22:32:28 +02:00
Mark Nauwelaerts
ef72172247 faac: sprinkle some more G_(UN)LIKELY 2009-09-08 22:32:27 +02:00
Mark Nauwelaerts
2c0dd62abb faac: enforce sync between wrapper view of data and encoder returned data 2009-09-08 22:32:27 +02:00
Mark Nauwelaerts
ceb6792447 faac: add some documentation 2009-09-08 22:32:27 +02:00
Marc-André Lureau
90ae1ac35e assrender: Fix compilation with libass = 0.9.6
Fixes bug #594382.
2009-09-08 09:27:52 +02:00
Sebastian Dröge
b3ce1e03fb wildmidi/timidity: Add audio/riff-midi to the src pad template caps 2009-09-04 19:17:06 +02:00
Wim Taymans
f874e30998 wildmidi: cleanups and fix seeking
Remove time_per_frame, it's too inaccurate.
Fix convert for -1 values.
Use scaling to convert samples to time.
Fix segment handling.
Fix seeking.
Fix buffer clipping (not yet enabled)
Protect the WildMidi library with the object lock to avoid races when changing
properties.
Fix offsets on output buffers, for raw audio the offset contains the sample
position not byte position.
Add better DISCONT handling.

Fixes #519001
2009-09-04 17:32:15 +02:00
Josep Torra
806746a388 neonhttpsrc: handle all redirection http status codes 2009-09-04 13:13:39 +02:00
Mark Nauwelaerts
f5295555db faac: refactor slightly and remove superfluous code 2009-09-01 10:50:22 +02:00
Mark Nauwelaerts
9a8d62a775 faac: freshen up caps negotiation
Perform sink and src caps negotiation during caps negotation,
and also cater for re-negotiation.
2009-09-01 10:50:22 +02:00
Mark Nauwelaerts
f81b1e7a4a faac: rewrite data caching and timestamp handling
Also fixes #593348.
2009-09-01 10:49:58 +02:00
Wim Taymans
d806622622 wildmidi: cleanup error handler 2009-08-31 18:48:04 +02:00
Wim Taymans
dd1b692561 wildmidi: free the adapter 2009-08-31 18:48:04 +02:00
Wim Taymans
5c6ddc8ff2 wildmidi: cleanups 2009-08-31 18:48:04 +02:00
Wim Taymans
42b9415024 wildmidi: allow for push mode operation
Fixes #586929
2009-08-31 18:48:04 +02:00
Wim Taymans
53f654150b wildmidi: use state machine
Use a state machine to keep track of the current state.
Add chain function and event function on the sinkpad.
Remove some unused code.
2009-08-31 18:48:04 +02:00
Wim Taymans
2127cf3e8c wildmidi: remove useless function calls 2009-08-31 18:48:04 +02:00
Wim Taymans
25caf9f743 wildmidi: set caps on pad
Set the caps on the pad and use those caps instead of keeping a separate caps
pointer around.
Fix some whitespace.
2009-08-31 18:48:03 +02:00
Wim Taymans
4ef773164a wildmidi: fix whitespace 2009-08-31 18:48:03 +02:00
Tim-Philipp Müller
ead987e47d kate: fix typo in Makefile.am
GST_PLUGIN_BASE_LIBS should be GST_PLUGINS_BASE_LIBS. Fixes #593683.
2009-08-31 16:08:05 +01:00
Tim-Philipp Müller
10d67eda7a GstAdapter is not a GstObject and should be freed with g_object_unref() 2009-08-31 13:14:02 +01:00
Sebastian Dröge
de1f057725 rsvg: Add RSVG SVG decoder plugin
This supports
  - decoding single SVG images and a stream of SVG images with a given framerate
  - lossless scaling of SVG images
  - ARGB output
2009-08-31 09:13:53 +02:00
Sebastian Dröge
55cdea8e7a assrender: Fix compilation with libass >= 0.9.7 and fix aspect ratio setting
Fixes bug #575261.
2009-08-31 09:11:34 +02:00
Sebastian Dröge
07bd0d87aa rsnstreamselector: Use iterate internal links instead of deprecated get internal links 2009-08-31 08:14:10 +02:00
Arek Korbik
f1c4bdf5be schroenc: set right OFFSET and OFFSET_END on header buffers to make oggmux happy
Without this oggmux will just keep buffering output pages in some cases.

Fixes #593024.
2009-08-26 00:26:42 +01:00
Руслан Ижбулатов
09b2abf87b resindvd, rawparse: fix LDFLAGS for gst-plugins-base libs
Fixes #593063.
2009-08-25 23:55:41 +01:00
Tim-Philipp Müller
d652fff690 amrwbenc: use different element GType name to avoid conflict with previous plugin
Use a different GType name for the element to avoid 'cannot register existing type'
warnings when running 'make check' in the unpacked tarball with the old amrwb plugin
also installed as system plugin under the old name (it used to be called 'amrwrb'
and now it's 'amrwbenc').
2009-08-24 18:20:32 +01:00
Olivier Crête
4f3363af4d mimenc: Write FOURCC as 32bit 2009-08-18 15:48:09 -04:00
Olivier Crête
4f61f46f07 mimenc: USE GST_WRITE_*_LE macros 2009-08-12 17:35:14 -04:00
Olivier Crête
6001c6b5c0 mimenc: Refuse to go playing in paused-mode without clock
Only try to use the clock in if paused-mode is set and refuse to go playing
in paused-mode without it.

Fixes bug #591538
2009-08-12 17:35:14 -04:00
Tim-Philipp Müller
20a4c32a0b kateenc: error out if category has not been set and check for obviously wrong values 2009-08-11 12:42:28 +01:00
Tim-Philipp Müller
e591dcd64c spc: fix typo in Makefile.am and build the right plugin (spc not gme) 2009-08-10 13:26:13 +01:00
Sebastian Dröge
531ce4228d spc: Lower rank to SECONDARY to make the gme plugin the default 2009-08-08 21:20:30 +02:00
Sebastian Dröge
8ad3f14873 spc: Add the OpenSPC spc plugin again
The gme plugin obsoletes it but it might still be useful
for users that don't have gme yet or prefer openspc for some reason.
2009-08-08 21:20:30 +02:00