| Protocol |
|
| size (bytes) | description | value |
| 2 | magic number | 10752 (msb='R', lsb=revision) |
| 1 | slice | (0-255) |
| 1 | piece | x (0-59) |
| 1 | channel | y (0-3) |
| 735 | audio data |
sample[0+x][y] sample[60+x][y] sample[120+x][y] ... sample[43920+x][y] sample[43980+x][y] sample[44040+x][y] |
The slice value is 0 for the first second of transmitted data, 1 for the next and so on, and cycles back to 0 after slice 255.
| command | description |
| SERVER: (servername) | Server uses this to give its full name |
| STREAM: (streamname) | Server uses this to give the title of the audio data |
| INFO: (streaminfo) | Server uses this to give extra information about the audio data, like copyrights |
| QUALITY: [8|16] [M|S] (pieces/second) | Server uses this to give the maximum quality it broadcasts |
| REQUEST: [8|16] [M|S] (pieces/second) (port) | Client uses this to ask server to send data to it |
| OK | Server acknowledges REQUEST |
| DENIED: (reason) | Server denies REQUEST |
| PROXY: (address) (port) | Server denies REQUEST but gives the address/port of another server broadcasting the same |
| BROADCAST: (netmask) (port) | Client uses this to note the server it broadcasts the data on its local network, which the server can use to determine proxies |