-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Bert Mueller edited this page Oct 3, 2018
·
9 revisions

playsmf is a small, lean and generic Windows32 commandline standard midi file (SMF) player with specific features such as:
- intrinsic realtime player flow control using jump/branch commands in combination with target address labels (primarily used for loops)
- realtime midi controlled jumps (interrupts) in combination with target address labels
- chord recognition for midi realtime interrupt/jump control
- multiport output controlled by SMF Port metaevents
- SysEx support
- multi-layer/multi-zone midi thru functionality based on "track follow mode" (thru port/channel follows selected tracks)
- realtime midi controlled mutes/unmutes based on "mute-sets" (mute/unmute multiple tracks simultaneously)
- record/save all incoming midi and sysex events into standard midi files
- the player is designed to keep CPU usage as low as possible to leave CPU power for other tasks such as softsynths, etc.
usage:
playsmf.exe <MidiFile> <TimerPeriod> <DefPortOut> <DefPortIn> <TimeOut> <Channel> <Ofs> <REC> <INT> <KeyStart> <KeyStop> <KeyChordStart> <KeyChordStop>
-
<MidiFile>- inputfile *.mid -
<TimerPeriod>- windows timer resolution in ms or -1 if not used -
<DefPortOut>- default output port -
<DefPortIn>- default input port -
<TimeOut>- midi in timeout in ms or -1 if not used (player will close if no midi in message received within this period) -
<Channel>- channel used for chord recognition (-1 means all channes are used) -
<Ofs>- midi in key offset (default 0) -
<REC>- turns on midi recording (0xff means off) -
<INT>- interrupt message control for styles (default 0x00008000 - all messages) -
<KeyStart>- start key (EntryLabel) -
<KeyStop>- stop key (ExitLabel) -
<KeyChordStart>- lowest key used for chord recognition -
<KeyChordStop>- highest key used for chord recognition`