Software sustain function

Amplifiers, effects, pickups, electronic components, wiring, etc.

Moderator: Dave Mudgett

ed packard
Posts: 2162
Joined: 4 Aug 1998 11:00 pm
Location: Show Low AZ
State/Province: -
Country: United States

Software sustain function

Post by ed packard »

TONE is made up by harmonic content in the sound as heard and interpreted by the listener; SUSTAIN is the harmonic content as a function of time. All instruments do not sound, or sustain the same for a myriad of reasons.

Many devices have been constructed and added to the instrument signal chain to “improve” tone and sustain; reverb, delay, echo, etc. come to mind. These were initially used in the hardware mode. With the invasion of the music world by the computer, these, and many other “effects” have been implemented in software form. As the computer comes front and center as the control element re audio in performing, recording, editing, and publishing, one can envision the effects rack physical becoming the effects rack virtual. One of the software effects that would be desirable for the PSG player would be to control the sustain parameter (s).

The Frequency Spectrum Analysis (FSA) work that I have done on several PSGs shows that there are great differences between the instruments; however, the sustain parameter (harmonic content vs. time) falls off at the high freq’ end before it falls off at the 300 Hz to 500 Hz band. The result is a change in tone as a function of time. The slope of the high freq’ falloff changes with time, so simple compression does not solve the problem.

An “adaptive filter”, that provides for setting the starting point at some desired Hz (according to the behavior of the particular instrument) near the 500 Hz band, and adjusting the SLOPE of the high freq gain vs. time to give sustain above and beyond the call of reason (both longer and shorter than that of the instrument) might be a nice effect to have in the arsenal. The filter would reset each time a new input exceeds the previous one.

This seems like a nice task for someone into C++, or some language that is common to the software effects community. Any takers, or ideas?

User avatar
Brad Sarno
Posts: 4958
Joined: 18 Dec 2000 1:01 am
Location: St. Louis, MO USA
State/Province: -
Country: United States

Post by Brad Sarno »

Ed, the tool already exists. Look for multiband compression. This allows you to control the time/gain envelope over discrete frequency bands of audio. You can find 3, 4, and 5 band mutiband compressors out there in the digital domain. They can do what you describe quite well if properly set. I like the Waves C4 and also their Mastering 5-band multi-comp.

Enjoy,

Brad Sarno
ed packard
Posts: 2162
Joined: 4 Aug 1998 11:00 pm
Location: Show Low AZ
State/Province: -
Country: United States

Post by ed packard »

Brad: Maybe ...but not as I read their info, and viewed their screens. Maybe my description is wanting.

I envision sustain as a low pass filter with break point one can set, a single slope from breakpoint freq up. That slope would be the falloff in freq that increases in the high freq part of the spectrum after the strings are excited.

It is this slope, increasing in loss (db per octave)that one would compensate with a time dependent slope variable filter. The rate of slope variation vs. time would be selectable because different instruments manifest different break points and rates; also, different folk would want different effects.

Logical extensions would be to shorten sustain, and also do the same re the low freq end of the spectrum.

I estimate that a max correction of 40db would suffice (max corrective gain of 100).

There is one software filter I have run across, that uses Mathcad, that is about halfway there.

Thanks for the reply and suggestion.