Software effect processor



A software effect processor is a computer program that alters the sound from a digital source through audio signal processing in real time. It is a digital analog of hardware effects processors. It is an integral part of audio editing software, such as in Adobe Audition

Principle of operation
The digital audio signal, whose origin may be analog (by conversion to digital) or be in an already digital source (such as an audio file, or a software synthesizer), is stored in temporary allotments of computer memory called buffers. Once there, the software effect processor modifies the signal according to a specific algorithm, which creates the desired effect. After this operation, the signal may be transformed from digital to analog and sent to an audible output, stored in digital form for later reproduction or editing, or sent to other software effect processors for additional processing.

The larger the buffer is, the more time it takes to play the audio data sent for playback. Large buffers increase the time required before the next buffer can be played, this delay is usually called latency. Every system has certain limitations - too small buffers involving negligible latencies cannot be smoothly processed by computer, so the reasonable size starts at about 32 samples. The processor load does not affect latency (it means, once you set certain buffer size, the latency is constant). But with very high processor loads, the buffer isn't filled with new sound in time for playback, and the sound drops out. Increasing buffer size or quitting other applications helps to keep playback smooth.

Support in operating systems
The default Windows drivers are not optimized for low latency effect processing. As a solution, Audio Stream Input/Output (ASIO) was created. ASIO is supported by most professional music applications. Most sound cards directed at this market support ASIO. If the hardware manufacturer doesn't provide ASIO drivers, there are other ASIO free alternatives, which can be used for any audio interface. ASIO drivers can be emulated, in this case the driver name is ASIO Multimedia. However, the latency when using these drivers is very high.

All the Mac compatible hardware uses CoreAudio drivers, so the software effects processors can work with small latency and good performance.