Making streaming video inclusive

Updated: 9 May 2022 for AccessU

This blog article supplements the talk Making Streaming Video Inclusive, created with my colleagues Carolina Crespo and Charu Pandhi of TPGi and delivered at CSUN 2022 and AccessU 2022. The idea for this talk came from an extensive client audit we participated in: Testing a streaming video application across multiple platforms and devices. With what we have learned, we aim to contribute to best practices for creating inclusive streaming video experiences.

Who's watching? screen with five profiles
Select a profile screen

The state of steaming video

As of February 2022, 77% of global viewing time for video is spent watching on demand content: source.

Global viewing time for video
Type of videoTime spent watching
Live TV23%
On demand video77%
Pie chart showing people watch on demand content 77% of the time and live content 23% Live TV: 23.0 % On demand video: 77.0 %

In 2021, 78% of US consumers had a video on demand subscription. That’s a 50% increase in the number of subscribers over the last six years: source.

US consumers with a streaming video subscription
YearUS Consumers
201652%
201764%
201869%
201974%
202078%
202178%
Bar chart showing the years 2016 to 2021 as the percentage of US consumers with a streaming video service increased from 52% to 78% US Consumers 52% 64% 69% 74% 78% 78% 2016 2017 2018 2019 2020 2021 0 20% 40% 60% 80% 100%

Demand for streaming video services is not only growing, it’s here to stay as more and more providers enter the market each day. But how accessible is this flood of new apps?

Case study: discovery+

Our team had the opportunity to test the discovery+ streaming video app across multiple devices to explore the differences in implementation and the support for assistive technology built into the platforms.

We used the Web Content Accessibility Guidelines (WCAG) version 2.1 AA success criteria as guideposts for our review since separate guidelines for mobile accessibility are not yet available. Based on what we encountered during accessibility testing, we comprised a list of the top 10 accessibility concerns focused on the application UI—issues that impede disabled people from completing common user journeys:

  • Sign in
  • Explore what is available
  • Select a show to watch
  • Add and remove shows to/from My List
  • Start watching

Top 10 app UI accessibility concerns

  1. Controls need to have an accessible name and an appropriate role.
  2. Provide a visible focus indicator on interactive controls.
  3. Ensure app works with multiple input modes: screen reader, remote, voice input, external keyboard.
  4. Notifications should be announced to all users.
  5. Control focus under actions.
  6. Grouped controls needs a name.
  7. Announce the number of items in a group.
  8. Provide sufficient color contrast between the text and the background (image). 
  9. App should support zooming and resizing text.
  10. Do not restrict the device to only one orientation.

Accessible content

While our research focused on the functional accessibility of the app, an app is only as accessible as the content it provides. You can have the most intuitive, well-designed interface for finding streaming video content but fail to provide appropriate alternative content for disabled users. Let’s look at three content-related considerations.

Captions

Captions are required on streaming content in the US by the 21st Century Communications and Video Accessibility Act of 2010 and other laws. Streaming companies like Netflix went through litigation for not providing captions. All video content we encountered on the discovery+ app had closed captions and controls for turning them on or off.

While captions are now standard and expected by consumers, they are not all the same. Captions must be of high quality and accurate to be useful and provide an accessible experience. Autocaptions that are not reviewed and edited are rarely good enough on their own.

We should also consider other user needs for accessible captions and ways we can enable users to control their captioning experience. Consider providing caption settings where users can control the color, font, size and position of captions and subtitles.

Audio description

Audio description is a separate audio track for video content that describes what is occurring on screen including text overlays and important actions. Like captions, users need accessible controls for enabling the audio description track.

None of the videos we encountered on the discovery+ app had audio descriptions, which is not uncommon but does exclude users who are blind or low vision. Companies are now engaged in legal action over audio description including a settlement between the American Council of the Blind (ACB) and Hulu; and structured negotiations between ACB and Netflix as well as ACB and WarnerMedia (HBO Max).

ACB runs the Audio Description Project that has a searchable database of audio described titles by streaming service.

Voice input

Voice input is a means of controlling the application with voice commands. Only two of the devices we tested support voice input and neither was capable of fully controlling the discovery+ app. This is due to a mix of what the platform supports and what the application supports. To the extent available, we recommend implementing voice support in streaming video applications. Voice input aids in navigating the application as well as making on-screen data entry easier, such as a natural language query to search for content.

Accessibility testing

We included five devices and platforms in this review:

Apple TV

Screen reader: VoiceOver on iOS

A small, square Apple TV console next to an Apple TV remote with a track pad and an Bluetooth keyboard.
Apple TV console, remote with track pad and Bluetooth keyboard

