Comparison of audio synthesis environments: Difference between revisions

Content deleted Content added
m Disambiguating links to Object-orientation (link changed to Object-oriented programming) using DisamAssist.
 
(31 intermediate revisions by 19 users not shown)
Line 1:
{{short description|None}}
 
{{multiple issues|
{{notability|date=January 2015}}
{{original research|date=January 2015}}
{{refimprovemore citations needed|date=January 2015}}
}}
Software '''audio synthesis environmentenvironments'''s typically consist of an [[audio programming language]] (which may be [[Visual programming language|graphical]]) and a user environment to design/run the language in. Although many of these environments are comparable in their abilities to produce high-quality audio, their differences and specialties are what draw users to a particular platform. This article compares noteworthy audio synthesis environments, and enumerates basic issues associated with their use.
 
==Subjective comparisons==
Line 34 ⟶ 36:
! Name
! Creator
! Primary Purposepurpose(s)
! First release date
! Most recent update
Line 43 ⟶ 45:
! Development status
|-
|[[Bidule]]
|[[Plogue Art et Technologie, Inc.|Plogue]]
|Realtime synthesis, [[live coding]], [[algorithmic composition]], [[acoustics|acoustic research]], all-purpose programming language
Line 58 ⟶ 60:
| Realtime synthesis, [[live coding]], [[pedagogy]], [[acoustics|acoustic research]], [[algorithmic composition]]
| 2004
| 20182023-02-0912
| v11.45.02.01
| {{free}}
| [[GNU General Public License|GPL]]
Line 69 ⟶ 71:
| Realtime performance, sound synthesis, [[algorithmic composition]], [[acoustics|acoustic research]]
| 1986
| 20202022-0110-2722
| v6.1418.0
| {{free}}
| [[GNU Lesser General Public License|LGPL]]
Line 86 ⟶ 88:
| Document
| Stable
|-
| [[Keykit]]
| Tim Thompson
| [[MIDI]] synthesis and [[algorithmic composition]]
| 1995
| 2021-03-15
| v7.7e
| {{free}}
| [[GNU General Public License|GPL]]
| Graphical
| Mature
|-
| [[Kyma (sound design language)|Kyma]]
Line 102 ⟶ 115:
| Realtime audio + video synthesis, hardware control, GUI design
| 1980s (mid)
| 20192024-0901-2417
| v8.16.0
| {{nonfree}}
| Proprietary
Line 113 ⟶ 126:
| Realtime synthesis, hardware control, [[acoustics|acoustic research]]
| 1990s
| 20202023-0607-04
| v0.51-054
| {{free}}
| [[BSD licenses|BSD]]-like
Line 124 ⟶ 137:
| Realtime synthesis, hardware control, [[GUI]] design
| 1996
| 20172023-0804-1619
| 6.25
| {{nonfree}}
| Proprietary
Line 135 ⟶ 148:
| Realtime synthesis, [[live coding]], [[algorithmic composition]], [[acoustics|acoustic research]], all-purpose programming language
| 1996-03
| 20202023-0302-19
| v3.1113.0
| {{free}}
| [[GNU General Public License|GPL]]
Line 157 ⟶ 170:
|Realtime synthesis, live coding, effects coding, GUI design
|1999
|2021
|2019
|1.4
| {{nonfree}}
Line 168 ⟶ 181:
|Realtime audio synthesis
|2017-09
|20192022-0902-2926
|0.6.2| 1.1.50
| {{free}}
|[[GNU General Public License|GPL]]
|[[BSD licenses|BSD]]-like
|Graphical
|Immature
Line 177 ⟶ 190:
 
==Programming language features==
<!-- Note: Because various of these features are not neccessarilynecessarily "good" or "bad", it is not recommended to use the WKP templates that turn the table cells green for "Yes" and red for "No"! -->
 
