Thiago Santos
1618084bc8
oggdemux: check for full eos after a pad goes eos in push mode
...
After a pad is on EOS, verify if all pads are EOS and return
upstream, avoiding keeping the buffer flow without having more
data to push
2013-09-10 12:14:47 -03:00
Thiago Santos
7ecd5b1108
oggdemux: properly handle stop position at seeks in push mode
...
Store the seek stop and seqnum and properly restore them when
receiving the corresponding Segment from upstream. Also fixes
seqnum for converted seek events.
2013-09-10 12:14:47 -03:00
Sebastian Dröge
02c6766c8a
oggdemux: Update segment.base with the chain's start time too
...
Fixes playback of chained ogg files.
https://bugzilla.gnome.org/show_bug.cgi?id=706569
2013-08-22 17:33:45 +02:00
Sjoerd Simons
76647f2710
oggdemux: Prevent seeks when _SCHEDULING_FLAG_SEQUENTIAL is set
...
Don't go into pull mode when the upstream scheduling flags indicate
seeks should be avoided by setting GST_SCHEDULING_FLAG_SEQUENTIAL.
https://bugzilla.gnome.org/show_bug.cgi?id=704929
2013-07-29 16:04:07 +02:00
Sebastian Dröge
246e1781c7
oggdemux: Don't swap start/stop for negative rates in the SEGMENT query
2013-07-29 12:11:38 +02:00
Sebastian Dröge
31763d3c20
oggdemux: Implement SEGMENT query
2013-07-29 10:46:01 +02:00
Sebastian Dröge
fc79a688f5
ogg: Add support for group-id in the stream-start event
2013-07-22 15:24:29 +02:00
Mathieu Duponchelle
905fe0f4ca
oggdemux: Make bisecting fully accurate
...
When bisecting after an earliest time has been found, we need
to only consider the stream for which the earliest time was found.
Before, the following scenario could be and was encountered:
a) Find the earliest time for stream X
b) bisect and find a page which granuletime is indeed < target, but
contains another stream.
c) decide to seek at the wrong offset, sometimes inferior to
the real one, in which case the error was undected or
d) the offset was superior, and thus the actual target keyframe was
not processed, and packets were skipped waiting
for a granulepos.
https://bugzilla.gnome.org/show_bug.cgi?id=700537
2013-07-15 10:34:00 +02:00
Mathieu Duponchelle
affd9f37aa
Revert "oggdemux: fix seeking with negative rate with skeleton"
...
This reverts commit b41cd04289
.
2013-07-15 10:31:08 +02:00
Sebastian Dröge
748cbbd76e
ogg: The Daala headers are little endian, not big endian
2013-06-23 12:07:41 +02:00
Sebastian Dröge
3f9872abaa
ogg: Add Daala support
2013-06-23 11:28:40 +02:00
Sebastian Dröge
1d20c0f4bb
oggmux: Make sure to always set caps on the srcpad and always send a segment event
...
Even if the srcpad is not linked at this point, it might be linked as result of
setting the caps.
2013-05-10 11:24:46 +02:00
Mathieu Duponchelle
46aff49316
oggmux: don't send a segment event before the caps event
...
https://bugzilla.gnome.org/show_bug.cgi?id=699971
2013-05-10 09:28:52 +02:00
Mathieu Duponchelle
4c362768fc
oggmux: The best pad can't be EOS
...
The problem experienced is that the EOS was never emitted by oggmux during a
rendering with GES. The proposed patch checks if the pad is EOS before deciding
it's the "best pad".
https://bugzilla.gnome.org/show_bug.cgi?id=699792
2013-05-08 14:26:17 +02:00
Andoni Morales Alastruey
47cbbe6514
ogg: fix duplicated symbols with schroedinger
2013-05-02 14:02:19 +02:00
Stefan Sauer
cdfc05ec4d
oggmux: add more logging and fix the object param for some logging
...
Use data->pad instead of pad for 'object'. Reduce indentation depth in a helper
with an early return.
2013-04-17 21:47:11 +02:00
Sebastian Dröge
948a4a3632
gst: Add better support for static plugins
2013-04-15 15:52:58 +02:00
Sebastian Dröge
6e01d1869b
ogg: Prevent some symbol conflicts between the ogg plugin and schroedinger
2013-04-15 08:38:34 +02:00
Wim Taymans
461d58795a
oggdemux: don't push on NOT_LINKED pads
...
If our previous flow return was NOT_LINKED, don't try to push on the pads some
more. If we get a RECONFIGURE event on the pad, try to push on it again.
2013-04-04 18:18:54 +02:00
Nicolas Dufresne
e58f838ca3
oggdemux: Allow EOS on timestamp equal to stop/start
...
Changed the check to a current_time equal to the stop will produce
EOS instead of the next one. Also, segment.start can't be NONE, so removing
this check.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696899
2013-04-04 10:09:26 +02:00
Wim Taymans
564f720c40
oggdemux: mark keyframes
...
Use the mapper to set the delta-unit flag.
2013-03-31 18:57:13 +02:00
Stefan Sauer
28d09d43e5
oggmux: don't keep a static string beyond the ref of the owning object
...
Also move down the ref for the caps a bit, so tha we don't leak it in the branch that calls continue.
2013-03-05 22:31:26 +01:00
Stefan Sauer
ce626fc3d8
oggmux: don't crash on caps being NULL
...
Also avoid unused variables if debugging is disabled.
2013-03-03 20:51:43 +01:00
Tim-Philipp Müller
d97dd36ae5
ogg: small GValue optimisation
...
No need to copy buffers we put into the streamheader any more
now that we don't put caps on buffers any more, so there's no
danger of a refcount cycle.
2013-03-03 17:40:21 +00:00
Tim-Philipp Müller
e045b6fb52
oggdemux: add audio-codec and video-codec tags for streams in more cases
2013-02-28 16:27:50 +00:00
Vincent Penquerc'h
658195e6de
oggdemux: fix incorrect testing of invalid granpos values
...
Positive granulepos is valid, -1 granulepos is unset, and all
other negative granulepos are invalid.
Reported by Tim-Philipp Müller
2013-01-07 18:03:52 +00:00
Tim-Philipp Müller
5f59b4f7ee
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-03 23:05:09 +00:00
Jonathan Liu
7f22e3ea7f
oggstream: fix crash with 0 byte ogg packets
...
https://bugzilla.gnome.org/show_bug.cgi?id=687030
2012-10-29 12:04:38 +00:00
Sebastian Dröge
3c1041d5eb
Revert "gst: Add better support for static plugins"
...
This reverts commit d2d79e3bc2
,
which was accidentially pushed.
2012-10-24 13:26:26 +02:00
Sebastian Dröge
d2d79e3bc2
gst: Add better support for static plugins
2012-10-24 12:10:44 +02:00
Wim Taymans
3591df23b1
docs: playbin2 -> playbin
2012-10-09 12:20:10 +02:00
Tim-Philipp Müller
1c22b1fe11
oggmux: send stream-start event
2012-09-23 13:27:27 +01:00
Tim-Philipp Müller
e072bd6130
oggmux: fix up previous commit
...
Was missing the header file change.
2012-09-21 16:10:27 +01:00
Tim-Philipp Müller
5890a4a803
oggmux: send a segment event at the beginning
2012-09-21 15:58:07 +01:00
Sebastian Dröge
b19944d1e4
gst: Update for link/unlink function API change
2012-09-17 13:24:52 +02:00
Mark Nauwelaerts
c629a44162
replace gst_tag_list_free with gst_tag_list_unref
2012-09-14 17:53:21 +02:00
Stefan Sauer
b9054de15c
collectpads: remove gst_collect_pads_add_pad_full
...
Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all
invocations.
2012-09-12 21:03:21 +02:00
Mark Nauwelaerts
899a809330
ext, gst-libs: only activate in pull mode if upstream is seekable
2012-09-11 17:37:27 +02:00
Tim-Philipp Müller
5bb8021fc9
oggdemux: port to new GLib thread API
2012-09-10 01:08:51 +01:00
Tim-Philipp Müller
2079a8c12b
Remove glib-compat-private.h stuff we don't need any more
...
It's all been ported to the latest GLib API now.
2012-09-09 18:36:49 +01:00
Mark Nauwelaerts
62ef0fc55e
oggmux: remove dead code
2012-09-05 12:02:32 +02:00
Mark Nauwelaerts
6a43c1f9c7
oggdemux: send GAP event
...
... in stead of old update newsegment event.
2012-09-05 12:02:32 +02:00
Tim-Philipp Müller
7c2e7b1a4f
text/plain + text/x-pango-markup -> text/x-raw
2012-09-02 02:45:41 +01:00
Tim-Philipp Müller
a99a1042b9
gst_message_new_duration() -> gst_message_new_duration_changed()
2012-09-02 01:27:17 +01:00
Stefan Sauer
a2b1243064
oggmux: remove superflous assignment
2012-08-12 09:57:11 +02:00
Tim-Philipp Müller
4ed7ebc071
oggdemux: set HEADER flag on header packets
...
https://bugzilla.gnome.org/show_bug.cgi?id=681499
2012-08-11 10:18:37 +01:00
Tim-Philipp Müller
8b15f5a8ab
oggmux: don't leak dropped seek event
2012-08-11 09:53:49 +01:00
Tim-Philipp Müller
0dd2766d83
oggmux: pick delta pad earlier during header parsing and based on video/non-video
...
Pick delta pad earlier during header parsing, and pick it based
on whether it's a video stream or not rather than some rather
byzantine signalling from theoraenc etc. which would set the delta
flag on header packets which oggmux would then pick up and determine
that this is a "delta-able" stream.
Since the new videodecoder-based theoraenc didn't do that any more,
we would only see the first delta flag on the second video packet,
which is after we've already muxed a few audio packets flagged as
key units, which trips up the unit test.
Fixes pipelines/oggmux unit test.
https://bugzilla.gnome.org/show_bug.cgi?id=679958
2012-08-10 10:45:09 +01:00
Andoni Morales Alastruey
15c712c7c6
oggdemux: add proper cast for print
2012-08-08 17:41:19 +02:00
Tim-Philipp Müller
17c839c8a1
No statements with side-effects in g_assert() or g_return_*() please
2012-08-08 10:11:48 +01:00