Critical Notice: Nicecast has now been retired, and will soon be deprecated. See this page for full details.

Nicecast: You're on the Air

Nicecast is the easiest way to broadcast music from MacOS. With Nicecast you get an internet audio broadcaster and server wrapped into one. Broadcast to the world, or just across your local network. Stream your own music, or host your own call-in show. Nicecast can do it all!

Getting Started

We recommend having a quick read-through of this manual, but you can also just dive in if you like. You can refer back to the full manual for assistance at any time by accessing it from the Help menu.

Updated in Nicecast 1.11.13:

System Requirements

Installation and Removal

To install Nicecast, just drag it from your download folder to the Applications folder.

If you wish to remove Nicecast, simply drag it to the Trash.

Purchasing Nicecast

We provide a free trial of Nicecast for you to test. During the trial, audio quality is degraded after 60 minutes of broadcasting. The full version of Nicecast can be unlocked with a license key from our online store.

When you're ready, head over to https://rogueamoeba.com/store/ to purchase Nicecast.

For more information, see the Purchasing page.

The Broadcast Window

Broadcast window

Basics

The Broadcast window is the operations center of Nicecast, your command post on Starship USS Your-Own-Radio-Station. From this window, you can adjust most of the relevant settings for your broadcast, get your broadcast started, and watch its progress. The basic controls of the Broadcast window, as well as its drawers is detailed below.

Main

Start/Stop Broadcast - Toggles the state of your broadcast. When clicked, this causes Nicecast to take audio from the Source, encode it and send it to the server as set in the Server window.

State - Shows the Broadcast's current state, between waiting to take Source audio and broadcast (Standby) and sending audio from the source to the Server (On Air).

Level - Shows the audio level of audio. Click to switch between 4 modes, or turn the meters off.

Volume Adjuster - This volume slider affects ONLY the local volume, as you hear it come out of your speakers. It will NOT affect the volume your listeners hear. Keep in mind that the volume of the Source, such as iTunes' volume slider, will affect the stream's volume. Usage example: Silence your automated broadcast for the night.

Info Scroller - Shows the current status of your broadcast, your current source application, and if available, information about the current track the source application is playing. Nicecast automatically reads track information from iTunes, Audion, MacAmp Lite X, MegaSeg, and Ask The DJ.

Source Drawer

The Source Drawer adjusts the source from which Nicecast gets its audio. A source can be an application, such as iTunes, a hardware input device, such as a mixer or a microphone, or the System Audio option, pulling in all audio playing through OS X. Note: No need to change the input for simple voiceovers, just use the VoiceOver Effect.

Advanced... - The Advanced button provides access to advanced options for each source type. Generally, these should be left in their default states.

The Advanced Hijacking Options window

When used with a standard Application as the source, the following settings will be available from the Advanced window.

Include audio inputs: This setting enables Nicecast to grab audio from input devices like microphones, in addition to the selected application.

Split between channels: With this active, input devices will be placed on the audio's left channel, while the application source's audio will be placed on the right channel.

Limit audio capture to: By default, when an application is playing to multiple output devices, audio from all these devices will be captured and mixed together. Use this setting to instead select a specific audio device to capture.

When used with an Audio Device as the source, the following settings will be available from the Advanced window.

Input Device Settings

Device: Displays the device name selected in the main window for the input.

Left Channel: For devices with more than two channels, select the channel which will serve as the left.

Right Channel: For devices with more than two channels, select the channel which will serve as the right.

Buffering: Adjusts the size of the audio buffer for the input, in frames. A larger buffer is less prone to skipping but has higher latency (delay), while a smaller buffer has lower latency but may be more prone to skipping. This is best left at Default to start.

Output Device Settings

Device: Displays the device name selected in the main window for the output.

Left Channel: For devices with more than two channels, select the channel which will serve as the left.

Right Channel: For devices with more than two channels, select the channel which will serve as the right.

Buffering: Adjusts the size of the audio buffer for the output, in frames. A larger buffer is less prone to skipping but has higher latency (delay), while a smaller buffer has lower latency but may be more prone to skipping. This is best left at Default to start.

Info Drawer

The Info drawer contains information which will be received by listeners of your stream, as well as the Stream Tracker (see "Share Drawer" below).

Name - Stream Name, anything you desire. Make it memorable.

URL - Enter the website of your stream's homepage here.

Genre - Used to sort your broadcast on the Stream Tracker, and to draw in listeners.

AIM - Enter your AOL Instant Messenger/Messages or other screenname here, so listeners can contact you.

Description - Enter a longer description of your station, used by trackers which list your stream

Titles Drawer

The Titles drawer shows the currently playing track info, as well as previous tracks. Nicecast automatically reads track information from iTunes, Audion, MacAmp Lite X, MegaSeg, and Ask The DJ.

Quality Drawer

This drawer allows you to set the quality of your stream. The higher the number, the better the quality. However, it is crucial to remember that each listener is using bandwidth, and your bandwidth is limited. The connection types next to each quality level are guides, i.e. if you have DSL or a Cable modem, a stream of 56 or 128 Kbps will work to give you up to about 8 listeners. The lower the quality, the more listeners your connection can support.

