Including accessibility data in captions - MediaLive

Including accessibility data in captions

In the captions in CMAF Ingest, HLS, MediaPackage, or Microsoft Smooth output groups, you can include accessibility data. This data describes the type of accessibility that the encode represents. For example, a captions track might provide a written translation (into another language) of the speech in the content. Accessibility data is also known as accessibility signaling.

Supported accessibility data standards

MediaLive supports the following styles of accessibility data.

Accessibility data style Specification CMAF Ingest HLS or MediaPackage Microsoft Smooth
DASH role captions DASH role scheme (ISO/IEC 23009-1:2022(E)) Yes Yes
DVB DASH accessibility

ETSI TS 103 285 Technical Specification, V1.3.1 (2020-02)

Yes Yes

Accessibility

Signaled in tags that are inserted in the HLS manifest.

Yes

Specifying data in a CMAF Ingest or Microsoft Smooth output

You can set up the captions encode to include accessibility data when you create the encode, as described in Create embedded or object captions encodes and Create sidecar or SMPTE-TT captions encodes.

In the output that has the captions encode that you want to set up, follow these steps:

  • To include DASH Roles, choose Add dash roles as many times as you want. Choose the style in each role.

  • To include DVB DASH accessibility style, in DVB DASH accessibility, choose the applicable description. You can add only one instance of this accessibility style.

You can add more than one style of accessibility data to each encode. For example, you can add Dash Roles and DVB DASH accessibility style. You might want to do this because different downstream systems for these outputs implement different styles.

Handling of accessibility data in CMAF Ingest or Microsoft Smooth

The fields for accessibility data appear for all output group types, including types that don't support this data.

Note

When you set up audio encodes and you plan to include accessibility data, proceed as follows. First create the audio encodes in the CMAF Ingest and/or Microsoft Smooth output groups, and set up the accessibility data. Then create the audio encodes in the other output groups.

Handling in supported output groups

If you aren't implementing shared captions encodes, MediaLive includes the data only in the captions outputs of the CMAF Ingest and Microsoft Smooth output groups that you set up for captions accessibility data.

Handling in shared encodes

You might plan to share captions encodes among several output groups. For example, you might share a captions encode among one CMAF Ingest output group and other output groups.

If you set up accessibility data in a shared audio encode, MediaLive will handle the data as follows:

  • It will include the data in the CMAF Ingest and Microsoft Smooth output groups that share the encode.

  • It won't include the data in other output groups, because those output groups don't support this data. Even though the output group is sharing the encode, MediaLive won't include the data.

Handling in other output groups

You might try to set up accessibility fields in an output that doesn't support accessibility data. If you're not implementing encode sharing with a CMAF Ingest or Microsoft Smooth output group, you will get an error message when you save the channel.

Specifying data in an HLS or MediaPackage output

You can set up the captions encode to include accessibility data when you create the encode, as described in Create embedded or object captions encodes.

In the output that has the captions encode that you want to set up, in Accessibility, choose IMPLEMENTS_ACCESSIBILITY_FEATURES.

MediaLive assigns accessibility captions a unique attribute in the EXT-X-MEDIA tag of the HLS manifest:

CHARACTERISTICS="public.accessibility.describes-spoken-dialog,public.accessibility.describes-music-and-sound"

Here is an example of the EXT-X-MEDIA tag with the accessibility caption attribute:

#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="captions-group",NAME="accessibility-captions1",LANGUAGE="eng", CHARACTERISTICS="public.accessibility.describes-spoken-dialog,public.accessibility.describes-music-and-sound",AUTOSELECT=YES,DEFAULT=YES,URI="caption-accessibility-eng.m3u8"

Handling of accessibility data in HLS or MediaPackage output groups

The Accessibility field appears for all output group types, including types that don't support this data.

Note

When you set up audio encodes and you plan to include accessibility data, proceed as follows. First create the audio encodes in the HLS and/or MediaPackage output groups, and set up the accessibility data. Then create the audio encodes in the other output groups.

Handling in supported output groups

If you aren't implementing shared audio encodes, MediaLive includes the data only in the audio outputs of the HLS and MediaPackage output groups that you set up for audio accessibility data.

Handling in shared encodes

You might plan to share captions encodes among several output groups. For example, you might share a captions codec among one HLS output group and other output groups.

If you set up accessibility data in a shared captions encode, MediaLive will handle the data as follows:

  • It will include the data in the HLS and MediaPackage output groups that share the encode.

  • It won't include the data in other output groups, because those output groups don't support this data. Even though the output group is sharing the encode, MediaLive won't include the data.

Handling in other output groups

You might try to set up Accessibility in an output that doesn't support accessibility data. If you're not implementing encode sharing with an HLS or MediaPackage output group, you will get an error message when you save the channel.