Commit graph

1867 commits

Author SHA1 Message Date
Stefan Sauer eba636cc83 controller: use NAN instead of FP_NAN (which is the class)
Also add a fallback define to math-compat.h.
Fixes #666887
2011-12-30 13:33:48 +01:00
Stefan Sauer 855212cd2f triggercontrolsource: fix control reaches end of non-void function
Return NAN and check the value further up.
Fixes #666890
2011-12-27 13:48:36 +01:00
Tim-Philipp Müller 63caa628c4 controller: quick-fix compiler warning breaking the build
This is likely not the proper fix.

https://bugzilla.gnome.org/show_bug.cgi?id=666890
2011-12-27 11:40:40 +00:00
Tim-Philipp Müller e65ac5b419 controller: fix compiler warning in interpolation control source
gstinterpolationcontrolsource.c:54: warning: type qualifiers ignored
on function return type

https://bugzilla.gnome.org/show_bug.cgi?id=666890
2011-12-27 11:24:48 +00:00
Tim-Philipp Müller 9a3e4ce5cb libs: remove gdp dataprotocol library
Made private and moved to gdp plugin in -base for
the time being, until we figure out what we do with
gdp and 0.11.
2011-12-25 23:41:50 +00:00
Stefan Sauer 39d6b7462f controller: move GValue handling from control-sources to -binding
ControlSources are now gdouble based. A control source is mapped to a
particullar GObject property using a ControlBinding.
2011-12-25 20:48:14 +01:00
Stefan Sauer a80401b22c controller: move GstControlledProperty into a separate class
Add a GstControlBinding class. This is a preparation for making the
controlsources generate double valued control curves and do the gparamspec
mapping in the control binding. Now the API in GstObject is again mostly
for convenience.
2011-12-25 18:50:45 +01:00
Tim-Philipp Müller b193d03c8a collectpads2: fix up compilation after merge 2011-12-25 12:13:57 +00:00
Tim-Philipp Müller f6a4af20b2 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	libs/gst/base/gstbasetransform.c
	libs/gst/controller/gstinterpolationcontrolsource.c
	libs/gst/controller/gstlfocontrolsource.c
	plugins/elements/gstfilesrc.c

Dit not merge controller or basetransform changes.
2011-12-25 11:58:12 +00:00
Tim-Philipp Müller ff59f3a553 controller: fix GType name of interpolation mode enum 2011-12-22 11:08:42 +00:00
Sebastian Dröge 2f93cee988 basetransform: If the filtered peer caps are already empty error out early 2011-12-20 14:37:09 +01:00
Stefan Sauer 503b739b23 controller: cleanup interpolation modes
Remove deprecated/unimplemented modes. Turn interpolation mode into a gobject
property. Update docs and examples.
2011-12-19 23:36:26 +01:00
Stefan Sauer 2c7a8b924a controlsources: refactor interpolation control source
Move most of the code to a GstTimedValueControlSource. Split out the trigger
'interpolation mode' to a new control source class. Move tests and examples to
new api. Update docs.

Fixes #610338
2011-12-19 22:52:30 +01:00
Stefan Sauer 9c3c0fb251 controlsource: clean up lfo control source
Remove parent_class and use var from G_DEFINE_TYPE macro. Remove unused dispose
implementation.
2011-12-19 22:52:29 +01:00
Mark Nauwelaerts 28e9d735bb collectpads2: add convenience clipping function
... which also converts to running time; useful for typical muxer.
2011-12-19 17:45:25 +01:00
Mark Nauwelaerts 78565da18b basetransform: do not delay sparse stream newsegment updates 2011-12-19 17:39:11 +01:00
Mark Nauwelaerts b3886b7935 basetransform: suggestion compatible with upstream is not much of a suggestion
... in that upstream is already complying with that suggestion.

Fixes #666174.
2011-12-19 12:34:51 +01:00
Mark Nauwelaerts eb79c0a835 collectpads2: delay collecting buffer if a pad newly set waiting
... as commented; make code correspond to it (again).
2011-12-15 16:51:49 +01:00
Stefan Sauer 26e8e336cc controller: user the parent_class vars from G_DEFINE_TYPE 2011-12-15 16:19:41 +01:00
Matej Knopp f4040d3f6b baseparse: Clear queued frames with other queues 2011-12-12 13:37:25 +01:00
Wim Taymans 768e28e1c4 basesrc: say we handle RECONFIGURE event
We handle the RECONFIGURE event so return TRUE from the event handler.
2011-12-10 11:08:22 +01:00
Wim Taymans e32fa21071 basesrc: stop when negotiation fails 2011-12-09 10:01:16 +01:00
Sebastian Dröge a6bb6d0fc3 basetransform: Fix code path to come up with possible caps if incompatible caps are provided to buffer_alloc()
Previous code could almost never work and this should be slightly
better.
2011-12-08 18:11:43 +01:00
Sebastian Dröge 57573d8705 basetransform: Fall back to upstream provided caps if suggested caps are not supported by the sinkpad 2011-12-08 18:11:43 +01:00
Sebastian Dröge aad7225eb5 basetransform: Fall back to upstream provided caps if fixation of suggested caps failed 2011-12-08 18:11:43 +01:00
Sebastian Dröge 26a1ac0ce7 basetransform: Refactor gst_base_transform_buffer_alloc() code
Don't check if upstream provided caps are compatible with upstream
and don't try to fixate these caps. They must be fixated in any case.
2011-12-08 18:11:42 +01:00
Tim-Philipp Müller eaa2d81474 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst/gstindexfactory.c
	libs/gst/base/gstbasetransform.c
	plugins/elements/gstfakesink.c
	plugins/elements/gstfakesrc.c
	plugins/elements/gstidentity.c
	plugins/elements/gstinputselector.c
	plugins/elements/gstoutputselector.c