For local servers, if you wish to support more than one listener, divide the stream bitrate by the number of listeners you wish to be able to support, and adjust the Listener Limit in the Server window. If you have a cable modem with 128 Kbps of bandwidth and two listeners, each listener can receive at most 56kbps of data. This means your stream's bitrate needs to factor in the number of listeners to whom you will be serving.

Example: If you have a cable modem, and you wish to be able to support 4 listeners, divide 128Kbps by 4 listeners, which equals 32 Kbps per listener. In this case, your stream's bitrate should be no higher than 32 Kbps, an audio quality which is still high enough to be listened to.

The Custom... setting allows you to choose from many different bitrate choices. Even more useful is the CPU Usage/Audio Quality slider - this slider allows you to raise the quality of your stream at the same bitrate, at the expense of CPU power. If nothing else will be running on the machine which Nicecast runs on, try turning this slider all the way up. Otherwise, find a healthy balance.

Share Drawer

Address

Internet Address - Copy the address to IM to a friend or post to a webpage. Save it to a file which will play the stream when double-clicked, and email this file around.

Local Address - Use the address to listen to the stream on your own LAN.

Server Checker - This tool initiates a connection from the outside world to your server, and reports back on its success. Use it to determine if your stream is accessible from the outside world. If not, see the LAN Troubles sections.

Effects button

Opens the Effects window, for adding audio effects.

The Server Window

The Server window with Built-in Server in use

Nicecast consists of two parts, a broadcasting part and a server part. The broadcast part sends audio internally to the built-in server part, or to an external server, to which listeners connect to hear audio. The Server window houses the controls for the server portion of Nicecast. In ordinary, plain vanilla setups, you may never need to see the Server window. More advanced users will use it to alter settings or set up a connection to an External Server.

The Servers drawer, accessible with the drawer buttons at the top of the window, allows you to switch between the Built-In server (default) and an External server (Advanced).

Built-In Server

These settings control the server built-in to Nicecast, and pre-configured for easy use. To adjust the settings, you'll need to stop the server by clicking Stop.

Address: This setting adjusts what network interface Nicecast broadcasts over. Usually, you'll want this set to the (Internet) option.

Port: Adjusts what port the stream is sent out through. The standard port for MP3 streams is 8000, but you can set this to anything, in case 8000 is in use. If you're running a firewall, be sure the port you select is open.

Maximum Listeners: This option limits the number of concurrent connections allowed to your server. Refer to the Broadcast window page for more information on this.

Require Password: This option allows you to set a username and password that listeners will need to use to connect to your stream.

Listeners (Built-In Only)


The Listeners tab displays information about your Current Listeners, if any, and a summary of all Listeners since the Broadcast was begun.

Console (Built-In Only)


The Console provides access to all the logs the internal server creates. The main log shown by default may be helpful in determining what has gone wrong when a server problem occurs.

External Servers

Nicecast's External Servers view

More advanced users may wish to use an external Shoutcast or Icecast server running on the local machine, or on a remote machine, possibly with more bandwidth. To do this, an External Server is created and used (by selecting it in the target column of the Servers drawer). Adjust the settings as appropriate for your specific server.

For more information, see the External Server tutorial.

The Effects Window

The Effects window

The Effects window provides access to Nicecast's full range of Audio effects, in what we call the Patch area. The controls are described below. For information on plugins in general, see the Plugins window page.

Navigator - Controls location of the focus on the patch area.

Levels - Show the audio levels of audio coming in (In Peak and In RMS) or out (Out Peak and Out RMS). Disable to save CPU.

Dry/Wet Slider - This slider controls how much the plugins affect the audio mix being broadcast. Set all the way to Dry, only the original audio source (before effects are added) is used. As it moves towards Wet, the effects are applied more fully.

Patch Area - The 10x10 grid for adding DSP effects. Simply click a grid space and select an item from the pop-up to insert the effect. Drag and drop to re-arrange. The grid is read left to right and top to bottom.

Plugins - Each plugin has its own editor window, with settings specific to that plugin.

Saving and Opening Patches - Nicecast supports patches, which are groups of DSP plugins and settings. When you have a set of filters which you'd like to apply to other presets, choose "Effects -> Export Patch" from the Control menu. To load a saved patch file, choose "Effects -> Import Patch" from the Control menu.

Secondary Windows

About Plugins Window


Plugins Window

The About Plugins window, accessible from the Nicecast menu, shows a list of all plugins currently loaded into Nicecast. It also allows you to dynamically load and unload plugins, without restarting Nicecast, which may be especially useful to plugin developers. Plugins loaded via the Load command will be forgotten once Nicecast is restarted. Plugins installed in the locations specified below will be automatically related when Nicecast is next launched.

