Wim Taymans
701424be9b
typefind: send STREAM-START event
...
Send a STREAM_START event when we are operating in pull mode.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684424
2012-09-26 13:25:03 +02:00
Mark Nauwelaerts
b14a3ad4ef
identity: retimestamp both pts and dts when doing so
2012-09-26 10:55:47 +02:00
Mark Nauwelaerts
8e98ce54e1
identity: also track and store segment info in single segment mode
2012-09-25 15:06:43 +02:00
Josep Torra Valles
111fcc6e31
Make intel compiler happier
...
https://bugzilla.gnome.org/show_bug.cgi?id=552657
2012-09-25 00:56:26 +01:00
Mark Nauwelaerts
f495fa7a21
identity: transform GAP event in single segment mode
2012-09-19 15:14:35 +02:00
Wim Taymans
3abc720345
docs: fix some docs
...
from git grep for ffmpegcolorspace and x-raw-
2012-09-13 11:35:41 +02:00
Mark Nauwelaerts
947635d893
filesink: fix build on Cygwin
...
... where __fbufsize is not available
2012-09-12 17:16:41 +02:00
Tim-Philipp Müller
2fe8ebaae6
queue2: fix possible data corruption in ring buffer mode when seeking
...
Fix race that could cause data corruption when seeking in ring buffer
mode.
In perform_seek_to_offset(), called from the demuxer's pull_range
request, we drop the lock, tell upstream (usually a http source)
to seek to a different offset, then re-acquire the lock before we
do things to the ranges. However, between us sending the seek event
and re-acquiring the lock, the source thread might already have pushed
some data and moved along the range's writing_pos beyond the seek
offset. In that case we don't want to set the writing position back
to the requested seek position, as it would cause data to be written
to the wrong offset in the file or ring buffer.
Reproducible doing seek-emulated fast-forward/backward on 006653.
Conflicts:
plugins/elements/gstqueue2.c
2012-09-12 12:59:50 +01:00
Tim-Philipp Müller
a85991eeb8
baseparse, typefind: only activate in pull mode if upstream is seekable
...
Upstream might support pull mode, but only sequential pulls,
which isn't gonna do much for us.
https://bugzilla.gnome.org/show_bug.cgi?id=634927
2012-09-11 01:40:53 +01:00
Jan Schmidt
8d8608c23b
ghostpad: Make some debugging more verbose
...
Also, remove an unnecessary #include in input-selector
2012-08-31 06:25:37 -07:00
Arnaud Vrac
dc86e65265
inputselector: fix clock leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=682997
2012-08-30 19:47:57 +01:00
Edward Hervey
0eb13f146f
inputselector: Wait for other streams to advance on unselected pads
...
Otherwise we end up dropping a lot of data in the case where data starts
arriving on the non-selected pad, resulting in big gaps in stream switching
2012-08-14 18:44:38 +02:00
Edward Hervey
6b447acc3c
inputselector: More debug statements
2012-08-14 18:43:54 +02:00
Edward Hervey
c33d2f7aba
inputselector: Don't forward stream-start sticky events
...
Only one STREAM_START event should be let through, else it will
confuse downstream elements that think a new stream is starting
whereas in fact we are just switching to a different input.
In the future we might want to let them through but with the same
sequence number.
2012-08-14 18:42:31 +02:00
Edward Hervey
ea761a24b4
inputselector: Use the first created pad by default
...
This guarantees a bit more consistency in which input stream will
be selected by default. It would previously be the first pad on which
an event/buffer/query was received ... which was racy and non-predictable.
2012-08-06 11:36:29 +02:00
Tim-Philipp Müller
a9d1c529f6
input-selector: use generic marshaller for "block" action signal
2012-08-05 16:48:27 +01:00
Tim-Philipp Müller
ba39106758
typefind: send segment_done event in addition to segment_done message
2012-08-02 00:22:29 +01:00
Sebastian Dröge
389ec66946
basesrc: Add default handler for URI query in GstURIHandler subclasses
2012-07-31 17:26:37 +02:00
Wim Taymans
f05b0e222f
Update for new seeking variable name
...
When seeking, the start value and type are now called start and start_type.
2012-07-27 15:24:52 +02:00
Wim Taymans
a1f1bbd363
typefind: require bytes before typefinding
...
Require that we have some bytes in the adapter before we attempt to typefind.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680479
2012-07-24 12:38:15 +02:00
Wim Taymans
a21575d640
plugins: print flags better
...
print the buffer flags as a hex number so that it becomes easier to see what
flags are set.
2012-07-23 13:40:38 +02:00
Wim Taymans
b5caa93f6d
queue2: set buffering-left to 0 on 100% buffering
...
Set the buffering-left field in the query to 0 when we are completely buffered.
Improve the debug.
2012-07-19 12:42:05 +02:00
Wim Taymans
60091bf225
queue2: fix buffering query
...
Fix the buffering query, fill in the right buffering-left and estimated-total
values.
2012-07-19 12:14:29 +02:00
Wim Taymans
14550f2ee2
queue2: fix the buffering-left in the buffering message
...
The buffering-left field in the buffering message should contain a time estimate
in milliseconds about for long the buffering is going to take. We can calculate
this value when we do rate_estimates.
2012-07-19 11:13:45 +02:00
Tim-Philipp Müller
eecaca9140
queue: answer SCHEDULING query
...
Instead of letting the default query handler fail.
2012-07-18 09:15:51 +01:00
Tim-Philipp Müller
39054884fd
queue2: handle CAPS event and drop it if operating in ring buffer mode
...
Fixes "Unexpected event of kind caps can't be added in temp file"
warning when doing download buffering.
2012-07-17 19:27:44 +01:00
Tim-Philipp Müller
f72ba83a84
plugins: embed GstAueueArray in dataqueue struct as well
2012-07-14 20:33:30 +01:00
Tim-Philipp Müller
92cba34e0b
plugins: don't use one-time array in plugin_init
2012-07-14 20:28:54 +01:00
Tim-Philipp Müller
22d78bad25
queue: embed GstQueueArray structure
2012-07-14 20:26:23 +01:00
Tim-Philipp Müller
14632db174
plugins: sprinkle some more G_GNUC_INTERNAL
2012-07-14 20:05:53 +01:00
Tim-Philipp Müller
2b17de7504
plugins: add init/clear functions to GstQueueArray
2012-07-14 19:38:39 +01:00
Tim-Philipp Müller
94f6ba9c0b
base: make GstQueueArray private to coreelements for now
...
Keep it private until we have a reason to make it public.
2012-07-14 19:36:02 +01:00
Edward Hervey
d3ffa82639
Remove 0.10-related documentation and "Since" markers
2012-07-10 12:03:27 +02:00
Tim-Philipp Müller
c51a2c1ddf
basesrc, basesink, baseparse, typefind: use GST_SEGMENT_FLAG with segment flags
2012-07-09 21:51:07 +01:00
Tim-Philipp Müller
a8d5665db7
plugins: sprinkle G_GNUC_INTERNAL for dataqueue functions
...
And remove padding, since this is not public API any more.
2012-07-09 20:55:39 +01:00
Sebastian Dröge
af73f3fc02
queue: Fix handling of min-threshold and serialized queries
...
Only consider the queue empty if the minimum thresholds
are not reached and data is at the queue head. Otherwise
we would block forever on serialized queries.
This also makes sending of serialized events, like caps, happen
faster and potentially improves negotiation performance.
Fixes bug #679458 .
2012-07-09 15:40:29 +02:00
Tim-Philipp Müller
dcc35b9c67
typefindelement: remove unimplemented maximum property
2012-07-06 11:26:14 +01:00
Tim-Philipp Müller
388237756e
tee: remove unimplemented has-sink-loop property
2012-07-06 11:26:14 +01:00
Tim-Philipp Müller
41a762adb3
queue2: remove deprecated temp-location use, make it read-only
2012-07-06 11:26:14 +01:00
Tim-Philipp Müller
b23185a73a
identity: remove deprecated check-perfect property
...
Replaced by the more specific check-imperfect-{timestamp,offset}
2012-07-06 11:26:14 +01:00
Edward Hervey
31accf2d01
dataqueue: Use GstQueueArray
2012-07-04 17:46:54 +02:00
Edward Hervey
96b9ae287e
queue: Use new GstQueueArray for local storage.
...
Makes _chain() and _loop() 25% faster
2012-07-04 17:46:54 +02:00
Chun-wei Fan
cb5e8f2bb4
fdsink.c: fix G_OS_WIN32 #ifdef
...
Postpone the #ifdef to a point after glib.h (via gstfdsink.h) is included
so that the needed defines and header includes can be done correctly,
especially on Visual C++ builds.
https://bugzilla.gnome.org/show_bug.cgi?id=679112
2012-07-02 12:05:50 +01:00
Tim-Philipp Müller
31976c426e
inputselector: remove some dead code for old GLib versions
2012-06-26 17:30:19 +01:00
Thiago Santos
42fab9db45
inputselector: avoid notify-tags holding lock
...
unlock before issuing this notification to prevent
deadlocks when other elements reacts to new tags.
Fixes #678220
2012-06-21 11:15:07 -03:00
Wim Taymans
76e8b2ecda
task: add GDestroyNotify to _new
...
Add a GDestroyNotify to the user_data we pass to gst_task_new()
Change gst_pad_start_task() to also take the notify
2012-06-20 10:31:49 +02:00
Sebastian Dröge
7b966e4577
inputselector: Only proxy the allocation query for the active pad and send reconfigure events to the old/new pad when switching pads
2012-06-19 10:32:10 +01:00
Wim Taymans
7fb522718e
queue2: fix percent scaling
...
Use _scale functions to scale the percent values.
Correctly scale the percent values in the buffering ranges.
2012-06-15 15:36:41 +02:00
David Svensson Fors
066b515985
gstfunnel: avoid access of freed pad
...
Save the value of the pad's got_eos in gst_funnel_release_pad,
before calling gst_element_remove_pad. This is because
gst_element_remove_pad may free the pad.
https://bugzilla.gnome.org/show_bug.cgi?id=678017
2012-06-14 14:10:22 +01:00
Matej Knopp
b3cee7155a
typefindelement: Only send caps when pad is being activated
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677819
2012-06-11 10:47:40 +02:00