A TeamSpeak 3 plugin to play music to your channel.
Version 0.9.5b, May 2012, Draft (Contains lots and lots of errors)
© Copyright 2010-2012 Michael Friese. All rights reserved.
Using BASS 2.4 © 1999-2010 Un4seen Developments Ltd.
TeamSpeak 3 is © 2010 TeamSpeak Systems GmbH.
With TS3 Soundboard you can play music and sounds to your teamspeak channel. The main difference to other methods I've seen, is that you don't need any secondary machine or TS3-Instance and you don't need to fiddle with your system settings.
Once installed the plugin allows you to simultaneously play sounds and speak as usual.
Here are some more features:
Since Version 0.9 the addon comes as a TS3 Plugin-Bundle that can be installed by TeamSpeak directly. Just download the file and double-click it.
After installation just (re-)start TS3 and you're ready.
This section will describe every available option of the settings dialog. If you want to quick-start, continue reading at Setting it up.
This options enables playback to the channel you're in. If you don't enable this, noone in your channel will hear what you're playing. It is good for testing your sounds locally without annoying someone else.
Changing this option will only affect new sounds / music files and not already active ones.
If you enable this option, the plugin will playback the soundfiles and music to your computer. Without this option enabled (and with the Send audio to channel option enabled) everyone in your channel will hear what you play - except you.
Changing this option will only affect new sounds / music files and not already active ones.
This option is needed if you want to use VAD. It is important that you don't use the VAD-Option of TeamSpeak itself, because using that will interrupt playback of your sounds / music whenever you stop talking. See Enabling VAD section of this manual for further information.
Adjusting this slider will affect the volume of the playback to the channel (which you can enable via Send audio to channel). It will adjust all currently running streams of the type music and all sound and music files you will play in the future.
The same as Volume (remote), except that it affects the volume of your local playback (which you can enable via Play audio locally).
This settings affect the voice effects that are being applied to your voice in realtime.
Warning: This might affect your latency and any echo cancelling might not work at all afterwards.
Generally enables (or disables) all setup effects. If you don't need any voice effects, make sure this is turned off. This will save ressources and lower the latency again.
Enabling this will make you hear your own voice as configured in the VFX Settings. Your voice will not be sent at all when this option is enabled. This option will not be saved when you exit TeamSpeak.
With this slider you can affect the pitch of your voice. Sliding to the left means your voice will sound lower, sliding to the right will make your voice sound higher.
Syncing to a media player will make the plugin read what's playing in the selected media player and start playback of that same file to the channel.
This option is at this time only available for the Windows versions of the plugin and only for Winamp or programs that use the same API as Winamp.
In the select box, check the player you want to sync the plugin to or -- don't sync to disable this functionality.
When you enabled syncing and your media player starts playback of a new file, this option will let the plugin tell everyone in your channel the title of that new track.
Enabling this option will allow everyone on your server that knows the set password (and you HAVE to set one for this to work) to remote control the media player via TS text chat. This is described later on.
Clicking this button will open a frame (which you can customize, see Using the button frame) containing buttons that trigger playback of files, stop playback etc.
This will open the configuration file for the button frame in your default editor (for .ini-files). The syntax of the configuration file is described in Using the button frame.
Enabling this will automatically show the button frame when you start TeamSpeak.
The plugin needs to be configured for either Push-to-Talk or Voice Activity Detection (VAD). Please choose how you want to use the plugin and follow the corresponding steps.
This steps are necessary, since the plugin and not TeamSpeak has to decide when to transmit audio from now on. (Otherwise sounds would get cut off whenever you talk or press your keys.)
This one is pretty simple.
That's it.
This one is a tiny bit more complicated.
You're done.
There are multiple ways to play sounds. You can either enter commands directly to your chat, you can assign hotkeys to specific files or actions, you can configure the button frame to provide graphical access or you can even bind hotkeys to those buttons.
But let's step back and clear some things up before you start.
The plugin knows two different ways to play back files:
Those two types are referenced in the plugin as sound or music.
Type the following commands to your chat input and press enter to execute the described actions actions.
/soundboard < type > < filename >
So if you want for example play back a file at C:\MySounds\Blah.mp3, you have to type
/soundboard sound C:\MySounds\Blah.mp3
As you've learned earlier: If that file that is to be played is in fact music, you might want to enter
/soundboard music C:\MySounds\Blah.mp3
To stop playback of a music file, just enter
/soundboard stop
If you want to stream music from an internet stream (via ICE- or Shoutcast), enter
/soundboard stream < URL >
If you want to virtually click a button of the button frame, enter
/soundboard button < button number >
You might want to prefer accessing your favorite sounds by a hotkey, so this is the way to configure it:
In some rare cases the path to a file can be too long to be saved by TS3. Try to shorten the path by copying the file somewhere else ;)
By default (and since v0.9.4b), the button window will hold 10 buttons for you to configure. If you want more or less buttons, you have to follow the detailed instructions below.
Just right-click (since v0.9.4b) the button and select the option you want to change, that's it.
If you want to use multiple lines on the button, insert \n as newline character into the title.
Open the configuration file by clicking the button in the plugins' settings dialog.
Your default editor for .ini-files should open. If it doesn't - well, you'd have to search for the file soundboardframe.ini for yourself ;)
The file itself is written in the standard ini-Format Qt uses and not a weird idea of myself ;)
The config file contains a header called [Buttons] you shouldn't touch. Below comes the part you're interested in.
Each button you want to configure consists of several lines containing the button number and an attributes. The number is an incrementing one starting with 1, followed by a backslash. The attributes describe the filenames, the text that's to be shown on the button, the style and maybe some other things.
Let's assume your config looks like
[Buttons]
1\file=C:\\Temp\\Blah.mp3
1\title=Awesome Track
1\type=music
2\title=Stop Music
2\type=stop
size=2
As said, don't touch the header [Buttons]. The next three lines describe the first button and it's assigned file, type - in that case music - and title of the button.
Important: Filenames on Windows-Systems must contain two backslashes \ instead of just one (because the backslash is used as a so-called escape-character). On filesystems where normal slashes are used, using only one is alright.
The last line
size=2
describes, how many buttons in total there are. This number has to be adjusted if you add or remove buttons.
Once you've made your changes, save the file and reload the plugin by disabling and re-enabling it. (This method will be optimized later on.)
The caption of the button. This is what's displayed on top of the button in the button frame. This attribute should always be set
this attribute must be present
The full path of the file, e.g. C:\Temp\Blah.mp3 on Windows or /home/user/blah.mp3 on *nix.
A style definition, similar to CSS but using the Qt-Syntax. Please google it for more info.
The configuration file should also contain a General section (at least once you've closed TeamSpeak after the first time you used the plugin), where you can specify the following settings (which all require you to reload the plugin after a change, atm.):
Name | Value |
---|---|
buttonWidth | the width of a single button, default is 110 |
buttonHeight | the height of a single button, default is 80 |
buttonsPerRow | the count of buttons to be shown per row, default is 5 |
buttonSpacing | the space between the buttons, default is 8 |
So the config file could contain something like this:
[General]
buttonWidth=120
buttonHeigh=80
When you want to use the plugin as a radio-station or "Music-Bot" you might want to synchronize it to a media player. That way the plugin tries to find out what your player is playing and does the same to your TS3-channel.
This way you can have a long playlist ready and leave it playing unattended.
To start:
The plugin will only play files it knows. It cannot play files that are not natively supported by the plugin - even if the media player can actually play it.
So you've enabled the sync-function and entered a password. Now give the password to the people you want to be able to control your media player.
They can then open up a text chat with you and enter one of the following commands that are prepended by the password.
To start playback
< password > play
To stop playback
< password > play
To pause/resume playback
< password > pause
To jump to the next track
< password > next
To jump to the previous track
< password > prev
To jump to a specific file in the playlist
< password > track < number >
To get info about a track on a specified track position
< password > info < number >
The availibility of this commands depend on the used media player.
Notice the missing /! Those commands don't start with a slash!
v0.9.5b (May, 20th 2012)
v0.9.4b (May, 12th 2012)
v0.9.3b (May, 10th 2012)
v0.9.1b (May, 5th 2012)
v0.6.1b
v0.5.9b
v0.5.7b
v0.5.5b
v0.5.1b
v0.5b
Special thanks for general support go out to
Special thanks for beta-testing and having some fun ideas
Also special thanks to Nuwen who initially came up with a version of a button frame.
And last but not least thanks to the TeamSpeak-Staff and the Developers of the BASS-Library.