Nicecast supports VST plugins (VST/Mach-o, VST Carbon, and certain Classic plugins), AudioUnit plugins, as well as our own in-house .4fx format. Plugins placed in the following locations will be loaded at every launch:
   .4fx - ~/Library/Audio/Plug-ins/4FX and /Library/Audio/Plug-ins/4FX
   VST - ~/Library/Audio/Plug-ins/VST and /Library/Audio/Plug-ins/VST
   AudioUnits - ~/Library/Audio/Plug-ins/Components and /Library/Audio/Plug-ins/Components

Toolbar

Load - Loads a plugin from anywhere on disk while Nicecast is open. This plugin will be automatically unloaded when Nicecast is quit.

Unload - Unloads the highlighted plugin. If this plugin is installed in one of the default locations mentioned above, it will be reloaded at the next launch of Nicecast.

Reload - Reloads a copy of the current plugin. Useful for plugin development.

Reveal - Shows the location of this plugin in the Finder.

Archiving Window


Archiving Window

The Archiving window allows you to record your own broadcast for archival purposes. It's simple settings are described below:

Status

Archive - Toggles the status of the archiving process. Depress to initiate archiving.

Status Line - Indicates archiving status, as well as length of current file being saved.

Format

Type - Choose between lossless AIFF (high files sizes, perfect quality), compressed MP3 (small file sizes, lower quality), compressed AAC (small file sizes, slightly better quality than MP3), and Apple Lossless (medium files sizes, perfect quality)

Channels - Record to separate channels (Stereo) or combine both channels to one (Mono)

Bitrate (MP3 and AAC Only) - Set the compression of the archived MP3 file. Lowering this number will lower the quality of the resulting file, but also reduce the disk space it requires.

Destination

Sets where the archive file will be saved. Defaults to your Music folder, in a subfolder called Nicecast Broadcast Archive.

How To Set Up A Basic Nicecast Broadcast

Nicecast's Broadcast window

Setting up a Nicecast broadcast is very simple. The default settings allow you to broadcast iTunes in just one click. But let's run over the steps needed to get going with Nicecast using any audio source. First, it's good to know a little bit about Nicecast works, to increase understanding of the application overall. Essentially, Nicecast works in two portions, as follows:

Broadcast Portion


• Audio comes into Nicecast from a source application or device.
• Audio is routed through any optional audio effects you set (Effects window).
• Audio is encoded to MP3, as specified in the Quality Drawer.

Server Portion


• Audio is output to be tuned in to by listeners, using any MP3 client. A server can be the Built-In Nicecast server, or an external server on another machine.

Overview


1. Open Nicecast and set a source application or input device.
2. Adjust the Info drawer and add optional audio Effects.
3. Set the proper Quality level, and click the Start Broadcast button. You're on the air!

Details

The first thing to do to get set up is to pick a Source. Open the Source drawer, and choose an application (like iTunes or QuickTime) or device (such as a microphone or mixer).

Now comes the trickiest part - the Quality drawer. Nicecast automatically sets the value based on what your connection to the world is. However, you're free to adjust it. For more information, see the Broadcast window.

Before you click the Start Broadcast button, set everything as you desire in the Info drawer - these settings will go out to listeners. Additionally, you can adjust the audio of the broadcast, using the Effects window. Once this is complete, click Start Broadcast, and you should be streaming!

How To Broadcast To An External Server

Beginners will likely wish to use Nicecast's easy built-in server. However, for more advanced users, Nicecast also offers the ability to broadcast to an external server, such as a remote copy of Nicecast, or a remote icecast/shoutcast server.

Overview


1. Set up Nicecast as in the Basic Setup tutorial.
2. Open the Server window, click External in the drawer, and create a New server.
3. Highlight the server, and adjust the settings as needed. Finally, switch the radio button in the drawer.
4. Click Start Broadcast in the Broadcast window. You're on the air, using your external server!

Details

Once the Broadcast portion of Nicecast is set up, as in our Basic Setup tutorial, you simply need to adjust the settings in the window seen above. Open the Servers window (press Command-2 or use the Window Menu) and open the drawer by clicking the drawer buttons on top of the window. Click the Plus button to create a new Server setup. This setup will be used to access a remote server.

Now you need to fill in the fields with the appropriate information. This information is all relative to your remote server, except for the name, which can be anything you like. Fill in the Server Type popup, which adjusts various under-the-hood settings and provides the proper URLs to the Stream Tracker and the Share drawer. The Account is only needed for some server types - if it's grayed out, you may ignore it. However, a password for the server will be needed. This password should already be known to you.

Now you need to enter the actual information about the server. The Address and Port should also be known. The Mount Point setting is only for icecast servers, so leave this alone if you're not using an icecast server. Finally, the Public URL may be adjusted manually if you desire. This will enable you to set a specific address through which listeners may tune in. This should generally be left at Automatic.

Once you have these settings set up properly, be sure to select the server in the drawer, using the radio button. Click Start Broadcast, and Nicecast will attempt to connect to the server. If it fails, it will provide an error. Otherwise, you'll now be broadcasting to an external server.

Complex Configurations - Firewalls and Routers

Nicecast itself is fairly easy to set up. However, if you have a firewall in place, you'll need to adjust it so listeners can reach your stream. As well, if you use a router to share a single internet connection, you'll need to adjust this so listeners can connect.

