I'm setting up a process where an HLS stream is recorded on AWS S3. The setup is :
- one input of type URL_PULL plugged to my HLS stream
- one output that send HLS to an S3 bucket
Everything is working fine. However, if I simulate interruptions on my HLS stream (let's say for some reason, the person streaming on the HLS stream lost his network connectivity), I only get to record the first part. My Medialive channel never picks up the stream and continue the recording. I tried to play with this part of the settings :
network_input_settings: {
hls_input_settings: {
bandwidth: 1,
buffer_segments: 1,
retries: 3600,
retry_interval: 1,
},
}
without any success.
Anyone know if what I want to do is possible at all ?
Edit
Here is what I get in my channel logs:
I stopped streaming at around 9:08 and started again a few seconds later. 3 alerts appear, however they never get cleared and the input and output network stay 0 and never resume. In the last alert, not sure why the channel is trying to pull the HLS stream from the endpoint we see on the screenshot which is not my input HLS URL.
The retries setting which is currently set to 1 is the number of times MediaLive will retry to read the source HLS manifest before giving up. The retry_interval is the number of seconds that MediaLive will spend between each retry attempt. In your above example the MediaLive channel will try to read the manifest 1 time 1 second after the first failure before giving up. Depending on how long of an outage you will find acceptable in your channel is really how to adjust these settings. If you feel you will never have an outage longer than 15 minutes do to source issues and you are willing to allow the Channel to try and recover on it's own you could adjust your retry attempt to 150 and retry_interval to 6, or 300 and 3 or any other combination that comes to the desired length you are willing to allow the channel to recover on it's own.
Zach