NAME
sfxload, asfxload - load a SoundFont file on the Emux WaveTable
SYNOPSIS
sfxload [-options] fontfile
asfxload [-options] fontfile
DESCRIPTION
sfxload and asfxload are utility program sto transfer the sound wave
and instruments data in a SoundFont file to the AWE32 sound driver, or
to the Emux WaveTable of ALSA sbawe and emu10k1 drivers. This program
is necessary for playing MIDI samples via sequencer programs supporting
AWE driver. There is no big difference between sfxload and asfxload
except for that asfxload is for ALSA and sfxload is for OSS,
respectively. The options to specify devices are different between them
(see below).
Basically, sfxload behaves as two ways.
% sfxload fontfile
% sfxload -b1 fontfile
The first usage is to read SF2 (or SBK) file and transfer to the awe
driver. In this case, the samples which were loaded on the driver are
replaced with the new one. In the second case, sfxload reads the file
and appends it to the pre-loaded samples on the driver with specified
bank number. The old samples remain in the driver. The additional
samples can be cleared via -x option (see below).
The sound files are searched through the path list. The path list is
defined as built-in. If the environment variable SFBANKDIR or the
command line option -P is given, it replaces the default search list.
The file extension .sf2, and .sbk can be abbreviated.
OPTIONS
-F, --device=file (sfxload only)
Specify the device file to be used. Default value is
/dev/sequencer.
-D, --index=number (sfxload only)
Specify the device index of AWE driver. Negative number (e.g.
-1) means to probe the first AWE device automatically. For
selecting the other AWE cards, a positive index number must be
given here. Default value is -1.
-D, --hwdep=name (asfxload only)
Specify the hwdep name to be used. As default, asfxload seeks
until any Emux compatible hwdep device is found.
-i, --clear[=bool]
Remove all samples before loading the fonts. This is an
explicit directive (see -b option). If this option is specified
alone without soundfont file arguments, sfxload does onlay
remove samples. Either of on, off, yes, no, true, or false can
be specified as an optional argument.
-x, --remove[=bool]
Remove the optional samples previously loaded via -b option.
Otherwise, all new samples are simply appended.
-N, --increment[=bool]
Do not clear samples even with the absence of -b option.
However, this option is not exclusive with -x option. If both
options are specified, and the memory full error is encountered
during loading fonts, sfxload will try to remove samples and
load the fonts again.
-b, --bank=number
Append the sound samples on the specified bank. Without this
option, all present samples in the driver are removed before
loading the new fonts unless -N option is specified. Usually,
this option is necessary to load user bank, typically in bank
one. For example,
% sfxload synthgm.sbk
% sfxload -b1 surprise.sf2
-l, --lock[=bool]
Lock the font. The locked font is no longer removed via remove
option (-x) even if it’s loaded together with -b option.
-C, --compat[=bool]
Use the old (v0.4.2) parameter calculations.
-A, --sense=sensitivity
(Only valid on compatible mode)
Set sample attenuation sensitivity. This option controls the
sensitivity of initial attenuation parameter of each instrument
defined in SoundFont file. In the program, each parameter is
calculated from the value divided by this number for the
original value. The number 1.0 means that the original initial
attenuation parameters would be used. Generally, smaller number
makes drum sounds louder. (I think "-A 2" would be similar to
Windows sounds.) The default value is 10. Note that this
option changes also the default attenuation automatically (see
below).
-a, --atten=attenuation
(Only valid on compatible mode)
Set the default attenuation level. This option controls the
minimum attenuation of the sample. The parameter is given in
raw digit number for AWE driver, that is, in 8/3 dB unit. Since
--sense option changes the default attenuation automatically,
specify this option later from --sense option. The default
value is 32.
-d, --decay=scale
(Only valid on compatible mode)
Set the scale of envelope decay time. Default value is 50.0.
Sounds decay fast when larger number is set. The ver.0.3
sfxload uses 54.8. If you want to keep the same sound, use this
number instead.
-M, --memory[=bool]
Display the left memory size in DRAM on the AWE32 card.
-c, --chorus=percent
Specify the effects of chorus. The value is in percent, from 0
to 100. The default is unspecified. This value may be
overwritten by MIDI control messages.
-r, --reverb=percent
Specify the effects of reverb. The value is in percent, from 0
to 100. The default is unspecified. This value may be
overwritten by MIDI control messages.
-B, --addblank[=bool]
Add 48 size of blank loop on each sample data. Usually, this
option is not necessary. Most of soundfont files are designed
well for enough blank loops for each sample.
-L, --extract=source[:map]
Extract and load only the specified preset(s). This option is
usually employed by drvmidi. The preset is given as same as in
virtual bank file.
-v, --verbose[=level]
Increase or set the verbosity level.
-q, --quiet
Don’t show error messages, equivalent with --verbose=0.
-V, --volume=percent
Specify the total volume of sounds, provided in percent. The
default volume is 70%.
-P, --path=path1:path2:pathN
Specify the search path list. The sound files are searched from
path1, path2, and so on. This overrides both the system path
and environment variable SFBANKDIR.
VIRTUAL BANK FILE
The virtual bank file is a list of presets treated as one soundfont
file. The syntax of virtual bank is as follows:
# comments
source:map[:soundfont [preset-name]
source:map[:soundfont [preset-name]
...
The first and second items are the source and mapped presets,
respectively. The former is the existing preset in the soundfont, and
the latter is the actual preset loaded on the sound driver. The preset
is described by the following three values,
preset/bank/keynote
If bank and keynote are omitted, bank 0 and keynote -1 (meaning to
search all keys) are applied.
The third item is the name of soundfont file. The file is searched
from the prescribed search-path. The remaining arguments are ignored
in sfxload.
If the soundfont name is omitted, sfxload loads it as preset mapping.
It just behaves like a symbolic link of file opposing to copying of the
file. Any sample data is not referred at this time, but searched first
when the note is played.
A couple of special commands can be used together with the virtual
presets above. default command is used to specify the default
soundfont file. Any other presets which are not defined in the virtual
preset lists are loaded from this default font. For example, in the
following virtual bank, 2mbgmgs.sf2 is used except for standard
drumsets which employs drum.sf2:
0/128:0/128:drum.sf2
default 2mbgmgs.sf2
Another special command is include command. This simply includes
another virtual bank file under the current position. For example,
default standard.sf2
0/128:0/128:drum.sf2
include xgsfx.bnk
SYSTEM RESROUCE FILE
The default option arguments can be stored in the system resource file.
There are two files loaded as default.
$HOME/.sfxloadrc
/etc/sfxloadrc
The syntax is as follows:
fontname -options..
The first argument is soundfont file name for each option. The
remaining arguments are identical with command line options. The font
name default is used for default options for all sound fonts. The
default options are overridden by specific options or command line
options.
For example, to set default chorus level 20 except for synthgm font,
you can write a resource file ~/.sfxloadrc like that:
default --chorus=20
synthgm --chorus=0
ENVIRONMENT
SFBANKDIR
Search path for sound files. The current directory is always
searched at first.
SEE ALSO
drvmidi(1)
COPYRIGHT
Copyright (C) 1996-2003 Takashi Iwai.
The AWE32 driver and utilities are free software; you can redistribute
them and/or modify them under the terms of the GNU General Public
License as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
January 22, 2003 sfxload(1)