Most Popular


The EM Poll




browse back issues

Experimenting with SoundFonts

Apr 1, 2005 12:00 PM, By Kurt Heiden



         Subscribe in NewsGator Online   Subscribe in Bloglines  

CURRENT NEWSSTAND ISSUE

Read the full Table of Contents for the issue on sale now! Click here

Subscribe for only $1.84 an issue!

Please tell us about yourself so we can better serve you. Click here to take our user survey.

Personal Studio Series

Mastering Steinberg's Cubase™

This special issue is not only a must-read for users of Cubase™ software, but it also delivers essential information for anyone recording/producing music in a personal-studio.

Click for more
EM Podcasts

Listen to these latest podcasts and more:
Bela Fleck on recording Jingle All the Way.Go

What's New: software and sound products. Go

eDeals Newsletter for Discounts on Gear

Get First Dibs on Hot Gear Discounts, Manufacturer Close-Outs and Job Opportunities when you sign up to receive eDeals E-newsletter, sent twice a month. Check out an issue get advertising info or subscribe

Secure the Riggings

At their core, SoundFont banks start with a mono or stereo 16-bit, PCM audio file (WAV or AIFF) at any sampling rate. When imported into a SoundFont editor, these files are automatically copied, converted to the native SoundFont format, and embedded into a SoundFont file. In the SoundFont editor, the sample can be structured into Instruments and Presets. The Instrument layer is where you adjust parameter settings on a per-sample basis. It gives access to customization options such as amplitude, modulation, filters, LFOs, envelopes, and tuning. The Preset layer is where you assign patch numbers and names to individual Instruments and apply any global parameters that you want. Each Preset can contain multiple Instruments (via layering), and the amount of performance-parameter data that can be included in Presets and Instruments is extensive.

The most basic use of SoundFont banks, however, doesn't involve editing or knowing anything about what's inside them. You can get your feet wet just by replacing the default system GM bank (Bank 0) with a larger SoundFont bank. Bank 0 is the bank of sounds that came with your computer's operating system or sound-card installation. Accessing Bank 0 from within a MIDI sequencer should give you a GM sound set on most Pcs or Macs, provided that you are using the latest OS version. Depending on your system configuration, the default system bank included from Creative (through the sound card) or Apple (built into QuickTime 5 or later) is usually only 2 MB to 8 MB in size. Squeezing 128 samples into 8 MB compromises quality, and 2 MB of GM banks is even worse.

Companies such as Sonic Implants, Synergi, and EYE & I Productions (Voice Crystal) have 12 MB and larger SoundFont banks available that range in price from $18 to $80. Those libraries will work on Macs and Pcs and typically include higher-quality samples, more attention to parameter detail, and generous use of available RAM (see the sidebar “Commercial Collections” for other commercial banks). If you do a lot of work with Apple's built-in QuickTime synthesizer or you often use the default GM bank on a PC, a quality GM SoundFont upgrade bank is an excellent way to improve upon the basic GM instruments that came with your computer or sound card.

Users of Sound Blaster Live cards can find the actual default SoundFont bank on their system by doing a file search for “SF2.” You'll likely find at least one file with a name like “ct4mgm.sf2.” You can use the bank manager that came with the Sound Blaster Live card to substitute a new bank for the existing one in Bank 0.

FIG. 2: By placing a SoundFont bank in the Library/Audio/Sounds/Banks folder under Mac OS X, you can control the default GM sound bank using QuickTime’s Preference Pane.

The built-in GM bank on a Mac running OS X is a 2 MB DLS bank from Roland. The file itself is named “gs_instruments.dls” and is nested deep in the hierarchy of the OS X System folder. Mac users can upgrade the default GM bank used in QuickTime with an alternative bank by placing an upgraded GM SoundFont bank in the Library/Audio/Sounds/Banks folder. Then, open the System Preferences pane and choose QuickTime. When you click on the Music tab, you'll see the SoundFont banks that you placed in the folder (see Fig. 2). Select the desired bank using the Make Default button, and it will be inserted as Bank 0. At that point, it will appear as an alternative to QuickTime Music Synth in GarageBand 1.1 or higher, Logic, and other OS X applications.

