Build a UGC Live Streaming App with Amazon IVS: Video On Demand (VOD) Playback (Lesson 6.2)
Welcome to Lesson 6.2 in this series where we're looking at building a web based user-generated content live streaming application with Amazon IVS. This entire series is available in video format on the AWS Developers YouTube channel and all of the code related to the sample application used in this series can be viewed on GitHub. Refer to the links at the end of the post for more information.
Todd Sharp
Amazon Employee
Published Jan 2, 2024
In this lesson, we'll look at how the StreamCat application handles video on demand (VOD) playback for a user's recent live streams.
In lesson 6.1, we learned how the application retrieves and displays a list of recent
Stream
objects. The StreamCat endpoint for VOD playback expects the id
of the Stream
, and retrieves the Stream
, its Channel
and the channel's Category
.If you remember from lesson 1.4, all low-latency live streams are recorded to Amazon S3, and the Amazon S3 bucket is exposed via Amazon CloudFront. If we combine the CloudFront domain, the
recordingPath
from the Stream
, and the static path for the master playlist that is created by the Amazon IVS recording configuration, we can retrieve a masterPlaylistUrl
for the VOD.The
masterPlaylistUrl
can then be used by the Amazon IVS player SDK to playback the VOD in the same way the application plays live streams.First, a
<video>
tag:Next, create the IVS player and load the
masterPlaylistUrl
.In this lesson, we learned how the StreamCat application handles video on demand (VOD) playback for a user's recent live streams. In a future lesson, we'll see how to render chat messages during VOD playback. This concludes lesson 6. In lesson 7, we'll look at how StreamCat captures and persists playback metrics.
Any opinions in this post are those of the individual author and may not reflect the opinions of AWS.