IOS – How does an iPhone stream HD content to an Apple TV over AirPlay

airplayappletvios

Even 720p content is almost 1 million pixels per frame; 24 bits per pixel at 60fps is 180Mbps, which is clearly impossible. So how is the data transferred?

Some guesses:

  • Heavy compression.
  • Apple video playing APIs, which send the compressed stream is sent to the Apple TV, for the Apple TV to decode itself
  • Apple video playing APIs, which send a URL of the data location to the Apple TV.

Best Answer

AirPlay sends MP3, AAC and H.264 compressed data directly to receivers, thus a very high compression in some cases and very good for the rest.

Apple'd developer documentation covers the basics as well as some tips for preparing content so that it streams/forwards well.

http://developer.apple.com/library/ios/#documentation/AudioVideo/Conceptual/AirPlayGuide/Introduction/Introduction.html

The decoding of the streams is done by a chip (and encoded as well - the same on iOS as on OS X) so you can see which devices support AirPlay and deduce which GPU and CPU families have the hardware to do this both rapidly and in the case of iOS with low power usage.

This iOS support matrix is very handy to see each iOS version and the CPU/RAM for various models even though it doesn't call out AirPlay support specifically.