*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> dmedia/midisynth (1)              
Title
Content
Arch
Section
 

Contents


midisynth(1)							  midisynth(1)


NAME    [Toc]    [Back]

     midisynth - software MIDI synthesizer

SYNOPSIS    [Toc]    [Back]

     midisynth [Options] [PresetFile1] [PresetFile2] [...][PresetFile16]

DESCRIPTION    [Toc]    [Back]

     midisynth is a program which listens on the MIDI input port and generates
     sounds in real time in response to	MIDI events.

     midisynth has the following command-line options, most with a short and
     long form as indicated:

     -h	help
	  Print	list of	options.

     -a	allMIDI
	  Listen to all	MIDI inputs.  Default is to listen to only the
	  'Software Synth' port.

     -bank <bankpath>
	  Use <bankpath> as the	default	GM preset bank.	 Default is
	  /usr/share/data/sounds/synth/presets/GeneralMIDI_SoundSetLevel1

     -chans N
	  Open an N-channel output port	[2,4,8].  Default is 2.

     -cpu <limit>
	  Upper	CPU usage limit.  Default is 75%.

     -g	gain
	  Main Gain (in	Decibels).  Default is 0.

     -gm  Start	up in General MIDI (GM)	mode.  This is the default.

     -gs  Start	up in General MIDI GS-compatible mode.

     -ngm Start	up in non-General MIDI mode.

     -device <audiodev>
	  Use audio output device <audiodev>.  Default is the currently-set
	  default output device.

     -r	rate
	  Sampling rate	[8000..UP].  Default is	44100.

     -t	timeout
	  Time out after last MIDI write port closed.  -1 = never, 0 =
	  immediate, 1..N = minutes.  Default is 5 minutes.






									Page 1






midisynth(1)							  midisynth(1)



     -tu tune
	  Tuning offset	(Cents).  Default is 0 cents.

     -v	verbose
	  Print	MIDI events to screen or console.  Default is false.

     -vo voicecount
	  Startup voice	capacity of synthesizer	[2..255].  Default varies with
	  CPU architecture.

     -o	openfile
	  Read startup state file.  Default is $(HOME)/.midisynthrc.

     PresetFile1 ... PresetFile16    [Toc]    [Back]
	  Midisynth may	be given a list	of up to 16 preset file	names.	These
	  will be assigned to channels 1 through 16, in	order, but will	ignore
	  the entry for	channel	10 (the	Percussion channel) if midisynth is
	  started in General MIDI mode.	 The file names	must be	specified as
	  full paths to	the files.

THE DEFAULT SOUND SET    [Toc]    [Back]

     Midisynth's default basic sound set is the	General	MIDI 128 Preset
     library, whose preset files are located in
     /usr/share/data/sounds/synth/presets.  Alternate GM preset	directories or
     preset bank files may be specified	on the command line as indicated.
     Customized	sounds may be created using real-time MIDI System Exclusive
     messages and editing synth	preset files.

     midisynth is autostarted the first	time an	application opens a MIDI write
     port on the SoftwareSynth MIDI device.  midisynth times out (shuts	itself
     off) five minutes after the last MIDI write port on the SoftwareSynth
     MIDI device is closed.

HANDLING OF THE	MIDI DATA INPUT
     midisynth starts up with a	MIDI input port	on the SoftwareSynth MIDI
     device.  Additional MIDI Devices may be added with	Port Setup from	the
     ToolChest System Manager.	Use synthpanel(1) to toggle midisynth's
     response to data from the available MIDI devices.	midisynth merges all
     inputs into a single 16-channel stream and	processes all messages.
     Currently,	midisynth merges the preset and	controllers from all input
     devices, but Note On/Off status is	handled	per device.  For example,
     NOTEOFF to	device "SoftwareSynth" will not	cancel a NOTEON	from device
     "Serial Port 1".

CPU USAGE LIMITING    [Toc]    [Back]

     midisynth runs with non-degrading priority, i.e., it will not relinquish
     the CPU to	any other process (with	the exception of a few system
     processes).  In order to avoid consuming the operating system's entire
     resources,	midisynth uses a CPU usage limiting system.  When its
     percentage	of the CPU rises above a predetermined threshold (see cpuLimit
     below), it	attempts to reduce its usage until the percentage is below
     that threshold.  It does this by killing off some of the active voices



									Page 2






midisynth(1)							  midisynth(1)



     (using an internal	heuristic designed to make this	procedure as
     unobtrusive as possible) until the	CPU usage falls	below the threshold.

RELATED	APPLICATIONS
     synthpanel(1) displays the	16 channel preset address space	of midisynth.
     It	also allows adding and selecting alternate preset banks, adjusting of
     the master	synthesizer volume, and	selecting of MIDI input	ports.

     midikeys(1) may be	used to	play the synthesizer and change	its presets on
     a single MIDI channel at a	time.

     soundplayer(1) allows playback of standard	MIDI data files	via the
     synthesizer.

     syntheditor(1) allows real-time editing of	active presets and all
     synthesizer parameters, as	well as	editing	and creating new
     synthpreset(4) files.