Apple TV findings
  • Profile buttons do not have accessible names or roles that distinguish them.
  • Notifications when a show is added or removed to or from a list are not announced.
  • Carousels lack names.
RuleStatus
1. Controls have accessible names/rolesFail
2. Focus indicator on interactive controlsPass
3. Support multiple input modesPass
4. Announce notificationsFail
5. Focus managementPass
6. Control groups have namesFail
7. Groups announce number of itemsPass
8. Text color contrastFail
9. Support zooming/resizing textPass
10. Allow both screen orientationsN/A

Android phone

Screen reader: TalkBack on Android OS

A smartphone next to a Bluetooth keyboard
Samsung Galaxy S20 and a Bluetooth keyboard
Android findings
  • “Add to My List” and “Remove from My List” controls are missing the button role and accessible names.
  • Episode selector does not announce the number of items in the control, the button role or selected state.
  • Most player controls do not have proper accessible names and roles.
RuleStatus
1. Controls have accessible names/rolesFail
2. Focus indicator on interactive controlsPass
3. Support multiple input modesPass
4. Announce notificationsPass
5. Focus managementPass
6. Control groups have namesFail
7. Groups announce number of itemsFail
8. Text color contrastFail
9. Support zooming/resizing textPass
10. Allow both screen orientationsFail

Fire TV

Screen reader: VoiceView on Fire OS

Fire TV stick and remote next to a Bluetooth keyboard
Fire TV stick and remote with a Bluetooth keyboard

Fire TV findings
  • Profile buttons do not have accessible names that distinguish them.
  • Tabbed navigation and carousels do not announce the number of items in the group. Episodes announce n of -1.
  • Shows do not announce their titles which are displayed as images.
RuleStatus
1. Controls have accessible names/rolesFail
2. Focus indicator on interactive controlsPass
3. Support multiple input modesPass
4. Announce notificationsPass
5. Focus managementPass
6. Control groups have namesPass
7. Groups announce number of itemsFail
8. Text color contrastFail
9. Support zooming/resizing textPass
10. Allow both screen orientationsN/A

Samsung TV

Screen reader: Voice Guide on Tizen

Samsung 42" TV and remote next to a Bluetooth keyboard
Samsung TV and remote with a Bluetooth keyboard

Samsung TV findings
  • Sign In form does not provide audible feedback for input typed with a Bluetooth keyboard.
  • Low color contrast between text and background images.
  • Episodes don’t announce the episode number.
RuleStatus
1. Controls have accessible names/rolesPass
2. Focus indicator on interactive controlsPass
3. Support multiple input modesPass
4. Announce notificationsPass
5. Focus managementPass
6. Control groups have namesPass
7. Groups announce number of itemsPass
8. Text color contrastFail
9. Support zooming/resizing textFail
10. Allow both screen orientationsN/A

Xbox

Screen reader: Narrator on Xbox software system

White Xbox console and controller
Xbox console and controller

Xbox findings
  • Content is grouped, group label is announced, Tabbed navigation announces the number of items in the group, for example 3 of 10.
  • Visual notifications are not announced.
  • Regular text does not have sufficient contrast with its background.
RuleStatus
1. Controls have accessible names/rolesPass
2. Focus indicator on interactive controlsPass
3. Support multiple input modesPass
4. Announce notificationsFail
5. Focus managementPass
6. Control groups have namesPass
7. Groups announce number of itemsPass
8. Text color contrastFail
9. Support zooming/resizing textPass
10. Allow both screen orientationsN/A

Overall findings

Every platform tested had issues, with Samsung TV and Xbox having the most accessibility support and Apple TV and Android having the least.

RuleApple TVAndroidFire TVSamsungXbox
1. Controls have accessible names/rolesFailFailFailPassPass
2. Focus indicator on interactive controlsPassPassPassPassPass
3. Support multiple input modesPassPassPassPassPass
4. Announce notificationsFailPassPassPassFail
5. Focus managementPassPassPassPassPass
6. Control groups have namesFailFailPassPassPass
7. Groups announce number of itemsPassFailFailPassPass
8. Text color contrast FailFailFailFailFail
9. Support zooming/resizing textPassPassPassFailPass
10. Allow both screen orientationsN/AFailN/AN/AN/A

Conclusion

This article represents data for a single app only and we encourage the community to research other applications across additional platforms and devices to add to the body of knowledge. Our goal was to surface specific accessibility issues that have a critical impact on a user’s ability to navigate the journey from signing in to watching a show. We hope this creates visibility and awareness of the effects from not testing for, and fixing, accessibility issues in streaming video applications and helps inform the pool of best practices for inclusive streaming experiences.