To access a replacement GM bank in GarageBand, select Get Info on an instrument track, and then click on the pencil icon to the right of the Generator labeled DLSMusicDevice. When the window opens, choose your new GM bank from the drop-down menu.

If you're using Mac OS 9 and want to swap out the default GM Bank 0 used by QuickTime, you'll need to create a folder called Sound Banks (if not already present) in your System Folder/Extensions/QuickTime Extensions folder. Place any replacement SoundFont banks in this folder, then run the QuickTime Control Panel and choose Music from the pull-down menu. You'll see the default QuickTime Music bank next to your newly added banks with an option to select a new default.
(continued)


SIDEBAR
Port of Call: Vienna
Vienna 2.3, the latest version of the program, provides access to some SoundFont 2.1 features that other editors don't have, such as the Modulation Properties screen. We'll use Vienna to take a close look inside a SoundFont bank.

First, a tech note: when a Sound Blaster Live or Audigy card is installed, it places a SoundFont Bank Manager directory (SFBM) on your system and puts a file called sfedt32.dll into that folder. The Vienna installer, on the other hand, currently installs an older version of the same file into the Vienna directory and uses that as the basis for editing. (According to Creative, that should be fixed in the next version of Vienna.) You'll need to copy the newer version of the file to the Vienna directory, or you won't get all of the cool editing options discussed in this article.

SoundFont's roots clearly derive from its E-mu hardware heritage, and if you frequently work with hardware samplers, you'll probably recognize many of the parameters shown in Fig. A.

FIG. A: Those familiar with digital sampling will find themselves at home with Vienna.

Vienna provides a bank tree on the upper-left side that illustrates the hierarchy used in bank creation. Key-range assignments are on the upper-right side; pitch alteration, filter, reverb, chorus, and panning are on the lower left; and envelopes and LFOs appear to their right. All parameter functions in the lower half of the screen can be applied at the Instrument or Preset level. Instruments contain samples with user-changeable parameters and optionally Global Zones, which affect all samples within the Instrument. Presets contain Instruments with user-changeable parameters and also support Global Zones, which affect all Instruments within the Preset.

Vienna uses the term Pool to describe groups of Samples, Instruments, and Presets. (The concept of a Pool doesn't appear outside of Vienna and is used only for organizational purposes while editing.) Finished Presets are displayed in Vienna as Melodic and Percussive Pools to help aid in organizing drum and melodic Instruments. The Presets in each Pool are accessed using different Bank Select messages. With a GM bank, you access the Melodic Pool through MIDI channels 1 through 9 and 11 through 16. The Percussive Pool is accessed through MIDI channel 10.

The Sample Section is divided into a User Sample Pool and a ROM Sample Pool. The ROM Sample Pool is a carryover from the days when ISA-based sound cards contained their own GM wavetable ROM containing 128 samples and is seldom used today. The User Sample Pool is where you import WAV or AIFF files for use in Instruments. The Instrument Pool is where you choose Samples, assign them to a key range, and have fun with parameter editing.

The Preset Section is where you chose one or more Instruments to play as a patch in your synth. When a new Preset is created, you must assign the Preset a bank and a patch number, as well as a patch name. Preset information is the only layer of a SoundFont bank that will appear in your synth and/or MIDI sequencer.

Right-clicking on a Sample within an Instrument or an Instrument within a Preset will provide access to the Modulator Properties option, where you can assign multiple controllers (see Fig. 1). In fact, right-clicking on nearly anything in the Pools sections allows access to further customization options. For example, right-clicking on any Instrument or Preset provides a drop-down menu to add Global Zones.

I created a file by modifying the Polysynth sound from Sonic Implants' 24 MB GM bank. As shown in Fig. A, I duplicated the sample synstb2.wav from the Instrument PolysynthL2. Note that it's the only sample represented twice in the same key range on the keyboard. I applied an LFO with a frequency of 2.13 Hz to Filter Cutoff (the base value was 1617), then assigned those settings to an identical sample within the Instrument but panned it to the opposite channel. The result is a new Polysynth that breathes with more life as it pans from speaker to speaker as its filter opens and closes (see Web Clip A).



Acceptable Use Policy
blog comments powered by Disqus

Get Copyright ClearanceWant to use this article? Click here for options!
© 2009 Penton Media, Inc.

Back to Top