Software:Audio plug-in

From HandWiki
Short description: Software signal processor or synthesizer module


An audio plug-in, in computer software, is a plug-in that can add or enhance audio-related functionality in a computer program. Such functionality may include digital signal processing or sound synthesis.[1] Audio plug-ins usually provide their own user interface, which often contains GUI widgets that can be used to control and visualise the plug-in's audio parameters.[2]

Types

There are three broad classes of audio plug-in: those which transform existing audio samples, those which generate new audio samples through sound synthesis and those which analyze existing audio samples.[2] Although all plug-in types can technically perform audio analysis, only specific formats provide a mechanism for analysis data to be returned to the host.[3]

Instances

The program used to dynamically load audio plug-ins is called a plug-in host. Example hosts include Bidule, Gig Performer, Mainstage, REAPER and Sonic Visualiser. Plug-ins can also be used to host other plug-ins.[4] Communication between host and plug-in(s) is determined by a plug-in API. The API declares functions and data structures that the plug-in must define in order to be usable by a plug-in host. Additionally, a functional specification may be provided, which defines how the plug-in should respond to function calls, and how the host should expect to handle function calls to the plug-in. The specification may also include documentation about the meaning of variables and data structures declared in the API. The API header files, specification, shared libraries, license and documentation are sometimes bundled together in an SDK.[5][6][7]

List of plug-in architectures

Name Developer License GUI support Supported types Supported platforms
Rack Extension Reason Studios BSD-style[8] Yes Transformation and synthesis Mac OS X and Windows
Virtual Studio Technology Steinberg Proprietary or GPLv3[9] Yes Transformation and synthesis Mac OS X, Windows and Linux[10]
Audio Units Apple Proprietary Yes Transformation and synthesis Mac OS X, iOS and tvOS[11]
Real Time AudioSuite Avid Proprietary Yes Transformation and synthesis Mac OS X and Windows
Avid Audio eXtension Avid Proprietary Yes Transformation and synthesis Mac OS X and Windows
TDM Avid Proprietary Yes Transformation and synthesis Mac OS X and Windows
LADSPA ladspa.org LGPL No Transformation Mac OS X, Windows and Linux
DSSI dssi.sourceforge.net LGPL, BSD Yes Transformation and synthesis Mac OS X, Windows and Linux
LV2 lv2plug.in ISC License Yes Transformation and synthesis Linux, OS X, Windows
DirectX plugin Microsoft Proprietary Yes Transformation and synthesis Windows
VAMP vamp-plugins.org BSD-style No Analysis Mac OS X, Windows and Linux
CLAP Bitwig and others[12] MIT-style Yes Transformation and synthesis Mac OS X, Windows and Linux

See also

References

  1. Collins, Mike A. (2003). Professional Guide to Audio Plug-ins and Virtual Instruments. Burlington, MA: Focal Press. ISBN 9780240517063. 
  2. 2.0 2.1 Goudard, Vincent; Müller, Remu (2 June 2003), Real-time audio plugin architectures, IRCAM, p. 8, http://mdsp2.free.fr/ircam/pluginarch.pdf 
  3. Cannam, C. 2008., The vamp audio analysis plugin api: A programmer’s guide. [1]. Revision 1.0, covering the Vamp plug-in SDK version 1.2. 51
  4. Gibson, D. and Polfreman, R., 2011. "An Architecture For Creating Hosting Plug-Ins For Use In Digital Audio Workstations.", In: International Computer Music Conference 2011, 31 July - 5 August 2011, University of Huddersfield, England.
  5. VST SDK
  6. VAMP SDK
  7. Reason Studios Rack Extension SDK
  8. Reason Studios Rack Extension SDK License
  9. "VST 3 SDK License". February 23, 2017. http://www.steinberg.net/sdklicenses_vst3. 
  10. "Welcome to VST SDK 3.7.x". February 21, 2022. https://github.com/steinbergmedia/vst3sdk#system-requirements. 
  11. "Apple Developer Documentation". https://developer.apple.com/documentation/audiounit. 
  12. github.com/free-audio/clap