The Music Compositions of

Philip Goddard

www.philipgoddard-music.co.uk
Music compositions

Philip Goddard's MIDI realizations
-- a summary of how they were done --



Watch out!

First, let me warn anyone contemplating producing similar or better realizations! Although they certainly could do so in theory, it couldn't be done without a very great amount of time expenditure and the ability to apply single-minded concentration to details over sustained periods. My being very long-term unemployed has put more time at my disposal than many would have, and, without until very recently having any obvious prospect of my orchestral / choral works being performed within my lifetime, I had strong motivation to produce the best possible simulations of actual performances - at least as far as I could manage on very small financial resources. Also you cannot achieve such results without having an acute inner ear and having a clear perception of what you want. "Non-perfectionists need not apply..." Of course, if your own music involves only a few instruments, then the task isn't so monumental, but in my case it's all the orchestral instruments (including piano) and a choir and a full pipe organ with all the stops and combinations.

The work and issues fall into the following main categories:

  1. Choosing appropriate devices
  2. Choosing the samples. Here I really mean the multisample sets.
  3. Debugging, editing and setting up the samples to work the way you want.
  4. In the sequencer: create and maintain a custom patch map
  5. In the sequencer (MIDI) files: extensive use of controllers

1. Choosing appropriate devices

My own devices are:

  • Soundblaster Live (used as a poor person's sampler)
  • E-mu Proteus 2 orchestral sound module
  • Yamaha MU10 sound module (the DB50XG daughterboard in an external box)
  • Midiman Flying Calf D/A converter
  • Zoom Studio 1202 reverb unit
  • Mackie 1202-VLZ mixer

Soundblaster Live
Samplers are in; sound modules are more or less out. I use the Soundblaster Live for most of my instruments nowadays, though this has run me into a problem because the number and quality of the instrument sounds I use results in a full orchestral (/choral) playback exceeding the SBL's patch-accessing memory limit (not the same as the quantity of soundfonts that you can load into memory with software) and resulting in instruments losing notes or going altogether mute.

At the end of 2003 I purchased a new computer, with a more recent version of the Soundblaster Live, and I was greatly disappointed to find that, although it does get clearer sound from the samples, it is much more prone to sounds dropping out when many instruments or layers are playing simultaneously, and also various instruments containing a number of layered samples caused clicking in fairly dense textures. As far as possible I shall not be re-recording anything with the new SBL.

The important thing about a sampler is that you choose your own instrument sample sets and can edit and improve them - and most of them indeed need improving!!


E-mu Proteus 2
I got this before I had the Soundblaster Live, and, despite its having been a greatly hyped and praised product in its time, I was appalled by the quality of the instruments therein and the downright slovenly way in which its samples and presets had been set up. All the factory presets were entirely useless and I took ages setting up my own custom presets in the 64 user preset slots, in many cases using a cross-switch function to gain me an alternative sound for the particular instrument within one user preset. I still use it for my flute and piccolo, timpani in orchestral works, and harp. Can't think off the top of my head of anything more I'm using it for now. After having recorded all my works I configured all my orchestral music files to use better string section sounds on the Soundblaster Live, but this caused a major problem by running me seriously into its ceiling of memory usage in the instruments that it accesses. The real downer with sound modules in general is that you're stuck with whatever samples they contain, and for the most part the sample sets are chosen to be economical of memory, which means most are not good enough for the likes of me.


Yamaha MU10
This, as the DB50XG daughterboard, was not only hyped by Yamaha but was RAVED about in reviews all over the place, with statements like "A musician's wet dream", and so on. Well, I could go along with that particular quote, but not quite in the way the ignorant and uncritical reviewer meant. When you wake up from one of those dreams you wake up from something probably rather exciting to what seems to be a pretty humdrum reality. Being still fairly new to the MIDI world, after all the hype I was frankly appalled at the execrable quality of the orchestral instruments - at least the sustaining ones - but found that a few of the tuned percussion (especially glockenspiel and celesta) were actually better than any of the samples of these that I've yet obtained.


D/A converter
In order to minimize any background noise caused by the electromagnetic radiation from the computer's innards, it's good practice to use a digital output from any soundcard that has one, and do the digital-to-analogue conversion a little bit away from the computer. This is particularly worthwhile for realizations with a wide dynamic range, such as most of mine.


Reverb unit
I had to get this because the Proteus 2 sound module had no reverb of its own at all. Therefore, to keep things simple and avoid getting unexpected effects, I have reverb disabled on the SBL and the Yamaha, and use this external reverb unit for the mixed sounds from all the devices. It has a fair range of reverb settings and effects, but I use only two: the 'Plate' preset for cathedral reverb and 'Orche' preset for a pleasantly reverberant concert hall (I don't care for dry acoustics). For both those presets I use specific fine tuning settings for them to sound as natural as possible. My cathedral reverb comes pretty close, but I am aware of the difference...


Mixer
Even if I were using only one sound producing device, I'd need some external agent to amplify the output signal, and any good mixer enables you to boost what it receives. But, as I've said, I have three devices, and their levels need to be balanced in the final mix. Some cheap mixers have very high background noise, but the Mackie model that I chose was a widely respected smallish model with good power handling, wide dynamic range and very low noise 'floor'.

The need to boost the output volume comes because of the need to set most instruments to levels far below their potential in order that the really loud instruments can sound at their proper relative volumes without causing overload in the soundcard, sampler, module or in-computer software mixer. Overloading distortion primarily from my fortissimo brass was the final straw that made me get the mixer. Incidentally, I found that the output from my D/A converter was at a higher level than the line output from the Soundblaster Live mixer, which was very helpful.


2. Choosing the samples

These are the sample sets used in the Soundblaster Live. My main sources are the Sonido orchestra CD, with a not very good piano from the Sonido Piano & Organs CD, clarinet & some 'attack' brass from the Creative Essentials Woodwind & Brass CD, a few additional percussion from the E-mu Soundfont Library CD, choir from Peter Siedlaczek's Classical Choir CD, and my organ adapted from John McCoy's Jeux soundfont.

One of the downfalls of MIDI instruments is that although with a lot of effort you can add expression with MIDI controllers in your sequencer files (more about that below), the instruments don't change their timbre in the way that real instruments do. But at least I sought to include variant sounds for some instruments, such as in the trumpet, where I have soft, normal-loud, extra loud, strident / attack (good mostly for 'stabs'), and muted. Some of these variant sounds use the same samples but with different parameters set, while others have to be completely different sample sets and therefore increasing load on memory and storage space.

In choosing sample sets I looked out for a number of things as well as simply whether individual notes sounded like the nominal instrument:

Are the individual samples long enough?
Many, many, aren't. What's the point of a piano whose notes decay quickly even when you play long notes? Many piano presets try to get round this by looping the tail end of the note or setting unrealistic parameters in the volume envelope - but such tricks usually show glaringly in causing a very unnatural and shelved or fluctuating decay profile. Cymbals are another case where you're normally stuck with far too rapid a decay of the sound. Better to have a sample with full-length decay and then to have additional variant presets with shorter decays set using the volume envelope to simulate degrees of damping. In the case of sustaining instruments short samples sound more unnatural, and in the case of very short ones the sound has a definitely 'electronic' sound about it. The natural sound of any 'acoustic' sustaining instrument incorporates a multitude of small fluctuations in volume and timbre, and this is what is lacking in short samples. But we must be clear that the ultimate determinant of the sound quality is the length of the loop section. You could have a reasonable length sample which still sounds electronic because only a tiny snip is being used for the loop.

Are there enough multisamples in the set for the instrument?
This is extremely important and one of the prime reasons why sound modules let you down. For most instruments you need to have each multisample spanning no more than a minor third, and preferably no more than a whole tone. In most Soundfonts you find that even if the samples do more or less keep to that rule in the middle of the range, they don't cover the full range, so that the uppermost and bottom samples each have to span quite a lot of notes, thus giving you unnatural sound at the extremes of the instrument's range. Too-widely-spanning multisamples cause two problems. One is the obvious one - that the further away you are from the original playing pitch, the more unnatural the sound is, but the other is that when such an instrument is played, you notice a big change in the sound when moving between adjacent multisamples. Typically the top note of a multisample is over-bright and prominent compared with the next note up.

Are the multisamples in the set properly matched?
Often they're not. This is a real curse in sound modules, where you're stuck with whatever samples the manufacturers put there. Often just one poorly matching multisample ruins an instrument. In my Proteus 2 it appears to me that the bottom sample of the section violins is played in a different way from the other samples - something towards the sul ponticello sound and certainly not what we would recognise as the violin's open G-string sound. And in the case of the solo violin in the same module, I'm sure that the bottom sample is played sul ponticello. That is a particular irony, because I'd really like full sample sets for sul ponticello on those instruments, but can't get get them anywhere. Poorly matched multisamples are one of the prime reasons for my rejecting many sample sets.

Will the samples require more editing that I want to do?
Maybe it isn't worth using a potentially good sample set because of the amount of editing it would require to knock it into proper shape. For example, there has been the occasional choir soundfont that I thought sounded promising, but there were so many pitch variations in the individual samples that it would have taken a lot of time trying to correct this (using graphic pitch bend transforms in Sound Forge).


3. Debugging, editing and setting up the samples to work the way you want.

Don't anyone kid themselves that they can buy glossy commercial CDs of samples and straightaway load them into their system and get immaculate or even acceptable performance! It may seem disgraceful that samples are sold in such a rough and ready state as they usually are, but that appears to be how things are at the moment. The Sonido samples have infuriated many people through many of them requiring a lot of work to make them really usable by discriminating classical musicians. I had to spend a lot of time tuning the pitch of multisamples in many of the Sonido instruments. This was not simply adjusting the fine tuning parameter in the soundfont editor, but often using the graphic pitch bend transform in Sound Forge to correct pitch variations within a sample, which is a tricky thing to do effectively.

Let's mention here some of the things I found I needed to do to soundfont instruments to make them work well.

  • Badly matched sample: change volume and / or low-pass filter to improve matching; sometimes need to do a graphic EQ on a sample to make it fit in properly.
  • Poor tuning: adjusted in soundfont editor or with graphic pitch bend in Sound Forge. A lengthy and tricky business.
  • Volume fluctuations: undesirable fluctuations reduced or eliminated using graphic fade function in Sound Forge. This needs to be done before normalization, otherwise the sample needs to be renormalized.
  • Volume: multisamples normalized to 100% in Sound Forge.
  • Problems with the natural attack (e.g. often too slow): edit or remove the natural attack in Sound Forge, in the latter case setting an appropriate artificial attack in the volume envelope.
  • Looping or relooping samples.

Here's an example of the sort of work entailed in a rather extreme case - the production of my choir sounds. Since I (laboriously) made this set, I've encountered similar choir sets already in Soundfont format, though still needing a lot of work on them to be acceptable for my sort of use. My samples came in audio CD format, so to start with I had to extract all the multisamples of the choir ahhhs as WAV. Then:

  • I renamed the WAV files to make them list in proper order with informative names.
  • In Soundforge I then had to do a sad thing and reduce the lovely sounding stereo samples each to mono, because, quite apart from memory considerations, I had no facility for looping stereo samples.
  • Reduced the samples each to about half length (in Sound Forge) to make them more practical memory-wise. This still left them of pretty generous length (if I remember rightly, about 5 seconds or so).
  • In Vienna SF editor, I set the note range and root key value for each sample.
  • Nipped off the natural attack of all samples (too slow for general use), then set appropriate artificial attack in the volume envelope.
  • Corrected tuning in a few of the samples; in several of them I had to do a graphic pitch bend transform because of a very slight 'scoop' at the sample beginning.
  • Volume: normalized each sample to 100%, first using graphic fade transform to reduce or eliminate unwanted volume peaks.
  • Made a copy of the soundfont, then imported its choir set into my primary copy, so creating an identical second set of multisamples, which were to be used as Choir 2.
  • For Choir 2, nipped off a bit more at the beginning of each sample. This was to eliminate phasey , 'flanging' effects that would otherwise occur when voices in Choir 1 sing any notes in unison with Choir 2.
  • Made another copy of the soundfont, and imported Choir 1 and Choir 2 from it, so putting into the working soundfont a second set of samples for Choir 1 and for Choir 2. These new choir sets were called Women 1 and Women 2.
  • For Women 1 & 2 I did graphic EQ on the samples from their mid- to bottom range, to emasculate them because it's a mixed choir and I had to try to make the women sound a little less like the men that they audibly were from mid-range downwards. This degraded the sound quality, which I'm not proud of at all. Roll on, a quality Soundfont set for real separate male and female choirs!
  • In the Women presets I referenced all the note ranges that didn't require a graphic EQ to the respective original Choir 1 & 2 samples, so that most of the samples that were duplicated to create the women choirs could then be eliminated.
  • Looped all the samples. Sounds so bloody quick and easy, huh? Actually it was a long and exacting task and was driving me loopy as well as the samples, I can tell you!

Well, in truth it was considerably more work than what is listed above, because I didn't have the process all planned as I've set it out here, and in reality I did things out of order and then had to keep redoing things like looping (and cursing under my breath...). Most of the samples thus got looped at least twice.

In the case of woodwind and strings the samples mostly had a natural somewhat marcato attack, with the tonguing sound of the woodwind or the slight scrape of the string attack. This was a sound that I needed, yet was not appropriate for most of the time in normal legato playing. Therefore for all these instruments I made a variant legato preset in which I'd set the attack parameter of the volume envelope to hide the initial scrape or blip in the sound. Indeed, as I reckoned on using the legato version most of the time I made this the primary preset (bank 0) and the 'straight', un-tampered-with preset one of the variants (a non-zero bank number).

However, there is a catch about setting an attack value in the volume envelope in the Soundblaster AWE series and SB Live. These cards or at least the soundfont system have a bug which results in any preset with a non-minimum attack value to suffer very considerable treble attenuation in MIDI playback, though this not being evident when I sounded notes within the soundfont editor. Therefore for samples in any such presets I had to set a high value for "To Filter Cutoff" in the Modulation Envelope settings.

Once upon a time my cymbal rolls were faked from a suspended cymbal with the attack parameter set to eliminate the initial impact sound, strings of notes being used to simulate a roll. But this sounded rough. More recently I hunted around for samples and got cymbals and bass drum really well fixed, with sounds that seem really authentic for classical orchestral music; in my view these instruments are extremely badly served by ordinary soundfont presets. I needed and eventually found a variety of real cymbal rolls, for it would sound quite wrong for every cymbal swell to have the same profile and speed. In the case of cymbals, I eventually found a crash cymbal with a somewhat more realistically long decay than the normal ones in soundfonts, and I managed to lengthen this significantly in Sound Forge without obvious spurious effects coming in, and layered it with a different cymbal sound to get an extremely powerful and realistic cymbal crash.

My organ soundfont also took quite a lot of time to set up - but much of the setting up in this case had to be in bits and pieces actually while I was composing my first organ works. Never having composed for the organ before, or played one, I depended on advice freely and generously given me by Carson Cooman and what I gleaned from a couple of books - backed up by certain gut feelings and intuitions which derived from my careful listening to many organ works and from my having been a quite distinguished composer of organ works in my previous lifetime. Rather than use any old sound that I fancied in the Jeux soundfont, I wanted to work with a seemingly real organ, albeit still virtual, as this would ensure that I composed realistically for the instrument. Thus I got Carson to hammer out with me a specification for a reasonably specified 3-manual organ and also a modestly specified 2-manual one the like of which you'd find in many churches. Having arrived at these specifications, I extracted from the Jeux soundfont a very much cut-down version meeting my specification, and then proceeded to set up a whole range of combinations that I thought I might want to use. Most of the combinations already set up in Jeux were rather conventional ones that I was unlikely to want to use. Then, during the composition work I frequently wanted to use particular combinations that were not already set up, so then would interrupt the composing to create the new combination, and probably some other related combinations at the same time. Each time I did this I also had to update the patch maps of my sequencer and the Sibelius score writing program, and also update the printable listing of all my combinations (for my own reference). Many times when I made such new combinations I found various problems and bugs in the soundfont and had to spend more time fiddling around to get things working well - and some problems I was never able to eliminate, such as the slight click at the start of notes in certain ranks and combinations (on good playback equipment you can hear this problem in the opening notes of The Great Wilderness).


4. In the sequencer: create and maintain a custom patch map

Patch maps are the instrument lists that you can access in your sequencer, which enable you to choose instrument sounds without having to enter patch and bank numbers each time. In most sequencers such as Digital Orchestrator Pro, which I use, there is no facility in the program for creating or editing patch maps, so you have to go to the patch map files and work on them directly. That involves learning the format and syntax that is used in your sequencer's patch map system. The file is an ordinary text file, so is easy to work with. When entering new sounds in these lists I find it easiest to copy existing parts of such listings and then edit details of the copy to show the new data - so reducing the frequency of format / syntax errors.

Incidentally, the Megafont program, which I can't use for its prime purpose (dynamic patch caching in the Soundblaster Live), has a very handy function for Cakewalk users: it can create a patch map file for Cakewalk directly from the data stored in soundfonts that you're using.


5. In the sequencer (MIDI) files: extensive use of controllers

For an orchestral or choral file this is another big task, but I don't do this for a pipe organ, which cannot play expressively. You can have the best instrumental sounds in the world, but if you don't shape the notes in the sort of way that a live performer would, the music will still sound unnatural and not very 'human'. This is where my sequencer's graphic controller editor window comes in. With that I can create 'fills' or 'sweeps' of expression controllers to produce smooth volume changes within a note. I use the Expression controller (no.11) and not the Volume controller (no.7) for this purpose. The latter is reserved for setting the overall track volume, and if any attempt is made to use it for expression, then I wouldn't be able later on to readjust the volume of the entire track (well, apart from changing the velocity values of all the notes).

Many of these expressive volume changes are not linear but speed up or slow down towards the end of the note, and for these I use the curve tool a lot in shaping the controller 'fills'. I used trial and error to establish the right amplitude of volume change and its degree of curvature, if any, in different situations. To avoid over-bloating the sequencer files with controllers, I didn't fill every note with these, but identified the particular notes that needed them. Usually, notes that were unstressed could go without controllers or, in the case of longer notes, might still have just a short and gentle lead-in (values rising from 115 to 127).

For 'fills' using a lot of controllers I used the 'Thin MIDI' function, which removes unnecessary controllers where there is not much change of value occurring. For example, in a curved swell on a long note there would initially be a prodigious number of expression controller messages, but after doing a 'Thin MIDI' on it, where the slope is almost level there would be big gaps between controllers, the density increasing with increasing speed of change, so that at the steepest part of the change the controllers are at their densest.

Despite my attempts at economy in use of expression controllers, typically my orchestral / choral sequencer files have doubled or in one or two cases nearly trebled in size just because of the addition of all these controllers.

After all this, have I neared perfection in my realizations?

No, no, no! Not only have I been working with very limited equipment and samples compared with what a good deal of money could buy, but all along the line I have had to make compromises on how much time to spend on the work. The reason why my realizations stand out from the crowd is not because they're anything near perfect, but rather, that they are realistic enough to give many (but not all) people a powerful musical experience, and most people are not prepared to spend as much time and concentrated thought as I have on creating MIDI realizations of such music. Another thing in my favour is my musicianship, which is something that goes beyond being a good MIDI technician. I'm not impressed by some MIDI whizz-kid coming and telling me that (s)he could produce better realizations on their own system. Maybe I myself could produce better realizations of my works on their system, given the time - but most such people playing with MIDI would not have the insight that I do into my music and how a real musician would play it. For example, allowing an algorithm to automatically shape notes may seem (and sound) quite impressive, but, however realistic it may seem initially, it cannot match in its effect the shaping of the notes by a real musician, even if that's done as I do it, manually at the computer..


Alternatively, get a live performance...
-- it might be easier! :-)