Note: did not merge any of the basetransform changes from 0.10.
2011-12-08 00:39:10 +00:00
Vincent Penquerc'h e7b3305f70 baseparse: do not use a byte value instead of a time value when bisecting
This fixes FLAC seeking on some FLAC files.
2011-12-07 17:57:49 +00:00
Sebastian Dröge 7fb67e9d6f basetransform: If suggested caps are not compatible with upstream try to come up with compatible caps
Fixes bug #662199.
2011-12-07 09:51:42 +01:00
Wim Taymans ebc25e895f basesrc: add async start option
Add a method to enable async start behaviour. The subclass can then complete the
start operation from any other thread by caling gst_base_src_start_complete().
The base class can wait for the start to complete with
gst_base_src_start_wait().
2011-12-06 14:01:50 +01:00
Wim Taymans 1ac7160031 fix compilation 2011-12-06 13:39:05 +01:00
Stefan Sauer 4b29d4f29a controller: remove GstValueArray
Instead pass the values as arguments. This simplifies that code and helps
bindings.
2011-12-06 08:35:57 +01:00
Wim Taymans be0e58a637 make some more macros as inline functions
Make some macros as inline functions for added type checking.
USe new gst_caps_take() in typefind
2011-12-05 10:24:34 +01:00
Tim-Philipp Müller 8811cbc5aa check: allow non-joinable threads in private g_thread_create() copy
Looks like some tests use non-joinable threads after all.
2011-12-04 21:20:07 +00:00
Tim-Philipp Müller a1daf846f3 Merge remote-tracking branch 'origin/master' into 0.11
Conflicts:
	gst/gstobject.h
	libs/gst/check/gstcheck.h
	libs/gst/controller/gstcontroller.c
	plugins/elements/gstidentity.c
	tools/gst-xmlinspect.c
2011-12-04 15:38:09 +00:00
Tim-Philipp Müller 2666450864 Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly
GStaticRecMutex is part of our API/ABI, not much we can do here in 0.10.
2011-12-04 14:38:26 +00:00
Tim-Philipp Müller 5889260d5a Work around deprecated thread API in glib master
Add private replacements for deprecated functions such as
g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly
to avoid the deprecation warnings. We can't change most of
these in 0.10 because they're part of our API and ABI.
2011-12-04 13:35:38 +00:00
Tim-Philipp Müller 1f14a425d0 net: initialise GError variables to NULL 2011-12-04 13:04:35 +00:00
Tim-Philipp Müller fef18639db g_thread_init() is deprecated in glib master
It's not needed any longer.
2011-12-03 17:40:53 +00:00
Tim-Philipp Müller ca179625f8 g_thread_create() is deprecated in GLib master, use g_thread_try_new() instead 2011-12-03 13:58:51 +00:00
Wim Taymans 543b56c78f basesink: use dts and pts for sync
First use DTS, then fall back to PTS for synchronization.
2011-12-03 07:06:11 +01:00
Wim Taymans e1b64d971e basesink: small cleanups 2011-12-03 07:01:45 +01:00
Wim Taymans f62c3922c2 basesink: merge preroll functions
Inline a function that is only called from one place to make things a little
easier to follow.
2011-12-03 06:45:46 +01:00
Wim Taymans ee15bd7287 basesink: more cleanups
Don't pass around the object type, we can find that very efficiently from the
object itself now.
2011-12-03 06:29:42 +01:00
Wim Taymans 64bd0b6416 basesink: clean up method names 2011-12-02 23:13:23 +01:00
Wim Taymans 4be2edeb50 basesink: merge render_object into chain
Merge the render_object code with the chain method. It is only called from there
and there are quite a few variables that can be reused to makes things less
confusing.
2011-12-02 22:50:55 +01:00
Wim Taymans cc8359259b basesink: remove obsolete code
Remove some more code now that the render_object ethod is only
called with buffers or bufferlsts.
2011-12-02 22:36:38 +01:00
Wim Taymans 0e38f0dad0 basesink: clean up event handling
Add new wait_eos vmethod to wait for the eos timeout before posting the EOS
message on the bus.
Add default event handler. Move the default event actions in there. Call the
event vmethod from the pad event handler. Subclasses are now supposed to chain
up to the parent event handler or unref the event and do their own thing.
Avoid passing unused parameters to functions.
2011-12-02 22:20:08 +01:00
Wim Taymans b6335d9505 basesink: small cleanup
Avoid passing around the segment.
2011-12-02 13:35:58 +01:00
Wim Taymans bf4e681f5e basesink: remove clip_segment
We only need one segment now that the preroll queue is gone.
2011-12-02 13:28:18 +01:00