Mastering with 64studio
Un très bon article sur la phase de mastering.
Un très bon article sur la phase de mastering.
Mise en garde: Il s’agit uniquement d’une note ‘brute’ réalisée dans un but d’aide-mémoire suite à mon installation de la 64Studio sur mon PC MAO (XP2200+ / Audiophile 2496 / Carte graphique chipset NVIDIA en Dual Screen) et en aucun cas d’un tutorial. Que le débutant me pardonne de ne pas détailler mais à force de faire de l’informatique, on en oublie la musique…
Suite à la lecture des priorités IRQ sur linuxMAO:
TODO: essayer de mesurer si cela a vraiment un effet…
Télécharger et graver l’ISO du CD d’install de 64studio qui se trouve sur http://64studio.com/.
Booter sur le CD et faire l’installation en mode expert comme une Debian classique.
Via aptitude, installer le package console-common qui bizarrement n’est pas installé
# apt-get install console-common
Lancer la configuration du clavier pour la console
# dpkg-reconfigure console-data
Récupérer les drivers sur http://www.nvidia.fr/object/linux_fr.html
Selon la version du noyau, récupérer le compilateur Gcc 4.0 sur le snapshot Debian sur http://snapshot.debian.net/. En effet, le kernel (2.6-17-2) par défaut est compilé en gcc-4.0 et nécessitera donc un module nvidia compilé en 4.0. En revanche, la version 2.6-18-2 est compilé en 4.1 donc avec le compilateur gcc inclu dans la version 64Studio.
Si vous utilisez un kernel 2.6-17-2 (celui d’origine dans la stable 1.0)
# export CC='gcc-4.0'
Compiler le driver nvidia
# ./NVIDIA-Linux-x86-1.0-9746.pkg1.run
Modifier le fichier /etc/apt/source.list pour récupérer les paquets de la 64studio stable et de Debian Etch (ce qui permet d’installer d’autres applications hors audio) en ajoutant:
deb http://apt.64studio.com/64studio/ stable main deb http://ftp2.fr.debian.org/debian etch main non-free contrib deb-src http://ftp2.fr.debian.org/debian etch main non-free
Pour deux écrans LCD 17 pouces sur une seule carte DualHead à base de chipset Nvidia
Je détaille pas, l’affichage pour moi c’est vraiment le côté obscur, récupérez mon fichier xorg.conf que j’ai mis une éternité à configurer!
Pour suivre les conseils lus ici et là:
Editer /boot/grub/menu.lst et ajouter noapic et nolapic en fin de ligne kernel
kernel /boot/vmlinuz-2.6.18-2-multimedia-486 [...] noapic nolapic
Cela désactive l’Apic qui attribue les IRQ.
Possibilité de désactiver aussi ACPI [gestion avancée de l'alimentation] qui se place sur l’IRQ 9, prioritaire sur une machine non APIC.(ajouter acpi=off)
TODO: Voir si c’est réellement important et significatif
Configurer Jack comme sur le screenShot
Lui donner entre autre une priorité de 72 au lieu de 0 par défaut (72 parce que c’est joli)
TODO: comprendre la valeur.
Carte Via (chipset audio intégré à la carte mère)
Carte M-Audio Audiophile 2496 PCI sur l’IRQ 10
A partir du kernel 2.6 dans Debian, utiliser plutot le répertoire /etc/modprobe.d/ pour placer les fichiers de modules.
Pour éviter les embrouilles:
renommer le fichier modules.conf en modules.conf.off
renommer le répertoire /etc/modutils/ en /etc/modutilsoff/
Dans /etc/modprobe.d/, créer un fichier sound qui contient:
# ALSA portion (chargement du module/driver) alias snd-card-0 snd-via82cxxx # Options du module options snd-card-via82cxxx index=0 # ALSA portion (chargement du module/driver) alias snd-card-1 snd-ice1712 # Options du module options snd-card-ice1712 index=1
Ce programme permet d’éviter les bloquages du PC que peut causer un freeze d’un processus temps réels.
Télécharger la dernière version sur http://www.notam02.no/arkiv/src/ dans /usr/src.
# tar xvzf das_watchdog # cd das_watchdog/ # make # cp das_watchdog /usr/local/sbin/
Créer ensuite un script ‘das_watchdog‘ (Chmod 755) dans /etc/init.d.
Mettre à jour les modes rc.d via
# update-rc.d das_watchdog defaults
Et lancer le daemon:
# /etc/init.d/das_watchdog start
Faire un test
# /usr/src/das_watchdot/test_rt
Si une fenêtre apparaît, c’est OK.
Malgré mes tentatives d’installer Fluxbox qui est bien plus adapté selon moi à une station audio performante, grosses instabilités avec la carte graphique qui plante l’affichage de manière imprévisible. Ne se produit pas sous Gnome (TODO: WHy ?)
Les kernels 32 bits proposés sont tous lowmem enabled… donc les 1Go de RAM sont vus comme 896Mb (Cf dmesg). Dommage pas pas de solution pour l’instant…
Je suis bluffé: bien paramétré comme indiqué, j’ai pu faire tourner le proc à 100% (sur une extraction d’archive de taille importante), tout en faisant tourner Ardour, Hydrogen et Qsynth, en enregistrant dans Ardour, sans aucun Xrun. Impressionnant!
Pour mémoire, information, téléchargement, etc…
Cette note explique rapidement comment mettre en place un serveur audio (MPD), puis diffuser le flux au format OggVorbis sur Internet (Icecast2). Cette solution permet donc de réaliser facilement une webRadio peu gourmande en ressources, dont les usages variés raviront le musicien: diffusion de musique sur plusieurs PC aux 4 coins du monde, diffusion de compositions…
MPD (Music Player Daemon) est un comme son nom l’indique un lecteur/serveur audio qui fonctionne sous forme de daemon (à la manière du serveur de mail exim4 par exemple, c’est à dire en tâche de fond). Cette solution remplacera avantageusement votre vieux lecteur xmms car sans interface graphique, la performance est optimale et sans fioriture. MPD se contrôle donc au moyen d’un client, qui va lui envoyer des commandes. Il existe plusieurs clients, certains graphiques, certains en console. J’utilise personnellement ncmpc, interface ncurse, légère, en mode texte, rapide et simple à utiliser (et tout au clavier!).
Cette première partie détaille la configuration de MPD en tant que serveur audio autonome sur un seul ordinateur. Cela permet de lire l’ensemble de vos fichiers audio au format ogg ou mp3, d’écouter des webradios et bien plus encore…
Le package mpd est dans toutes les distributions et s’installe facilement avec aptitude par exemple sous Debian.
Editer le fichier /etc/mpd.conf, en changeant les paramètres
music_directory
playlist_directory
et éventuellement db_file, log_file, error_file et pid_file, surtout si vous prévoyez d’utiliser mpd dans un compte non root.
Par exemple chez moi:
music_directory "/mnt/share/mp3" playlist_directory "/mnt/share/mp3/playlist" db_file "/mnt/share/mp3/.mpd/tag_cache" log_file "/mnt/share/mp3/.mpd/mpd.log" error_file "/mnt/share/mp3/.mpd/errors.log" pid_file "/mnt/share/mp3/.mpd/pid"
Eventuellement précisez quelle carte audio utiliser si vous en avez plusieurs:
audio_output {
type "alsa"
name "Via Chip"
device "hw:1,0" # optional
format "44100:16:2" #optional
}
mixer_type "software"
state_file "/var/lib/mpd/state"
NB: pour plus de sécurité, vous pouvez décommenter et modifier le paramètre user plus loin dans le fichier de configuration (mais dans ce cas, vous devez vous assurer que le user saisi a les droits d’écritures sur les fichiers définis précédemment (de log par exemple).
La première fois, il faut demander de créer la base de données du serveur, à partir de la commande:
# mpd --create-db
Pour lancer mpd:
# /etc/init.d/mpd start
Normalement, mpd se lancera à chaque démarrage du système, comme n’importe quel daemon.
J’ai choisi ncmpc (la version ncurse de mcp, pur produit en ligne de commande), qui s’installe à partir du package Debian du même nom.
ncmcp se lance dans un terminal via la commande:
~ ncmpc
Une fois lancé, il se connecte directement au serveur mpd (sur le port 6600 par défaut).
Je ne détaille pas, les principales commandes de ncmcp sont accessibles via la touche F1.
En synthèse l’utilisation est simple: votre bibliothèque musicale est accessible via la touche F3. Vous ajoutez des fichiers et des répertoires à votre playlist en vous déplaçant dans vos fichiers, puis en les sélectionnant à l’aide de la touche Espace.
La playlist est accessible via la touche F2. Vous pouvez sauvegarder une playlist en appuyant sur S. Vous pouvez lancer une recherche dans tous vos fichiers via la touche F5.
A ce stade, MPD émet un flux en local (sur vos enceintes). Nous allons le configurer pour qu’il émette également un flux oggVorbis en streaming.
Simplement modifier la section nommée SHOUT STREAMING du fichier /etc/mpd.conf:
audio_output {
type "shout"
name "Ma station"
host "mon hostname"
port "8000"
mount "/stream.ogg"
password "monpassword"
# quality "7.0"
bitrate "128"
format "44100:16:1"
#
# Optional Paramters
user "source"
description "Description de la Radio"
genre "Jazz"
} # end of audio_output
Laisser le nom ‘source’ pour le user (à priori).
Au niveau du hostname, j’ai mis le nom du serveur, sur le réseau interne (son IP privée même…).
Le mot de passe est important, vous devrez le reporter dans Icecast (à priori).
Au passage, décommentez également la ligne 198:
password "XXXXXXX@read,add,control,admin"
Cela permet de protéger l’accès à MPD avec un mot de passe. Du coup, vous pourrez vous connecter au serveur via la commande:
~ ncmpc -P XXXXXXXX
Icecast2 permet de diffuser le flux généré par le serveur audio MPD à tout l’internet, en streaming. Icecast2 permet de diffuser un flux »source », mais également de relayer une autre station (relay, non expliqué et non mis en place ici).
Installer le package icecast2 via aptitude.
# vim /etc/icecast2/icecast.xml
Le fichier de configuration est en XML, c’est un peu touffu, mais facile à comprendre à la lecture.
Quelques paramètres que j’ai changé:
Ligne 3: Nombre de clients pouvant se connecter simultanément. J’ai limité, ayant un petit serveur peu puissant à la maison.
<clients>5</clients>
Ligne 25: reportez le mot de passe ‘monpassword’ de la source (mpd).
<source-password>monpassword</source-password>
Ligne 31: mot de passe admin: j’ai mis celui défini dans mpd pour le compte admin (XXXXXXXX), mais je pense qu’il peut être différent.
<admin-password>passwordAdminIcecast</admin-password>
Ligne 45: le hostname du serveur: j’ai mis mon adresse IP fixe
<hostname>xx.yy.zz.ww</hostname>
Pour lancer Icecast2 au démarrage, en tant que daemon, il suffit d’éditer /etc/default/icecast2
et de modifier l’option ENABLE=true à la fin du fichier.
Stoppez icecast2 s’il est lancé pour recharger le fichier de configuration.
#/etc/init.d/icecast2 stop
Sous root, faire
#/etc/init.d/mpd start #/etc/init.d/icecast2 start
Pour créer la bibliothèque multimedia de mpd, faire:
# mpd --create-db
Sur la base du paramétrage précédent, le flux audio est accessible à l’adresse:
http://hostname_publique:8000/stream.ogg
N’importe quel lecteur multimédia (xmms, vlc, Winamp…) sera capable de lire ce flux.
L’interface d’Icecast2 est accessible à l’adresse:
http://hostname_publique:8000
Dans la partie Admin, vous pouvez vous logguer en saisissant les identifiants du compte admin définis dans Icecast (admin / passwordAdminIcecast dans mon exemple).
Il suffit d’arrêter les daemons, sous root:
# /etc/init.d/icecast2 stop # /etc/init.d/mpd stop
http://www.musicpd.org
http://www.icecast.org/
http://blog.effraie.org/post/2006/11/06/MPD-et-icecast2-Webradio-ou-lecteur-ultime