Nieuwe FFADO versie op komst

Er zit een nieuwe FFADO release aan te komen, FFADO 2.1.0.

De laatste puntjes worden op de i gezet en hopelijk wordt de nieuwe versie begin volgende week gereleased. Naast dat er een sloot aan nieuwe devices ondersteund worden in deze versie zijn er ook een hoop bugs gefixed en is er de nodige aandacht besteed aan ffado-mixer om deze goed werkende te krijgen met bijvoorbeeld de nieuwere Focusrites (de PRO 14, 24 en 40).

Voor mij persoonlijk verandert er niet veel, mijn Focusrite Saffire PRO 40 werkt feilloos onder Ubuntu 12.04. Maar in de toekomst zou ik wel graag een RME Fireface 400 aan willen schaffen en die wordt ondersteund met de aankomende FFADO release. Een bandmaat heeft een tijdlang twee Focusrite Saffire Pro 10’s gehad en deze recentelijk omgeruild met een RME Fireface 800 en volgens hem zijn de A/D D/A convertors gewoon stukken beter dan die van Focusrite.

Nieuwe FFADO versie op komst

De beer is los

En hij heet KLANG – Kernel Level Audio Next Generation. Een medewerker van een universiteit In München vindt de hele Linux audio stack maar niks, al dat user space gedoe, dat moet allemaal in kernel space gebeuren. En op basis van OSS want ook de ALSA driver stack is natuurlijk helemaal crap. En omdat het allemaal fundamenteel verkeerd is gaat hij van de grond af iets nieuws bouwen. Dus hij legt een websiteje aan, doet een aankondiginkje en verwondert zich er vervolgens over dat het wordt opgepikt.

En als vervolgens Phoronix en zelfs Paul Davis (de belangrijkste man achter Ardour en JACK) er aandacht aan gaan besteden heeft datenwolf heel wat uit te leggen. Ik wens hem heel veel succes, zowel met KLANG als met het uitleggen waar hij nou mee bezig denkt te zijn.

De beer is los

Zelf een real-time kernel bouwen voor Ubuntu 12.04

De real-time kernel uit de PPA van Alessio Bogani liep bij mij nog wel eens vast dus heb ik er zelf een gebouwd met de meest recente 3.2 kernel en bijbehorende RT patchset. En dit draait een stuk stabieler, nog geen lockups gehad.

Een eigen kernel bouwen is gelukkig nog steeds niet zo heel moeilijk, met Ubuntu kun je zelfs heel gemakkelijk pakketten maken met behulp van de make-kpkg utility. Na wat googlen kwam ik onderstaande handleiding tegen en simpeler kan het bijna niet.

Installeer de benodigde pakketten:

sudo apt-get install kernel-package fakeroot build-essential libncurses5-dev

Download de kernel sources en de RT patchset:

mkdir -p ~/tmp/linux-rt
cd ~/tmp/linux-rt
wget -c http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.2.28.tar.bz2
wget -c
http://www.kernel.org/pub/linux/kernel/projects/rt/3.2/patch-3.2.28-rt42.patch.bz2

Pak de kernel sources uit en patch deze met de RT patchset:

tar xjvf linux-3.2.28.tar.bz2
cd linux-3.2.28
patch -p1 < <(bunzip2 -c ../patch-3.2.28-rt42.patch.bz2)

Nu moet je de kernel nog configureren. De gemakkelijkste manier is om een bestaande kernel config te nemen, deze staan in de /boot directory van je systeem. Kopieer een config naar je werkdirectory en gebruik deze als uitgangspunt:

cp /boot/config-$(uname -r) .config

Dit commando kopieert de kernel config van de kernel die je op dat moment gebruikt. Je kunt ook de config van een andere kernel gebruiken, bijv. die van de Ubuntu lowlatency kernel aangezien deze al geoptimaliseerd is voor Linux audio toepassingen. De volgende stap is om een kernel config aan te maken met full preemption ingeschakeld aan de hand van de gekopieerde kernel config:

make oldconfig

Je kunt alle prompts wegklikken met Enter, behalve de prompt welk Preemption Model je wilt gebruiken. Selecteer daar 5 (Fully Preemtible Kernel):

