Components
These are the fundamental concepts common to nearly all setups. All of these components have free options. Some applications can act as both a source and an encoder.
- The source.
- The encoder.
- The server.
My favorite sources include:
- Winamp media player for its absolute best library & playlists management.
- VLC media player for movies.
- Mixxx for professional grade DJ performances - it has a basic encoder built-in.
- a cheap-o microphone for karaoke and voice-overs.
- a browser for playing YouTube or other web stuff.
- OBS Studio (Open Broadcaster Software) is extremely powerful, flexible, and stable (mostly). I use it as a mixer and encoder to choreograph my presentation, with Icecast 2.5 as my server. I've written a tutorial here for that setup.
- BUTT is my favorite audio-only encoder. It's very powerful with excellent audio features.
The server receives the signal from the encoder and duplicates it for each listener. The server's upstream connection speed must be fast enough to handle the encoder's bitrate multiplied by the number of listeners. For example, a typical server provides 128k bps per listener, so 10 listeners requires 1.28 Mbps of upstream speed. Most ISPs in the US provide much more than this, but it includes all the users and activity on the connection. If the speed isn't high enough, listeners will get skipping, dropped streams, or failed connections.
Other tools:
VB-CABLE Virtual Audio Device is a very cool piece of software for cleanly connecting audio apps together without noise. I find it genuinely indispensable.
There is an Icecast service provider called Caster.fm that offers free and paid accounts. By using a large online provider like Caster, one can more easily stream without clogging their own connection.
As always, if you have any questions or need help, please post here or send me a message.