Q) What the heck is PeerCast?
A) PeerCast is an audio/video streaming server and client rolled into one. You can use PeerCast to tune in to dozens of PeerCast powered online stations, and you can also broadcast yourself. PeerCast's top unique feature is that you don't have to get a big server with lots of bandwidth to serve your stream to lots of people -- all you need is PeerCast and an external broadcasting tool.
Q) Do I have to download PeerCast to listen to PeerCast streams?!
A) Yes and no. PeerCast distributes radio stations through its own PeerCast network, which essentially consists of all current PeerCast users. PeerCast relies on the principle that every user who tunes in to a station can also relay it to one or more other listeners. However, Peercast also functions as a standard ICEcast/SHOUTcast server. However, the client must have the address, port, and mountpoint for doing so, and peercast itself must be set up to allow it. Although it's difficult, it's useful for LANs at work and school where everyone wants to listen to the same station
Q) PeerCast automatically connects to a remote host when I start it, what's up with that?
A) When you start up PeerCast, it tries to connect to the global PeerCast network. It essentially connects to a directory server called connect1.peercast.org which tells it the IP addresses of a bunch of other PeerCast users, which your PeerCast will then try to connect to. All PeerCast clients form a big network, which is required for PeerCast to operate properly.
Q) PeerCast uses outgoing bandwidth when I'm listening to a channel, why?
A) PeerCast relies on the principle that every user who tunes in to a channel can also relay it to one or more other listeners who're interested in the same channel. Basically, instead of everybody connecting to a single streaming server, PeerCast clients are "passing along" the streams as required. This means that once you're listening to a stream, other PeerCast users who want to listen to the same stream may be getting it from you, causing your PeerCast to use outgoing bandwidth. If bandwidth is critical, you can control the maximum bandwidth used by PeerCast through its HTML interface. Yes, some clever minds have figured out that you can even completely stop PeerCast from relaying streams; however, that kind of behaviour seriously jeopardizes the PeerCast network. If you want to use PeerCast, you won't get around sharing your bandwidth with other users.
Q) Why should I share my bandwidth when I can just go to somewhere like Shoutcast.com or Live365 and click on a link?
A) This is a very good question and hard to explain to users who normally listen directly from a server. Servers SUCK! Live 365 can eat a DICK! But basically it goes like this: Bandwidth is not free, someone has to pay for it, whether its a T1 connection serving a couple of hundred listeners or a broadcaster paying a subscription to a rebroadcast service like live365. A lot of DJs don`t have much money to spend on things like this, and a lot of them play some really good music. Some DJs who start getting popular give up when they find that they can`t afford to broadcast any more (and pay broadcasting fees to the RIAA etc.) and some of them have to resort to charging their listeners because of this.
PeerCast allows anyone to broadcast to an unlimited amount of users, for free! (well nearly free, they still have pay for their ISP connection) The cost of the bandwidth is spread out evenly among the listeners using the spare bandwidth that most of them don`t even need. P2P applications like PeerCast even helps ISPs (although most don`t acknowledge this) because it's cheaper for them to route traffic among their own users than it is for each user to fetch his own data from an external source.
This is probably a really lame example, so I apologies now but, you know sometimes when you sit down at a dinner party and the plates start getting passed around, well, its like that. If everyone puts in their share of the effort then the host has less work to do and can get on and make the desert. You could just sit there and demand that a plate be put in front of you, but then if everyone did that your host is probably not going to want to have any more parties and you`ll end up having to eat McDonalds all the time. (Party=Cool radio station, Party guest=You, Host=DJ, Plate=Bandwidth, Food=Music, Desert=New music, McDonalds=Big commercial radio station. etc.)
So in short, P2P is just better for *everyone* than the standard client-server model that's been used for so long on the Internet. If you`re happy with listening to stations that play nothing but commercials sprinkled with an occasional Britney Spears song (yes, I`m exaggerating to get the point across), then PeerCast probably isn`t for you. But if you want to find interesting content that you wouldn`t normally hear, then give it a try!
Q) Sometimes when I listen to a channel the audio is skipping, or buffering often. What's going on?
A) You may be getting relayed from someone who is having network problems, either not enough bandwidth to relay to you or a traffic slow down at their ISP etc. PeerCast currently has checks to test for this and move you over to a different relay when it happens, but it's not totally automatic at the moment. You can "Bump" a channel by selecting Bump from the Relayed Channels window, this will force Peercast to find a different source of the stream.
Q) Sometimes, when I start playing one of the channels from my "Favorites" list, I get a piece of one song for a second or so, and then it suddenly switches to another. What is going on?
A) PeerCast does some internal buffering in order to prevent skipping/silence while looking for new stream sources. When you start playing a channel, PeerCast sometimes still has data stored in the channel buffer, usually a second or so of what you were listening to when you were last playing that channel. (This was written at the time of PeerCast 0.110A. It is possible that this will be changed in a future version.
Q) I told PeerCast to play a channel, it started WinAmp, but WinAmp just sits there. What is going on?
A) When you tell PeerCast to start playing a channel, it usually has to find a stream source first. Very often this is really fast and doesn't take more than a second or so, but sometimes this can take a bit longer, which is why the channel playback doesn't always start right away. Also, very rarely, it is necessary to restart WinAmp completely before playing a channel.
Q) I got everything right with my broadcast, but no matter what I do, my stream can't get through. Should I get lost?
A) You are probably behind a firewall, if it is a personal firewall installed on your local PC, try turning it off. (Windows XP Pro for example..)
Q) When I set up a broadcast and everything works, my channel name is still the same like my description text. Am I being stupid?
A) It may be caused by the tool you use to broadcast. Some broadcasting tools have both a name and a comment for the stream. Oddsock's DSP winamp plugin only has a description field. Unless you want to use another tool for your broadcast, there's no solution to this problem.
Of course, you may very well have them set to the same thing. Try checking your settings.
Q) Okay, My stream is set up correctly, but no one's listening! What the fuck?
A) It could be a number of things, Maybe you don't have any real content. Maybe there's more streams than listeners, Maybe you just started broadcasting. Maybe no one is relaying your station. Did you promote your station? Do you have good content? Is it a low-traffic time? At the moment, the peercast network is still very small. This will change as more people listen, and the demand for different kinds of music change too. So be patient, and keep trying, of just give up...
Q) Which ports do I have to open up in my firewall in order to allow others to use my PeerCast system as a relay station?
A) Whichever port you tell PeerCast to use. By default this is 7144
Q) Why am I shown as "Firewalled" when I'm not even running one?
A) Don't panic, this is normal, really! Peercast assumes you are firewalled until it receives an incoming connection (either Network or Channel) from another peer. Stay on the network, and listen for a while. Eventually, someone will connect to you and your status will change. If this problem continues to persist and you know for sure that your client is NOT firewalled, you can force it to "Normal" mode by changing the "forceNormal" settings in the peercast.ini file.
Q) When exactly am I relaying a channel to another user?
A) When you listen to a channel, PeerCast puts it into RECEIVE mode. This means that someone else can connect to you and listen to it. When you stop listening, the channel will immediately go into IDLE mode, which disconnects the channel from the source and prevents other people from connecting. In the HTML Relayed Channels page you can see the status of your channels and how many people you are relaying to (under Relays.) You may also select Relay, instead of Play from the All Channels page, this will keep the channel in RECEIVE mode even after you stop listening to it. There is also an option in the Windows channel Info dialog that does the same thing - left click the PeerCast icon, select a channel, select Info and then tick the Keep box (if its not enabled then please fetch the channel first by selecting Play)
Q) I have a local network with a number of machines listening to a single PeerCast client, how can I limit bandwidth for only external Internet connections?
A) Enter an IP mask of your LAN (such as 192.168.1.255) into the Filters section of the Settings page and select Private. This will cause PeerCast to ignore bandwidth/connection limits for that range of IPs.
Q) I`m worried that someone might hack into my machine while using PeerCast. How do I make PeerCast more secure?
A) PeerCast contains no secret backdoors and there are only 2 ways of communicating to a PeerCast client. One is via the Gnutella protocol, which is widely regarded as being quite safe. The other is via HTML. For HTML connections we require either Cookie or HTTP (basic) authentication to access any page (apart from the login) on the built-in webserver. If you are using Cookies, please ensure that you Logout after connecting to your PeerCast client via HTML. This will cause PeerCast to delete the Cookie from its own list and prevent further connections using the same Cookie. Passwords or other confidential data is not stored in the client side Cookie, it's literally just a random string of digits that is created when you enter a correct password from the Login page.
Another way to increase security is by blocking external clients from connecting to your client. PeerCast opens 2 ports for communications, the server port (usually 7144) and the server port +1. In the HTML Settings page, select the type of connections that will be allowed on each port. If possible, please keep Servents and Data allowed on the server port, otherwise noone will be able to connect to each other. An example setup would be to allow Servents/Data on port 7144, and HTML/Broadcasting on port 7145.
Your router/firewall would then be set to only allow external connections to port 7144.
Q) What is the difference between Normal and Root server modes?
A) Nearly all clients are Normal (software, not users:) Normal clients connect to each other, exchange packets, do searches for channels, fetch channels etc.. Root nodes are special clients that act as connection "bases" to the main network. connect1.peercast.org is an example of one of these. When a client connects to a Root node (having set the address in the Lookup Host) it will receive a small list of other clients waiting for connections. The client will then try and connect to these to establish its network connection. So, basically unless you are running a private PeerCast network, there is no need to enable Root Mode.
If however, you are actually running a private network you will need to assign at least one client to be the root, so that new users know where to find other clients. In this case enable Root mode on that client and change the Lookup Host for all the other clients to point to it instead of connect1.peercast.org
Q) ICY MetaInterval?, what the fuck is that?
A) Its the interval (in bytes) that MP3 streams have track information such as artist/title inserted. Its really only a legacy thing from Shoutcast/WinAmp, nowadays there are much better ways of inserting meta data in streams. Such as the OGG Comment header. The MetaInterval? only applies to client->MP3 player communications, which means it does not affect broadcasts or relays of channels.
Q) What's the DJ Message box?
A) PeerCast clients have the ability to exchange much more than just audio data between themselves. One example of this is the DJ Message, which is a message sent from broadcasters to their listeners. When a broadcaster enters a message here, it will be sent out with the stream so that clients can pick it up and display it locally. Listeners can view this message in either the Channel name->Info dialog from the task bar menu (in Windows) or from the Channel Info page in HTML. MP3 streams will also have the current track info replaced with the message every 10 seconds (by default, see broadcastMsgInterval in peercast.ini to change this.)...kinda fun, you can tell your listeners to fuck off, if ya wanna
Q) PeerCast anonymous? how? I see IP addresses everywhere!
A) As with any P2P network, clients need to know where other clients are. (In fact, that is the single most important thing of a P2P network.) Knowing where other clients are located means that IP addresses have to be exchanged and connections made. IP addresses are not anonymous, they may not give things like your name/address away to everyone, but they are traceable to your doorstep (with the appropriate help of your ISP of course.) PeerCast doesn`t try to hide this fact and tries to show what's going on as much as possible, even if we did hide it from plain view the information can still be obtained by looking at network traffic, connections etc. However, the way PeerCast is anonymous is that it does not tell other nodes if they are broadcasting the channel or simply relaying it. It would be possible, with some time and effort to map the tree of the network to show the top most node of each branch, but even that does not tell you if a particular IP address is broadcasting the channel because the source could come from another machine directly connected to it. Either via Shout/Ice, or from another listener on another PeerCast network.
Please also see "I sometimes see my IP address on links in the YP pages, is there any way I can remove it?".
Q) P2P streaming is already being done by people like AllCast?, ChainCast? etc. They even have patents on the idea. Where does PeerCast stand and whats the advantage using PeerCast?
A) We believe that PeerCast does not infringe on any patents at all. The reason being that we use the Gnutella protocol to connect clients together, and at this time we have not heard of any actions taken by patent holders against any Gnutella clients. We also believe that PeerCast is fundamentally different to AllCast? et al. (Please compare the AllCast? patent with the Gnutella specification to judge by yourself.) Gnutella is a robust, decentralized, self sustaining (ie. no central server) network protocol that has different goals and technology than the methods described by AllCast?/ChainCast?. The 3 immediate advantages of using PeerCast are:
Reliability - Not having a central server means that there is no single point of failure. A broadcaster can simply redirect their stream to a different client in the event of failure.
Security - Being unable to detect the source of the stream means that DOS attacks against a particular broadcaster is very difficult. Even if it does occur, its simply a matter of changing IPs and rebroadcasting from a different client located anywhere on the network.
Cost - PeerCast is free for broadcasters and listeners alike. There are no server license fees, regardless of how many listeners there are. When the source code eventually gets released we will implement a scheme that will allow developers of commercial products to license the PeerCast core code. But for the broadcasters and end users, PeerCast will remain completely free.
Q) All Channels listing seems very instable, are there particular settings to prevent this ?
A) This is a big problem with the 0.115 series. A lot of behind-the-scenes stuff has been changed for 0.115, and some of it still needs to be tweaked and tuned until it works reliably. 0.115 should be considered "more beta" than the other versions. More changes are yet to come, but everything should be pretty much stable again with the released of 0.116. You can actually make the listing more reliable by increasing the "Dead Hit Age" setting to something like 500 or 600. But this will decrease the chances of finding a good source for the channel because it will mean old sources are not removed from the list as quickly. We are currently tweaking things that affect the listing so please always make sure you have the latest version.
Q) I have quite a bit of bandwidth spare, how can I make use of that to help the network?
A) If all clients could receive and send data at full speed without worrying about bandwidth, we`d have a very reliable network indeed. But most people don`t, alot of people connect for 5 minutes then disconnect, and even more still are firewalled and can`t give much back to the network anyway. If you have an Internet connection that can accept incoming connections and have some Kilobits/second spare you can help the network and help your own client by accepting more incoming connections. Keep the max. connection bandwidth the same (curently 1000 bits/s) but increase the max incoming limit. Doing this will both help people who are behind firewalls and increase the chances of you finding channels to connect to. Please don`t increase the max. outgoing though because that will only eat up valuable incoming connections to the network - the same amount of data is sent via incoming and outgoing connections so it makes no difference to the amount of packets you process.
Q) I`m broadcasting a channel but I don`t see it in my local list of channels, why?
A) You probably won`t see it unless you have some listeners. Other people should see it fine, but you do not usually see your own channel if you haven`t got any clients responding back. This is because the local channel list only shows channels that are available on other clients, not your own. One way to check and see if you are broadcasting OK is to look at the PeerCast YP or to check the list on another client other that the one doing the broadcasting. You could also try posting a message in the forums, you might find some kind soul that will check it for you.
Q) What bitrates do the Low/Med/High settings in the WinAmp plugin broadcast at?
A) Roughly 45/64/80 Kbits/s. But this is OGG Vorbis(RECOMENDED) -1/0/1 "Quality" we are talking here, not MP3. 45 Kbits/s OGG is usually kick ass, 64 is near FM radio quality, 80 is arguably as good as CD.
Q) What do the little green bars in the YP mean?
A) They show how "healthy" each channel is, or how likely you are to be able to connect to it quickly. To be precise, its the percentage of inaccessible, or hard to reach hosts that are currently relaying the channel. "Inaccessible" generally means that the host`s bandwidth is full, or that its unable to serve the channel for any other reason. Firewalled hosts can still relay channels, but can be hard to reach if they are many hops away. An empty bar (dark green) means that all of the hosts carrying the channel are "Inaccessible/Hard to reach", a full bar (light green) means that all the hosts carrying the channel are OK and you should have little problem connecting.
Q) The YP listing is different from what I can see on my local client, which is more accurate?
A) This is a P2P network so its impossible to take a snapshot of every node on the network at any given time. So what you see is different to what someone will see, ie. what the YP sees is different to what you or someone else will see locally. Don't trust it! Hence the differences between YP and local listings. As for which is more accurate, the local listing is more accurate from a "what I can see now" point of view. The YP is more accurate at showing the global state of the network averaged over a slightly longer period of time.
Also remember that you wont see your own channel on your own client unless you have recieved a hit from another client relaying your channel. So if you don`t have many listeners you will probably not see your own channel locally.
Q) I never seem to be in the YP or local list of channels, how can I make sure that my listeners can always connect to my channel?
A) The latest versions of peercast (v0.118) have a feature that allows you to place a "seed" IP address on the end of peercast:// links. When a user clicks on one of these links, their client will try and connect to the seed host to find out where they can get the channel from. To use this feature add ip=[ip-address] to the URL, eg. peercast://pls/[channel-id]?ip=[ip:port] replacing ip:port with the address of your broadcasting client. You can use peercast:// style links whereever you would use normal http:// links, such as WWW pages etc.
Q) I sometimes see my IP address on links in the YP pages, is there any way I can remove it?
A) The YP provides a way for new listeners to find and connect to a channel as quickly as possible. It does this by tagging the oldest IP address that has been relaying the channel to the end of the peercast:// links. If you are concerned about your IP appearing in the list then you can edit the maxUptime setting in the peercast.ini file so that it is always lower (or the same) as other relays. The maxUptime is a cap on the uptime value broadcasted out by relays, so if your uptime value is lower than someone elses in the YP, then your IP address won`t show. But please note: if you`re the sole relay (ie. broadcaster) or if the other clients relaying then channel are firewalled and you`re not, then it will still get displayed. Also, make sure that the maxUptime (in seconds) is not lower than about 1 hour, otherwise hardly any other clients will be able to see your relay.
Hope this was helpfull...if not, fuck off...
CHECK OUT WHO'S BROADCASTING ON PEERCAST! TUNE IN WHILE YOU'RE AT IT!
YUP, STILL THE SAME BANNERS!