Hi all,
I wonder could you help me resolve an issue that I can't find any information on. I'm trying to understand if it's possible to use HLS servers such as nginx / nginx plus to provide 'live streaming' for a custom data format. I want to deploy HLS to enable a publisher - subscriber model using HTTP, and HLS is a perfect fit in every way apart from it's bias towards audio / video formats such as h.264 and acc-lc.
I am writing the clients for both publishers and subscribers and could consider wrapping my data in (a simple) audio / video format such that it appears to nginx as expected, but internally the data is non-video. However, I need to understand how the stream segmenter works first. e.g. If I used the segmentor with duration of say 30 seconds, how does the segmentor determine the appropriate point in the upcoming data stream to make an 'incision'. Is there a generic stream format that I could adapt my data to ?
e.g. A format similar to HTTP Chunked Encoding which is a simple sequence of chunks containing a size and data component would be ideal for me :
<number of bytes in chunk>
BYTES....
<number of bytes in chunk>
BYTES....
I'm aware that Chunked Encoding is generally not used for segmentation on HLS but mention it as it's an ideal format for my use case.
My data it's is low-rate (circa 5KBps) however unlike audio it is not a series of tiny samples, but a series of data structures which cannot easily be sliced at a granularity below 5 seconds. Additionally it is variable bit rate so a simple size based segmentation will not work well.
For full context, ideally I'd like to deploy on EC2 and serve subscribers directly from Cloudfront / S3.
Any help on this would be much appreciated as I can't find evidence of using HLS outside of audio/video streams.
I wonder could you help me resolve an issue that I can't find any information on. I'm trying to understand if it's possible to use HLS servers such as nginx / nginx plus to provide 'live streaming' for a custom data format. I want to deploy HLS to enable a publisher - subscriber model using HTTP, and HLS is a perfect fit in every way apart from it's bias towards audio / video formats such as h.264 and acc-lc.
I am writing the clients for both publishers and subscribers and could consider wrapping my data in (a simple) audio / video format such that it appears to nginx as expected, but internally the data is non-video. However, I need to understand how the stream segmenter works first. e.g. If I used the segmentor with duration of say 30 seconds, how does the segmentor determine the appropriate point in the upcoming data stream to make an 'incision'. Is there a generic stream format that I could adapt my data to ?
e.g. A format similar to HTTP Chunked Encoding which is a simple sequence of chunks containing a size and data component would be ideal for me :
<number of bytes in chunk>
BYTES....
<number of bytes in chunk>
BYTES....
I'm aware that Chunked Encoding is generally not used for segmentation on HLS but mention it as it's an ideal format for my use case.
My data it's is low-rate (circa 5KBps) however unlike audio it is not a series of tiny samples, but a series of data structures which cannot easily be sliced at a granularity below 5 seconds. Additionally it is variable bit rate so a simple size based segmentation will not work well.
For full context, ideally I'd like to deploy on EC2 and serve subscribers directly from Cloudfront / S3.
Any help on this would be much appreciated as I can't find evidence of using HLS outside of audio/video streams.