Peter Mogensen wrote:
> Løsningen er at mindske latency og realtime-respons i Linux-kernen.
> Så vidt jeg har forstået, så eksistererede der en stabil fungerende
> løsning til kerne 2.4, men det har knebet lidt med at få kerne 2.6 til
> at give det samme på en fornuftig måde.
> Det ser dog ud til at stabilisere sig. Hvis du patcher din kerne med
> denne patch, så skulle du opnå bedre resultater:
>
>
http://aplawrence.com/Linux/kernel_preemption.html
>
> Der er dog flere problemer:
> 1) Man skal være root for at opnå realtime prioriteter. Det er træls at
> køre alle lyd-applikationer som root.
> 2) Man kan ikke have flere applikationer bruge ALSA pcm device samtidig.
>
> Løsningen på 1) er at installere realtime modulet. På Debian kan du
> installere realtime-lsm-source og bruge module-assistant til at bygge en
> debian-pakke, der kan installeres. Derefter kan du loade realtime
> modulet (med et par options som f.eks. gid=29, allcaps=1)
>
> Så kan alm. brugere, der medlem af audio gruppen (29) køre "realtime"
> processer.
>
> Løsningen på 2) hedder JACK.
> JACK giver et low latency framework for audio applikationer til at deles
> om lydkortet og mixe deres data. Mange audio-applikationer har mulighed
> for jack output (f.eks. xmms).
>
> apt-get install jackd
>
> JACK kan startes på flere måder og nu begynder det er blive komme dertil
> hvor det ikke virker helt for mig. Men den "fortrukne" metode ser du til
> at være det fine GUI-program qjackctl. Desværre får det min Timidity til
> at gå amok i swap indtil den bliver slået ihjel.
>
> Prøv det, og fortæl hvad du finder ud af.
OK, nu har jeg endelig fundet tid til at rode med det. Efter et helvede
med filsystemfejl (ved endnu ikke om det er kernen eller min disk der er
ved at dø) er det lykkedes mig at få kompileret en 2.6.13.1 + rt6
realtime patchen og bootet den. lsm modulet er hentet og installeret
samt loaded med 'allcaps=1' option. Jeg har så også installeret jackd og
prøvet at køre den med realtime flaget og derefter startet alsaplayer op
med brug af jackd, musikken spiller da også fint og den er væsentlig
sværere at få til at hakke, men det virker som om at det stadig knaser
en lille smule en gang imellem. Men jeg kan ikke helt se om det er pga.
belastning eller om det skyldes noget andet.
Så jeg vil da blive ved her de næste par aftener (og måske weekenden
afhængig af vejret) med at tune det lidt mere, og så til sidst få det
til at køre med ordentlig sikkerhed (pt. kører jeg alsaplayer som root,
ikke smart).
Skal også have fundet ud af hvad det er der sker med mit filsystem, jeg
har 2 gange i aften måtte reboote og køre fsck på min root partition
(ext3) med manuel accept af at rette nogle fejl (inodes problemer mv).
Det kan være jeg skal overveje at gå tilbage til 2.6.12.x kernen og
patche den med realtime istedet, for der syntes jeg ikke jeg har haft
fejlene. Bla. har problemerne smadret nogle af oplysningerne til dpkg,
så installation af ny software er pt. broken :-|
Så et skridt frem men to tilbage, det går sgu godtnok ikke overbevisende.
Thomas