{| class="wikitable sortable" style="text-align: center"
! Name
! Textual/graphical
! [[Object-oriented programming|Object-oriented]]
! [[Type system]]
|-
|[[Bidule]]
|Graphical
|No
Line 264 ⟶ 277:
! As unit
|-
|[[Bidule]]
|
|
Line 278 ⟶ 291:
|-
| [[ChucK]]
| {{yes}}
| {{yes}}
|
| {{yes}}
| {{yes}}
Line 288 ⟶ 301:
|
|
| Chunity allows to run ChucK in the Unity game engine
|
|-
| [[Csound]]
Line 300 ⟶ 313:
| {{no}}
|
|
| binding from [[Haskell]] (hCsound), [[C (programming language)|C]], [[C++]], Python,[[Java (programming language)|Java]], Lua[[JavaScript]], [[Lisp (programming language)|Lisp]], JavaScript[[Lua (programming language)|Lua]], [[Python (programming language)|Python]]
|-
| [[Impromptu (programming environment)|Impromptu]]
Line 314 ⟶ 327:
| {{yes}}
| {{no}}
| Bidirectional [[Scheme (programming language)|Scheme]] to [[Objective-C]] bridge
|-
| [[Kyma (sound design language)|Kyma]]
Line 351 ⟶ 364:
| {{yes}}
| {{yes}}
| {{ some }}
| {{ some }}
|
* bindings for [[GStreamer]], [[Java (programming language)|Java]], [[Lua (programming language)|Lua]], [[Python (programming language)|Python]]
* bindings for Python, Lua, Java, GStreamer.
* the Camomile plugin[[Plug-in (computing)|plug-in]] may host PD as pluginplug-in within DAW.
* PD-extended presently has multiple options to host LADSPA pluginsplug-ins within PD environment.
|-
| [[Reaktor]]
Line 367 ⟶ 380:
|
| {{yes}}
| {{no}}
| {{yes}}
|
|-
Line 417 ⟶ 430:
! Operating system(s)
! Source code language(s)
! Programming (plugin[[Plug-in (computing)|plug-in]]) API language(s)
! Other technical features
|-
|[[Bidule]]
|[[Mac OS XmacOS]], [[Microsoft Windows|Windows]]
|[[C++]]
|[[C++]]
Line 427 ⟶ 440:
|-
| [[ChucK]]
| [[Mac OS XmacOS]], [[Linux]], [[Microsoft Windows|Windows]]
| [[C++]]
| [[C++]]
|
| Unified timing mechanism (no separation between audio-rate and control-rate), [[command-line]] access
|-
| [[Csound]]
| [[Mac OS XmacOS]], [[Linux]], [[Microsoft Windows|Windows]]
| [[C (programming language)|C]], [[C++]]
| [[C (programming language)|C]]; also [[Python (programming language)|PythonC++]], [[Java (programming language)|Java]], [[Lisp (programming language)|Lisp]], [[Lua (programming language)|Lua]], [[TclPython (programming language)|Python]], [[C++Tcl]]
| IDE (QuteCsound), multitrack interface (blue); several analysis/resynthesis facilities; can compute double-precision audio; [[Python (programming language)|Python]] and [[LuaJIT]] [[algorithmic composition]] library; multi-threaded processing
|-
| [[Impromptu (programming environment)|Impromptu]]
| [[Mac OS XmacOS]]
| [[Lisp (programming language)|Lisp]], [[Objective-C]], [[Scheme (programming language)|Scheme]]
| [[C (programming language)|C]], [[C++]], [[Objective-C]], [[Scheme (programming language)|Scheme]]
| Native access to most OS XmacOS APIs including [[Core Image]], [[Quartz (graphics layer)|Quartz]], [[QuickTime]] and [[OpenGL]]. Impromptu also includes its own statically typed (inferencing) systems language for heavy numeric processing - OpenGL, RT AudioDSP etc..
|-
| [[Kyma (sound design language)|Kyma]]
| [[Mac OS XmacOS]], [[Microsoft Windows|Windows]]
| [[Smalltalk]], [[C (programming language)|C]], [[Objective-C]]
|[[Smalltalk]]
Line 451 ⟶ 464:
|-
| [[Max/MSP]]
| [[Mac OS XmacOS]], [[Microsoft Windows|Windows]]
| [[C (programming language)|C]], [[Objective-C]]
| [[C (programming language)|C]], [[Java (programming language)|Java]], [[JavaScript]], also [[Python (programming language)|Python]] and [[Ruby (programming language)|Ruby]] via externals
Line 457 ⟶ 470:
|-
| [[Pure Data]]
| [[Mac OS XmacOS]], [[Linux]], [[Microsoft Windows|Windows]], [[iPod]], [[Android (operating system)|Android]]
| [[C (programming language)|C]], [[Tcl]] (for GUI)
| [[C (programming language)|C]], [[C++]], [[FAUST (programming language)|FAUST]], [[Haskell (programming language)|Haskell]], [[Java (programming language)|Java]], [[Lua (programming language)|Lua]], [[Python (programming language)|Python]], [[QPure (equational programming language)|Q]], [[Ruby (programming language)|Ruby]], [[Scheme (programming language)|Scheme]], others
|
|-
| [[Reaktor]]
| [[Mac OS XmacOS]], [[Microsoft Windows|Windows]]
|
|
Line 469 ⟶ 482:
|-
| [[SuperCollider]]
| [[Mac OS XmacOS]], [[Linux]], [[Microsoft Windows|Windows]], [[FreeBSD]]
| [[C (programming language)|C]], [[C++]], [[Objective-C]]
| [[C++]]
Line 475 ⟶ 488:
|-
| [[Sporth]]
| [[Linux]], [[Mac OS XmacOS]]
| [[C (programming language)|C]]
| [[C (programming language)|C]], [[Scheme (programming language)|Scheme]]
Line 481 ⟶ 494:
|-
| [[SynthEdit]]
| [[Windows]], [[MacOSmacOS]]
| [[C++]]
| [[C++]]
Line 487 ⟶ 500:
|-
|[https://vcvrack.com/ VCV Rack]
|[[Mac OS XmacOS]], [[Linux]], [[Microsoft Windows|Windows]]
|[[C++]]
|[[C++]]
|
|}
 
== References ==
{{reflist}}
 
==See also==
* [[List of music software]]
* [[List of audio programming languages]]
 
== References ==
{{Reflist}}
 
{{DEFAULTSORT:Audio synthesis environment comparison}}