- Newest
- Most votes
- Most comments
Hello,
The issue seems to be related to the missing root manifest file in your media stream setup using EMX, EML, S3(hls), Lambda, and EMP.
so,
1.Configure EML for Root Manifest Generation: EML might require specific configuration to generate the root manifest file. You'll need to consult your EML documentation or support to understand how to enable this functionality. It might involve enabling a specific option or setting the output format.
2.Expected File Naming Structure: Based on your observations, EMP seems to expect a specific naming structure for the root manifest: {EMP hls ingest endpoint}_{EML output name}.m3u8 This suggests the root manifest should have the same base name as your individual segments but with the .m3u8 extension.
3.Root Manifest Content: The root manifest file itself should contain references to your individual media segments. It typically uses relative paths to specify the location of each segment within the HLS stream.
EXAMPLE:
Imagine a folder on S3 containing your media segments. The root manifest file (e.g., my_stream.m3u8) would reside within the same folder and list the segments like this:
#EXTM3U #EXT-X-STREAM-INF: ... (stream properties)
#EXTINF:5, segment_00001.ts
#EXTINF:5, segment_00002.ts
#EXTINF:5, segment_00003.ts
... (and so on for all segments)
By providing this master playlist, EMP can understand the structure of your stream and locate the individual segments for playback.
After a lot of twiddling and tinkering, we discovered that mediapackage needs the following file name structure to get a successful push.
if fileName == "index.m3u8": # this is your root manifest ingestUrl = f"{mediaPackageUrl}.m3u8" else: ingestUrl = mediaPackageUrl.replace('channel', fileName) # for all other resources, you need to feed it to the root endpoint.
Relevant content
- asked 5 years ago
- asked 3 years ago
- asked 6 years ago
- AWS OFFICIALUpdated 9 months ago
- AWS OFFICIALUpdated 9 months ago
- AWS OFFICIALUpdated 8 months ago
- AWS OFFICIALUpdated 2 years ago
I fixed the root manifest not being generated issue; it was todo with EML not having permissions to delete files from the s3 bucket, I still get a 404 when I try to curl the manifest. I've noticed that despite lambda getting a 201 from EMP when it puts file into EMP; the EMP logs two entries for the same file; one that it says was a 401 and the other with a 201, I think thats where my issue is. But not sure how to proceed.