SYNOPSIStse3play [-h] [-ver] [-v] [-list] [-nv] [-np] [-l] [-omidi output-midi-file ] [-omidi0] [-omidicomp] [-otse3mdl output-tse3mdl-file ] [-map from-midi-channel to-midi-channel ] [-m] [-r] [-gmr] [-gsr] [-xgr] [-unix] [-oss] [-alsa] [-arts] [-stream] [-s start-time ] [-solo track ] [-sl usecs ] [ -stop ] [ -e ] [ -mute channel ] [ -pd dir ] file ] [ -port port ] [ -fast ]
DESCRIPTIONtse3play plays TSE3MDL files and MIDI files using the TSE3 sequencer engine. It was originally developed as a test application for the TSE3 engine, but is now a fully featured playback application.
tse3play can also convert files between the two supported formats. Whilst playing it provides text based visual feedback, or can stream an English representation of the contents of the file to standard output.
MIDI files are a standard file format for the storage of musical (song) data that can be found in abundance on the internet. They don't contain the actual sounds played, but instructions on how to recreate the song (i.e. start note/stop note commands). MIDI files are most often created by a sequencer application (akin to a word processor for music). MIDI files often have the extension .mid or .midi
TSE3MDL ( TSE3 Music Description Langauge ) files are a similar form of music file. They are created by sequencer applications based on the TSE3 sequencer engine library. The file format contains a great deal more information and harnesses the full power of the TSE3 library. TSE3MDL files often have the extension .tse3
The type of the input file is automatically detected by tse3play . tse3play can also load legacy TSE2MDL files from sequencers based on the older TSE2 sequencer library.
- -h, --help
- Provide help on the tse3play command line parameters.
- -ver, --version
- Print version number and exit.
- -v, --verbose
- Give verbose output on what tse3play is trying to do.
- -list, --list-ports
- Lists the port numbers available on your platform.
- -nv, --novisual
- Don't produce visual feedback (text-based output-level indicator).
- -np, --noplay
- Don't play the input file (only perform a conversion - if one is specified).
- -l, --loop
- Loop playback of the input file.
- -omidi, --out-midi <filename>
- Convert the loaded file to MIDI. File type will be MIDI type 1 unless -omidi0 is specified. The filename of the output follows this option. You can specify '-' to output on stdandard out.
- -omidi0, --out-midi-format-0
- If performing a MIDI conversion, produce an output file in MIDI type 0 format. For most cases the default (type 1) is recommended.
- -omidicomp, --out-midi-compact
- Compact the converted MIDI file output. This removes any redundant information in the MIDI file that could be removed by using MIDI running status.
- -otse3mdl, --out-tse3mdl FILENAME
- Convert the file to tse3mdl format. The filename of the output follows this option. You can specify '-' to output on stdandard out.
- -map, --map-channel F T
- During playback, map MIDI channel F to MIDI channel T. Channel numbers start at zero.
- -m, --metronome
- During playback, produce a metronome tick.
- -r, --reset
- Send a basic MIDI reset message at playback start and end. This will send a reset message even if -np is specified.
- -gmr, --gmreset
- Send a General MIDI reset message at playback start and end. This will send a reset message even if -np is specified.
- -gsr, --gsreset
- Send a GS reset message at playback start and end. This will send a reset message even if -np is specified.
- -xgr, --xgreset
- Send an XG reset message at playback start and end. This will send a reset message even if -np is specified.
- -unix, --unix-scheduler
- Selects the best Unix scheduler device (either OSS or ALSA) as the MIDI output method. This is the default behaviour.
- -oss, --oss-scheduler
- Selects the Open Sound System interface as the MIDI output method.
- -alsa, --alsa-scheduler
- Selects the ALSA interface as the MIDI output method. This will only work if you have ALSA installed on your computer.
- -arts, --arts-scheduler
- Selects the aRts interface as the MIDI output method. This will only work if you have aRts installed on your computer.
- -stream, --stream-scheduler
- Selects the standard output stream as the MIDI output method. An English interpretation of each MIDI command generated will appear on standard out.
- -s, --start
- Begin playback at the specified clock pulse. The pulses are divisions of quarter notes. tse3play works to a resolution of 96 PPQN.
- -solo, --solo-track
- Play with the specified input track 'soloed'. This will mute all the other tracks. Note that this option will mute the input track from the file, not the specified MIDI channel. Track numbers start at zero.
- -sl, --sleep
- Sets the time period that tse3play returns control back to the operating system between updates. The parameter is a number of u-seconds. The default value is 100. Specifying a shorter time will make the real time vu bars update more responsively. A value of 0 disables the sleep.
- -stop, --no-stop
- Prevents tse3play from exiting once playback has finished. This can be used in conjunction with --echo and no specified filename to make the computer act as a MIDI Thru box.
- -e, --echo
- Enable the MIDI echo facility, which is a soft MIDI Thru port. Anything received on the MIDI in connection will be immediately echoed on the MIDI out.
- -mute, --mute-track
- Mutes the specified track in the input file. The first track is track zero.
- -pd, --patches-dir
- Specifies the path to the directory in which FM or GUS patch files are to be found. This is used by the OSS driver to load sounds into the soundcard.
- -port, --force-port
- Forces all output to the specified port.
- -fast, --fast-midi
to use a faster MIDI file import routine. This will make the MIDI file playback
start almost instantaneously (especially noticeable for very large MIDI files).
You can only use this if you are not converting a file.
It has a number of possible side effects; (i) The MIDI file's last time stamp is trusted to be correct (it might not be) (ii) Stopping playback half way through may produce 'hanging notes'
BUGSNaturally, tse3play is completely bug free. The TSE3 library upon which it is based is also completely bug free. However, if you do find something goes wrong then contact the author. The program can only be improved with your feedback.
COPYRIGHTCopyright (c) 2000,2001 Pete Goodliffe. See the license file in the TSE3 doc diirectory for a complete license statement.
AUTHORPete Goodliffe <[email protected]>
Trax Software 2001