Vliegticket naar Dublin geboekt na 62 popups op de Ryanair site weggeklikt te hebben. LAC2011 is dit jaar in Maynooth en bij slechts één hotel in Maynooth (Glenroyal Hotel) kun je on-line boeken. De kamerprijs viel mee ondanks dat het een volgens mij nogal deftig hotel is. Dus gelijk ook geboekt. Nu wordt het dus zaak mijn workshop en optreden te gaan voorbereiden.
Masteren met Qtractor I
De defacto standaard tool voor GNU/Linux om te masteren is JAMin. Maar na er een paar keer mee gewerkt te hebben en deze discussies gelezen te hebben ben ik er wel uit dat het voor mij niet de juiste tool is. Dus ben ik wat rond gaan kijken op internet naar bruikbare artikelen om een eigen mastering chain op te zetten. Al snel kwam ik een artikeltje tegen op Sound On Sound. Niet heel erg recent en specifiek gericht op Logic maar wel met nuttige informatie wat betreft instellingen. En het artikel gaat uit van plugins, niet van een bepaalde tool dus dat zou kunnen betekenen dat ik met de juiste plugins in mijn DAW een vergelijkbaar resultaat zou kunnen behalen. En mocht ik nou net een DAW gebruiken die praktisch alle plugin frameworks beschikbaar voor GNU/Linux ondersteunt.
Eerste onderdeel van de chain is volgens het artikel een multi-band compressor. Die is snel gevonden want daar is eigenlijk maar één kandidaat voor, de Calf Multiband Compressor. Nog niet officieel gereleased maar de git versie waarvan ik een pakket heb gebakken werkt prima. Volgende plugin zou een parametrische EQ moeten zijn. Daar zijn er wel een paar van o.a. die van Calf en de EQ10Q LV2 plugin. Naar de EQ10Q plugin heb ik wel eens zitten staren en begreep er weinig van dus vooralsnog hou ik het wat simpeler met de Calf Equalizer 5 band. Daarna zou je volgens het Sound On Sound artikel een Exciter/Enhancer in de chain kunnen stoppen. Ook daar is er maar één van, wederom van Calf en wel de Calf Exciter. Laatste in de chain zou een limiter moeten zijn. Daar zijn er wel een aantal van beschikbaar maar had al ergens gelezen dat een ‘fast lookahead’ limiter in dit geval het beste resultaat zou kunnen geven. En daar is er wederom maar één van, de Fast Lookahead limiter, een LADSPA plugin.
Voor het opzetten van de mastering chain in Qtractor heb ik een aparte bus aangemaakt, de Mastering Chain bus, en een Insert toegevoegd aan het Master Out kanaal en deze aan de Mastering Chain bus geknoopt. Op deze manier kan ik heel simpel de mastering chain bypassen om goed het verschil te kunnen horen tussen het ongemasterde en gemasterde signaal. De plugins heb ik vervolgens in de goeie volgorde toegevoegd als Output Plugins van de Mastering Chain bus. Daarna ben ik de instellingen van de verschillende plugins aan gaan passen aan de hand van de genoemde waarden in het artikel.
Compressor: de Calf Multiband Compressor heeft 4 bands en volgens het artikel heb je er maar drie nodig. Dus heb de ‘Sub’ band uitgeschakeld, de crossover points voor low rond 150 Hz en high rond 5Khz gezet, RMS detectie ingeschakeld (schijnt voor mastering beter te werken dan peak detectie) en de waardes aangepast voor Attack (0.01ms), Release (98ms), Threshold (-35dB), Ratio (1:1.17) en Makeup gain (+6dB). Uiteraard is dit maar een uitgangspunt, de instellingen kunnen per mastersessie natuurlijk verschillen.
Equalizer: de instellingen uit het artikel kun je een op een overnemen, dus Lowshelf op 20Hz, band 1 op 76 Hz/Q 0.74/+2.3dB, band 2 op 220Hz/Q 1/-1.4dB, band 3 op 15Khz/Q 0.54/+2.9dB en Highshelf op 17,8Khz.
Exciter: Harmonics op 6.48 en de Scope op 3100Hz net zoals in het artikel.
Limiter: Input gain op +5dB en Limit op -0.5dB.
En nu kun je een gemixte track importeren in Qtractor en aan de slag gaan met als leidraad de hierboven genoemde instellingen voor de verschillende plugins. Let wel, ik heb dit nog niet uitgebreid kunnen uitproberen dus wellicht zijn de instellingen niet bruikbaar als uitgangspunt. Maar dat is voer voor een eventueel volgend artikel over masteren met Qtractor.
Unaware of a Direction III
Genoeg gesleuteld aan dit nummer. Voorlopig vind ik het mooi zo. Heb de boel afgemixed en lichtjes gemastered.
PPA: Calf plugins
Heb een git checkout van de aankomende 0.0.19 versie van de Calf plugin pack geüpload naar mijn PPA. Wat er vooral veranderd is aan de plugins is de look. Dit zijn veruit de slickste native Linux audio plugins die ik heb gezien. En ze klonken al goed en waren al zeer bruikbaar maar nu zien ze er dus ook fantastisch uit.
De Calf plugins aan het werk in een ruw mixje van oefenruimte opnames van één van mijn bands: Soda P – Icon of your Time
De delay op de stem en de phaser over de strijkers op het end zijn Calf plugins. En wat ik al zei, het is een ruw mixje van oefenruimte opnames dus het is allemaal wat rommelig en slordig ingespeeld.
De gemakkelijkste manier om draadloos te tetheren met je LG GW620
Heb al een tijdje een LG GW620 en ben er tot nu toe erg over te spreken, ook al staat er een oude Android versie op, is het scherm capacitief wat sommigen als hopeloos ouderwets beschouwen en is het geen snelheidswonder. Maar juist één van de belangrijkste redenen waarom ik een dergelijke telefoon heb gekocht, tetheren via Bluetooth of Wifi, werkt dus niet vanwege de wat oudere Android versie (Cupcake 1.5). Tetheren via USB lukt wel met behulp van AziLink maar ten eerste zit je dan toch nog met een draadje, ten tweede gaat de telefoon zich dan opladen waardoor de batterij van m’n netbook in no time leeg wordt getrokken en ten derde is het opzetten van de connectie vanaf mijn netbook best wel een gedoe.
En toen stuitte ik op Barnacle Wifi Tether en nu kan het USB kabeltje in de tas blijven zitten. Het grote voordeel van Barnacle is dat het geen Netfilter gebruikt dus het werkt ook met Android versies die een kernel hebben zonder Netfilter (zoals het geval is met de LG GW620). En het is super simpel op te zetten op je telefoon en ook het verbinden vanuit Ubuntu gaat makkelijk. Enige hobbel wellicht is dat je een geroote telefoon moet hebben.
Op de GW620 kun je Barnacle Wifi Tether installeren via de Market. Barnacle is FLOSS dus het kost je niks. Open vervolgens de Barnacle applicatie op je telefoon en druk op ‘Start’. In het ‘log’ tabje zie je nu wat meldingen voorbij komen en de eerste keer dat je dit doet zal Barnacle vragen of de applicatie root access mag hebben. Vervolgens zou Barnacle goed op moeten starten, waarschijnlijk komt wel de melding ‘shell init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied’ voorbij maar dat heeft geen invloed op de verdere werking van Barnacle.
Om vanaf je Ubuntu 10.04 installatie connectie te maken heb je helaas niet veel aan NetworkManager. NetworkManager gaat namelijk om de haverklap access points scannen en allerlei andere dingen doen waar Barnacle Wifi Tether niks mee kan waardoor de verbinding gelijk weer verbroken wordt. Dus zul je het handmatig met een scriptje moeten doen:
#!/bin/bash
service network-manager stop
ifconfig wlan0 down
iwconfig wlan0 mode ad-hoc
iwconfig wlan0 essid barnacle
iwconfig wlan0 channel 1
ifconfig wlan0 up
sleep 2
dhclient wlan0
Noem dit scriptje bijv. ‘barnacle’ en voer het uit met sudo ./barnacle nadat je Barnacle Wifi Tether op je GW620 hebt geactiveerd. Je telefoon zou nu een bericht toontje moeten laten horen en in het log schermpje zou moeten komen te staan dat je verbonden bent.
PPA updates week 45
Eén nieuw pakketje (vocoder-ladspa voor Lucid) en twee updates (Seq24 0.9.1 en Rakarrack 0.6.1). Die LADSPA vocoder plugin is toch wel een cool dingetje dus die wil ik ook onder Lucid kunnen gebruiken. Oh ja, heb een 64bit versie van de Argotlunar native Linux VST plugin gecompileerd en doorgegeven aan FalkTX die ‘m inmiddels aanbiedt in zijn PPA. Binnenkort ook meer daarover, over audio plugins en Linux, mooi spul.
Linux Magazine nummer 4
Nummer 5 ligt al bijna in de schappen maar wil nog even wat kwijt over het september nummer. Daar staat een mooi en groot artikel in over Ubuntu Studio, het multimedia broertje van Ubuntu. Zelf gebruik ik het niet, installeer altijd Ubuntu zonder melk en suiker met de pakketten die ik nodig heb, maar aangezien de ondertitel ‘Muziek maken met open source’ is heb je mijn aandacht.
Het werken met audio vereist dat de kernel in real-time data kan verwerken. Als een audiosignaal op de geluidskaart binnenkomt, dan moet die datastroom zonder haperen naar de audiosoftware worden gestuurd. In een normale kernel wacht ieder proces netjes zijn beurt af, maar dat is geen goed idee bij het werken met audio. Het voordeel van een real-time kernel is dat deze datastromen zonder hapering kunnen worden verwerkt, voor zover de CPU het kan bijbenen.
Bovenstaande klopt niet helemaal want je hebt in principe geen real-time kernel nodig om datastromen zonder haperen rond te kunnen sturen. Een normale kernel kan processen ook SCHED_FIFO of SCHED_RR draaien, daar heb je geen real-time kernel voor nodig, en bovendien zijn er al delen van de RT patchset opgenomen in de mainline kernel. Een real-time kernel heb je dan ook eigenlijk alleen nodig als je met extreem lage latencies (< 10ms) aan de slag wil gaan of als je de zogenaamde softirq tasklets nodig hebt om bijvoorbeeld je FireWire of USB controller te prioriteren mocht deze zijn IRQ delen met andere apparaten en daardoor problemen veroorzaken.
Het koppelen (van midi poorten) gebeurt via JACK, enerzijds direct via de ALSA-drivers of anderzijds via een tussenliggende midi-driver.
Welke tussenliggende midi-driver? JACK MIDI? JACK MIDI is géén tussenliggende driver maar een onderdeel van de JACK API via welke applicaties met midi mogelijkheden direct via JACK midi kunnen verzenden of ontvangen zonder tussenkomst van ALSA. De ALSA seq en raw drivers zijn juist tussenliggende midi-drivers die de nodige ‘jitter’ (onregelmatige latency) kunnen veroorzaken. De tendens is dan ook gelukkig om de ALSA midi backend steeds meer links te laten liggen ten faveure van JACK MIDI. Of bedoelt de auteur misschien a2jmidid? Dat is namelijk wel een driver die applicaties welke gebruik maken van JACK MIDI aan de ALSA midi backend kan knopen.
Verder heeft de auteur het consequent over Cinerella. Jane Fonda is een mooie vrouw, zeker in Barbarella, maar de video-editing software Cinelerra is niet naar die film vernoemd. En wat betreft plug-in frameworks worden alleen LADSPA en LV2 genoemd terwijl je met GNU/Linux ook de beschikking hebt over DSSI en LinuxVST plug-ins. Vooral het aantal LinuxVST plug-ins (VST plug-ins geport naar GNU/Linux) groeit momenteel gestaag en er zitten een paar zeer bruikbare tussen. Ook op het DSSI front gebeurt er het nodige, afgelopen maand heeft dit hele framework een grote update gekregen.
Verder niets dan positiefs over zo’n groot artikel geheel gewijd aan Ubuntu Studio. Ja, volgende keer misschien een screenshotje van QjackCtl zonder al die xrun meldingen en wellicht was het een idee geweest om ook de diverse multimedia PPA’s te noemen van waaruit je geüpdate of niet in de standaard repositories beschikbare software kunt installeren.
Frisse start
Eindelijk mijn muziek PC gemigreerd naar Ubuntu 10.04 Lucid Lynx. Van de week is mijn nieuwe geluidskaart binnengekomen (een Focusrite Saffire Pro 40) en Jof van Tango Studio schoot me aan op IRC met de vraag of ik zijn real-time 2.6.33 kernel wilde proberen. Twee goeie redenen om te switchen. Ten eerste omdat ik de Saffire Pro 40 al uitgebreid heb kunnen testen onder 10.04 met mijn eigen FFADO pakketjes en ten tweede omdat ik met de kernel van Tango Studio de beschikking heb over de nouveau drivers voor mijn Nvidia kaart. Ben nu dus niet meer afhankelijk van die closed source drivers van Nvidia die de laatste tijd nogal wat problemen schijnen te geven in combinatie met recentere real-time kernels. Ook heb ik nu geen last meer van de devtmpfs bug die toch niet opgelost gaat worden aangezien de maintainer van de Ubuntu real-time kernel er mee gaat stoppen.
Had nog wel een raar probleempje met JACK. Kreeg iedere keer als ik bijv. Yoshimi of PHASEX opstartte de volgende melding:
ports used in attemped connection are not of the same data type
Dacht eerst dat het misschien aan JACK lag maar na op de LAU mailinglist gevraagd te hebben wat deze melding nou precies betekende had ik al snel een vermoeden dat het waarschijnlijk aan a2jmidid lag. De Saffire Pro 40 doet er namelijk een stuk langer over om op te komen dan de Pro 10 van de band. En met de Pro 10 werkt mijn a2jmidid opstartscriptje wel goed maar met de Pro 40 start a2jmidid op voordat de audio poorten opkomen. Dit heeft als gevolg dat veel applicaties die met de eerst twee beschikbare audio JACK input poorten willen verbinden (normaliter dus ook audio poorten) nu aan de a2jmidid JACK MIDI poorten worden geknoopt (dat zijn immers de als eerste aangemaakte input poorten). Oftewel, de applicatie probeert audio poorten met MIDI poorten te verbinden en vandaar de melding. Mijn opstartscriptje voor a2jmidid ziet er nu als volgt uit:
#!/bin/bash
while [ "$JACK_TEST" != "system" ]
do
JACK_TEST=$(jack_lsp 2>/dev/null | grep -m1 -e "system" | cut -d ":" -f 1)
sleep 2
done
a2jmidid -e &
exit
Werkt weer prima. Kan nog beter uiteraard want QjackCtl blijft nu hangen zo lang de while loop actief is, maar daar vind ik nog wel een elegantere oplossing voor.
ZynAddSubFX/Yoshimi presets
Louigi Verona is bezig een bibliotheek aan te leggen met ZynAddSubFX/Yoshimi presets. Er staan er al een stuk of 30 in maar hopelijk worden dat er snel meer. Mooi dat het zo leeft, en niet alleen op dat vlak. Zowel ZASFX als Yoshimi worden actief onderhouden, Yoshimi in het bijzonder. De ontwikkelaar van Yoshimi is druk bezig met een volledig nieuwe MIDI implementatie waardoor de zgn. MIDI jitter tot een minimum beperkt zou moeten worden. Daarnaast is er een grote kans dat hij de NRPN‘s van ZASFX waarmee je de effecten real-time kan aanpassen gaat vervangen door CC‘s en heeft hij inmiddels wat test-versies geüpload met ondersteuning voor JACK session management.
Captain, we’re entering the blogosphere…
Mijn blog is inmiddels toegevoegd aan de planet van ubuntu-nl.org en aan die van linuxweblogs.nl. Bedankt SWAT van Ubuntu-NL en Jos van linuxweblogs.nl!
Wordt 2010 dan eindelijk het jaar waarin ik, AutoStatic, ga doorbreken in de blogosphere? Na meer dan 10 jaar zwoegen?