Winamp IPC emulator for foobar2000

Winamp IPC emulator

Current version:
foo_winamp_ipc-0.1.3

Apr 21, 2008
Requirement: foobar2000 0.9.4+
This component emulates a Winamp IPC interface
for foobar2000 player.

It developed follow the Winamp 5 SDK's definition,
and implemented many functions.

And, it's very small and speedy.

ChangeLog

foo_winamp_ipc

**Caution: it cannot work with foo_winamp_spam**

Command List

Command Support? Description
IPC_GETVERSION Yes Get Winamp Version. We always give '2.0'.
IPC_PLAYFILE No Enqueue a file to current playlist.
(This command doesn't support Unicode!!!)
IPC_DELETE No Clear current playlist.
(Shouldn't be use, because IPC_PLAYFILE doesn't support.)
IPC_STARTPLAY Yes Start playback.
(Take a forced play. Paused item will be restart.)
IPC_CHDIR No Change current directory. (No effect on foobar2000.)
IPC_ISPLAYING Yes Return current playing status.
IPC_GETOUTPUTTIME Yes Get the position or length of the current song.
IPC_JUMPTOTIME Yes Set the position of the current song.
IPC_WRITEPLAYLIST No Writes the current playlist to <winampdir>\Winamp.m3u
IPC_SETPLAYLISTPOS Yes Set the playlist position. (Just change foucs,
available only 'Playback Follows Cursor' be checked.)
IPC_SETVOLUME Yes Get or Set the volume.
IPC_GETLISTLENGTH Yes Get the length of the current playlist.
IPC_GETLISTPOS Yes Get the playlist position.
IPC_GETINFO Yes Get info about the current song.(samplerate,bitrate,channels)
IPC_RESTARTWINAMP Yes Restart player.
IPC_ISFULLSTOP No Get stop/close is a full stop, or just between tracks.
(foo_winamp_ipc never report stop status between tracks.)
IPC_UPDTITLE Yes Update the informations about the current title.
IPC_GET_SHUFFLE Yes Get the status of the shuffle option.
IPC_GET_REPEAT Yes Get the status of the repeat option.
IPC_SET_SHUFFLE Yes Set the status of the shuffle option.
IPC_SET_REPEAT Yes Set the status of the repeat option.
WINAMP_VOLUMEUP Yes Turns the volume up a little.
WINAMP_VOLUMEDOWN Yes Turns the volume down a little.
WINAMP_FFWD5S Yes Fast forwards 5 seconds.
WINAMP_REW5S Yes Rewinds 5 seconds.
WINAMP_BUTTON1 Yes Previous Button.
WINAMP_BUTTON2 Yes Play Button.
WINAMP_BUTTON3 Yes Pause Button.
WINAMP_BUTTON4 Yes Stop Button.
WINAMP_BUTTON5 Yes Next Button.
WINAMP_SHUFFLE Yes Toggle the status of the shuffle option.
WINAMP_REPEAT Yes Toggle the status of the repeat option.
WINAMP_FILE_PLAY Yes Show 'Add Files' dialog.
WINAMP_FILE_DIR Yes Show 'Add Folder' dialog.
WINAMP_OPTIONS_PREFS Yes Show 'Preferences' dialog.
WINAMP_OPTIONS_AOT Yes Toggle always on top.
WINAMP_HELP_ABOUT Yes Show 'About' dialog.
ID_MAIN_PLAY_AUDIOCD1 Yes Show 'Open Audio CD' dialog.
**For more information, please see winamp\wa_ipc.h.**