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