Below you'll find a quick overview, with examples from Mac OS X and AirPort Base Stations. For more information specific to your hardware, please see the specific manuals for your firewall or router - this is merely provided as an overview. Please keep in mind that Rogue Amoeba doesn't have access to every piece of router hardware or firewall software, so your manufacturer will best be able to help you configure these products.

Router Port Mapping/Port Forwarding/Virtual Server Overview (Example using AirPort Base Station)

1. Open up the admin software on your router. For an AirPort Base Station, you'll use the AirPort Utility, found in /Applications/Utilities.
2. Find the port mapping configuration panel (which may instead be named port forwarding or virtual servers, depending on your router). In Airport Utility, select your Base Station, click Manual Setup, then click the Internet toolbar icon.
3. Add a new port mapping to the machine on your LAN which is doing the broadcasting. You'll need to map public port 8000 to private port 8000, on the machine's LAN IP. In AirPort Admin Utility, click Add, put port 8000 in the two port fields and the IP of the machine which will be broadcasting in the Private Address field. Click Ok, then click Update. Note that this forwarding only needs to be TCP, you can leave UDP alone.

Details
A router takes traffic from the Internet and sends it to your LAN. The machine which is running Nicecast needs to receive all the requests for port 8000 (by default) which are coming in from the Internet. Port forwarding/port mapping/virtual servering allows this traffic to go where it's needed, so listeners can connect to your stream.

Note: UPnP and NAT-PMP Routers
Many newer routers support UPnP (Universal Plug-And-Play) and NAT-PMP (Network Address Translation Port Mapping Protocol), which allow software to configure the router automatically. If UPnP or NAT-PMP is on, Nicecast will configure the router for you. To determine if your router supports UPnP, please check the router's documentation. You may need to enable UPnP on the device - again, see the router's documentation for more information.

For AirPort Base Stations, NAT-PMP is off by default. For full information on activiting this, see this link.

Firewall Overview (Example using OS X Built-in Firewall)

1. Open up your firewall software. OS X's built-in firewall (off by default) is accessible from the “Security & Privacy” System Preference.

2. If the firewall is on, open up the port Nicecast is using to broadcast. By default, this is 8000, but it can be changed in Nicecast's Server window. In OS X's firewall, you just need to click New, and choose Other, then enter 8000 in the port field, and Nicecast in the description field, then click OK. You're all set. If the firewall is off, then you don't need to adjust anything.

Details
A firewall prevents network connections from occurring. This can be good in stopping malicious connections from occurring. However, Nicecast needs to be able to establish benign connections on port 8000 (by default). To allow this, you'll need to open up port 8000, or whatever port you set Nicecast to use in your firewall software.

How To Use DSP Effects With A Broadcast

Nicecast's Effects window

Quick Overview

  1. Open Nicecast and broadcast the desired application (See "Basic Setup" for more information).
  2. Click the Effects button to open the Effects window. Click on a grid square and choose a DSP Plugin from the popup menu.
  3. Edit the Plugins settings in the Editor window. Changes to audio take effect immediately.

Digital Signal Processing (DSP) effects can be applied to any audio. Setting up Effects is very simple, although some plugins themselves are rather complex. The grid, seen above, is read in the order of the green wire, from left to right. When the wire splits, effects are applied in parallel, and when they merge the audio is mixed and further plugins are processed in series. Empty grid spaces are skipped, and plugins can be dragged and dropped around the grid at any time to change their order. When using large numbers of plugins, the Navigator will be helpful in moving about the grid. Just click anywhere on the Navigator to move to that location, or drag the Navigator box around the map to move the focus of the grid. It shows the location of active plugins in green and bypassed (inactive) plugins in black.

Inserting An Effect
To insert an effect, first open the Effects window. You will see a portion of the DSP grid, as well as the grid Navigator, Master Gain Slider, Dry/Wet Slider and Level meters on the left side. Simply click in the first square of the grid and choose the desired effect from the pop-up menu. The plugin will be inserted into the grid and its editor window will automatically open. Configure the plugin as desired and close the editor. Now all audio played through Nicecast will be piped through this effect.

On the plugin graphic itself, you will see two knobs, two buttons, and an information bar displaying the indicator light and plugin name. The knobs affect the Gain of audio before it hits this filter ('In') and after ('Out'). In most cases, you will want to leave them set at the mid-point. If you accidently move a knob and wish to reset it, simply double click anywhere on the knob. The 'Editor' button brings up the aforementioned editor window, allowing you to change the plugin's settings. The Bypass button leaves the plugin and its settings intact, but causes Nicecast to skip over it. This is useful for testing exactly how a particular filter is affecting the audio.

Removing An Effect
To remove a plugin, just click the arrows in that plugin's information bar and select None. Alternately, you can highlight the plugin by clicking it and pressing the Delete key on your keyboard.

