électronique & musique

électronique & musique

Raspberry Pi


Installer ChucK sur le Raspberry Pi

J'ai récemment acquis un Raspberry Pi (chez Pi Hut, reçu sous quelques jours), avec l'espoir secret d'en faire une plateforme audio sur laquelle tourneraient mes scripts ChucK et Pure Data entre autres, pilotables en MIDI ou OSC. Etant relativement novice en ce qui concerne Linux, il m'a fallu batailler pour installer ChucK, mais finalement ça fonctionne. Voilà comment je m'y suis pris.

 

 

Première tentative

 

Ma première tentative a consisté à installer ChucK à l'aide d'apt-get (l'outil de gestion des paquets sous Linux) :

 

sudo apt-get install chuck

 

Apt-get télécharge et installe ChucK sans problème. Mais impossible de l'éxécuter :

 

chuck test.ck 
[chuck]: (via rtaudio): no devices found for compiled audio APIs! 
[chuck]: cannot initialize audio device (try using --silent/-s)

 

Apt-get a en fait installé plusieurs éxécutables, dont un certain "chuck-alsa". J'essaie alors de lancer mon script "test.ck" avec celui-ci, et cette fois cela fonctionne :

 

chuck-alsa test.ck

 

Je m'aperçois rapidement que la version installée par apt-get n'est pas la dernière version, et que certaines fonctionnalités manquent. En particulier la communication par OSC ne fonctionne pas, ce qui me pose problème. Je décide donc de tenter de compiler la dernière version de ChucK sur mon Raspberry.

 

 

Compilation de ChucK sur le Raspberry Pi

 

Les fichiers suivants sont nécessaires à la compilation de ChucK :

 

Installation de la librairie ALSA

 

Bien qu'ALSA soit installé et configuré sur le Raspberry Pi, la librairie nécessaire à ChucK n'est pas présente. Après avoir téléchargé le fichier alsa-lib-1.0.25.tar.bz2 dans un répertoire temporaire, lancer la compilation et l'installation de la librairie :

 

tar -xjf alsa-lib-1.0.25.tar.bz2 
cd alsa-lib-1.0.25 

sudo ./configure 
sudo make 
sudo make install

 

Le répertoire /usr/include/alsa est alors créé.

 

Installation de libsndfile

 

Même principe que ci-dessus :

 

tar -xvf libsndfile-1.0.25.tar.gz 
cd libsndfile-1.0.25 
sudo ./configure 
sudo make 
sudo make install

 

Installation de ChucK

 

J'ai suivi les instructions données sur http://chuck.cs.princeton.edu/doc/build/ 

 

tar xvzf chuck-1.3.1.3.tgz 
cd chuck-1.3.1.3/src/ 
sudo make linux-alsa

 

Un nouvel éxécutable est alors créé dans le répertoire en cours. La commande suivante permet d'afficher la version :

 

./chuck -h

chuck version: 1.3.1.3 (chimera)

 

C'est donc bien la dernière version 1.3.1.3 qui est maintenant installée. Après quelques tests, tout semble fonctionner. Il faudra toutefois faire attention à l'utilisation de la CPU qui est relativement élevée. Il sera sans doute bon d'optimiser un peu les scripts, et peut être de lancer ChucK avec un taux d'échantillonnage réduit.

 

Si vous avez installé initialement ChucK avec apt-get, vous pouvez le désinstaller avec :

 

sudo apt-get remove chuck

 

et ensuite installer l'éxécutable nouvellement compilé avec :

 

sudo make install

 

L'éxécutable chuck sera alors copié dans le /usr/bin et pourra être lancé directement depuis n'importe quel répertoire.

 

Dernière chose, par défaut le son est envoyé sur la prise HDMI. Pour activer la sortie sur la prise jack :

 

sudo amixer cset numid=3 1

 

 

Conclusion

 

L'installation avec apt-get est simple et immédiate, mais installe une version un peu ancienne qui manque visiblement de quelques fonctionnalités. La compilation de ChucK et des dépendances nécessaires s'est avérée relativement simple, et conduit à la dernière version du logiciel. Je conseille donc vivement cette voie à tous ceux qui écrivent des scripts un peu évolués.


02/01/2013
0 Poster un commentaire