gstreamer/ext/hls
Tim-Philipp Müller f0fcf1d718 hls: m3u8: Rework m3u8 parsing and storage.
Make M3U8 and GstM3U8MediaFile refcounted. The contents
of it and GstM3U8MediaFile are pretty much immutable
already, but if we make it refcounted we can just
return a ref to the media file from _get_next_fragment()
instead of copying over all fields one-by-one, and then
copying them all into the adaptive stream structure fields again.

Move state from client into m3u8 structure.  This will
be useful later when we'll have multiple media playlists
being streamed at the same time, as will be the case with
alternative renditions.

This has the downside that we need to copy over some
state when we switch between variant streams.

The GstM3U8Client structure is gone, and main/current
lists are not directly in hlsdemux. hlsdemux had as
many CLIENT_LOCK/UNLOCK as the m3u8 code anyway...
2016-08-03 23:49:54 +10:00
..
gsthls.h hls: rename plugin from fragmented to hls 2015-12-01 17:51:34 +00:00
gsthlsdemux.c hls: m3u8: Rework m3u8 parsing and storage. 2016-08-03 23:49:54 +10:00
gsthlsdemux.h hls: m3u8: Rework m3u8 parsing and storage. 2016-08-03 23:49:54 +10:00
gsthlsplugin.c hls: rename plugin from fragmented to hls 2015-12-01 17:51:34 +00:00
gsthlssink.c bad: use new gst_element_class_add_static_pad_template() 2016-03-24 14:56:51 +02:00
gsthlssink.h Make the hls plugin depend on gnutls and move to ext/hls/ 2013-03-19 10:54:18 +01:00
gstm3u8playlist.c hls: rename plugin from fragmented to hls 2015-12-01 17:51:34 +00:00
gstm3u8playlist.h hls: m3u8playlist: more clean-ups 2015-09-30 00:43:26 +01:00
m3u8.c hls: m3u8: Rework m3u8 parsing and storage. 2016-08-03 23:49:54 +10:00
m3u8.h hls: m3u8: Rework m3u8 parsing and storage. 2016-08-03 23:49:54 +10:00
Makefile.am hls: Add OPENSSL_CFLAGS to CFLAGS 2016-03-04 09:26:34 +02:00