Preemption Model
> 1. No Forced Preemption (Server) (PREEMPT_NONE)
  2. Voluntary Kernel Preemption (Desktop) (PREEMPT_VOLUNTARY)
  3. Preemptible Kernel (Low-Latency Desktop) (PREEMPT__LL) (NEW)
  4. Preemptible Kernel (Basic RT) (PREEMPT_RTB) (NEW)
  5. Fully Preemptible Kernel (RT) (PREEMPT_RT_FULL) (NEW)
choice[1-5]: 5 <Enter>

Workaround voor https://bugs.launchpad.net/ubuntu/+source/kernel-package/+bug/602405:

sed -rie 's/echo "+"/#echo "+"/' scripts/setlocalversion

Nu kun je de kernel gaan bouwen:

make-kpkg clean
CONCURRENCY_LEVEL=$(getconf _NPROCESSORS_ONLN) fakeroot make-kpkg
--initrd --revision=0 kernel_image kernel_headers

Als het bouwen klaar is (kan een tijd duren) kun je de kernel pakketjes installeren:

cd ..
sudo dpkg -i linux-{headers,image}-3.2.28-rt42_0_*.deb

Rebooten, nieuwe real-time kernel selecteren in je bootloader (GRUB) en je systeem zou nu moeten booten met de net gebouwde real-time kernel.

Zelf een real-time kernel bouwen voor Ubuntu 12.04

Homerecording.be On Tour 2012

Zondag 18 maart vindt de HOT2012 plaats in Muziekcentrum Het Depot in Leuven. Tijdens deze meeting vinden er ook de nodige workshops plaats waaronder eentje specifiek over Linux audio! Deze workshop is geregeld door een Linux audio lotgenoot die ik al een tijdje ken via internet en persoonlijk ontmoet heb tijdens LAC2011 in Ierland. Hij mailde me laatst en vroeg of ik ook een bijdrage wilde leveren aan deze workshop. Dus zondag 18 maart sta ik met m’n Linux audio set-up in Leuven en als alles meezit ga ik ook nog een track live doen aldaar.

Erg tof uiteraard en ben Dirk dan ook dankbaar voor de uitnodiging. De Linux audio workshop begint om 16.30 en duurt een uur en we mogen wat uitlopen aangezien het de laatste workshop van de dag betreft.

Edit: m’n meissie is momenteel ziek en zondag moesten we daarvoor naar de huisartsenpost in het ziekenhuis. Niets heel ernstigs maar ze heeft een antibioticakuur gekregen en was zo beroerd dat ik heb afgezegd om voor m’n gezinnetje te zorgen.

Homerecording.be On Tour 2012

Bitwig

Een aantal voormalige devs van Ableton die hebben meegewerkt aan de ontwikkeling van Live zijn bezig met een eigen product, Bitwig. Het wordt geen kloon, wel vergelijkbare functionaliteit met wat toegoevoegde mogelijkheden.

Zelf gebruik ik geen Ableton simpelweg omdat er geen Linux versie voor beschikbaar is. Maar de mensen van Bitwig gaan hoogstwaarschijnlijk wel een Linux versie aanbieden. Bitwig is dan ook talk of the town in de Linux audio community, maar ook daarbuiten (CDM, KVR) en aardig wat mensen roemen het besluit om ook een Linux versie uit te brengen. Als Bitwig ooit uitkomt want het project bestaat al sinds 2009 en ze gaan nu de beta testing fase in. Dus misschien duurt het nog wel een jaar voordat er wat uitgebracht wordt.


text-align: center;

Bitwig Studio

Bitwig

Linux Home Recording

Sinds kort is er een blogger (Reteo Varala) actief die zeer uitgebreide artikelen aan het schrijven is over Linux audio. Zeker de moeite waard om te checken, temeer daar hij al aardig wat handleidingen heeft gemaakt en vooral het praktische gedeelte van Linux audio belicht zonder daarbij het technische aspect uit het oog te verliezen. Veel te weinig mensen doen dat (of gaan in hun moerstaal bloggen) en Reteo’s blog is dan ook een verademing.

Linux Home Recording – Make noise with Open Source!

