Sebastian Dröge
d03e3d7772
inputselector: Only wait until the active pad's running time is reached if the active pad already saw data
...
Otherwise we might block forever because upstream (e.g. multiqueue) is waiting
for the previously active stream to return forever (which is waiting here
in inputselector) before pushing something on the newly selected stream.
2012-03-29 14:47:57 +02:00
Sebastian Dröge
f000bbe924
tee: Fix 'use of logical '&&' with constant operand' compiler warning
...
This is actually a real bug.
2012-03-06 12:27:33 +01:00
Tim-Philipp Müller
4594e4311d
fdsink: implement GstBaseSink::query instead of messing with the pad
2012-02-25 15:18:00 +00:00
Tim-Philipp Müller
965c610028
fdsink: implement SEEKING query
...
We may or may not support seeking. stdout to a
terminal doesn't support seeking, for example, but
... ! fdsink > file.foo just might.
2012-02-25 15:08:55 +00:00
Tim-Philipp Müller
82a9544385
filesink: implement SEEKING query
...
We may or may not do seeking, depends on the
output file/device really, it doesn't have to
be a file after all.
2012-02-25 15:07:43 +00:00
Tim-Philipp Müller
c5b335a0e2
fakesink: answer SEEKING query
...
We don't do seeking, in case anyone wants to know.
2012-02-25 15:07:05 +00:00
Idar Tollefsen
b9b3795c3c
plugins: explicitly cast initialization values to the correct type
...
https://bugzilla.gnome.org/show_bug.cgi?id=667288
2012-01-04 23:59:57 +00:00
Thiago Santos
71fe1ad070
output-selector: Do not false warn about unlinked pad
...
When output-selector didn't receive a newsegment event it would
warn about pad being unlinked when switching pads. Making the logs
wrong and misleading.
2011-12-29 16:59:29 -03:00
Tim-Philipp Müller
8a932dbca6
filesrc: return any remaining data on EOS before returning FLOW_UNEXPECTED
2011-12-25 12:42:11 +00:00
Tim-Philipp Müller
cf5de908fb
filesrc: minor cosmetic changes
...
Rename woffset variable, maintain separate bytes_read in addition
to length variable.
2011-12-25 12:29:46 +00:00
Vincent Penquerc'h
431fc714c9
filesrc: do not mistake short reads for EOS
...
While local filesystems will usually not cause short reads,
this may happen on seekable files on some remote filesystems.
Instead, loop till we get the requested amount of data, or
an actual EOS (ie, 0 bytes).
https://bugzilla.gnome.org/show_bug.cgi?id=665921
2011-12-12 13:35:06 +00:00
Sebastian Dröge
47de97df84
inputselector: Don't send a NEWSEGMENT event if a buffer arrived before the segment was configured
2011-12-07 11:01:49 +01:00
Sebastian Dröge
7952a54299
outputselector: Don't send last segment/buffer when no segment was configured yet
2011-12-07 11:01:31 +01:00
Sebastian Dröge
c8909ab059
fakesink: Make event/buffer verbose output consistent with identity
2011-12-06 14:55:57 +01:00
Sebastian Dröge
b7b84671ba
identity: Print buffer flags in the verbose output
2011-12-06 14:55:57 +01:00
Sebastian Dröge
675e54f1f4
fakesrc: Make event/buffer verbose output consistent with identity and print buffer flags
2011-12-06 14:55:57 +01: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
Mark Nauwelaerts
bfcb5a43a6
identity: unlock clock wait when appropriate
...
... notably FLUSH and state change to READY.
2011-12-02 13:41:54 +01:00
Tim-Philipp Müller
3b28af5171
queue2: fix refactoring of draining-on-eos, munge flow return to FLOW_OK
2011-11-28 01:10:20 +00:00
Tim-Philipp Müller
2a3e7c4feb
queue2: add bufferlist support
...
We want to maintain buffer lists if possible.
2011-11-28 00:16:40 +00:00
Tim-Philipp Müller
d663e18402
queue2: split out draining of queue on FLOW_UNEXPECTED into separate function
2011-11-28 00:16:40 +00:00
Tim-Philipp Müller
c9df12754d
queue2: pass item type enum to _enqueue instead of simple isbuffer boolean
...
Avoids some unnecessary GST_IS_EVENT()
2011-11-28 00:16:40 +00:00
Vincent Penquerc'h
611ac6ea85
multiqueue: check filled state of queues even if another one is empty
...
This will avoid a case where overrun is never signalled if some
stream never produces any data, causing playbin2 to not end preroll.
https://bugzilla.gnome.org/show_bug.cgi?id=660778
2011-11-24 10:38:34 +01:00
Tim-Philipp Müller
16dcd5e958
docs: fix Since: markers for API added after 0.10.35
2011-11-08 00:32:36 +00:00
Tim-Philipp Müller
2f8ac67726
queue: use statically allocated GQueue
2011-11-03 23:08:52 +00:00
Tim-Philipp Müller
cc279e6bdd
queue2: use statically allocated GQueue
2011-11-03 22:41:13 +00:00
Nicolas Dufresne
f0219b327d
basesink: make it easy to override the pad query
...
Add a vmethod to handle the pad query.
Install a default handler for the pad query.
Use the new query function in filesink
2011-09-08 14:46:59 +02:00
Piotr Fusik
14f5518f3d
docs, gst: typo fixes
...
https://bugzilla.gnome.org/show_bug.cgi?id=658449
2011-09-07 18:03:17 +01:00
Josep Torra
0b31cb5d73
fileindex: explicitly cast to the enum types
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:15 +02:00
Josep Torra
d7d2be07af
typefinder: use GST_TYPE_FIND_NONE instead of 0
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:15 +02:00
Sjoerd Simons
341d7a4c0d
capsfilter: don't assume _get_caps still has to be
...
_set_caps only gets called when the buffer is actually pushed, so there
is a reasonably big window between when the initial caps are retrieved
and when the caps are set on our src pad. So we can't assume the not
having negotiated caps on our src pad means _get_caps still has to be
called.
Instead simply always suggest the new caps on buffer_alloc.
2011-08-26 10:23:18 +02:00
Tim-Philipp Müller
a7644b3b1c
queue2: fix deadlock in error path
...
Don't lock the same lock twice. Spotted by Josep Torre Valles.
2011-08-12 19:44:35 +01:00
Mark Nauwelaerts
de514c63d1
filesrc/fdsrc: indicate dynamic size handling to basesrc
2011-06-08 20:16:28 +02:00
David Schleef
f3eac7de22
Work around changes in g_atomic API
...
See #651514 for details. It's apparently impossible to write code
that avoids both type punning warnings with old g_atomic headers and
assertions in the new. Thus, macros and a version check.
2011-06-04 00:36:26 -07:00
Edward Hervey
cbac716f98
outputselector: Remove dead assignment
2011-05-31 13:43:47 +02:00
Mark Nauwelaerts
fe1dcbe6fa
queue2: adjust input data rate estimation
...
... being aware of possible initial higher burst rate.
2011-05-16 12:20:51 +02:00
Tim-Philipp Müller
76ccd2a1e9
docs: fix up some Since markers and update for new multiqueue args
2011-05-14 14:05:52 +01:00
Sebastian Dröge
5229a26a76
inputselector: Add sync mode that syncs inactive pads to the running time of the active pad
...
Fixes bug #645017 .
2011-05-14 11:39:35 +02:00
Sebastian Dröge
9f83109706
multiqueue: Add mode to synchronize deactivated/not-linked streams by the running time
...
Fixes bug #645107 , #600648 .
2011-05-14 11:39:35 +02:00
Mark Nauwelaerts
24888ecc70
multiqueue: ensure thread safety when adding a pad
...
This seems to be a regression, and was causing crashes.
https://bugzilla.gnome.org/show_bug.cgi?id=649878
2011-05-10 18:07:01 +01:00
Stefan Kost
801d89e26f
docs: don't duplicate info that we take from element-details
2011-05-03 13:03:20 +03:00
Sebastian Dröge
8839c513f7
queue2: Add missing ) to the ring-buffer-max-size property description
2011-04-15 13:59:02 +02:00
Sebastian Dröge
ea36e12bbc
multiqueue: Don't leak the sinkpad name
2011-04-14 09:07:48 +02:00
Ole André Vadla Ravnås
037efe8738
elements: Fix pad callbacks so they handle when parent goes away
...
1) We need to lock and get a strong ref to the parent, if still there.
2) If it has gone away, we need to handle that gracefully.
This is necessary in order to safely modify a running pipeline. Has been
observed when a streaming thread is doing a buffer_alloc() while an
application thread sends an event on a pad further downstream, and from
within a pad probe (holding STREAM_LOCK) carries out the pipeline plumbing
while the streaming thread has its buffer_alloc() in progress.
2011-04-13 17:41:17 +02:00
Janne Grunau
b2e6870edc
queue2: prevent calculation with GST_CLOCK_TIME_NONE in update_time_level()
2011-04-13 17:35:39 +02:00
Alessandro Decina
3f1ef2255a
android: make it ready for androgenizer
...
Remove the android/ top dir
Fixe the Makefile.am to be androgenized
To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files.
Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 01:08:07 +02:00
Havard Graff
d092e3b9ff
queue[2]: Make src query MT-safe
...
It is possible that the element might be going down while the event arrives
2011-04-08 14:58:51 +02:00
Sebastian Dröge
1dac816e9c
queue[2]: Unref events if the parent element disappeared
2011-04-08 14:57:18 +02:00
Havard Graff
d5485786a4
queue[2]: Make upstream events MT-safe
2011-04-08 14:57:05 +02:00