Twitch is a massive livestreaming platform that was created out of the old Justin.TV website - in fact, if you go poking around a little, you'll still see many, many references to "jtv" or "justin" around the Twitch API/inner workings! Twitch has absolutely exploded over the past several years and, as of this writing, is sitting pretty at #4 in terms of United States bandwidth transfer per day. Using Twitch to watch/broadcast is one of the most straightforward ways to be able to share your creativity and/or gaming with others.
In order to "ingest" and "output" video from one source (the broadcaster) to another (the viewers), Twitch uses a protocol called Real-Time Messaging Protocol (RTMP). This was initially a proprietary protocol developed by Macromedia (remember them? Shockwave?) in order to stream audio, video, and data between a server and a Flash player. However, once Macromedia was acquired by Adobe, a "dumbed-down" version of RTMP was released for the public to use.
Similarly, Twitch chat also runs on an open protocol called Internet Relay Chat (IRC). IRC has been around "forever" and is the de-facto method of text-based communication between nerdy types. It also has an incredibly robust backend and is open for anyone to use, thus making it possible to connect to and use Twitch chat through many other means besides the in-browser chat box.
The JustinTV platform, now Twitch, faces the interesting challenge of taking what was once a "stream-to-desktop-player" protocol, and serving the audio/video to a web browser instead. They also face several other challenges - real-time chat with emoticons, performance of all the features together, etc. etc. Unfortunately, they don't do a fantastic job of keeping everything "lean and mean", and so many people are left with crashing browsers, computer fans ramping up to 100%, and overall a bad experience while attempting to watch streams on Twitch.
Fortunately, since the core features of Twitch (video/audio streaming and interactive chat) are based on open protocols, there are ways around having to use Twitch's low-performing web player/chat. In this gude we'll go over a couple programs that will allow you to completely eliminate the necessity of using your web browser to watch Twitch in the first place, which will give you a far more positive experience while watching streams.
In order to eliminate the need to use a web browser to watch Twitch streams and participate in chat, we'll need to use a combination of three external programs. These programs are called VLC, Livestreamer, and Chatty. Let's go over how to download and install these programs now.
easy_install -U streamlink
Success! We now have a working solution to watch Twitch livestreams and use chat - all without even touching your web browser Let's actually put this all to use in a test run to make sure everything's working.
To test out Streamlink, we'll need to open a command line and attempt to view a livestream. For testing purposes I've picked a stream that is online 24/7 - the Food stream (side note, very entertaining!) - so that we are guaranteed to know if Streamlink is working correctly. I've given complete instructions for how to use Streamlink for each major OS below.
streamlink twitch.tv/food best
streamlink twitch.tv/food best
streamlink twitch.tv/food best.
In order to start using Chatty, it will need to connect to your Twitch account and be able to access certain things - we can accomplish this by authorizing Chatty to do so. Thankfully, Chatty takes care of almost all of this automatically.
Open Chatty by unzipping the ZIP file that you downloaded from its website, and then opening the Chatty.jar file.
When you start Chatty, the Connect Dialog should open. Click Create login..., then Request login data, and follow the instructions on your screen in order to authorize Chatty. By carefully reading and following the words on your screen you will be able to accomplish these steps, and Chatty should be able to connect for you.
If you need further help with using Chatty, their Getting Started Guide is well-written and will guide you through the basics of connecting to and using a specific Twitch channel's chat, as well as many other options available to you. For more advanced users, or for more in-depth documentation of Chatty's features, check out their Help page, which goes into great detail about every feature and exactly what it does.
That's the end of this guide! If you want further reading, you can read the official written documentation for VLC, Streamlink, and Chatty. If you're a super advanced user and want the ultimate nerdy experience for Twitch chat, you can look into using it with your own IRC client - there are plenty of step-by-step tutorials written about this available through some simple Google searches.
If you have any suggestions, click the Contact button at the top of this page. Thanks!