Files
shairport-sync/README.md
T

68 lines
2.7 KiB
Markdown

ShairPort
=========
By [James Laird](mailto:jhl@mafipulation.org) ([announcement](http://mafipulation.org/blagoblig/2011/04/08#shairport))
What it is
----------
This program emulates an AirPort Express for the purpose of streaming music from iTunes and compatible iPods and iPhones. It implements a server for the Apple RAOP protocol.
ShairPort does not support AirPlay v2 (video and photo streaming).
How to use it
-------------
```
./configure
make clean all
./shairport -a 'AP Name'
```
The triangle-in-rectangle AirTunes (now AirPlay) logo will appear in the iTunes status bar of any machine on the network, or on iPod/iPhone play controls screen. Choose your access point name to start streaming to the ShairPort instance.
Thanks
------
Big thanks to David Hammerton for releasing an ALAC decoder, which is reproduced here in full.
Thanks to everyone who has worked to reverse engineer the RAOP protocol - after finding the keys, everything else was pretty much trivial.
Thanks also to Apple for obfuscating the private key in the ROM image, using a scheme that made the deobfuscation code itself stand out like a flare.
Thanks to Ten Thousand Free Men and their Families for having a computer and stuff.
Thanks to wtbw.
Contributors
------------
* [James Laird](mailto:jhl@mafipulation.org), founder and initial code
* [David Hammerton](http://craz.net/), ALAC decoder
* [Albert Zeyer](http://www.az2000.de), maintainer
* [Preston Marshall](mailto:preston@synergyeoc.com)
* [Mads Mætzke Tandrup](mailto:mads@tandrup.org)
* [Martin Spasov](mailto:mspasov@gmail.com)
* [Oleg Kertanov](mailto:okertanov@gmail.com)
* [Rafał Kwaśny](mailto:mag@entropy.be)
* [Rakuraku Jyo](mailto:jyo.rakuraku@gmail.com)
* [Vincent Gijsen](mailto:vtj.gijsen@gmail.com)
* [lars](mailto:lars@namsral.com)
* [Stuart Shelton](https://blog.stuart.shelton.me/)
* [Andrew Webster](mailto:andywebs@gmail.com)
Known Ports and Tools
---------------------
* Java:
* [JAirPort](https://github.com/froks/JAirPort)
* [RPlay](https://github.com/bencall/RPlay)
* Windows:
* [shairport4w](http://sf.net/projects/shairport4w)
* OS X:
* [ShairportMenu](https://github.com/rcarlsen/ShairPortMenu), a GUI wrapper as a menu widget
* [MacShairport](https://github.com/joshaber/MacShairport)
Changelog
---------
* 0.01 April 5, 2011
* initial release
* 0.02 April 11, 2011
* bugfix: libao compatibility
* 0.03 April 11, 2011
* bugfix: ipv6 didn't work - IO::Socket::INET6 is required too
* 0.04 April 12, 2011
* cross-platform count_leading_zeros under GCC - will now compile cleanly on ARM and other platforms
* 0.05 April 13, 2011
* error-handling cleanup in the Perl script including more meaningful error messages, based on common problems seen