/h2cdplay

Sound server that plays tracks on win32 events

Primary LanguageC

h2cdplay is a sound server that plays tracks on win32 events.  It's intended to
be used with Heroes of Might and Magic 2, an old Windows game that used CD
audio soundtracks and whose CD music playback has compatibility issues on
modern systems).  HOMM2 needs to be patched first to fire the events on
track/volume switches (the modified executable is in the "Heroes of Might and
Magic II CD MUSIC + PATCH" package), and you need to rip/encode original audio
tracks then put them in a subdirectory 'tracks', naming them track01.mp3,
track02.mp3, track03.mp3, etc.

h2cdplay uses the BASS audio library (http://www.un4seen.com/bass.html) to
decode/playback tracks.

h2cdplay works with WINE on linux. You can also build more "native" binaries
using winebuild and Linux version of BASS library. On Debian/Ubuntu systems you
will need wine-utils and libwine-dev packages. You should also check out
fheroes2, free heroes2 engine at sourceforge:
http://sourceforge.net/projects/fheroes2/

Sample console-based client is included for testing purposes (just enter event
number to fire the event).

Protocol description:
Events are created with text names like "h2cd_play_track#%02d"
Event 0: stop playback
Events 1..49: play given track
Events 50..60: set playback volume (in a rather convoluted way)
Event 61: set "save/restore" posiion flag for this track (playback will be continued from saved position)
Event 63: terminate server