In Second Life Disc Jockeys (or DJs) are people who play music for events or venues. DJs are usually well respected and often well known because a good DJ can make an event a lot of fun and very memorable, especially if they have a great library of music and take requests.
Music (or any audio) is played in second life by configuring the Music URL in the Media tab of your land settings. Right-click your land and select "About Land..." from the menu. In the "About Land" window that pops up, select the "Media" tab. You can fill this in with your favorite music URL (for example http://220.127.116.11:7686 for oldies rock).
This URL points to a media server which broadcasts music digitally via the internet. Note, this music is sent directly to your computer, it is not handled at all by the Second Life servers.
Before you can be a DJ you need to have a media server with a URL that people can connect to. Fortunately there are several free software utilities that can do this for you. Basically you will need:
- A media server - which actually broadcasts the music
- A source client - which lets you select the music from several sources and sends it to the server.
The are many ways to set up you broadcast environment, but only one is described here in detail. Note: it can be frustrating to set up a broadcast environment because often these utilities are documented poorly, and they can be quite complex to configure properly.
Example Broadcast Environment
- Icecast - server
- WinAmp - media player
- OddCast - source client plugin for WinAmp
- Music - files or CD you can play via WinAmp
- Computer 1 - for broadcasting
- Computer 2 - to test that you are broadcasting
- Internet Router/Gateway
This example uses
- Windows XP for Computer 1
- Windows Vista Ultimate 64 for Computer 2
- D-Link router.
but other combinations are possible.
Setting Up the Server
Install the latest version of IceCast on Computer 1.
Run the IceCast user interface (in this case Icecast2.exe)
From the "Configure" menu select "Edit Configuration."
Change the following passwords in the icecast.xml file:
<authentication> <source-password>hackme</source-password> <relay-password>hackme</relay-password> <admin-user>admin</admin-user> <admin-password>hackme</admin-password> </authentication>
for example (but select your own passwords)
<authentication> <source-password>Play4Me</source-password> <relay-password>Play4Me</relay-password> <admin-user>admin</admin-user> <admin-password>IamKing45</admin-password> </authentication>
While this was not strictly necessary, it is always good practice to change passwords to your own secret versions.
Save you changes and close the window for the icecast.xml files.
Click the "Start Server" button.
Setting up WinAmp
Install the latest version of WinAmp on Computer 1.
Try playing a few tunes so you can get the hang of it.
Setting up the WinAmp OddCast Plug-In
Install the latest version of OddCast on Computer 1.
Start WinAmp again.
Under the "Options" menu select "Preferences..."
In the Preferences window select (under Plug-ins) "DSP/Effect"
In the top right of the window select "Oddcast DSP..."
The Oddcast window should open up. Click the "AddEncoder" button.
Under "Encoder Settings" right-click the encoder you just added and select "Configure" from the menu. A Configuration window will open up.
In the "Encoder Type" field, select "OggVorbis"
In the "Server Type" field, select "Icecast"
In the "Encoder Password" field type your source-password, in this case "Play4Me"
In the "Mountpoint" field type "/different.ogg"
Finally, click the "OK" button to close the Configuration Window.
In the Oddcast window click the "Connect" button.
If the server is running properly you should see the word "Connected" under the "Transfer Rate" column in the table next to the encoder you just added and configured. If it's not connected there's something wrong or your server is not running.
In the Icecast window (your opened earlier) you should be able to see 1 connection.
Testing the Broadcast
If you don't have WinAmp installed on Computer 2 do that first.
On Computer 1 start a play-list going in WinAmp - something that will be playing for a while.
On Computer 1 start WinAmp, and from the "File" menu select "Play URL".
In the "Open URL" window enter "http://18.104.22.168:8000/different.ogg" - where 22.214.171.124 is the Internet Protocol address of computer 1.
To find the IP address, go to Computer 1 and open a Command Prompt and run the "ipconfig" command. You should see something like
Ethernet adapter Local Area Connection: IP Address . . . . . : 192.168.0.101 Default Gateway . . : 192.168.0.1
If all has gone well Computer 2 should be playing the same music that is playing on Computer 1.
If you go to Computer 1 your will see the VU meters in the Oddcast window indicating that there is music playing. From then on, any music you play in WinAmp on Computer 1 will play on Computer 2. Note: if the music stops on Computer 1, it will probably stop on Computer 2. Whey you start the music on Computer 1 again, it may not start playing on Computer 2 until you push the play button again (or something similar).
Testing the Broadcast on Second Life
Chances are your broadcast server is your personal computer at home, and it's behind a router/gateway.
The way things are set up now only computers on your personal Local Area Network can find your music broadcast, so you will have to configure your router/gateway.
Most routers have a web user interface that you can access by typing in the address of the router to your web browser. For example, from the ipconfig command discusses previously you might enter
First you will need to find the IP Address of the router that is know on the Internet. This will be published somewhere in the UI. For example, let's say it's "126.96.36.199"
Next you will need to set up a mapping to your Icecast service on Computer 1. This usually looks something like:
Application Name: icecast IP Address: 192.168.0.101 Public Port: 8000 Private Port: 8000 Protocol: both (TCP/UDP)
where IP Address is the address of Computer 1. There may be other information. After you've saved the changes you may need to restart your router (but not usually).
Go back to Computer 2 and start Second Life. In your land, configure the following URL for you land's audio feed
but don't use "188.8.131.52" - use the external address you got from your router. You should now be able to hear the music from your broadcast server on Computer 1 playing via Second Life. Anyone else on your land should also be able to hear the same music.
There are usually many other settings to configure and play with in your broadcast environment, such as the mount point in your URL. For example, you do not have to use "/different.ogg" in your URL, you can configure something different, such as "/rockme.ogg"
Check the documentation that comes with your utilities for extra information on configuring other settings.
Often times a DJ needs to announce songs before they are played, or add other commentary. Music players like WinAmp and Source Clients like Oddcast often have way of adding input from a variety of sources, such as a microphone.