Installing Plugins
Nicecast looks for VST plugins in "~/Library/Audio/Plug-ins/VST" and "/Library/Audio/Plug-ins/VST", for AudioUnit plugins in "~/Library/Audio/Plug-ins/Components" and "/Library/Audio/Plug-ins/Components", and for LADSPA plugins in "~/Library/Audio/Plug-ins/LADSPA" and "/Library/Audio/Plug-ins/LADSPA". To install a new plugin, simply place it in one of these locations, and Nicecast will detect it on the next launch.

Listening To A Stream

Listening to a Nicecast stream is extremely simple, but we mustn't overlook it in our manual. These instructions are really for your potential listeners, but they'll help you explain the process.

Overview

1. Open up any MP3 player that supports MP3 streams, such as iTunes or QuickTime.

2. Look for an option such as Open Stream or Open URL/Location.

3. Enter the stream's address (available in Nicecast's Share drawer) into this field and click OK.

4. Rock on!

For more information, please see the help documentation associated with your specific MP3 player.

Preferences

Nicecast's preferences can be accessed from the Nicecast menu.


Nicecast's Preferences window

Recording Settings

Save recordings to folder: All recordings made with Piezo will be saved to the location specified here. The default location is a folder called Piezo, inside your Music folder (~/Music/Piezo).

Show file after recording: When checked, this setting causes a Finder window to open after each recording is finished, showing the recorded file.

General

Start broadcast on launch: This option causes Nicecast to attempt to automatically begin a broadcast on launch, using the settings from its last launch. Great once you've got your system setup as desired.

Display Listener Badge: This option places a small badge over the Nicecast Dock Icon showing the current listener count.

Animated: This causes the rings of the Nicecast Dock Signal to pulsate, indicating a broadcast is in progress. Great for wasting spare CPU cycles.

Check Automatically: This option causes Nicecast to periodically check for newer versions of itself, prompting you to update when one becomes available.

Built-In Server

Listener Connected: Nicecast plays the specified sound when a listener tunes in.

Listener Disconnected: Nicecast plays the specified sound when a listener tunes out.

Broadcaster Password:: This password is automatically set by the application, allowing Nicecast's broadcast portion to communicate with its built-in server. Beyond this, it enables you to broadcast to Nicecast from another application, such as a remote copy of Nicecast. You may change it for these uses.

Advanced

Track Title Source: This setting enables a specific application to be set as the source for Nicecast's track titles information. If a different application than what you're set to broadcast contains your metadata information, set it with the the “Application” option. Otherwise, simply leave this set to “Automatic”.

Recent Tracks Log File: Nicecast can save a log showing the past 20 items it streamed out. This can be helpful for things like showing “Now Playing” or “Recently Played” data on a website. To turn this off, click the None button.

Purchasing Nicecast

Critical Notice: Nicecast has been retired, and is no longer available for purchase. The information below is no longer correct, and is preserved solely for historical purposes.


Quick Link: To buy a license key for Nicecast, visit our online store.

Why should I buy Nicecast?

Put simply, you should buy Nicecast because it isn't free. We provide a free trial, so you can test out the program and all its features before you buy it. It's like test driving a car, for as long as it takes you to decide.

In trial mode, all of Nicecast's features are available to try, but it won't work for full-time use. During the trial, audio quality is degraded after 60 minutes of broadcasting per launch.

If you use Nicecast and find you like it, please purchase a license key - support the software you use and love!

To purchase your license key, just visit https://rogueamoeba.com/store/.

After Purchase

How do I unlock the full version?

The download of Nicecast from our site contains both a free trial of the software and the full version. To unlock the full, unlimited version, you just need a valid license key. When you purchase through our store, you'll immediately receive a license key in your browser as well as via email. Simply enter this key into Nicecast to unlock it.

What's your upgrade policy?

While we don't have a hard and fast upgrade policy, our philosophy regarding paid upgrades is simple: We try to do what's right for you and what's right for us. We've got a great track record, with many years of very satisfied customers.

For more details on free updates and paid upgrades, please see this page.

What's your refund policy?

All Rogue Amoeba products are available to try before you buy. We believe that no customer should have to buy software in order to find out how well it works. Our software can be fully evaluated with no limitations in capabilities, prior to purchase. Customers are strongly encouraged to take advantage of these trials prior to purchase. You may also seek any needed technical support from us - we answer support emails rapidly and responsively for current and potential customers alike.

If you would like a refund, please contact hello@rogueamoeba.com within 14 days of your purchase. Because we cannot recover the license key that was sold, refunds are issued on a case-by-case basis.

Listeners Can't Connect?

If you've got Nicecast up and broadcasting, but listeners are unable to connect, it's probable there's an issue with your network setup. Please test each step below. These steps are sequential - once a step fails, you'll need to correct the issue before moving on to the next step.

Step 1: Check on the same machine

On the machine running Nicecast, while Nicecast is open, open up QuickTime Player (or iTunes, if QuickTime is your source application). Go to the File menu, choose Open URL in New Player, and enter the Local URL from the Share drawer. Click OK and if the stream plays, move on to step 2. If not, there is an issue with Nicecast itself - check the Server window in Console tab for errors.

Step 2: Check on another machine on the LAN

