Who is the book for?

Everybody! But then you would expect me to say that.

The book is primarily for programmers who want to learn how to develop video and audio streaming solutions using HTTP Live Streaming (HLS). Having said that, it can also be used by content producers who want to learn more about HTTP Live Streaming.

The book is a practical guide so it would be useful if you have some prior programming experience. Some familiarity with Linux would be helpful too, although the book guides you through how to set-up a Linux server to stream video with HLS. Some of the examples involve converting videos from one format to another so some knowledge of video encoding would be useful. However, the examples are straight forward so don’t worry if you don’t have much experience in this area. Plus there is also a handy beginners guide to video encoding in the appendix.

How much is it?

The price is $15. If you are in the EU then VAT will be added at the rate applicable to the country you are in.

Is my payment secure?

Yes. All purchases are processed by Gumroad.  You can read more about their security here.

Is there a list of changes since the book was published?

Yes. All changes will be listed on the errata page.

Are there any specific system requirements?

Most of the examples in the book use Apple’s HTTP Live Streaming tools to process the videos for streaming with HLS, and unfortunately they only work on a Mac. However, there are some open source alternatives. For example, ffmpeg has some support for HTTP Live Streaming, so where possible I’ve provided alternative commands that use ffmpeg instead. There are also a number of online video encoding services that support HTTP Live Streaming so you could use these as well.

What do I need to run the examples in the book?

The iOS examples require Xcode, which is available for free from the App Store. You can use the emulator to run the examples. If you want to run them on an iOS device, you will need to join Apple’s developer program, which costs $99.

You’ll need a Roku box and the Roku Software Development Kit to run the Roku examples. For Android, you’ll need to install Java on your machine and an IDE like Eclipse or IntelliJ, and the Android SDK. The last time I checked, the Android emulator can’t play video, so you’ll also need an Android device to run the example on.

Access to a Linux server would be useful, but the book contains instructions on how to set up a virtual machine on your computer that you can use if you don’t have access to one.