CONFIGURATION    [Toc]    [Back]

     midisynth reads a configuration file at startup time which	allows a small
     set of startup parameters to be configured	by the user.  These parameters
     are the same as those available on	the command line.  midisynth looks for
     files in the following three places, stopping after the first of these is
     found:

     $HOME/midisynth.startup
     $HOME/.midisynthrc
     /var/dmedia/midi/midisynth/startup

     Note that none these files	is present by default, nor is the subdirectory
     /var/dmedia/midi/midisynth.  This could be	added by the system
     administrator.

     Each parameter must be on a line of its own, and must be in the form

     midisynth*parameterName: parameterValue

     The following parameters may be set:

     cpuLimit
	  Upper	limit of CPU usage allowed before midisynth will begin to kill
	  off voices.  Default is 75 (percent).

     defaultBank
	  The full path	to an alternate	General	MIDI preset bank.  This	may
	  either be a directory	containing preset files, or a SoundFont2-
	  compatible preset bank file.

     outputDevice
	  A string representing	the audio output device	to use.	 Legal values
	  are the AL_NAME parameters for the various audio devices. The
	  default is "DefaultOut".



									Page 3






midisynth(1)							  midisynth(1)



     gainIndB
	  Master gain in decibels for the MIDI voices.	Default	is 0.

     generalMIDI
	  Boolean.  If True then midisynth will	start up in general MIDI mode,
	  with channel 10 dedicated to the Percussion map.  Default is True.

     inputFromAllMIDIDevices
	  Boolean.  If True then midisynth will	read from all configured MIDI
	  input	devices.  Default is False

     outChannels
	  Number of channels of	output audio to	generate.  Legal values	are 2,
	  4, and 8.  Default is	2.

     samplingRate
	  Sampling rate	in Hz for the output audio.  Default is	44100.
	  Setting this to lower	values can significantly reduce	CPU usage, but
	  will also decrease the sound quality.	 Minimum is 8000.

     tuneInCents
	  Master detune	of samples in cents (1/100 of a	semitone).  Default is
	  0.

     processLength
	  Length in samples of each generated audio buffer.  Smaller buffers
	  give better response time but	consume	more CPU.  For optimum
	  performance, this value should be a power of 2.  Default is 256.
	  Minimum is 128, and the maximum is 512.  This	value must be less
	  than or equal	to stereoQueueSize.

     stereoQueueSize
	  Length in samples of the audio output	port queue (see
	  alSetQueueSize(3dm).	Default	is 1024	(4 x processLength).

     timeOutInMinutes
	  Time in minutes before midisynth will	exit from lack of MIDI input.
	  If set to -1,	midisynth will never exit for this reason.  Default is
	  5.

     verbose
	  Boolean.  If True, midisynth operates	in verbose mode, and will
	  print	information about events received to the terminal (or the
	  console) via stdout.	Default	is False.

     voiceCount
	  The maximum number of	polyphonic voices that can sound at one	time.
	  Note that this is an upper limit, but	that the CPU limiting factor
	  will also set	an upper limit which, depending	on the CPU, may	be
	  lower	than this value.  For an R4000 processor, 24 is	a reasonable
	  upper	bound.	For an R5000, 32 is good.  For faster and/or
	  multiprocessor machines, higher values will work, often over 100



									Page 4






midisynth(1)							  midisynth(1)



	  voices.  Minimum is 2	and maximum is 255.

     Command-line arguments will override any default or configuration-file
     settings.

HARDWARE    [Toc]    [Back]

     midisynth runs on Iris Indigo R4000, Indigo2, Indy, O2, Octane, and
     Onyx/Challenge machines fitted with the SGI Audio Serial Option (ASO)
     Board.

BUGS    [Toc]    [Back]

     Please refer to the release notes for dmedia_eoe for futher information.

SEE ALSO    [Toc]    [Back]

      
      
     synthpreset(4), midikeys(1), synthpanel(1), syntheditor(1),
     soundplayer(1)


									PPPPaaaaggggeeee 5555
[ Back ]
 Similar pages
Name OS Title
synthpreset IRIX MIDI synthesizer preset file
opl OpenBSD Yamaha OPL2 and OPL3 FM synthesizer driver
sd HP-UX Software Distributor, commands to create, distribute, install, monitor, and manage software
swinstall HP-UX install and configure software products; software products for subsequent installation or distribution; respec
swcopy HP-UX install and configure software products; software products for subsequent installation or distribution; respec
mdGetName IRIX return a MIDI interface name
mdGetStatus IRIX manipulate MIDI messages
umidi OpenBSD USB support for MIDI devices
startmidi IRIX start MIDI daemon
midiplay OpenBSD play MIDI files
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service