Improving numerical data entry on mobile devices

When I order something online, usually from my phone, I have to enter different pieces of numerical information. If you use a mobile device, you’ve probably noticed that depending on what kind of information a form field requests, you’re sometimes presented with different on-screen keyboards.

Here is a side-by-side example for entering a credit card number:

a credit card number form input showing a numerical keyboard when the field is in focus
Numbers keyboard
a credit card number field on a form showing the regular A-Z keyboard on screen
Standard keyboard

Which of these keyboards makes it easier to enter a credit card number? For most people, it’s going to be the numbers keyboard.

  • Reduces time on task: There’s no need to switch to the numerical view of the standard keyboard when the UI provides access to the numbers keyboard.

  • Lessens cognitive load: You’re presented with a telephone keypad which centers numerical inputs over letters or symbols.

  • Increases accuracy: The number keys are over three times the size of the standard keyboard which reduces entry errors.

Use the proper input type

Enabling the numbers keyboard for certain input types is a great usability improvement. But what about accessibility? We need to ensure we’re programmatically indicating what kind of numerical data the input requires and that we’re displaying the right version of the numbers keyboard as there are slight variations.

The HTML specification includes 21 input type attributes. One of the types is actually number but its intended use is for setting a value in a range rather than for just anything that might be numeric:

The input element represents a control for setting the element’s value to a string representing a number.

4.10.5.1.12 Number state
<label>How much do you want to charge? $<input type="number" min="0" step="0.01" name="price"></label>

We also need to keep in mind success criteria 1.3.5: Identify Input Purpose which requires setting autocomplete attributes to ease data entry. Let’s look at how to properly mark-up inputs for telephone number, zip code and credit card number.

Telephone number

Use input type="tel" to enable the numbers keyboard. With the autocomplete="tel" attribute included, we can see how iOS offers telephone number suggestions as well.

<input autocomplete="tel" name="phone_number" id="phone_number" type="tel" value="">
telephone form field on Twitter which displays the numerical telephone keyboard on focus
Telephone input

Zip code

Since all postal codes are not numbers-only like US zip codes, use input type="text" and set the pattern attribute to enable the numbers keyboard. Include autocomplete="postal-code".

This example is for US zip code entry of 5 digits, 0-9.

<input type="text" id="deliveryZipInput" value="" maxlength="5" autocomplete="postal-code" pattern="^([0-9]{5})$">
a zip code input displays the numbers keyboard
Zip code input

Credit card number

Again, use input type="text" and include the pattern attribute for a 16-digit number. If you want to validate against different credit card types, use the appropriate regular expressions in your pattern attributes such as this one for Visa: ^4[0-9]{12}(?:[0-9]{3})?$

<input type="text" id="x_card_num" maxlength="16" name="x_card_num" pattern="[0-9]*" value="" autocomplete="cc-number">
screen shot of a payment screen with credit card number field in focus and numbers keyboard displayed on screen
Credit card number input

Other types

Other numerical types you might want to experiment with include date, month, time and range. Just don’t default to input type="tel" when the goal is to display the numbers keyboard.

AccessNow app

A new app out of Canada, AccessNow, aims to crowdsource the accessibility of communities. Maayan Ziv, a wheelchair user, has made it her life’s work to help others know which places are accessible before going out.

As she told CBC News in Access Now uses crowdsourcing to pinpoint accessible businesses

“Recently, I went to a place and there were three steps at the entrance, and I was told it was accessible. I get to the entrance, and there are those steps and then I’m stuck in the middle of the street without any options.”

I downloaded this app for iPhone to check out what’s going on in Austin. The app doesn’t have many places reviewed here just yet, with only four entries showing up for the Central Austin/UT Campus/Downtown area.

AccessNow map viewIn addition to a searchable map display, the app also has a list view. Icons from a green thumbs up for accessible to a red thumbs down for inaccessible help users know what to expect when experiencing a mobility impairment.

screenshot showing 4 map pins
AccessNow map view

Users can outline specific issues in a description.

screen shot explaining the accessibility issues with the Austin Panic Room
AccessNow app place details

Per the Americans with Disabilities Act of 1990, new construction and any existing construction that undergoes major renovations are supposed to be accessible. I see how this app would be especially useful for rating those places that were built before the act went into effect.

Users who have created an account can add new entries by tapping the ‘add pin’ icon, searching for a place, then entering details. The app provides several tags like accessible parking, automatic door and ramp, as well as an area to type out a description.

screen shot of the add place screen with options to rate how accessible it is
AccessNow add new place screen

Learn more from this interview with the creator.