Mjukvaruutveckling
- inom ljudområdet
Jonas Ekeroot, Sveriges Radio, Teknisk Utveckling
Språktyper
Systemprogrammeringsspråk (C,C++)
Skriptspråk (Tcl/Tk + Snack)
Grafisk/Visuell programmering (jMax, Pd, Max/MSP)
jMax
IRCAM (Institut de Recherche et Coordination Acoustique/Musique)
1 2 Generell ljudmjukvara
Generell ljudmjukvara
audio SW
3 Generell ljudmjukvara
audio SW
audio HW
Generell ljudmjukvara
audio SW
driver audio HW
Generell ljudmjukvara
audio SW audio API driver audio HW
4 Generell ljudmjukvara
audio SW audio API driver audio HW
API (Application Programming Interface)
Generell ljudmjukvara
audio SW audio API MME, DS, ASIO, SoundMgr, CoreAudio, driver OSS, ALSA audio HW
API (Application Programming Interface)
Generell ljudmjukvara
plug-in
audio SW audio API MME, DS, ASIO, SoundMgr, CoreAudio, OSS, ALSA driver audio HW
API (Application Programming Interface)
5 Generell ljudmjukvara
plug-in plug-in API audio SW audio API MME, DS, ASIO, SoundMgr, CoreAudio, driver OSS, ALSA audio HW
API (Application Programming Interface)
Generell ljudmjukvara
plug-in VST, DirectX, MAS, TDM, plug-in API AS/RTAS/HTDM, LADSPA, AudioUnits audio SW audio API MME, DS, ASIO, SoundMgr, CoreAudio, driver OSS, ALSA audio HW
API (Application Programming Interface)
Audio API:er – Windows
MME (MultiMedia Extensions) DS (DirectSound)
ASIO (Audio Stream Input/Output)
6 Audio API:er – Mac
Sound Manager - MacOS 8/9 Core Audio - MacOS X
ASIO (Audio Stream Input/Output)
Audio API:er – Linux / Unix
OSS (Open Sound System)
ALSA (Advanced Linux Sound Architecture)
Plug-in API:er / Plug-in-format
VST (Virtual Studio Technology)
DirectX
MAS (Mark of the Unicorn Audio System)
7 Plug-in API:er / Plug-in-format
TDM (Time Division Multiplexing)
AS (Audio Suite) RTAS (Real-Time Audio Suite) HTDM (Host Time Division Multiplexing)
Plug-in API:er / Plug-in-format
LADSPA (Linux Audio Developer’s Simple Plug-in API)
AU (Audio Units)
Plug-in-programmering
C-uppsats i ljudteknik
”Implementing a parametric EQ plug-in in C++ using the multi-platform VST specification”
http://epubl.luth.se/1402-1773/2003/044/
8 Generell ljudmjukvara
plug-in VST, DirectX, MAS, TDM, plug-in API AS/RTAS/HTDM, LADSPA, AudioUnits audio SW audio API MME, DS, ASIO, SoundMgr, CoreAudio, driver OSS, ALSA audio HW
API (Application Programming Interface)
Latency
”Audio Latency Measurements of Desktop Operating Systems” (2001)
MacMillan, Droettboom och Fujinaga Johns Hopkins University
ICMC (International Computer Music Conference)
9 10 Generell ljudmjukvara
audio SW audio API MME, DS, ASIO, SoundMgr, CoreAudio, driver OSS, ALSA audio HW
Generell ljudmjukvara
audio SW
audio API MME, DS, ASIO, SoundMgr, CoreAudio, driver OSS, ALSA audio HW
Generell ljudmjukvara
audio SW PortAudio audio API MME, DS, ASIO, SoundMgr, CoreAudio, OSS, ALSA driver audio HW
11 Generell ljudmjukvara
cross-platform
audio SW PortAudio audio API MME, DS, ASIO, SoundMgr, CoreAudio, driver OSS, ALSA audio HW
PortAudio
Cross-platform audio API
open-source (C)
http://www.portaudio.com/
libsndfile
Cross-platform sound file API
open-source (C)
http://www.mega-nerd.com/libsndfile/
12 wxWidgets
Cross-platform GUI API (framework)
open-source (C++)
http://www.wxwidgets.org/
Audacity – fri ljudeditor
PortAudio libsndfile wxWidgets
http://audacity.sourceforge.net/
Windows, MacOS 9/X, Linux/Unix
Audacity
13 Audacity
14