Commit graph

10048 commits

Author SHA1 Message Date
Wim Taymans
f44d8c31de bin: never skip a state change to PLAYING
Never skip the state change to playing, even if the element is already in the
right state. We need this because we also distribute the base_time while doing
the state change and skipping this step would leave some elements without a new
base_time.

Fixes #600313
2009-12-11 16:26:00 +01:00
Wim Taymans
a3fdb45aa6 basesink: add some more debugging 2009-12-11 16:19:18 +01:00
Havard Graff
494495eae6 tee: release pads in dispose
Make sure to release all request-pads in the dispose-method, in case of a
shutdown-race, where a pad-alloc is about to happen.

Fixes #604091
2009-12-09 13:31:07 +01:00
Wim Taymans
8bc67e5434 element: use NULL instead of 0 for pointers 2009-12-09 13:27:22 +01:00
Sebastian Dröge
0ffca884b0 tools: Move gst_tools_print_version() for the remaining tools 2009-12-09 07:25:31 +01:00
Ole André Vadla Ravnås
93dd95f02e tools: Move gst_tools_print_version call to avoid warning from new GLib.
g_setprgname is implicitly called by g_option_context_new() with a check
to see if it's been set already.

Fixes bug #604093.
2009-12-09 07:24:22 +01:00
Sebastian Dröge
1c66f306d6 utils: Fix proxy_setcaps to only iterate pads of other direction 2009-12-08 16:40:57 +01:00
Wim Taymans
c6f2a94777 utils: fix proxy_getcaps
Make it return the padtemplate caps on errors and no parent.
Only intersect pads of the oposite direction of the source pad.
2009-12-08 16:30:51 +01:00
Sebastian Dröge
6bff920ba0 utils: Rename proxy iterator fold functions to have a more meaningful name 2009-12-08 16:24:20 +01:00
Sebastian Dröge
d6492c2958 utils: If one intersection gave empty caps don't continue iterating over the other pads 2009-12-08 16:09:02 +01:00
Sebastian Dröge
25fc43487b basesink: Allow update NEWSEGMENT events after EOS
This allows demuxers to update the segment stop of an already
finished stream. This might be needed if some stream goes to
EOS before the duration of the longest stream is known to properly
set the segment stop of all streams to the same value in the end.
2009-12-08 15:24:43 +01:00
Wim Taymans
c2b0e9de25 Use plain casting instead of typechecking 2009-12-07 20:52:22 +01:00
Edward Hervey
a5626f239a gstvalue: Use fast gst_value_list_{size|get_value} macro accessors
gst_value_list_size and gst_value_list_get_value will do a series of
extra checks due to being public methods.
When we use them from within gstvalue.c we can directly use them without
the extra checks.
2009-12-07 09:51:04 +01:00
Edward Hervey
1d91fd9fb9 gsturi: Don't use g_signal_emit_by_name, use the signal ID directly 2009-12-07 09:51:03 +01:00
Edward Hervey
e572d3bf0b tee: avoid expensive typechecks, and avoid getting ref to parent.
Speeds up tee processing 2 to 5 times.
2009-12-07 09:51:03 +01:00
Edward Hervey
4140350594 gstobject: Avoid double strdup when setting NULL names.
Instead of chaining up to gst_object_set_name (which does typechecking
and strdup's the name again), just use the already allocated new
name.
2009-12-07 09:49:06 +01:00
Peter van Hardenberg
bfef4a70bf pwg: make the enum example (based on videotestsrc) actually match videotestsrc 2009-12-04 12:17:07 -08:00
Sebastian Dröge
df741e7e2f bin: Ignore state change failures from children that were removed from the bin already
Fixes bug #584441.
2009-12-04 16:28:27 +01:00
Sebastian Dröge
08ae8a1afb registry: Use GMappedFile for reading the registry
Fixes bug #603787.
2009-12-04 15:19:11 +01:00
Javier Jardón
ca974b1a8f registry: Substitute deprecated GLib symbol: g_mapped_file_free
Use g_mapped_file_unref if Glib >= 2.22 is available

Fixes bug #560442.
2009-12-04 14:50:46 +01:00
Jan Schmidt
f490508490 basesrc: Shut down the pad task when the initial seek fails.
Set the pad flushing and stop the pad task when the initial seek fails
during activation. Avoids racy calls into the _create() function when
BaseSrc::stop() has already run.

Fixes: #603059

Also, fix some misspelled comments.
2009-12-04 12:41:58 +00:00
Tim-Philipp Müller
103bd930fc po: update .po files after string changes
(The queue2 strings could use some tidying up)
2009-12-03 20:56:00 +00:00
Tim-Philipp Müller
5351298266 filesink, filesrc: printf format fixes
gstfilesink.c:399: error: format ‘%d’ expects type ‘int’, but argument 8 has type ‘size_t’
gstfilesink.c:399: error: format ‘%d’ expects type ‘int’, but argument 9 has type ‘gsize’
gstfilesrc.c:588: error: format ‘%08llx’ expects type ‘long long unsigned int’, but argument 8 has type ‘off_t’
2009-12-03 20:53:25 +00:00
Stefan Kost
c92178827b tee: add special case for only one pad conected
It is not easy to setup a tee on the fly, thus apps need to add them always if
they might need them. This changes the code so, that if only one src-pad is
active, we push buffers directly. In the normal code path all buffers are pushed
with an extra ref, that forces followup inplace elements to copy the data.
2009-12-03 16:44:28 +02:00
Stefan Kost
15bac7df00 tee: only message once per received buffer
Avoids checking for each source pad. The messages would be almost identical
anyway.
2009-12-03 16:11:59 +02:00
Stefan Kost
8715e3ec36 drafts: planning 2009-12-03 16:06:41 +02:00
Stefan Kost
d80750e8d2 tee: remove unused offset member 2009-12-03 16:06:35 +02:00
Stefan Kost
33f9abda38 tee: only notify alloc-pad property if changed. 2009-12-03 16:02:35 +02:00
Wim Taymans
d5e42a92c8 event: fix docs for _copy() 2009-12-02 13:29:28 +01:00
David Schleef
c222a3015e tools: Fix check for Windows 2009-12-01 22:37:51 -08:00
David Schleef
b0889cf2a1 Make gcc inline assembly conditional on gcc 2009-12-01 18:09:35 -08:00
Edward Hervey
4452672001 queue: Register debug funcptr only once.
Makes creating queue elements 3-4 times faster and avoids contention on the
global funcptr lock.
2009-12-01 19:29:25 +01:00
Edward Hervey
efa5aee509 basesrc/basesink: Register debug funcptr only once.
Makes basesrc/basesink initialization 3-4 times faster and avoids
contention on the global funcptr lock
2009-12-01 19:27:47 +01:00
Edward Hervey
24b357a444 gstghostpad: Register debug funcptr only once.
This makes ghostpad/proxypad creation 5 times faster and avoids contention
over the global funcptr lock.

I also moved the two class init down in the code to avoid having to forward
declare all the various functions.
2009-12-01 17:56:19 +01:00
Edward Hervey
4da0da822a gstpad: Only register debug funcptr once.
This makes pad initialization 2 times faster and without any contention
over the debug funcptr global lock.
2009-12-01 17:56:19 +01:00
Edward Hervey
8f40effea6 gstinfo: API: Add GST_DEBUG_REGISTER_FUNCPTR method.
This is a variant of GST_DEBUG_FUNCPTR which does not return anything.
2009-12-01 17:56:19 +01:00
Tim-Philipp Müller
7796ae457e Automatic update of common submodule
From 87bf428 to 47cb23a
2009-12-01 15:05:34 +00:00
Sebastian Dröge
59d68619f4 configure: Use new AG_GST_PLATFORM macro 2009-12-01 14:30:26 +01:00
Sebastian Dröge
a7301aeef0 Automatic update of common submodule
From da4c75c to 87bf428
2009-12-01 14:10:59 +01:00
Wim Taymans
8d34217dcc basesink: clip stepping boundaries
Rounding errors with the floating point rate could make it so that we
don't end up exactly at the required stepping duration.
Use the segment clipping boundaries, which are not subject to rate
adjustements, instead to detect when we reached the stepping duration.

Add some debug info related to going to the PAUSED state.
2009-11-28 22:34:19 +01:00
Wim Taymans
9ea9f9a816 docs: fix another typo 2009-11-28 17:02:17 +01:00
Wim Taymans
c5291d5c21 docs: fix typo 2009-11-28 15:40:30 +01:00
Edward Hervey
084cfed249 Automatic update of common submodule
From 53a2485 to da4c75c
2009-11-27 18:54:33 +01:00
Thiago Santos
0491df555d gstevent: fix docs
Fix flush stops docs, those are serialized, not out of bounds.
Probably a copy and paste mistake.
2009-11-27 13:44:11 -03:00
Stefan Kost
a9a6c0f0cd docs: fix broken xrefs 2009-11-27 18:31:39 +02:00
Stefan Kost
2ba8b37d15 docs: fix broken xrefs 2009-11-27 16:39:37 +02:00
Stefan Kost
efcad155e0 docs: add missing section to libs-docs 2009-11-27 16:39:01 +02:00
Stefan Kost
8d63e8e0c3 docs: make links work (needs recent gtk-doc) 2009-11-27 14:18:39 +02:00
Stefan Kost
85d85f9d36 docs: add missing parameter docs 2009-11-27 14:18:39 +02:00
Stefan Kost
309187c2ce docs: enable docs for GstObjectClass to fix links 2009-11-27 14:18:38 +02:00