On another machine on the LAN, open up iTunes and choose Open Stream... from the Advanced menu. Enter the Local IP from the Nicecast Share drawer, along with the port (http://192.168.1.2:8000/listen, for example). If this plays fine, move on to step 3. If not, there's probably an issue with the firewall on your broadcasting machine - see the Firewalls sections of Firewalls/Routers page for more information.

Step 3: Use the Server Checker

In Nicecast's Share drawer, you'll find the Server Checker. Click Check Now, and a connection from rogueamoeba.com will try to listen to your broadcast, and report back with success or failure. If this works fine, then your stream is broadcasting to the world. If this fails, there is probably an issue with your router - see the Routers sections of Firewalls/Routers page for more information.

Once You've Gone Over These Steps

If the problem occurs with step 1, Nicecast may not be working properly. If step 2 fails, there's likely an issue with a firewall. If step 3 is the first place you have a problem, the issue is with your router. Please note, if a problem first occurs with step 2 or 3, Nicecast is working just fine and the problem is with your network. You can find more information on properly configuring your network in the Firewalls/Routers tutorial. We can try to get you set up even in this case, but ultimately your network needs to be properly configured for outside connections to the stream to work.

How Many Listeners Can I Support?

The Short Version: The short answer is a simple math equation. Upstream bandwidth/stream bitrate = Maximum number of listeners. Read on for more depth.

One of the most common things new broadcasters wonder is how many listeners they can support, and how this number can be increased. This is a more complex question then it may appear. First, it should be noted that any new station will take some time to grow. In the beginning, if you have more than 1 or 2 listeners at a time you should be very happy. But exactly how many listeners can you support? There's no single answer - read on.

It's All About The Bandwidth
The single most important factor in determining how many listeners you can support is the available bandwidth, specifically the UPstream bandwidth. On dialup, this number is the speed of the modem - a 56K modem can transmit a maximum of 56kbps of data. On broadband connections, this number is typically much smaller than the DOWNstream bandwidth, with typical numbers ranging from 128 kbps to 384 kbps on standard connections. If you don't know your upstream bandwidth, you can test it with an online speed test such as this one.

Remember: The more bandwidth you have, the more listeners you can support.

But Then, It's Also The Bitrate
The available bandwidth is crucial to determining how many listeners you support. However, the number of listeners you can support will fluctuate based on the bitrate of your stream. Without purchasing a new internet connection, you can't adjust your upstream bandwidth, but you can easily adjust your stream's bitrate in the Quality drawer.

Remember: The higher your bitrate, the fewer listeners you can support.

Put The Two Together
So, more bandwidth means more listeners, and a lower bitrate means more listeners. Now, let's do a concrete example, taking a cable modem connection with 1 Mbps (1024 kbps) of upstream bandwidth. How many listeners can this connection support, maximally, at:

24 kbps: 42
56 kbps: 18
96 kbps: 10
128 kbps: 8

The way this was determined was by taking the available bandwidth (1024 kbps) and dividing by the stream's bitrate. Each listener takes a chunk of your bandwidth equal to the stream's bitrate, so if you have 1 listener on a 24 kbps stream, 24 kbps of upstream bandwidth is in use, and if you have 3 listeners, 72 kbps is in us. So we divid 1024/24 and take the result (42). This is the absolute maximum number of listeners the server can support.

Access Control
Now that we know the maximum number of listeners we can support, how can we make sure we don't exceed that number? This is where the Listener Limit setting comes into play. In Nicecast's Server window, under the Built-In Server tab, you'll find this control. Stop the server with the Stop button, then adjust this.

The Listener Limit should be set to the number determined above for your specific connection. When this is set, any listeners who try to conenct past the limit will be told the server is full. If this is not set properly, more listeners can connect than the server can truly support, and the stream will start to rebuffer and drop out for all users.

100 Listeners? How?
Serving large numbers of listeners is rarely possible with the local connection, but by using an External Server, you can go beyond the limits of your own connection. Services such as fast-serv.com allow you to relay your stream, sending it just once to their server.

Once you set up Nicecast with an External Server, listeners tune in to this server, which has much faster connections to the internet. You can pay for more listeners to be able to access your stream by adding bandwidth, or you can increase the quality of your stream beyond what you could reasonably support from your local connection. But on almost any internet connection, Nicecast's built-in server will support at least 1 or 2 listeners, so in the beginning we recommend sticking with the built-in server.

For more information on using External Servers with Nicecast, please read the External Servers tutorial page.

Showing Track Titles in the Stream

Nicecast will include track titles right in your audio stream, so your listeners know what they're hearing. Nicecast automatically reads track information from the following applications:

Using the Track Title Source Preference

If the audio source for your broadcast (as configured in the Broadcast window's Source drawer) is set to one of the above applications, Nicecast will automatically include track titles from it in your stream. However, if you have a setup where the application is not the direct source, you can still configure Nicecast to pull track titles from it. Configure the “Track Title Source” preference, found in the Preferences window, to pull track titles from your desired application.

Manual Track Titles with the NowPlaying.txt File

If you wish to manually control track titles, you can do so with the NowPlaying.txt file. Nicecast will read track titles manually from this text file. This file must be located at ~/Library/Application Support/Nicecast/NowPlaying.txt.

Follow this format:

Title: Come Together
Artist: The Beatles
Album: Abbey Road
Time: 04:20

All fields are optional, and Nicecast will read from the file every 5 seconds.

Nicecast and the Web

If you've created a Nicecast audio stream, you probably want to get listeners for it. If you've got your own website, you can use that to promote your stream. This page provides a guide on various things you may wish to do. For further assistance, you'll want to speak to a qualified web developer.

Linking To Your Stream
If you just want to create a simple text link to your stream, just pull the address from the Share drawer, as found in next to the Internet setting. For example, if the address to the audio stream is http://www.example.com:8000/listen.m3u, the following HTML is used to create a link:

<a href="http://www.example.com:8000/listen.m3u">Click To Tune In</a>

On Air Test
You may also like to display information on the On Air status of the stream. In order to display dynamic information on your website, you'll need to use something like PHP. The example below uses a simple PHP function, and basic HTML. If you don't know anything about PHP, now's the time to learn. Grab a book or check out the PHP.net. Please note, we can't teach you PHP, and the below is merely provided to aid you.

PHP Function:

function onAirTest($ipaddress, $port)
{
   if ($ret = @fsockopen($ipaddress, $port, $errno, $errstr, 1))
   {
      fclose($ret);
      return true;
   }
   
   else
   {
      return false;
   }
}

Once this function is available (by sticking it at the top of the page, or in a PHP functions file for your site), it can be combined with a simple if/else statement as follows. Be sure to adjust the address (https://www.example.com) and the name (“My Rock Station”) as needed. This setup can also be spruced up with graphics and alternate text as desired.


if (onAirTest("WWW.EXAMPLE.COM", "8000"))
{
   print "MY STATION Is Currently On The Air";
}
else
{
   print "MY STATION Is Currently Off The Air";
}

Now Playing Info
Finally, you may wish to display the title of the currently playing track, as well as previously played tracks.

To do this, you'll need to use the Recent Tracks Log (RTL) file (as seen in the Preferences window), coupled with PHP. Again, if you don't know anything about PHP, grab a book or check out the PHP.net. And as before, please note that we can't teach you PHP, and the information below is merely provided to assist you.

If you're running both your Nicecast server and your web server on your local machine, this is fairly easy. You just need to save the RTL file to somewhere in your web directory, and then access it. The following code opens the rtl.txt file, reads in the first line to the $buffer variable, and prints it out after the "Current Track:" text

$fp = fopen ("music/rtl.txt","r");
if (!feof($fp) )
{
   $buffer = fgets($fp, 1024);
   print "<tr><td align=\"center\"><b>Current Track</b>: $buffer";
}

fclose ($fp);

If you're using a remote web server, you'll need to find a way to get the RTL file up to that web server before it can be read. This is more difficult, and will likely require some sort of scripting. Research in AppleScript and other solutions will likely be the best bet. Good luck!

Embedding Content In A Webpage
It's possible to embed a stream in a webpage, with the following code:

<audio autoplay="false" autobuffer="false" controls="true" src="http://ADDRESS:PORT/listen"/>

Be sure to replace ADDRESS:PORT with the correct information from the Internet address in your Share drawer. This will be something like 216.92.184.26:8000, so we'd use:

<audio autoplay="false" autobuffer="false" controls="true" src="http://216.92.184.26:8000/listen"/>

Add that code to your webpage, and users will be able to listen right from the page. Do note that this code will require a relatively modern web browser to work. If you need further assistance, please be sure to speak to a qualified professional web developer.

Running A Talk Show With Nicecast

Nicecast is great for all sorts of broadcasts. Many people have expressed interest in using Nicecast for talk shows with Skype or iChat, so we've compiled a set of instructions for doing just that. There are two different ways to do this, and we'll run through both of them.

Plugins Window

A Skype-based Broadcast

In this scenario, you'll simply use Skype (FaceTime or any other VOIP application will also work fine) to chat with someone else, and broadcast the entire thing. Your conversation will be broadcast live, over the net.

Set Up

For our example we'll be broadcasting from Skype, but everything applies to iChat as well. To set things up for each use:

1) Plug the microphone and headphones in, then launch Nicecast and Skype.
2) In Nicecast's Source drawer, set the first pop-up to Application and then select Skype for the Source.
3) Finally, press the Start Broadcast button in Nicecast and chat away.

