gst-plugins-rs/net/hlssink3
Seungha Yang d2e5cb43cc hlssink3: Various cleanup
* Simplify state/playlist management
* Fix a bug that segment is not deleted if location contains directory
and playlist-root is unset
* Split playlist update routine into two steps, adding segment
to playlist and playlist write

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1387>
2023-11-10 17:32:39 +02:00
..
src hlssink3: Various cleanup 2023-11-10 17:32:39 +02:00
tests Various minor cleanups 2022-10-22 19:50:24 +03:00
build.rs Add hlssink3 plugin 2021-11-16 08:23:44 +00:00
Cargo.toml hlssink3: Remove unused deps 2023-11-10 17:32:39 +02:00
LICENSE-MPL-2.0 git: replace LICENSE file symlinks with copies 2023-04-05 18:17:16 +03:00
README.md Add hlssink3 plugin 2021-11-16 08:23:44 +00:00

GStreamer HTTP Live Streaming Plugin

A GStreamer HLS sink plugin. Based on the "hlssink2" element.

The "hlssink3" is feature-equivalent to the "hlssink2" element. Any pipeline that uses "hlssink2" can use the "hlssink3" element and the result should be the same.

The "hlssink3" element has a playlist-type property used to control the behavior of the HLS playlist file. The available values for this property are:

  • null (default): The tag #EXT-X-PLAYLIST-TYPE won't be present in the playlist during the pipeline processing. The playlist will be updated in sync as new segments are available, old segments are removed, keeping N segments as defined in the property playlist-length. This is the default behavior, and is compatible with how "hlssink2" works;
  • "event": The playlist is updated as new segments are available, and the tag #EXT-X-PLAYLIST-TYPE:EVENT is present during processing. No segments will be removed from the playlist. At the end of the processing, the tag #EXT-X-ENDLIST is added to the playlist;
  • "vod": The playlist behaves like the event option (a live event), but at the end of the processing, the playlist will be set to #EXT-X-PLAYLIST-TYPE:VOD.