WinampCtl - Remote-control Winamp
This provides remote-control capabilities for Winamp from any computer over the network. Source is provided so you can add more capabilities, which should not be very difficult.
Server Installation (Windows only)
- Install and run Winamp.
- Unzip WinampCtl anywhere. Double-click the 'server.exe' program in the 'windows' directory.
- For more control, run from a command-prompt with the '-h' option to learn about other arguments.
Client Installation
Windows:
- Download and unzip winampctl.win.zip
- From the command-line (or create Windows shortcuts), run the 'client.exe' program in the 'windows' with options telling it what to do and where to send the commands. For help, run from a command-prompt with the '-h' option.
Linux/BSD/...:
- Download and extract winampctl.linux.tgz
- Non-linux: Go into the 'src' directory and type 'make client'
- Copy 'client' from the 'linux' or 'src' directory to a directory on your path. I recommend renaming it to something more descriptive, such as 'winampctl'.
- Run the program with the '-h' option to learn how to use it.
- For some common commands, look at the 'util' directory. To use the scripts there, rename 'client' to 'winampctl', and edit the winampDefs file to specify your own server and domain. The scripts will provide simple command-line functionality.
- For even better usability, install xbindkeys and write a .xbindkeysrc file that associates keypresses with the scripts. I have mine set to Ctrl+Numpad 5 for Play/Pause, 0 for stop after current, '.' for stop now, 4 for previous track, 6 for next track, 8 for volume up, and 2 for volume down.
Notes
This program is released into the public domain, since I don't feel like going through the hassle of releasing it under a GPL or BSD license.
The server/client take a 'domain' string, which is a simple protection mechanism to prevent one person's client from accidentally messing with someone else's server. Just make sure the '-d' parameters passed to both the client and the server are the same. For added protection, you can also change the port number. The program runs over UDP port 19267 by default.
To add additional functionality, grab a copy of the Winamp SDK and add more definitions to winamp.c/h, and to translate.c to call them. You may also want to add them to the lists in both client and cmdline.
Speaking of cmdline, it is a simple non-RPC program that sends messages to Winamp directly, instead of going through the server. Obviously you need to run it on the same machine as Winamp to use it. If all you want is command-line control of Winamp from the local machine, this is probably your best option.
Download
Source and Windows executables
Source, Linux client executable, and sample wrapper scripts