Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Decoding AirPlay Mirroring Protocol

Tags:

I want my app to mirror the display of my iPad 2 to my Mac.

I have published the _airplay._tcp service and am listening on the port 7100. The app shows in the AirPlay menu and the Mirroring option is also there. Video and audio streaming work perfectly.

But I don't know how to decode the FairPlay encryption (POST /fp-setup) to support AirPlay mirroring. I have taken reference from http://www.aorensoftware.com/blog/2011/08/20/exploring-airplay-mirroring-internals/. If anyone has any idea on how to do that, please tell me.

like image 281
Elmo Avatar asked Apr 04 '12 18:04

Elmo


People also ask

What protocol is used for AirPlay?

To stream digital music over Wi-Fi, AirPlay uses the Real Time Streaming Protocol (RTSP). The Apple Lossless Audio Codec is used over the UDP transport layer protocol to stream two audio channels at 44100 Hertz. Audio data is scrambled by the AirPlay server device, which uses a private key-based encryption system.

Is AirPlay encrypted?

AirPlay uses AES encryption to help ensure that content is protected when mirroring or streaming from an iPhone, iPad, or Mac to an Apple TV.

What is the difference between AirPlay and mirroring?

With Mirroring users can stream their desktop from a Mac or an iOS device onto the TV via the Apple TV box. AirPlay Mirroring also allows users to stream games from an iPad or iPhone onto the TV screen via the Apple TV box. AirPlay Mirroring is different than AirPlay in a number of areas.

What is AirPlay Mirroring?

AirPlay Mirroring allows you to mirror your iPad or other Apple products screens to nearby Apple TVs or computers.


2 Answers

Check out AirServer -> they've already done this and it works flawlessly (almost)..

like image 158
Nathan B Avatar answered Oct 04 '22 16:10

Nathan B


They are using AES encryption, -- partially right. But very long code in fp-setup handshaking,(First FP-SETUP, Second FP-SETUP, fpaeskey encryption) and also the real decryption part is Apple's customized module.

like image 28
Enji Yan Avatar answered Oct 04 '22 16:10

Enji Yan