2006-11-28

 

Nytt Linuxforum

Numera finns det ett forum för att ställa frågor om ljudproduktion i Linux, på svenska. Hoppas att så många som möjligt söker sig dit. Det finns på tidningen Studios forum.

Vi ses där. :)

2006-11-21

 

VST i Ardour (ej färdig)

Denna instruktion är än så länge inte universell. Den riktar sig främst till Ubuntu-användare. Därmed inte sagt att det inte går att använda sig av den för att få en fungerande Ardour2-beta med VST-stöd, men vissa paket-namn för libraries och liknande kan skilja sig åt. Jag kommer att skriva en mer generell senare, men jag vill bara få ut den här först, så att ni kan se att det kan göras.

Frågor kan ställas i kommentarfunktionen om det är något som inte fungerar.


INNAN DU BÖRJAR

För att bygga Ardour 2 beta med VST-stöd behövs följande verktyg (minst):

gcc/g++ 3.x
scons 0.96
python 2.3.4
gettext 0.12.1
pkgconfig 0.8.0
libtool

Dessutom behövs ett antal kodbibliotek (libraries):

JACK 0.100
XML2
art_lgpl 2.3.16
samplerate 1.0
raptor
lrdf
glib 2.10
GTK+ 2.8 (plus andra GTK krav som pango, ATK och Cairo)
libgnomecanvas
sndfile 1.0.16
liblo
boost
wine-dev

Eftersom jag inte har dykt in i det med avsikten att dokumentera från början så kommer jag inte ihåg vilka kodbibliotek som jag installerade. Dessutom kan det variera vilka man måste installera beroende på vad som finns installerat på maskinen innan man börjar. Därför är det svårt att få med allt. Hoppas att ni har överseende med det i den här preliminära versionen.


VST SOFTWARE DEVELOPMENT KIT

Dessutom måste man ha VST SDK (Software Development Kit) 2.3 för att få in rätt stöd.

Detta kan laddas hem ifrån http://ygrabit.steinberg.de/~ygrabit/public_html/index.html. Klicka på länken där det står: "VST Audio Plug-Ins SDK 2.4 Revision 1"

Läs och klicka därefter på länken som lyder: "Proceed to read the VST PlugIns SDK Licencing Agreement"

Läs sedan igenom licensvillkoren och klicka längst ner på sidan där det står "I AGREE (Download Version 2.3)".

Fyll i förnamn, efternamn, epost och kryssrutan "I agree Licensing Agreement*".

Klicka på "Send form". Ladda sedan ner VST SDK 2.3 och spara undan det på lämpligt ställe, där ni helst ska kunna hitta det.




Dessutom behöver man alltså källkoden till Ardour 2 (i skrivande stund är den senaste Ardour 2.0 beta 8) som man hämtar här:

http://ardour.org/releases

och packar upp den i katalogen /usr/src/ med

$ cp ardour-2.0beta8.tar.bz2 /usr/src/
$ cd /usr/src/
$ tar jxvf ardour-2.0beta8.tar.bz2


VST-STÖD

I källkodsbiblioteket för Ardour (/usr/src/ardour-2.0beta8/) finns en katalog som heter libs/fst/

Kopiera in VST SDK 2.3 i /libs/fst katalogen.

unzip vst_sdk2_3.zip
unzip vstsdk2.3.zip
cp -R vstsdk2.3/ /usr/src/ardour-2.0beta8/libs/fst/

Sen skapar vi en katalog:

cd /usr/src/ardour-2.0beta8/
mkdir /libs/fst/vst

Sen kopierar vi in alla *.h (header-filer) från libs/fst/vstsdk2.3/source/common/ till /libs/fst/vst med kommandot:

