JACK Audio Connection Kit

**JACK Audio Connection Kit** (**JACK**) er ein miksar/tenar som sit mellom lydhandsamarprogram på brukarnivå og ein lågniva lydhandsamingsinfrastruktur som ALSA i Linux-kjernen, OSS på UNIX, Core Audio på Mac OS X og ASIO på Windows. JACK vart frå grunnen konstruert for proffesional bruk, der låg forsenking er viktig. 

## Oppbygging
Funksjonaliten og programmeringsgrensesnittet til JACK er på eit høgare nivå enn underliggande lydhandsamingsinfrastruktur som ALSA, OSS, FFADO, CoreAudio, ASIO og PortAudio. JACK inneheld funksjonaliten som tillet utveksling og miksing  av audiostraumar mellom ulike prosessar (tenarar og brukarprogram), grensesnitt og lydkort. JACK abstrakterer grensesnittet mellom ulike processar, og tek seg av trådhandsaming og synkronisering, slik at programmeraren kan konsentrera seg om å skriva kode for funksjonalitet. Internt i JACK vert kvar audiosample representert på enkelpresisjon flytkommaformat. JACK tek hand om konvertering til/frå 16- og 24-bit fastkommarepresentasjon som I/O-einingane nyttar. 

JACK er bygd opp av fleire modular: **jackd** er ein tenarprocess (eller «deamon» om ein nyttar UNIX-terminologi) og **libjack** er eit biblioteket som brukarprogamma linkar til. 
Som anna lydhandsamingprogramvare kommuniserer JACK med drivarane via attendekallfunksjonar. I tillegg til å ruta audiostraumar mellom brukarprogram som køyrer som eigne prosessar kan JACK òg utvidast med plugin som nyttar prosesskontekst som JACK.

JACK nyttar funksjonaliteten som er innebygg i den underliggande infrastrukturen og innfører ikkje forseinking ut over forseinking som stammar frå ALSA eller CoreAudio. Det ekstra laget med programvare i JACK innfører litt ekstra arbeid for prosessoren, men ekstralasta er ikkje meir enn rundt 1% .

## JACK på fleire operativsystem
JACK vart utvikla for Linux, men køyrer òg på fleire UNIX-liknande operativsystem, som BSD, FreeBSD, NetBSD, OpenBSD og Mac OS X. **JackOSX** er ei programvarepakke som tilpassar JACK for Apple CoreAudio. JACK kan lett tilpassast alle operativsystem med POSIX-grensesnitt. Etter som Windows òg har eit POSIX-grensesnitt (i tillegg til WinAPI) kan JACK nyttast på Windows-maskinar. I praksis er det likevel ASIO som er mest utbreidd  nytta i samband med profesjonell lydhandsaming på Windows-maskinar.

## Verktøy

JACK har fleire små program som utfører ymse oppgåver. 
### qjackctl
qjackctl er eit Qt-basert grafisk controllprogram for JACK. qjackctl let brukaren oppretta forbindelsar mellom ulik lydkjelder, tenarar, brukarprogram og utgangar ved å ta tak i kjelder med markøren og dra dei til program og/eller utgangar . 

### jack_lsp
jack_lsp er eit kommandolinjeverktøy som listar informasjon om I/O-portane som JACK kjenner til.

## NetJack
NetJack er ein modul som utvidar JACK med nettfunksjonalitet. NetJack har ein «meister» som sender ein audiostraum og ein eller fleire mottakarar (slavar) som tek imot audiostraumen. NetJack syt for at alle mottakarane er synkroniserte med sendaren, slik at det ikkje oppstår datatap.

## Brukarprogram som nyttar JACK
* Aeolus: pipeorgelsyntisiser
* Aqualung: GTK+baset spelar
* Ardour: digital audioarbeidsstasjon for Linux og Mac OS X
* Baudline: signalanalyseverktøy
* CheeseTracker: Impulse Tracker-klone
* ChucK: sanntidsprogrammeringsspråk for musikksyntese
* energyXT2: musikksekvensar
* Freqtweak: spektralanalyseprogram
* Hydrogen: trommesyntisiser
* JACK Rack: LADSPA effektrack
* LMMS: syntisiser for Linux, Mac OS X og Windows
* Pure data: grafisk datastraumorientert programmeringsmetode
* SuperCollider: sanntidsprogrammeringsspråk
* MusE: Qt-basert syntisiser
* Renoise: Tracker (musikksekvenser)
* Rosegarden: audio- og MIDIsekvensar
* XMMS: lydavspelar
* ZynAddSubFX: syntisiser

## Kjelder


## Sjå òg
* Lydkort