HTTP Live Streaming

Send audio and video to iOS, tvOS, and macOS devices.

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.

Flow diagram showing the four parts of an HTTP Live Stream. The media recording is sent to a server, distributed over the web, and sent to the client app.

Apple provides several frameworks that support HTTP Live Streaming, including AVKit, AVFoundation, and WebKit.

Topics

First Steps

Understanding the HTTP Live Streaming Architecture

Understand how the major components of HLS work together to deliver streaming media.

Deploying a Basic HTTP Live Stream

Create a basic webpage to deliver an HTTP Live Stream.

Stream Creation

Learn to create a stream for ingestion by apps enabled with HTTP Live Streaming. Ensure correct playlist formatting and adherence to guidelines.

Example Playlists for HTTP Live Streaming

View and compare playlists for different HLS applications.

About the EXT-X-VERSION tag

Find the protocol version that corresponds with the HLS features your app supports.

Tool Usage and Validation

Use the provided tools to segment your stream, create master playlists, and verify the output of your own tools.

About Apple's HTTP Live Streaming Tools

Read about the tools Apple provides to help you segment your video stream and create the playlists required for successful transmission.

Specifications and Other Documents

HLS Authoring Specification for Apple Devices

This document describes the requirements for live and VOD audio-video content delivery using HTTP Live Streaming (HLS) to Apple devices.

About the Common Media Application Format with HTTP Live Streaming

Understand the Common Media Application Format as it applies to HTTP Live Streaming

Links to Additional Specifications and Videos

Contains links to additional specifications and documents.

Videos about HLS

Contains links to informational videos.