Overview
HTTP Live Streaming (HLS) sends audio and video over HTTP from an ordinary web server for playback on iOS-based devices—including iPhone, iPad, iPod touch, and Apple TV—and on desktop computers (macOS). Using the same protocol that powers the web, HLS deploys content using ordinary web servers and content delivery networks. HLS is designed for reliability and dynamically adapts to network conditions by optimizing playback for the available speed of wired and wireless connections.
HLS supports the following:
-
Live broadcasts and prerecorded content (video on demand, or VOD)
-
Multiple alternate streams at different bit rates
-
Intelligent switching of streams in response to network bandwidth changes
-
Media encryption and user authentication
The following figure shows the components of an HTTP Live Stream.
Apple provides several frameworks that support HTTP Live Streaming, including AVKit, AVFoundation, and WebKit.