Once you start chatting in Skype, the audio will be broadcast out. That's all there is to it.

Bringing in Skype callers on a standard chat

In this scenario, you'll be speaking into a microphone locally, and also bringing callers in and out of the show. This requires a bit more setup, but provides more flexibility in terms of the show, as you aren't limited to a single caller and conversation.

Set Up

For our example we'll be getting audio from Skype, but everything applies to iChat as well. To set things up for each use:

1) Plug the microphone and headphones in, then launch Nicecast and Skype.
2) In Nicecast's Source drawer, set the first pop-up to Audio Device and then select your microphone for the Input Source. This should be the same device selected in Skype's Audio preferences for Input.
3) Next, open the Effects window, and insert the Application Mixer plugin.
4) You need to adjust the Application Mixer's settings, in the Editor window. Set Skype as the Application, and leave the Crossfade at 50%. Click Advanced... and set it to Hijack One Audio Stream (Default). This must not be set to MegaMix, or your audio will come through twice.
5) Finally, press the Start Broadcast button in Nicecast and get started. Audio from your microphone will be broadcast. When you click Hijack in the Application Mixer plugin, audio from Skype will also be brought in.

So what's going on here exactly? The audio from your microphone is going two places, into Skype and also into Nicecast. In Skype, this audio is sent to the person to whom you're speaking. In Nicecast, this audio is mixed with the audio pulled from Skype, specifically the other speaker's portion of the conversation. This is combined together seamlessly to make one audio stream of your conversation.