Linux Home Recording

Loomer Cumulus

Het aantal aanbieders van commerciële plug-ins voor Linux is klein. Heel klein. Het zijn er eigenlijk maar vier, Loomer, LinuxDSP, Pianoteq en DiscoDSP. Daar staat tegenover dat de beschikbare plug-ins van hoge kwaliteit zijn en dat vooral Loomer en LinuxDSP niet onwelwillend staan tegenover verzoeken, vragen en eventuele bugreports vanuit de community. Voor die kwaliteit en servicegerichtheid betaal je wel wat maar alle drie de aanbieders hebben demo’s beschikbaar en Loomer heeft nu ook een magware plug-in uitgebracht, Loomer Cumulus.

De plug-in, beschikbaar als 32 en 64 bits LinuxVST en standalone JACK applicatie, staat op de DVD die bij het blad Computer Music zit. Niet echt freeware dus, je moet het tijdschrift wel eerst aanschaffen, maar Cumulus is zeker de moeite waard om eens uit te proberen. Het is, naast Loomer’s eigen Sequent, de enige goed werkende plug-in voor Linux waarmee je samples kan laden en deze realtime kan bewerken (DiscoDSP’s HighLife is een specifieke sampler maar werkt niet goed). De standalone applicatie werkt prima, met de LinuxVST plug-in heb ik nog wat problemen aangezien Qtractor wat moeite heeft met deze plug-in. Ardour 3, dat inmiddels ook ondersteuning heeft voor LinuxVST’s, doet het beter maar waarschijnlijk komt Cumulus het beste tot zijn recht in software als Renoise.

Het is goed om te zien dat een blad als Computer Music Linux als audio platform serieus begint te nemen. Niet alleen staan er Linux binaries op de DVD maar ook staat er een positieve review van Harrison Mixbus 2 in het laatste nummer van het magazine zelf en staan er Linux demo’s van Mixbus en energyXT op de DVD.

Loomer Cumulus

Nog meer mididings

Mididings script voor 29 oktober is klaar:

#!/usr/bin/python

from mididings import *
from mididings.extra import *

config(
    backend='jack',
    client_name='sodap-live',
    data_offset=0,
)

run(
    Filter(PROGRAM) >> [
        [
            ProgramFilter(0) >> NoteOn(64,50),
            ProgramFilter(7) >> NoteOn(69,86),
            ProgramFilter(0) >> NoteOn(72,60),
            ProgramFilter(1) >> NoteOn(74,62),
            ProgramFilter(2) >> NoteOn(76,64),
            ProgramFilter(3) >> NoteOn(71,30),
            ProgramFilter(7) >> NoteOn(77,88),
            ProgramFilter(8) >> NoteOn(79,96),
            ProgramFilter(9) >> NoteOn(81,84),
        ] >>
        LatchNotes() >> [
            KeyFilter(64) % NoteOff(69,0),
            KeyFilter(69) % NoteOff(64,0),
        ],
        ProgramFilter(4) >> Panic(),
        ProgramFilter(10) >>
        Channel(2) >>
        NoteOn(36,64),
    ]
)

Met dit script kan ik nu de strijkers spelen in Soda P – Icon of your Time en heb een Vibraslap sample van Freesound.org in een soundfontje gezet met Swami zodat ik deze met de FluidSynth DSSI plug-in ook vanuit Qtractor kan triggeren met behulp van de Boss FC-50. De strijkers gaan via het eerste paralelle ‘blok’ waarin Program Changes worden omgezet in Note Ons, daarna gaan ze door de LatchNotes Unit en daarna worden in een genest parallel blok nog twee Note Offs gedefinieerd. Stuurt de FC-50 Program Change 4 uit dan worden alle noten uitgezet (‘Panic’), bij Program Change 10 stuurt mididings een MIDI noot 36 op MIDI kanaal 2 naar Qtractor voor de Vibraslap. Het config deel aan het begin van het script vertelt mididings dat er JACK MIDI poorten aangemaakt moeten worden met als naam ‘sodap-live’. data_offset=0 is nodig omdat de FC-50 bij 0 begint met tellen en niet bij 1.

Nog meer mididings