Sample Interpolation on EMU8000

This text was originally named "Memory Bandwidth Issues in EMU 8000". The article was published on a Creative's www-page that doesn't exist no more. It was written by David Rossum, Chief Wizard of the Tech Center and EMU8000 co-designer. He are shown only those parts that discuss on sample interpolation.

Kai Pihl        

Dave Rossum:

"The EMU 8000 uses E-mu's patented multipoint interpolation algorithm to provide minimal pitch shifting artifacts during wavetable synthesis.

When the pitch of a waveform is shifted in wavetable synthesis, the number of output sample points for each input sample point is changed. Without pitch shift, there is one output sample point for each input sample point, but when pitch is shifted there can be many more than one (or even fewer than one) output sample point for each point in the original waveform stored in memory.

These new sample points actually should be the values at which the original analog waveform would have been, had it been sampled at the playback rate. In other words, the correct computation should reconstruct the original analog waveform for each output sample.

Unfortunately, such a computation would be far too complex to carry out for each audio channel for each output sample point. Simplifications must be made. The most extreme simplification is just to use the closest input point - that is do no computattion at all. This, as you might expect, sounds awful.

The next simplest thing is to pretend that the original analog waveform was a set of straight lines between the sample points - a sort of connect the dots called linear interpolation. This actually works quite well on low frequency sounds, but fails miserably when the sound has much high frequency energy.

The E-mu algorithm uses a number of surrounding points (four in the case of the EMU8000) to construct a curve of best audio fit between the original sample points. You can see how we do this by looking up U.S. patent # 5,111,727."

To Computers & Music