joelamos / SourceRadio

Stream music from YouTube while playing games on Steam
http://steamcommunity.com/groups/source-radio
GNU General Public License v3.0
10 stars 0 forks source link
music-player music-streaming radio source-engine-games steam youtube-dl

SourceRadio

SourceRadio makes it possible for players on a server to build a playlist together and listen to music as they play—even on public servers.

SourceRadio plays music through the owner's ingame microphone, and songs may be requested by any player via the chat interface. If multiple songs are requested within a short time span, the first song plays, and the others are placed in a queue.

Your selection of music is practically infinite. That's because SourceRadio streams music directly from YouTube. When players request a song, SourceRadio takes the request and sends it to YouTube, which spits out the top result. SourceRadio stores the information gathered from each song request in a local database, using that information to avoid future lookups. SourceRadio also saves the most-requested songs locally to the owner's drive in order to stream songs more efficiently.

Supported games

System requirements

Note: A physical microphone is not required for sharing music with teammates.

Installation & usage

  1. Join the SourceRadio Steam group and download the installer from the link on that page.
  2. Run the installer, and carefully follow all of the instructions it gives. Note: Anti-malware software may flag the installer because it is not from a known source. You may have to temporarily disable this software.
  3. Become familiar with all of SourceRadio's commands. Then, open the properties.txt file and ensure that each value is correct for you.
  4. Run SourceRadio alongside a supported game and begin jamming to tunes.

Ingame commands

Commands are issued to SourceRadio by players via the ingame chat interface. The owner also has the option of issuing commands via the developer console if he uses underscore for spaces. Commands are only recognized if they appear at the beginning of the message and start with an exclamation point.

Below, an asterisk indicates that a command has the ability to write changes to the properties file. This is done by appending -w to the end of such a command (e.g. !queue-limit-w 7). Parameters are indicated here in square brackets. However, when commands are issued, brackets do not surround the parameters.

Properties

The various files containing properties and settings for configuring SourceRadio are located at ...\SourceRadio\properties. Below, you will find explanations of each important file in this directory that you may want to tweak to fit your preferences. You may use // to demarcate comments in these files.

properties.txt

This file contains SourceRadio's main parameters. Property-value pairs are separated by the delimiter ->. See this list for valid key names for binding. To restore this file's default values, run restore defaults.bat.

admins.txt

If you wish, you may use this file to grant administrative privileges to specified players. Admins are able to execute most of the available ingame commands. This allows them to complete tasks that normal players can't, such as skipping songs and banning players.

This file should contain the Steam ID (any format) or profile URL of each player you wish to make an admin, with each value on its own line. Alternatively, you can add admins using the ingame !add-admin [username] command, so long as the player is on the same server with you.

Note: As the owner, you do not have to place your ID in this file to grant yourself privileges.

banned players.txt

If you wish, you may use this file to revoke the ability for certain players to request songs.

This file should contain the Steam ID (any format) or profile URL of each player you wish to ban, with each value on its own line. Alternatively, you can ban players using the ingame !ban [username] command, so long as the player is on the same server with you.

blocked songs.txt

If you wish, you may use this file to block certain songs from being played.

This file should contain a list of the YouTube IDs for each song you wish to block. Each ID must be on its own line. Alternatively, you can block songs using the ingame !block-song [song-title] command.

Note: The YouTube ID mOF17bfG0Do corresponds to the YouTube URL https://www.youtube.com/watch?v=mOF17bfG0Do.

Program arguments

Third-party libraries used

FAQs

Why can't I run the installer? / / My computer thinks this a virus!

Some anti-malware software may flag the installer because it comes from an unknown source. You may have to temporarily disable this software in order to run the installer.

Why does music keep playing after I've finished?

You most likely forgot to use the !stop command when you finished. You can stop the audio playback by going to the Task Manager, clicking More details, selecting AudioController.exe, and clicking End task.