Rename README to README.md and add a disclaimer
[deb_shairplay.git] / README.md
1 Shairplay
2 =========
3 Free portable AirPlay server implementation.
4
5 Disclaimer
6 ----------
7 All the resources in this repository are written using only freely available
8 information from the internet. The code and related resources are meant for
9 educational purposes only. It is up to the user to make sure all local laws are
10 adhered to.
11
12 Licenses
13 --------
14
15 Following licenses apply:
16
17 src/lib/alac/* - MIT License
18 src/lib/crypto/* - New BSD License
19 src/lib/http_parser.* - MIT License
20 src/lib/bindings/* - MIT License
21 src/lib/* - LGPLv2.1+ License
22 AirTV-Qt/* - LGPLv2.1+ License
23
24 Also the following files are used, although not necessary:
25
26 AirTV-Qt/qtsingleapplication/src/* - New BSD License
27
28 Description
29 -----------
30
31 Short description about what each file in the main library does:
32
33 src/lib/base64.* - base64 encoder/decoder
34 src/lib/dnssd.* - dnssd helper functions
35 src/lib/http_parser.* - HTTP parser from joyent (nginx fork)
36 src/lib/http_request.* - Request parser that uses http_parser
37 src/lib/http_response.* - Extremely simple HTTP response serializer
38 src/lib/httpd.* - Generic HTTP/RTSP server
39 src/lib/logger.* - Logging related functions
40 src/lib/netutils.* - Mostly socket related code
41 src/lib/raop.* - Main RAOP handler, handles all RTSP stuff
42 src/lib/raop_rtp.* - Handles the RAOP RTP related stuff (UDP/TCP)
43 src/lib/raop_buffer.* - Parses and buffers RAOP packets, resend logic here
44 src/lib/rsakey.* - Decrypts and parses the RSA key to bigints
45 src/lib/rsapem.* - Converts the RSA PEM key to DER encoded bytes
46 src/lib/sdp.* - Extremely simple RAOP specific SDP parser
47 src/lib/utils.* - Utils for reading a file and handling strings
48
49 Short description about what each file in the Qt application does:
50
51 AirTV-Qt/main.cpp - Initializes the application
52 AirTV-Qt/mainapplication.cpp - Creates the tray icon and starts RAOP
53 AirTV-Qt/raopservice.cpp - Handles all communication with the library
54 AirTV-Qt/raopcallbackhandler.cpp - Converts C callbacks to Qt callbacks
55 AirTV-Qt/audiooutput.cpp - Takes care of the actual audio output
56