Accessibility Tips for Your Twitch Channel!
Tags: a11y, twitch, streaming
Published: 2021-03-03 00:10:35

Visiting this post is the first step in creating an accessible Twitch channel! **Thank you**!

I've become very interested in accessibility within the past year or two (2020 counts as two years, right?). Ensuring your content is accessible for everyone is a win/win all around. Your viewers will have a great experience and in turn, you will gain more viewers!

Quick note - All references and tools linked below are free to use! If this changes in the future, I will try to update with new resources. 

Also, accessibility is a very vast, ever-changing subject and _super_ important! I don't have all the answers but, I hope this helps. If more things come to mind, I'll be sure to add more posts. 

Alright, let's get to it! 


##Color Contrast

Try to refrain from light text against light backgrounds and dark text against dark backgrounds as much as possible. This also applied to illustrated and textured backgrounds. You will want to ensure your text is readable for everyone. It's also important to consider font size and boldness. There are cases where a larger font/boldness will allow for a lower contrast to be readable. This is a case-by-case basis though, not always guaranteed.

Consider this with your overlays, banner, panels, bot text color, etc. 

Resources:
1. [Color Contrast Analyzer (Chrome extension)](https://chrome.google.com/webstore/detail/color-contrast-analyzer/dagdlcijhfbmgkjokkjicnnfimlebcll?hl=en) 
2. If you'd rather not use a plugin, I recommend [WebAIM.org's Contrast Checker](https://webaim.org/resources/contrastchecker/). 
3. Not sure of the hex value of the colors you're checking? This [Colorzilla](https://chrome.google.com/webstore/detail/colorzilla/bhlhnicpbhignbdhedgjhgdocnmhomnp?hl=en) Color Picker will come in very handy! 


##Screen Readers

Tabbing order and alt text are very important for users of screen readers. We aren't able to manipulate Twitch's UI but we can do our best with what we can add to our channels. One area we can change is the editable panels. Alt-text is not available for the image attachments for these panels right now. This will hopefully be available soon. For now, when adding an image, add the header or title of the panel to your text body. 

Twitch panels allow for use of markdown so, you can make your headers bold, add lists, etc. This will help distinguish your content as well. 

Using additional symbols in your text fields does affect screen readers and will confuse the user. Examples of this are:
~
(ﾉ'ヮ')ﾉ
✧
♡
--->
*

One more thing, adding descriptions to links is very helpful. Making your panel image clickable does not create a good user experience for screen readers. Adding the link to the panel text body with a description beforehand will be a much better experience.

Resources:
1. Screen reader for Mac - [Apple VoiceOver](https://www.apple.com/voiceover/info/guide/_1124.html)
2. Screen reader for Windows - [NVDA](https://www.nvaccess.org/download/) 
3. [Markdown Cheat Sheet](https://www.markdownguide.org/cheat-sheet/)

##Flashing/Busy Overlays and Other Media

Keeping the focus on the streamer and the game/activity is very important! Adding gifs and overlays definitely helps show your personality as well as needed info about your stream. However, it's important to refrain from using too much flashing and movement when customizing your channel. This can be very distracting as well as make people uneasy and/or induce seizures.

[Photosensitive Epilepsy Analysis Tool (PEAT)](https://trace.umd.edu/peat/)


##Captioning
Captions are needed for many people. Whether it's because of a disability, your surroundings are too loud, you forgot your earbuds, or needing to keep the volume low. There are many reasons people use captions. This is just a summary of a few. 

###In-Game Captions
An easy accessibility fix for captions is in-game captions. Most games provide access to in-game captions through their game options. 

###Stream Captions Overlay
There are many different ways to add captions to your streams. First, adding a CC Twitch extension to your channel. There are a few of them available and have a relatively simple setup.

[Stream Closed Captioner Extension](https://stream-cc.gooseman.codes/)

###Using Your OBS to Create Captions
This is an _excellent_ write-up by [ScottInTokyo](https://www.twitch.tv/scottintokyo) on some ways to add captions to Streamlabs OBS and OBS Studio. 

[Automatic Closed Captions on Twitch](https://medium.com/@ScottInTokyoTwitch/automatic-closed-captioning-on-twitch-ef1bfb497b92) 

###Additional Caption Notes

**Don't overlap captions** - Be mindful of the orientation of your live captions and your in-game captions. If you can change the orientation of your in-game captions or live stream captions this can prevent overlap making one caption completely inaccessible. 

**Multiple speakers** - for tabletop, talk shows, etc. At this moment, I'm not aware of a way to distinguish captions for speakers besides using a stenographer and prefixing captions with a name or having them color-coded. I would love to hear ideas as well as current projects in this space! 


##Be Descriptive
This suggestion is geared more towards IRL streams such as cooking, creative streams, etc. When you have the opportunity to describe your surroundings, what paint you are using, the sunset, do it. This will help those that are having trouble seeing what you're seeing or just really love the color of acrylic paint on your brush. Just something to think about. 🙂


##Thank you!
Again, thanks so much for taking the time to read this. If you have any questions or have any feedback, please let me know! When I come across any more helpful accessibility tips, I'll be sure to let you know with a new post.  

# Additional Resources
1. [Twitch Accessibility Guidelines](https://www.twitch.tv/p/en/legal/accessibility/)
2. [Current state of CC on Twitch](https://help.twitch.tv/s/article/guide-to-closed-captions?language=en_US)
3. [W3.org](https://www.w3.org/WAI/) - Accessibility Guidelines