summaryrefslogtreecommitdiff
path: root/ext/hls/gsthlssink2.c
Commit message (Collapse)AuthorAgeFilesLines
* hls: allow per feature registrationStéphane Cerveau2021-03-231-8/+3
| | | | | | | | | | | | | Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2038>
* hlssink2: Mark as MuxerThibault Saunier2020-11-301-1/+1
| | | | The way it is usable by encodebin2. This is what splitmux does already.
* hlssink2: fix and flesh out docsTim-Philipp Müller2020-10-161-4/+14
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1699>
* hlssink2: Actually release splitmuxsink's padsJan Alexander Steffens (heftig)2020-09-091-2/+2
| | | | | | | | | It was looking at the "outer" peer of the ghost pad, not the "inner" peer (the target). It provided the wrong pad to gst_element_release_request_pad. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1551>
* hlssink2: Don't assert if we don't have a current location when receiving ↵Sebastian Dröge2020-08-031-1/+5
| | | | | | | | | | the fragment-closed message This can happen if the application did not provide an output stream for the fragment and didn't handle the error message before splitmuxsink decided to consider the fragment closed. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1469>
* hlssink2: Add signals for allowing custom playlist/fragment handlingSebastian Dröge2019-12-311-11/+180
| | | | | | | Instead of always going through the file system API we allow the application to modify the behaviour. For the playlist itself and fragments, the application can provide a GOutputStream. In addition the sink notifies the application whenever a fragment can be deleted.
* hlssink2: Respect requested max-files property for decision on removing old ↵Seungha Yang2019-10-071-5/+6
| | | | | | | | | | | | | fragments from disk hlssink2 defined "max-files" property to decide the maximum number of fragments which should be stored in disk. But we've not used the property. Instead, the size has been maintained by "playlist-length". Since "max-files" and "playlist-length" have different meaning, the decision should be done by "max-files" property. For example, an user might want expose only 3 fragments via playlist but might want to keep more files than 3 in disk.
* hlssink,hlssink2: Ensure writing ENDLIST tag at the endSeungha Yang2019-10-011-0/+11
| | | | | | | hlssink* elements could be finalized without EOS event, and in that case the final playlist might not include the EXT-X-ENDLIST tag. Since missing ENDLIST tag means it's live stream, but we did't intend it, hlssink* elements should put the tag at the end.
* hlssink2: Add property for disabling sending of force-keyunit eventsSebastian Dröge2019-02-271-1/+20
|
* hlssink2: Fix string leakSeungha Yang2018-11-271-0/+1
| | | | Need to free allocated string memory on _finalize()
* hlssink2: Use the new reset-muxer property on splitmuxsinkSebastian Dröge2018-04-031-1/+1
| | | | | | | | We don't want to reset the muxer, otherwise the continuity counter will reset after each segment and some software gets confused. We want to create a continuous stream. https://bugzilla.gnome.org/show_bug.cgi?id=794816
* hlssink2: Remove useless if statementEdward Hervey2018-01-031-2/+1
| | | | | | message will always be present CID #1409853
* hlssink2: New HLS sink element based on splitmuxsinkSebastian Dröge2017-05-121-0/+479
This embeds the muxer inside the sink and accepts elementary streams while the old HLS sink required the muxer outside. Apart from that the interface is the same as before. Currently only mpegtsmux is supported, but support for other muxers is just a matter of adding a property. The advantage of the new sink is that it reduces complexity a lot and properly handles pre-encoded streams with appropriately spaced keyframes. https://bugzilla.gnome.org/show_bug.cgi?id=781496