John Deutscher has written a blog on how to set up Apple HTTP Live Streaming with IIS Media Services. The purpose of this blog is to discuss some issues you may encounter in setting up HLS with IIS Media Services 4.1.
HLS fails if you use IIS Media Services 4.1 in the following scenario
The symptoms are:
However, in the case of “Logon Failure” error, you will see the following error: 500 - Internal server error. There is a problem with the resource you are looking for, and it cannot be displayed. Even though requests for HLS fragments will fail, requests for client manifests will succeed. This applies to both of thefollowing two URL formats: http://server/origin/asset.ism/manifest(format=m3u8-aapl), or http://server/origin/asset.ism/manifest(format=m3u8-aapl).m3u8.
This issue has been fixed in the upcoming release of IIS Media Services 4.1 (version 4.1.0938.455 and later). IIS Media Services 5 Premium does not have this issue.
Needless to say, we should make sure we use a client which supports HLS to test. Here is some basic info on HLS Support on iOS and Mac OS X.
iPhone and iPod Touch support HLS since iOS v3.0, and iPad supports HLS since iOS v3.2. The iPad was introduced with iPhone OS 3.2, later updated to 3.2.2, a version made specifically for the iPad.
HLS is supported on Safari on Mac through QuickTime X (10). According to http://en.wikipedia.org/wiki/Quicktime_7, QuickTime X is only available on Mac OS X v10.6 (Snow Leopard) and later, not on Mac OS X v10.5 (Leopard) or prior. The following table lists recent Mac OS X versions and corresponding code names:
Mac OS X Version
QuickTime X is also only available as part of Snow Leopard—there’s no way to upgrade your version of QuickTime in Leopard or other OS.
QuickTime 7 is also used on Mac for media functions that are not yet available in QuickTime X. On Windows, QuickTime 7 is available but not QuickTime X. So Safari on Windows does not support HLS.
Further HLS requirements and recommendations can be found at Apple site.
You can verify whether your iOS devices or Mac OS X PC is equipped for HLS by running the following test HLS asset hosted by Apple: http://devimages.apple.com/iphone/samples/bipbopall.html (http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8 )
The sample streams at multiple data rates. The stream starts with sample 1 and switches to the fastest sample the connection supports.