Skip to content

CMAF DASH Manifest References Non-Existent WebVTT Subtitle File - .mpd BaseURL Does Not Match Actual Output Filename

0

Environment:

  • Region: ap-south-1
  • Template: Custom CMAF template with two output groups (DASH-CENC and HLS-CBCS)
  • Input subtitle format: SRT (sidecar)
  • Output subtitle format: WebVTT
  • SDK: AWS SDK for Java v2

Setup: I have a CMAF output group with WriteDashManifest: ENABLED and WriteHlsManifest: DISABLED. The group contains video outputs (H.264 + AV1), one audio output (AAC), and one WebVTT subtitle output. A separate CMAF group handles HLS with CBCS encryption.

Problem: The DASH manifest (.mpd) references the subtitle file as:

<AdaptationSet mimeType="text/vtt" lang="hi">
  <Role schemeIdUri="urn:mpeg:dash:role:2011" value="subtitle"/>
  <Representation id="8" bandwidth="256">
    <BaseURL>media/dash/subtitles/HIN/media.cmft</BaseURL>
  </Representation>
</AdaptationSet>

However, the actual file written to S3 is named media.000000.cmft, not media.cmft. The file media.cmft referenced in the manifest does not exist. This causes DASH subtitle playback to fail.

HLS works correctly: The HLS side of the same job produces segmented .cmft files (media_000000001.cmft through media_000000007.cmft) with a media.m3u8 subtitle manifest that correctly references these segments. So the issue is only with the DASH manifest generation.

What I've tried:

  1. Setting SegmentControl to SINGLE_FILE in CmafGroupSettings - no change in behavior
  2. Both WebVTT and IMSC as destination types - It creates the correct file ✅ (Thus it is not a blocker but something that looks like a bug, thus I am posting this)

Expected behavior: Either the DASH manifest should reference the actual filename media.000000.cmft, or the output file should be named media.cmft to match the manifest.

Note: Video (.cmfv) and audio (.cmfa) outputs in the same CMAF group produce correctly named files with SegmentBase byte-range indexing in the manifest, which work correctly. The filename mismatch is specific to subtitle outputs.

Could the MediaConvert team confirm if this is a known issue or if there is a configuration I'm missing? Happy to share the job ID privately if needed.

asked a month ago42 views
1 Answer
0

Based on the information available about AWS Elemental MediaPackage, I need to clarify that your question appears to be about AWS Elemental MediaConvert, not MediaPackage. These are different services with distinct functionalities.

AWS Elemental MediaPackage is a video origination and packaging service that prepares and protects video for delivery over the internet, while MediaConvert is a file-based video transcoding service. The issue you're describing - regarding job templates, output groups, and transcoding configurations - is specific to MediaConvert's workflow.

The sources provided relate to MediaPackage's handling of DASH manifests, metadata passthrough, and rendition groups for live streaming scenarios. These don't directly address MediaConvert's file-based transcoding behavior or the specific filename mismatch issue you're experiencing with WebVTT subtitle outputs in CMAF containers.

For your specific issue with DASH manifest BaseURL references not matching actual output filenames for WebVTT subtitles in MediaConvert, I recommend:

  1. Contacting AWS Support directly with your job ID, as this appears to be a service-specific behavior that requires investigation by the MediaConvert team
  2. Posting in the AWS Media Services forum where MediaConvert specialists can provide targeted assistance
  3. Checking the MediaConvert documentation specifically for CMAF subtitle output naming conventions

Since you've found that IMSC format produces correctly named files, that may be a viable workaround while the MediaConvert team investigates the WebVTT naming behavior.

answered a month 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.