Commit graph

61 commits

Author SHA1 Message Date
Sebastian Dröge
a51116add3 hlsdemux: Refactor threading and downloading
We now download fragments as fast as possible and push them downstream
while another thread is just responsible for updating live playlists
every now and then.

This simplifies the code a lot and together with the new buffering
mode for adaptive streams in multiqueue makes streams start much faster.

Also simplify threading a bit and hopefully make the GstTask usage safer.
2014-02-23 00:10:45 +01:00
Sebastian Dröge
e40b72bc9b hlsdemux: Ignore empty lines in the playlist
Based on a patch by Andoni Morales.
2014-02-12 18:50:09 +01:00
Sebastian Dröge
65c1faf553 hlsdemux: Make sure to ignore \r in line endings in every case 2014-02-12 18:47:45 +01:00
Arnaud Vrac
6e54b8ee53 hlsdemux: schedule next update based on the fragment duration 2014-02-12 15:18:29 +01:00
Sebastian Dröge
dc45d236d2 hlsdemux: Use g_ascii_xdigit_value() instead of our own version of it 2014-02-12 14:10:02 +01:00
Sebastian Dröge
5e55bae14b hlsdemux: Don't try decryption if an unsupported method is found 2014-02-11 18:15:45 +01:00
Sebastian Dröge
56faad51bb hlsdemux: Properly parse IV from the playlist
Without this every fragment's first 16 bytes will be corrupted
if not the fallback IV is used by the playlist.
2014-02-11 18:15:07 +01:00
Sebastian Dröge
a4847fd4db hlsdemux: Actually store doubles as such and don't truncate them to ints
Fixes broken duration reporting.
2014-02-10 17:27:10 +01:00
Sebastian Dröge
a5387eb372 hlsdemux: Use locale-independent int/float parsing functions from GLib 2014-02-10 17:27:10 +01:00
Sebastian Dröge
6abed8da20 hlsdemux: Update to non-deprecated GLib thread API 2014-02-09 18:19:33 +01:00
Alessandro Decina
d2d6798087 Make the hls plugin depend on gnutls and move to ext/hls/
gnutls is used to implement AES decryption
2013-03-19 10:54:18 +01:00
Renamed from gst/hls/m3u8.c (Browse further)