|This tech note describes some issues related to realtime previewing of the Image Synth. It is being written because at the release of MetaSynth 4, some users were surprised that the Image Synth sometimes stuttered when previewing their old presets or some of our examples. In some cases, using the built-in sound driver with those same presets yields different results. Some people were worried that this meant that MetaSynth 4 either suffers from the problem that causes MetaSynth 2.7 to stuttter while previewing in the Image Synth or that MetaSynth is not compatible with their sound card.
In all cases that we have examined, we have found that this only happens when previewing presets with a large number of simultaneous voices which led us to realize that there are some issues related to Image Synthesis and CPU-load of which people are unaware. This page hopes to clarify the issues related to this. We have also created a simple preset library that you can use measure the performance of your system.
Download the presets by clicking here.
SOUND DRIVER CHOICE & SAMPLE RATE CHOICE
As you read below, keep in mind that when you push the limits of the system's realtime computation, the computational-efficiency of the sound driver in use will make a lot of difference in how many voices can be previewed in realtime. It is important to understand that the built-in sound driver is considerably more efficient than any third-pary sound drivers of which we are aware. Because the built-in driver is more efficient than other drivers, using the built-in driver you will simply be able to preview more voices at once without stuttering.
This is true whether you are using MetaSynth or some other application. If you use the built-in sound driver, you are likely to get more plug-in instantiations and more polyphony from your soft synths than with a third-party driver. But most of the time, you probably don't push the limits of a computer's computing power in your DAW the way that many people (ourselves included) push the limits in the Image Synth.
IMAGE SYNTH POLYPHONY
Here is the critical issue that people tend to overlook. Every pixel that is sounding at the same time is essentially a note being pressed on a keyboard. So, when there are many pixels sounding at once, there are a lot of notes being triggered. The more notes that sound at once the harder the computer has to work to compute the sound in realtime. To further complicate the issue, instruments can have a release time. In pre-4.0 versions of MetaSynth, instruments/input sources did not have a release time. So, at any point in time, the only voices being used are the ones that correspond to the pixels in the picture. In 4.0, release time was added. So, a non-0 release time means that once a note is triggered it still uses a voice until the release dies out. If you have a lot of simultaneous pixels or closely spaced pixels, reducing the release time will make a big difference in the number of voices sounding at once.
[Note: if the previous paragraph does not make sense to you, please take another look at the Image Synth Tutorial chapter and Image Synth chapter of the reference manual so that you better understand how the Image Synth works.]
We have made our internal instruments as efficient as possible. The number of pixels that sound simultaneously exceeds the polyphony of pretty much all soft synths that we are aware of by a pretty significant margin. But, if you push the limit of what your computer can compute in realtime, you will get stuttering. And, when this is the case, lowering the preview sample rate or switching to a more efficient sound driver (the built-in one) will get you more voices. In 24-bit mode, some third-party drivers seem to benefit less from sample rate reductions than the built-in driver.
RELEASE TIME AND POLYPHONY
As noted above the new release time parameter may impact the number of voices sounding at once. Look at the picture below. It is a simple preset made up of stacks 60 pixels high. When the release is set to the minimum time, there are 60 voices being used at once. If you crank up the release, you will have a minimum of 120 voices at once. If the release time exceeds the duration of the stacks, you can have 180, 240 or more voices at once because once a voice is triggered it is alive until the release has died out.
To maximize polyphony, use short release times in your instrument and use the pixels to explicitly set the note durations -- just as was required in MS 2.x since there was no release time.
WHY SOME PRESETS PREVIEWED BETTER IN MS2.x
MetaSynth 2.x calculated all previews in mono at 22 kHz. So, a stereo image in MS 4 requires four times as much processing as 2.x when the preview sample rate is set to 44 K. Even with a 22 kHz preview sample rate, MS is requiring at least twice as much processing. In addition, MS 2.x had no release time and in translation, MS presets may have a release time added that takes you above the voice limit of what your machine can handle.
Additionally, on a single-processor computer MS 2.7 was running under OS 9 -- so MetaSynth was getting every single cycle of the CPU while previewing. In OS X, at least 20% of the CPU goes to the OS even with no other apps launched.
The instrument being used also makes a difference. Some of the instruments require more processing than others.
If it doesn't look like there are many voices at once, check to see if there are faint pixels that you can't see. To do this, use the Contrast and Luminance tool in the lower toolbar and drag left to reduce the contrast (or up to increase the luminance) which may show you pixels that you did not realize were there. If that is the case, you may want to eliminate those low level pixels (either using Contrast/Luminance or the Color Remap dialog -- invoked by double-clicking on Contrast & Luminance).
HOW MANY VOICES
You might be surprised by how many voices are sounding at once in your stuttering presets. We have uploaded a simple preset library that might be helpful for you to explore the number of simultaneous voices you can preview and for comparing the performance of your computer using built-in and third-party drivers.
Download the presets by clicking here.
MAXIMIZING PREVIEW POWER
First, rather than curse that the built-in driver can preview more voices than your third-party audio device, be THANKFUL that if you want to really max out the voices available that there is a super-efficient audio driver built into your computer that will let you eke out a few more voices in realtime.