Broadcasting

Once you're set up as instructed above, you're set to go. Speak using the microphone, and accept calls through Skype. You can also play any desired audio in iTunes, and grab that with a second instance of the Application Mixer plugin. That's all there is to it. Enjoy!

Note: One additional step for some input devices, particularly headsets, is to adjust the Advanced Hijacking Options. Click the Advanced button in the Input tab to access this window. Choose the headset as the Target device, and change the Left Channel and/or Right Channel to 1 or 2 - do not leave them on Default. You should then hear the other party on the right or left ear - and they'll be recorded.

Using Nicecast with Darwin Streaming Server (DSS)

Nicecast contains a built-in server which will work for most users. However, some users may wish to use it with an external server. For more detail on using Nicecast with Darwin Streaming Server (DSS), read on.

To start, download DSS. Once it's installed, you can access the server from your web browser http://127.0.0.1:1220. This will launch a setup assistant where you can set the username and password for the DSS. Be sure to set a password for MP3 serving.

In Nicecast, open the Server window. Create a new server and use the following settings:

Name: Anything you like
Server Type: Icecast 1
Address: The IP address of the DSS - if on the same machine, use 127.0.0.1
Port: 8000
Mount Point: /xxxx (Give it a name, in my case it is /bhs
Account: (Leave blank)
Password: Plug in the password for MP3 Serving, set previously in DSS

Be sure to create a simple playlist file and save it as ANYNAME.pls (in my case it was bhs.pls). Here is the sample content in my case:

[playlist]

NumberOfEntries=1
File1=http://xxx.xxx.xxx.x:8000/bhs (Where the ip address is for the DSS, as above)

Save it as you would any other page on the web server in the same folder as your web page. In my case it was xxxxxxxxxxx/bhs.pls. You can use this to link to it in your web page:

<a href="http://URLAddressOfTheFile/bhs.pls">Click here to launch broadcast in mp3 player</a>

You can also plug in the address directly in Quicktime using icy. In my case it is:

icy://xxx.xxx.xxx.xx:8000/bhs (again use the IP address of the DSS

In this specific case, the key is to ignore Nicecast's address as given in the Share drawer. Instead, use icy:// and follow the IP:port with the mount point, as in the example above, http://xxx.xxx.xxx.x:8000/bhs.

Contact Information

Nicecast Homepage

https://rogueamoeba.com/nicecast/

Rogue Amoeba Homepage

https://rogueamoeba.com

Nicecast Support

Check out our Support Center first.

If you still need help, choose "Contact Support..." from Nicecast's Help menu to get in touch!

Rogue Amoeba Mailing List

Join the Rogue Amoeba low-traffic announcement list. There's no spam, EVER. It's as simple as that.

https://rogueamoeba.com/company/lists/

Nicecast Rights and Restrictions

Distribution

Unless explicitly stated in writing, Rogue Amoeba Software does not grant permission to sell Nicecast ("The Software"). Non-profit distribution of The Software in its trial form is acceptable provided that The Software is not modified in any way, and the complete works of The Software are included in the distribution package. If The Software is to be included in a distribution package, Rogue Amoeba requests but does not require that one complimentary copy of said package be sent to the snail mail address found on our site.

What that said:

Don't sell this software directly for profit. If you want to distribute it, great! Just make sure it's unmodified from the download from our site. If you create a distribution package, it'd be cool if you sent a copy to the address above, though this is not required.

Disclaimer

Nicecast ("The Software") is provided as is. Rogue Amoeba Software ("The Author") is not responsible for any damage to the user's computer system or data and in no event will The Author, its officers, directors, employees or agents be responsible to the user for any consequential, incidental, or indirect damages (including damages for loss of business profits, business interruption, loss of business information, and the like) arising out of the use or inability to use the The Software, even if The Author has been advised of the possibility of such damages. Because some states do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitations may not apply to you. Further, the consumer agrees that using this software in any way illegal, or even for the purposes of assessing its viability for illegal usage, is prohibited.

What that said:

Be safe when you use the software. Be aware that it's simply a tool designed to make your life better. Don't use it to do illegal or evil things. If you do, be ready to take responsibility for your own actions.