cp libs/fst/vstsdk2.3/source/common/*.h libs/fst/vst/

För att kompilera Ardour använder vi programmet scons. För att skilja programmen åt installerar vi Ardour i /usr/local/ genom att använda PREFIX=/usr/local såhär:

scons VST=1 PREFIX=/usr/local

När allt har konfigurerats klart och det ser okej ut, kör:

scons install

Det kan hända att det inte går igenom över huvud taget, eftersom vissa kodbibliotek saknas eller liknande. Oftast kan man få en hint om detta via felmeddelandet. Någon detaljerad genomgång blir det inte i detta temporära dokument. Vi önskar lycka till ändå!


TESTA

Kör installationsprogram för VST-plugins via Wine, lägg .dll-erna i en katalog dit sedan miljövariabeln VST_PLUGINS sedan pekar, t ex:

export VST_PLUGINS=/home/username/audio/vst

kör igång ardour, och räkna med att det kan gå lite långsamt att starta upp. =)

/usr/local/bin/ardourvst &

2006-11-14

 

Till läsarna

Eftersom det numera finns några människor som läser den här bloggen måste jag ta tillfället i akt att fråga:

Vad vill ni se för information här?

Finns det något vitalt som fattas er, som ni gärna skulle ha haft när ni först började rota runt efter information om ljudproduktion i Linux?

Någon fördjupning på några specifika områden?

Har ni någon kunskap som ni vill bidra med?



Kommentarer är gratis och kritik/beröm/förslag mottages tacksamt.

MVH Mathias

 

FireWire-ljudkort (ofärdig)

Notera: Detta är inte ett färdigt dokument. Det kommer att uppdateras när tid och ork finnes. Det kan också vara värt att påpeka att det inte är 100% säkert att systemet är livskraftigt efter att ha provat instruktionerna nedan och misslyckats. Eller ens lyckats.

Att köra FireWire-ljudkort under Linux är i nuläget relativt experimentellt. Det finns, mig veterligen, inga enkla rättframma sätt att få FireWire-ljudkort att fungera bara sådär, genom att helt enkelt plugga in det och hålla tummarna.

FireWire-ljudkort är som namnet antyder ett ljudkort som man pluggar in i sin FireWire-, a.k.a. IEEE 1394-port. Det är sålunda ett samarbete mellan Linux ljud-community och snubbarna som utvecklar FireWire-grejer. Det är här det uppstår vissa problem. Man måste vara både ljud-nörd och riktig Linuxprogrammeringsnörd med FireWire som intresse för att komma någon vart. Det säger sig självt, antalet sådana människor är begränsat.

Hur som helst, det initiativ som finns till buds idag är "FreeBoB", vilket är en fri implementation för de enheter som kör BridgeCo:s Enhanced BreakOut Box (BeBoB) firmware. Inte alla med BeBoB stöds idag, av den enkla anledningen att de som idag utvecklar FreeBoB helt enkelt inte har råd eller möjlighet att testa alla enheter själva.

De ljudkort som i skrivande stund stöds är:



Märk att detta bara är ljudkorten, alla enheter som stöds, inkl någon Mackie-mixer, en Stanton-pryl och diverse FireWire-extension boards står listade på http://freebob.sourceforge.net/index.php/List_of_Supported_Devices


INSTALLATION

Vad som krävs är utvecklingsversioner av alla bibliotek och allt som ingår i FreeBoB eftersom det fortfarande är så nytt att det inte finns färdiga paket att bara installera.

På systemet måste subversion, automake, autoconf, libXML, ALSA och andra paket finnas installerade. Du kommer även att behöva alla utvecklingspaket (xxx-dev eller xxx-devel) för att kompilera från källkod.

På ett APT-baserat system kan du (som root) köra:

# apt-get install subversion automake autoconf libtool libxml2-dev libcap-dev libasound2-dev


LIBRARIES

FreeBoB kräver ett antal libraries för att fungera, och nedan visas hur man kan installera dessa.


libraw1394:

FreeBoB kräver senaste versionen av libraw1394, vilken kan laddas hem med kommandona:

$ cd /usr/src/
$ svn co svn://svn.linux1394.org/libraw1394/trunk libraw1394-svn

För att systemet ska funka måste man ersätta jackd och andra filer, skriv därför:

$ which jackd
/usr/bin/jackd

och ersätt DITT_PREFIX i raderna nedan med den första katalogen (/usr) i sökvägen till jackd ovan:

$ cd libraw1394-svn
$ autoreconf -f -i -s
$ ./configure --prefix=DITT_PREFIX

Kör sedan:

$ make
$ sudo make install

för att installera.


libiec61883:

Samma procedur gäller för libiec61883, även det ett krav för att få FreeBoB att fungera. Skriv som nedan och byt ut DITT_PREFIX igen:

$ cd /usr/src/
$ svn checkout svn://svn.linux1394.org/libiec61883/trunk/ libiec61883
$ cd libiec61883
$ autoreconf -f -i -s
$ ./configure --prefix=DITT_PREFIX
$ make
$ sudo make install


libavc1394:

och slutligen samma visa för libavc1394:

$ cd /usr/src/
$ svn co https://svn.sourceforge.net/svnroot/libavc1394/trunk libavc1394
$ cd libavc1394
$ ./bootstrap
$ ./configure --prefix=DITT_PREFIX
$ make
$ sudo make install


FREEBOB-STÖD I KÄRNAN

För att fortsätta ska du se till så att kernel-modulerna för IEEE1394 är laddade. Kör:

$ sudo modprobe ohci1394
$ sudo modprobe raw1394

och kolla så att enhetsfilen /dev/raw1394 skapades av udev genom att skriva:

$ ls -al /dev/raw1394

Om den inte finns, kan du skapa den manuellt:

$ sudo mknod -m666 /dev/raw1394 c 171 0

Exakt vad detta kommandot gör kommer vi inte att gå in på, bara att det fungerar.


LIBFREEBOB

Nu har vi lagt grunden för att installera libfreebob. Det är dags att ta hem källkoden. Skriv (och byt ut DITT_PREFIX mot det som du fick ovan):

$ cd /usr/src/
$ svn co https://svn.sourceforge.net/svnroot/freebob/branches/libfreebob-1.0 libfreebob
$ cd libfreebob
$ autoreconf -v -i -s
$ ./configure --prefix=DITT_PREFIX
$ make
$ sudo make install


TESTA KONFIGURATION

Det går att testa konfigurationen genom att köra en av de testfiler som finns i libfreebob. Plugga i ditt FireWire-ljudkort och kör:

$ cd libfreebob
$ tests/test-freebob discover

Om allt gick bra, kommer du att få en rapport-listning från ditt ljudkort. Notera port och nod (de första raderna).


KOMPILERA JACK

För att få jack att inkludera FreeBoB-stöd måste även detta installeras från källkod:

$ cd /usr/src/
$ svn co http://subversion.jackaudio.org/jack/trunk/jack jack

När JACK konfigureras måste vi definiera en default temporär-katalog. Denna får vi genom att köra:

$ jackd --version

och kolla vad vi får. Jag får jackd version 0.101.1 tmpdir /dev/shm protocol 15 vilket innebär att jag har temporärkatalogen /dev/shm och ska lägga in den istället för TMP_KAT nedan. Samma utbyte för DITT_PREFIX som i sektionerna ovan:

$ cd jack
$ ./autogen.sh --prefix=DITT_PREFIX --with-default-tmpdir=TMP_KAT

I slutet av listningen borde det finnas en rad liknande:

Build with FreeBob support............................ : true

Om det står "false" istället, är det något problem. Kolla då ytterligare i konfigurations-listningen efter någonting liknande:

checking for LIBFREEBOB... no

Då är det dags att börja från toppen från detta dokument.

Om allt funkar fram till hit, med FreeBoB-stöd och allt, kör:

$ make
$ sudo make install

Testa installationen med att köra:

$ jackd -d freebob

Om det inte fungerar, kolla om du använder rätt port som noterat. För den andra porten, kör:

$ jackd -d freebob -d1

För bra resultat bör du köra jack som:

$ jackd -R -d freebob -p 128

eller något liknande. Se Jack-avsnitten för mer information om Jack.



Delar snodda och översatta ifrån källsidan för FreeBoB.

This page is powered by Blogger. Isn't yours?