Edward Hervey
5572e63858
hlsdemux: Send NEWSEGMENT events
...
Previously hlsdemux wasn't sending out any newsegment.
Here we push a GST_FORMAT_TIME newsegment, and whenever possible we
try to indicate the proper start time.
This allows downstream elements to relay the start/time values properly
to the sinks, allowing better stream switching.
2011-08-01 18:48:03 +02:00
Edward Hervey
976f4b0bbf
hsldemux: Handle change of media types
...
When switching bitrates, we might end up switching to a different
media-type (like from aac to/from mpeg-ts).
For this switch to behave properly in decodebin2, this patch adds:
* dynamic source pads (which will be added/removed whenever a stream
media type changes
* re-checking the fragment media type whenever we switch to a different
playlist
2011-07-27 16:56:37 +02:00
Olaf Seibert
7583080023
hlsdemux: fix wrong usage of GST_ELEMENT_ERROR macros and compilation on NetBSD
...
https://bugzilla.gnome.org/show_bug.cgi?id=655319
2011-07-27 11:02:41 +01:00
Andoni Morales Alastruey
851e9b1f8d
hlsdemux: set duration in outgoing buffers
...
Currently we push each fragment as a single buffer.
2011-05-03 14:39:15 +01:00
Tim-Philipp Müller
7ec71fb446
hlsdemux: fix DURATION query handling
...
Only answer duration queries in TIME format with a duration
in seconds. Make sure we don't return GST_CLOCK_TIME_NONE as
duration (which is non-0, but still invalid/useless).
2011-05-03 12:01:25 +01:00
Tim-Philipp Müller
0d9dbd4c0f
hlsdemux: implement SEEKING query
2011-05-03 11:51:44 +01:00
Andoni Morales Alastruey
9454003249
hlsdemux: fix handling of end of playlist
...
Don't send the EOS event until we reached the end of the playlist
and the queue is really empty.
2011-04-14 15:36:06 +01:00
Andoni Morales Alastruey
c890a212b6
hlsdemux: fix example pipeline
2011-04-14 15:36:01 +01:00
Andoni Morales Alastruey
3b19ade905
hlsdemux: ignore seek events until it's implemented
2011-04-14 11:47:50 +01:00
Andoni Morales Alastruey
b49461df48
hlsdemux: dispose the fetcher from the same thread it's created
2011-04-14 11:41:56 +01:00
Andoni Morales Alastruey
650418b9d8
hlsdemux: validate properly utf-8 playlist
2011-04-04 09:14:05 +02:00
Andoni Morales Alastruey
e13ef203e3
hlsdemux: use and adapter instead of costful buffer joins
2011-04-04 09:13:26 +02:00
Thiago Santos
12f539c6bb
hlsdemux: Another windows build fix
...
Replace %lld with %u as GST_BUFFER_SIZE is a guint
2011-04-01 16:52:48 -03:00
Tim-Philipp Müller
6edcf4fbe6
hlsdemux: update for media type was renaming from playlist/m3u8 to application/x-hls
2011-03-30 15:53:12 +01:00
Sebastian Dröge
e24a43c61b
hlsdemux: Some minor cleanup
...
Use GST_DEBUG_FUNCPTR and G_PARAM_STATIC_STRINGS
2011-03-30 10:11:24 +02:00
Andoni Morales Alastruey
d5e4f8caf8
hlsdemux: fix indentation and docs sections
2011-03-30 09:19:24 +02:00
Andoni Morales Alastruey
91196418ea
hlsdemux: don't leek the query
2011-03-30 09:19:23 +02:00
Andoni Morales Alastruey
77c0971b62
hlsdemux: check if the task's cond was signaled because it's the end of playlist
2011-03-30 09:19:23 +02:00
Andoni Morales Alastruey
42470cd313
hlsdemux: post a message in the bus when the playlist changes
2011-03-30 09:19:23 +02:00
Andoni Morales Alastruey
daeed217e5
hlsdemux: don't update the playlist if we stay in the same bitrate
2011-03-30 09:19:23 +02:00
Andoni Morales Alastruey
cd0aeb2403
hlsdemux: Add support for URI queries
2011-03-30 09:19:23 +02:00
Andoni Morales Alastruey
5daae4bb18
hlsdemux: Add support for duration queries
2011-03-30 09:19:23 +02:00
Andoni Morales Alastruey
c599e4a9a1
hlsdemux: don't print an error if the download was cancelled
2011-03-30 09:19:22 +02:00
Andoni Morales Alastruey
4602b42dee
hlsdemux: make sure the fetcher state change is complete before continuing
2011-03-30 09:19:22 +02:00
Andoni Morales Alastruey
c580ff26a4
hlsdemux: don't leak the first buffer
2011-03-30 09:19:22 +02:00
Andoni Morales Alastruey
ec1d03e1b4
hlsdemux: clean up code a little bit
2011-03-30 09:19:22 +02:00
Andoni Morales Alastruey
1450233a21
hlsdemux: only check for the end of playlist when the queue is empty
2011-03-30 09:19:22 +02:00
Andoni Morales Alastruey
b765260098
hlsdemux: make sure to stop fragments cache if something cancelled it
2011-03-30 09:19:22 +02:00
Andoni Morales Alastruey
fe883740c5
hlsdemux: reuse the code in reset() to free resources in dispose()
2011-03-30 09:19:21 +02:00
Andoni Morales Alastruey
5a40a62ff4
hlsdemux: use a typefinder to set the caps in the source pad
2011-03-30 09:19:21 +02:00
Andoni Morales Alastruey
3fa4b22149
hlsdemux: add more comments and document better all the threads involved
2011-03-30 09:19:21 +02:00
Andoni Morales Alastruey
8a683fc035
hlsdemux: handle 404 from the source element
2011-03-30 09:19:21 +02:00
Andoni Morales Alastruey
cbba7c8bc5
hlsdemux: stop the fetcher in the PAUSED_TO_READY transition, not when disposing()
2011-03-30 09:19:21 +02:00
Andoni Morales Alastruey
b9a0b4ddd4
hlsdemux: make sure we don't stop the fetcher twice from different threads
2011-03-30 09:19:21 +02:00
Andoni Morales Alastruey
6a0aec0639
hlsdemux: query the uri upstream before updating the playlist
2011-03-30 09:19:20 +02:00
Andoni Morales Alastruey
9aff2de625
hlsdemux: Add HTTP live streaming demuxer element
...
Based on previous work by Marc-André Lureau
2011-03-30 09:19:20 +02:00