Как iPhone транслирует HD-контент на Apple TV через AirPlay?

Даже контент 720p — это почти 1 миллион пикселей на кадр; 24 бита на пиксель при 60 кадрах в секунду — это 180 Мбит/с, что явно невозможно. Так как данные передаются?

Некоторые предположения:

  • Тяжелая компрессия.
  • API-интерфейсы воспроизведения видео Apple, которые отправляют сжатый поток на Apple TV, чтобы Apple TV мог декодировать себя
  • API-интерфейсы Apple для воспроизведения видео, которые отправляют URL-адрес местоположения данных на Apple TV.

Ответы (2)

AirPlay отправляет сжатые данные MP3, AAC и H.264 непосредственно на приемники, таким образом, в некоторых случаях обеспечивается очень высокое сжатие, а в остальных — очень хорошее.

Документация Apple для разработчиков охватывает основы, а также некоторые советы по подготовке контента, чтобы он хорошо транслировался/пересылался.

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

Декодирование потоков выполняется чипом (а также кодируется — то же самое в iOS и в OS X), поэтому вы можете увидеть, какие устройства поддерживают AirPlay, и определить, какие семейства графических процессоров и процессоров имеют аппаратное обеспечение для этого как быстро, так и быстро. случай iOS с низким энергопотреблением.

Эта матрица поддержки iOS очень удобна для просмотра каждой версии iOS и ЦП / ОЗУ для различных моделей, даже если в ней конкретно не упоминается поддержка AirPlay.

Похоже, что AirPlay поддерживает все приложения, а не только те, которые воспроизводят видео в форматах, поддерживаемых Apple. Вы знаете, как это работает? (Я не совсем уверен, но эта форма потока (которая также не поддерживает «фоновый» AirPlay), похоже, имеет худшее качество.)
Это довольно просто. GPU/CPU должен отображать все в потоке. iOS направляет нажатия на этот поток и отправляет его через AirPlay, а также рисует на локальном экране. Так же, как два монитора на компьютере могут отражать контент или отображать два экрана. То же самое можно сказать и о AirPlay в зависимости от того, находится ли система в зеркальном режиме или приложение поддерживает AirPlay и может отображать два экрана контента, например, Keynote.

Видео не отправляется пиксель за пикселем, а кодируется с помощью подходящего алгоритма сжатия видео, специально разработанного для использования гораздо меньшей пропускной способности, но при этом способного воспроизвести исходное видео точно для человеческого глаза.

Без исследования можно было бы предположить, что используется кодировка h264.

iPhone может одновременно декодировать и кодировать видеопоток HD? Я хотел бы увидеть источник для этого!
Для этапа жесткого кодирования учтите, что iPhone может записывать видео в формате Full HD...