Archive pour la catégorie ‘64Studio & Audio’

FluidSynth en ligne de commande

Mardi 28 avril 2009

fluidsynth –audio-driver=jack

puis

> load gmkit-titanic_200_GM_GS_ver_12.sf2 0 0

Compiler et optimiser un noyau temps réel

Mardi 28 avril 2009

Compiler noyau

Objectif: à partir des sources d’un kernel multimédia (donc déjà patché temps réel), le compiler en activant les modules nécessaires au matériel présent. C’est utile par exemple pour activer des options qui n’auraient pas été activées, et optimiser ainsi le noyau pour son propre matériel.

Avant toute chose, faites-vous une culture en suivant la formation d’Alexis Delattre sur la compilation et la configuration d’un noyau Linux:

http://people.via.ecp.fr/~alexis/formation-linux/config-noyau.html

Récupérer les sources du noyau multimédia

Télécharger les sources d’un noyau temps réel, par exemple celui de la distribution 64Studio (2.6.17)

http://archive.64studio.com/pool/main/l/linux-2.6/linux-source-2.6.17_2.6.17-4_all.deb

Installer le paquet debian
dpkg -i linux-source-2.6.17_2.6.17-4_all.deb
cd /usr/src
Extraire l’archive tar créée dans /usr/src
tar xvf linux-source-2.6.17_2.17
faire un lien symbolique
ln -sf /usr/src/linux-2.6.17 linux

Récupérer les librairies nécessaires via aptitude
Récupérer les paquets libgtk2.0-dev libglib2.0-dev libglade2-dev ncurses5 et ncurses5-dev
Installer initrd-tools

Configurer le noyau
Copier le fichier de configuration actuel
cp /boot/<fichier config> /usr/src/linux/.config
Lancer la configuration du noyau, avec par exemple gconfig
make gconfig
Changer les différents paramètres du noyau (voir google et les explications de chaque paramètre)
Mettez en dur ou en module les drivers pour vos périphériques
Rappel dans mon cas:
- Changer le type de processeur (K7)
- Activer le support highmem (pour 1Go Ram)
- Charger les drivers ice1712 et via82xx pour les cartes audio
- Ne pas mettre en module le driver rivafb (nvidia), on installera les drivers nvidia par la suite.

Compiler le noyau
make clean
Puis
fakeroot make-kpkg –initrd –append-to-version -xrousse –revision 1 kernel-image

Cela crée un paquet .deb dans le répertoire racine.

Installer le noyau
cd ..
dpkg -i linux-image-2.6.17-xrousse_1_i386.deb

Fichier de configuration de mon kernel : .config
Quelques informations de mon système:
mike@xp2200:/usr/src$ cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 8
model name : AMD Athlon(tm) XP 2200+
stepping : 0
cpu MHz : 1798.503
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow up ts
bogomips : 3598.99

mike@xp2200:/usr/src$ lspci
00:00.0 Host bridge: VIA Technologies, Inc. VT8377 [KT400/KT600 AGP] Host Bridge (rev 80)
00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI Bridge
00:0b.0 Ethernet controller: MYSON Technology Inc SURECOM EP-320X-S 100/10M Ethernet PCI Adapter
00:0d.0 Multimedia audio controller: VIA Technologies Inc. ICE1712 [Envy24] PCI Multi-Channel I/O Controller (rev 02)
00:0f.0 RAID bus controller: VIA Technologies, Inc. VIA VT6420 SATA RAID Controller (rev 80)
00:0f.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.3 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 81)
00:10.4 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 86)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8237 ISA bridge [KT600/K8T800/K8T890 South]
00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 60)
01:00.0 VGA compatible controller: nVidia Corporation NV44A [GeForce 6200] (rev a1)

Astuces Installation 64Studio

Mardi 28 avril 2009

Ajouter les sources unstable de Debian dans Studio64
—————————————————-

Dans apt/sources.list ajouter

deb http://ftp.fr.debian.org/debian unstable main non-free contrib
deb-src http://ftp.fr.debian.org/debian unstable main

Installations complémentaires
—————————–
Installer les packages via Aptitude pour:
- Vim
- Fluxbox
- Mixxx
- Freewheeling

Clavier en azerty en console
—————————-
Par defaut, clavier en qwerty au lancement dans la console
# loadkeys fr

Installer les drivers nvidia et le dual screen
———————————————-
- Installer le compileur gcc 4.0 car le kernel est compilé avec cette version de gcc et refusera de monter le module compilé avec la version de gcc 4.1. La version 4.0 n’est pas dans les sources de Debian unstable.
La trouver sur un snapshot Debian: installer les deb:
cpp
gcc-base
gcc

Config de Thunderbird en partage
———————————
faire un lien symbolique vers le dossier share qui contient tous les emails
ln -sf share/mozilla-thunderbird .mozilla-thunderbird
et modifier éventuellement le fichier profile.ini pour pointer vers le bon profile

Installer la Distribution 64Studio from Scratch

Mardi 28 avril 2009

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…

Avant l’install
- Pour des problèmes d’IRQ, désactiver la carte réseau embarquée et
- Installer une carte réseau PCI sur l’IRQ 5 (slot du milieu sur le PC)
- Mettre la carte son sur le dernier slot (IRQ 10)

Installation
Le CD d’install se trouve sur http://64studio.com/.
Booter sur le CD et faire l’installation en mode expert.

Après l’install
Fix du clavier qwerty
Via aptitude, installer le package console-common qui bizarrement n’est pas installé
Jouer dpkg-reconfigure console-data pour sélectionner le clavier

Install des drivers Nvidia pour Xorg
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

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.
Faire un export CC=’gcc-4.0′ si utilisation de gcc 4.0
Compiler le driver nvidia

Modifier les sources pour Debian Etch
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

Configuration Xorg en Dual Screen (sur une seule carte Dual Head Nvidia)
Pour deux écrans LCD 17 pouces, récupérer mon fichier xorg.conf

Fichiers de config divers
Pour mémoire, information, copie, téléchargement, etc…
/etc/X11/xorg.conf
/etc/apt/source.list
/etc/fstab
/boot/grub/menu.lst

Réglages Audios
Désactivation de l’APIC
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 root=/dev/hda3 ro vga=791 splash=silent noapic nolapic
Cela désactive l’Apic qui attribue les IRQ.
Possibilité de désactiver aussi ACPI (ajouter acpi=off) qui se place sur l’IRQ.
TODO: Comprendre si c’est réellement utile en matière de priorités au niveau des IRQ…

Priorité de Jack
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).

Installer les deux cartes audio
La carte Via Realtek… (chipset audio intégré à la carte mère)
et la carte M-Audio Audiophile 2496

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
et renommer le répertoire /etc/modutils/ en /etc/modutilsoff/
afin de bien les désactiver (dans le doute)
Dans /etc/modprobe.d/, créer un fichier sound qui contient:

# Sndcard via integre
alias snd-card-0 snd-via82xx
options snd-via82xx index=0

# Maudio 2496
alias snd-card-1 snd-ice1712
options snd-ice1712 index=1

# BCF 2000 control
alias snd-card-2 snd-usb-audio
options snd-usb-audio index=2 vid=0×1397 pid=0x00bc

Remarques diverses
64Studio et Fluxbox
Malgré mes tentatives d’installer Fluxbox, grosses instabilités avec la carte graphique qui plante l’affichage de manière imprévisible. Ne se produit pas sous Gnome (TODO: WHy ?)

Lowmem Kernel
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… :-(

Stabilité
Je suis bluffé: bien paramétré au niveau des priorités, 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. Chapeau les développeurs de 64Studio!