Commit graph

1240 commits

Author SHA1 Message Date
Wim Taymans 9da89ef4e1 basesink: fix position reporting
Only update the current stream time after we checked if we got a new step
event. This improves the position reporting by the sink.

See #595958
2009-11-16 14:59:14 +01:00
Jan Schmidt f83ea8233b basesink: Fix treating base_time as unsigned in position calculation
Element base_time is a signed quantity, which leads to basesink returning
a position of 0 when dealing with a negative base time - which are quite
legal when clocks (such as the audio clock) are close to 0.

This doesn't manifest in normal pipelines, of course - but can happen
(at least) when manually setting the base time on a pipeline.
2009-11-11 17:12:19 +00:00
Stefan Kost f63ecd04a8 pad: rename new api from _refed to _reffed.
Due to popular demand rename the new api as we still can.
API: gst_pad_get_caps_reffed(), gst_pad_peer_get_caps_reffed()
2009-11-05 12:54:32 +02:00
Edward Hervey 27284628e4 optimisation : Use g_object_newv where possible.
This avoids:
* triple-checking for the GType when type-checking is enabled (see #597260)
* Avoids going through an expensive no-argument checking which landed in
  glib-2.22
* Avoids going through 2 extrac functions (g_object_new -> g_object_new_valist)
2009-10-28 09:31:17 +01:00
Tim-Philipp Müller daecaf0e8a Remove GST_DEBUG_FUNCPTR where they're pointless
There's not much point in using GST_DEBUG_FUNCPTR with GObject
virtual functions such as get_property, set_propery, finalize and
dispose, since they'll never be used by anyone anyway. Saves a
few bytes and possibly a tenth of a polar bear.
2009-10-28 00:44:24 +00:00
Sebastian Dröge c57e5bf07e typefindhelper: Remove obsolete FIXME
It's not necessary (and not a good idea) to cache the typefind factory
list anymore.
2009-10-24 13:14:25 +02:00
Edward Hervey 5067664c09 typefind: Keep typefind factories sorted in the registry. Fixes #599147
This avoids having to do the sorting everytime we use typefind

The behaviour of gst_type_find_factory_get_list has subtlely changed
in the sense that the order was previously undefined, whereas now
it returns them sorted by rank and then by name.
2009-10-24 10:44:09 +02:00
Stefan Kost 382ad3baa6 controller: just cast in internal API where we have checked parameters already 2009-10-18 23:18:58 +03:00
Stefan Kost a4e4916632 controller: use g_slice for controlled property structures
Use g_slide instead of nomal g_new, Also don't init struct with 0 as we need to
init it anyway with the real values.
Also join the 3 flags checks into one.
2009-10-18 23:15:07 +03:00
Edward Hervey bb0918279f libs/base/typefindhelper: Remove useless typechecking in tight loop
The list against which we run the comparefunc will only contain
GstPluginFeature, therefore remove the 6 expensive type checks we do
for every single comparision.
2009-10-18 17:17:17 +02:00
Wim Taymans e9f2714ff9 basesrc: fix race in PLAYING->PAUSED->PLAYING
When we quickly switch from PLAYING to PAUSED and back to PLAYING it's possible
in some cases that the task refuses to start, This is because when we go to
PAUSED, we unschedule the clock timeout, which could return UNSCHEDULED when
we're back to PLAYING, causing the task to PAUSE again with a wrong-state.

This patch checks if we are running when we return with an UNSCHEDULED return
value and if we are, try to create a new buffer.

Fixes #597550
2009-10-15 16:30:36 +02:00
Stefan Kost cd31173b79 docs: fix controller sections docs 2009-10-14 17:58:22 +03:00
Tommi Myöhänen 87058ab28e netclientclock: fix timestamp comparission, Fixes #597407 2009-10-13 19:12:50 +03:00
Edward Hervey 53209f0220 libs/gst/check: Make writing threadsafe. Backported from libcheck trunk 2009-10-12 13:50:51 +02:00
Edward Hervey bf3ab71a2b libs/gst/check: Run gst-indent on libcheck. 2009-10-12 13:49:35 +02:00
Stefan Kost 7fcd73875f basesink: lets keep -1 for segmenst as they are guint64 and not GstClockTime 2009-10-09 17:44:28 +03:00
Stefan Kost 4efc01a61d basesink: use GST_CLOCK_TIME_NONE and GST_CLOCK_TIME_IS_VALID more 2009-10-09 17:15:52 +03:00
Edward Hervey 9b17059deb gst/check/consistencychecker: Check type of miniobject in probe 2009-10-08 08:55:23 +02:00
Edward Hervey a8e03abd17 gst/base/basesink: Remove dead assignment.
The code was previously:
* checking if ret was != OK
* .. but if it was FLOW_STEP, swith it to OK
* .. and then not using ret

Instead we just make it more compact by checking if it's OK or STEP.
2009-10-08 08:53:54 +02:00
Tim-Philipp Müller 07d953b791 docs: fix Since: tags in docs for newly-added API 2009-10-07 23:34:44 +01:00
Stefan Kost fcc5d783df pad: add variants of gst_pad_get_caps() that don't copy caps. Fixes #590941
In most places in core and baseclasses we just need the caps to do caps-
intersections. In that case ref'ed caps are enough (no need to copy).
This patch also switches the code to use the new functions.
API: gst_pad_get_caps_refed(), gst_pad_peer_get_caps_refed()
2009-10-07 22:41:30 +03:00
Mark Nauwelaerts 5f4daa8fd9 dataqueue: fix API documentation typo 2009-10-07 18:51:51 +02:00
Sebastian Dröge 41f7a3fe09 bytewriter: Add a generic byte writer
Fixes bug #590669.
2009-10-07 18:40:31 +02:00
Sebastian Dröge f4c12be109 bitreader/bytereader: API: Add gst_(bit|byte)_reader_get_size()
... and GST_(BYTE|BIT)_READER() casts.
2009-10-07 17:59:51 +02:00
Sebastian Dröge c7438c738b bytereader,bitreader: Remove FIXME 0.11 to remove non-inlined functions
The normal functions are always useful to have for bindings, especially
runtime-created bindings like Seed or new GObject-Introspection based
Python bindings.
2009-10-07 17:59:51 +02:00
Edward Hervey ea9b0cedcd gstdataqueue: new constructor which takes callbacks.
This allows us to avoid going through glib's signalling system
2009-10-07 09:32:05 +02:00
Tim-Philipp Müller d600ce0a29 bytereader: add inline version of gst_byte_reader_skip 2009-10-07 00:52:23 +01:00
Tim-Philipp Müller 6ce1f0cbce dataqueue, elements: avoid unnecessary runtime type checks 2009-10-06 20:04:10 +01:00
Jan Schmidt 8bf3d8cec2 registry: Support installed/uninstalled plugin-scanner helper
Add a simple version check when starting the plugin-scanner so we can
verify we're talking to one that talks the same language.
First try a plugin-scanner in the installed path, then try one via the
GST_PLUGIN_SCANNER env var if that doesn't work.
Update the uninstalled script.
Install the plugin-scanner to the libexec dir
2009-10-06 19:51:44 +01:00
Jan Schmidt 51675e0c2a registry: Add registry helper phase 1
Phase 1 of adding the registry scan helper
2009-10-06 19:51:42 +01:00
Jan Schmidt 274d985472 libgstcheck: Don't use character classes in sed expressions
Apparently the sed that ships on Solaris 10 doesn't support character
classes like [:alnum:], so don't use them. We don't need them for the
symbol names that are being extracted anyway.

Also, use $(SED) instead of 'sed'

Fixes: #596877
2009-09-30 16:35:18 +01:00
David Schleef ebe095420a Fix out-of-tree build 2009-09-14 12:47:26 -07:00
Sebastian Dröge 3c1f41ee7d introspection: Build pkgconfig before all libraries and set PKG_CONFIG_PATH
This way g-ir-scanner can find the gstreamer-0.10 pkg-config file.
2009-09-12 14:35:09 +02:00
Wim Taymans b3d262d730 fix whitespace 2009-09-07 18:32:10 +02:00
Wim Taymans 8a19dc610e adapter: fix whitespace 2009-09-07 18:32:10 +02:00
Tim-Philipp Müller 96a565bdca bitreader, bytereader: add some FIXME 0.11 comments and fix indenting 2009-09-06 19:44:20 +01:00
Tim-Philipp Müller 4c103b00b5 bytereader: add unchecked and inline versions of the float getters/peekers
API: gst_byte_reader_get_float*_unchecked()
2009-09-06 18:51:18 +01:00
Tim-Philipp Müller 31ab124487 bytereader: add inline versions of the most common getters and setters 2009-09-06 18:51:18 +01:00
Tim-Philipp Müller 080b2e4fd5 bytereader: add inlined _unchecked() variants for some functions
API: gst_byte_reader_skip_unchecked()
API: gst_byte_reader_peek_*_unchecked()
API: gst_byte_reader_get_*_unchecked()
API: gst_byte_reader_{peek,get,dup}_data_unchecked()
2009-09-06 18:51:13 +01:00
Sebastian Dröge 741a946134 introspection: Strip Gst prefix from all types/functions 2009-09-05 12:30:07 +02:00
Sebastian Dröge 4b7518a4e5 introspection: Fix out-of-tree build 2009-09-05 12:04:59 +02:00
Sebastian Dröge 9f16dc384e introspection: Fix build if gir-repository is not installed 2009-09-05 11:51:55 +02:00
Sebastian Dröge 19507ce3c8 net: Add gobject-introspection support 2009-09-05 10:28:47 +02:00
Sebastian Dröge 088e424aab dataprotocol: Add gobject-introspection support
Because of a bug in gobject-introspection this is disabled for now.
2009-09-05 10:28:47 +02:00
Sebastian Dröge bd6c7c97bf controller: Add gobject-introspection support 2009-09-05 10:28:47 +02:00
Sebastian Dröge 1b37155aa6 check: Add gobject-introspection support 2009-09-05 10:28:47 +02:00
Sebastian Dröge 0bb8634b37 gstbase: Add gobject-introspection support 2009-09-05 10:28:46 +02:00
Tim-Philipp Müller b9657d7477 docs: fix docs for gst_byte_reader_{get|peek}_float*() 2009-09-04 19:50:39 +01:00
Wim Taymans bcb9eab392 basesrc: whitespace fixes 2009-09-01 16:52:32 +02:00
Wim Taymans b6728ca46e adapter: whitespace fixes 2009-08-28 18:04:54 +02:00