Previous | Table of Content | Next |
Here is a summary:
Protocol | Icecast 1.x | Icecast 2.x | Shoutcast | Notes |
x-audio | Best | Works | None | Requires Mountpoint, user, and password |
http | None | Best | None | Requires Mountpoint, user, and password |
icy | Works | Works | Best | Only uses password. User and mountpoint are ignored. Also when using Shoutcast, the port must be 1 higher than the server base. |
udp | Last Resort | Last Resort | Last Resort |
To understand these parameters more fully some remarks might be helpful:
First, how do we know what is a try and what is a retry? A retry requires a successful connection to occur first. What is successful? Somewhat arbitrarily m3w decides that after being able to transmit 10000 Byte the connection was successful. The consequence is the following: Imagine that you have started a broadcast and specified 3 Retries. After about an hour (certainly this was a successful connection) your connection fails. m3w waits for the initial delay and then starts a retry (the first), the connection is set up, the login data is send, but the server refuses the connection (may be busy). This is not a successful connection and after waiting a while, as given by the delay, m3w starts an other retry (the second). This time, all goes well and m3w sends data for another 10 minutes before chaos strikes again. Now, was this a successful connection? If yes, m3w has 3 fresh attempts to reestablish the connection, if not, well, then m3w would have only one attempt left before giving up.(By the way, with any reasonable bitrate 10000 Byte is only a matter of seconds, where as the login data is only some hundred bytes.)
Last not least, why a separate initial delay? If the connection breaks, your server will keep your mountpoint for a certain time. If you reconnect fast enough, you can continue your broadcast. But if you use a dial-up line, chances are that your service provider will assign you a new IP address when you reconnect. Because of the new IP number, the server will think you are someone different and will not give the old mountpoint to you. Your connection attempt will fail. In this case, it is better to wait until the server has released the mountpoint and then acquire it anew.