AWS Elemental MediaLive – Archive Output – Black Video Frames

0

Hi, if I assign an Archive Output to my MediaLive pipeline it will write to the archive file as long as the channel is running. If there is a live stream then it will write the livestream but if there is no livestream it will just write black video frames.

How can change that behaviour? I only want to archive the live stream and not hours of black video frames. Can the archive output make for each livestream one file?

asked a year ago313 views
7 Answers
1

Broadly the thing to consider is when the source stops the encode stops. I've set mine up to grab last frame when there is no input and it sounds like your too. In Output Group try changing your input loss action from Emit Output to Pause Output.

Enter image description here

profile picture
answered a year ago
  • Thank you Bruce. Unfortunately the Archive Output Group doesn't have an Input Loss Action...?

0

You may want to try using the Pause with the AWS MediaLive Schedule function. This should be done with the MediaLive channel running. Choose the pipeline(s) you want to pause. Schedule events can be create using the MediaLive console or through API request.

  • ML Channel -> Schedule tab -> Create -> Action Type = Pause, Pause Pipeline
  • ML Channel -> Schedule tab -> Create -> Action Type = Pause, Unpause Pipeline
AWS
Mike-ME
answered a year ago
  • Thank you for the suggestion.

0

Assuming that you want to end the archive to end after the input source stops, you could adapt this recently published Lambda function for MediaLive.

The Lambda is written to MediaLive alerts in CloudWatch (by default, 'Video Not Detected' events ) and send an input switch command to the MediaLive Channel. You could easily alter that code to send a Channel Stop command instead of an input switch. I suggest waiting 30s then probing the Channel logs to confirm the Alert has not cleared, then stop the channel.

Link: https://github.com/aws-samples/aws-medialive-fallback-switcher-lambda

profile picture
rtcAMZN
answered 10 months ago
  • Thank you so much for the suggestion. Good idea. I found sending an HLS output directly to the S3 bucket as the easiest option. Then I have the Input Loss action and there is no need for transcoding.

0

I see that now. Wow.

Enter image description here

Maybe. There has to be a way to end the encode when the source stops.

profile picture
answered a year ago
0

Was there a resolution to this post? We are facing a similar issue where by MediaLive continues to archives blank 15 mins video chunks to S3 even after the input stream is stopped.

answered 6 months ago
0

Not really. You may use "HLS output group to S3" to be able to assign a "Imput Loss Action".

answered 6 months ago
0

re: 'Was there a resolution to this post? We are facing a similar issue where by MediaLive continues to archives blank 15 mins video chunks to S3 even after the input stream is stopped."

Yes. You have at least two options per the answers above: alter input loss behavior to not emit black; and/or send and automated stop command to the channel.

profile picture
rtcAMZN
answered 6 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions