Skip to main content

Media Players

When selecting a media player for your website, you must evaluate it for core accessibility features. Content creators should be aware of the following known issues with popular platforms (current as of late 2025):

  • Audio Description Requirement: Because streaming services like YouTube and Vimeo do not currently support discrete AD tracks, providing a separate version of the video with audio description included is the required method for compliance.
  • Transcript Requirement: For embedded audio players (e.g., from podcast platforms) that lack a native transcript display, the full transcript must be made available on the same webpage.

Specific information on some of the most popular platforms:

Player Accessibility Checklist

Before embedding a video player, verify that it meets these essential accessibility requirements:

  • Keyboard Access: All controls (play, pause, volume, captions) are reachable and operable using the keyboard. A visible focus indicator must be present on the active control.
  • Programmatic Labels: Controls are correctly labeled to announce their function and current state to screen readers (e.g., "Play button," "Mute button, toggled on").
  • Editable Captions: The player supports human-created, editable caption files. Auto-generated captions are insufficient for compliance.

YouTube Player

(Information as of November 2025)

The standard YouTube embed code is largely accessible but requires one critical modification to be compliant. The default <iframe> provided by YouTube contains a generic title attribute that is not descriptive enough for users of assistive technology.

The title attribute is announced by screen readers to identify the content of the <iframe>. Therefore, its default value of "YouTube video player" must be replaced with the actual, descriptive title of the video.

Default Embed Code (Incorrect): This code uses a generic title that lacks specific context for the user.

<iframe width="560" height="315" src="https://www.youtube.com/embed/DrZrkIVLXQw?si=Oyw5FmxIvxQ_L7X0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Modified Embed Code (Correct): The title attribute has been updated to accurately describe the video's content.

<iframe width="560" height="315" src="https://www.youtube.com/embed/DrZrkIVLXQw?si=Oyw5FmxIvxQ_L7X0" title="Watch Highlights from Stanford's 135th Opening Convocation Ceremony" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Vimeo

(Information as of November 2025)

Unlike YouTube, the default embed code from Vimeo correctly includes a descriptive title attribute in the <iframe>, which is an accessibility best practice. No modification to the title is typically required.

<div style="padding:56.25% 0 0 0;position:relative;"><iframe src="https://player.vimeo.com/video/236828585?badge=0&autopause=0&player_id=0&app_id=58479" frameborder="0" allow="autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media; web-share" referrerpolicy="strict-origin-when-cross-origin" style="position:absolute;top:0;left:0;width:100%;height:100%;" title=""I am FLI" - How Donors Support First Gen Stanford Students"></iframe></div><script src="https://player.vimeo.com/api/player.js"></script>

The primary accessibility challenge with Vimeo is captioning. Vimeo restricts its auto-captioning feature to enterprise-level accounts. For all other accounts, you must manually upload a caption file to your video.

Recommended Workflow for Captions: A practical solution is to use a third-party service to generate and edit captions. For instance, you can upload your video privately to YouTube, use its free tools to generate and correct the captions for accuracy, and then export the resulting caption file (e.g., in .vtt format) for upload to Vimeo.

Apple Podcasts

(Information as of November 2025)

Apple Podcasts natively supports transcripts and provides an auto-generated version by default. While this is a useful starting point, auto-generated transcripts do not meet the accuracy standards required for accessibility. Therefore, creators are responsible for providing a human-verified, accurate transcript.

Recommended Workflow for Accuracy: An efficient workflow is to leverage Apple's own tools to achieve compliance.

  1. Allow Apple to generate the initial transcript for your episode.
  2. Download the generated transcript file.
  3. Thoroughly review and correct the text for accuracy, including speaker identification and punctuation.
  4. Upload the corrected transcript file to replace the automatic version.

The resulting high-quality transcript file can then be repurposed for use on your own website, ensuring consistency and accessibility across platforms.

For detailed instructions, please refer to the Apple website.

Last modified