Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]



Voilà : FFADO et jack sont installés, on aura pris soin au passage de configurer l'accès temps réel pour les applications, il va maintenant falloir tester sa carte son firewire, et vérifier par la même occasion que le reste du système est configuré correctement pour son utilisation.



Une fois FFADO installé, il est possible que vous rencontriez quelques problèmes pour mettre la carte en route. Ceci dépend en grande partie de la distribution linux que vous utilisez, certaines étant connues pour être plus "prêtes à l'emploi" que d'autres (voir le portail du débutant).
La méthode conseillée est donc de vérifier avec les outils de diagnostiques fournis par FFADO que celui-ci est fonctionnel et reconnait votre carte. Une fois d'éventuels problèmes réglés du coté firewire, vous pourrez songer à lancer jack.

Les outils de diagnostique


ffado diagnotic utility

ffado-diag

Ce petit programme très pratique (de Pieter Palmers) analyse le bon fonctionnement des modules du noyau, ce qu'il faut chercher dans son blabla :
  • old 1394 stack active..... True %%% ''...ou au choix...'' %%%new 1394 stack active..... True
    [PASS] Kernel modules present and correctly loaded.
    les versions de FFADO égales ou supérieur à 2.0.1 seulement sont capables d'utiliser le nouveau kernel stack
    si aucun des deux stack n'est activé (ou si au contraire les deux le sont) ce n'est pas bon signe !
  • /dev/raw1394 node present. True %%%/dev/raw1394 permissions.. True
    [PASS] /dev/raw1394 node present and accessible.
    avec "l'ancien stack" l'accès en lecture/écriture au fichier /dev/raw1394 doit être possible par l'utilisateur normal (non-root)
    si ca n'est pas le cas, voir plus bas !

ffado test utility

Cet utilitaire (de Daniel Wagner et Pieter Palmers) à plusieurs options, voici l'une d'entre elles :
ffado-test ListDevices
cette commande liste les cartes son détectées par FFADO, exemple de retour pour ma carte son :
=== 1394 PORT 0 ===
Node id  GUID                  VendorId     ModelId   Vendor - Model
0       0x000a9200c7021222  0x00000A92  0x00010066   Presonus  - PreSonus FIREPOD
1       0x0008000800080182  0x00000800  0x00000000   Linux - ohci1394  -
no message buffer overruns


gscanbus

Cet utilitaire peut servir au déboggage d'une carte son firewire, mais il est un peu ancien et a été remplacé Image par "ffado test utility" (commande : ffado-test ListDevices).
Site officiel : https://github.com/BackupTheBerlios/gscanbus/ Image .

le mixer ffado

Si votre carte est entièrement supportée par FFADO (full-support), vous devriez aussi pouvoir vous servir du mixer FFADO pour en vérifier le bon fonctionnement. Si votre carte est (reported to work) on peut essayer de lancer dans un terminal la commande:
ffado-dbus-server

Cette commande permettrait également de faire marcher plusieurs cartes affichées comme non supportées. Puis relancer dans le terminal ou graphiquement:
ffado-mixer

Si l'on obtient toujours un message d'erreur du type "ERROR : could not communicate with DBus" ou autre on peut se reporter à: J'ai toujours un message d'erreur

Configurer le système

  • Quel stack sur mon systeme ? ancien ou nouveau ?
    Avec l'introduction du nouveau stack firewire, les noms des modules ont changé :
    • ancien stack firewire : ieee1394 (module de base), ohci1394 (pilote), raw1394 (module d'accès)
    • nouveau stack firewire : firewire-core (module de base), firewire-ohci (pilote) (raw1394 est remplacé par firewire-core)

    Pour savoir quels modules firewire sont chargé sur votre système, utilisez les commandes suivantes :
    • ancien stack firewire :
      lsmod | grep 1394 %%%raw1394                45184  16 %%%ohci1394               50868  9 dv1394 %%%ieee1394              122216  3 raw1394,dv1394,ohci1394
    • nouveau stack firewire :
      lsmod | grep firewire %%%firewire-core ... %%%firewire-ohci ...
maintenant que vous savez à qui vous avez affaire, reportez-vous sur le paragraphe concerné :

configuration :

l'ancien stack firewire


le module raw1394

si le module raw n'est pas activé par defaut, essayez le le lancer à la main, en super utilisateur :
modprobe raw1394

  • si cela fonctionne, il vous faudra ensuite chercher dans la documentation de votre distribution pour ajouter son chargement automatiquement au démarrage du système
  • si vous obtenez "Module raw1394 not found.", il vous faudra installer un noyau compatible (option raw, ref manquante) et vérifier que le paquet libraw est installé.

vérifiez les droits du fichier /dev/raw1394, celui-ci doit être accessible en lecture et écriture par votre utilisateur, par exemple chez moi raw1394 fait partie du groupe audio, ainsi que mon utilisateur :
ls -al /dev/raw1394

exemple de retour :
crw-rw---- 1 root audio 171, 0 2008-10-21 00:50 /dev/raw1394

  • pour ajouter votre utilisateur au groupe audio (en super utilisateur):
    gpasswd -a votre_user audio
  • pour modifier les droits du fichier lui-même, vérifiez la-aussi avec la documentation de votre distribution, car les changements apportés à la main ne seront pas forcément pris en compte au prochain re-démarrage. La solution la plus simple est de modifier/d'ajouter une "règle udev?" pour la création du fichier /dev/raw1394. Exemple sous gentoo (en super utilisateur) :
    echo 'KERNEL=="raw1394*",GROUP="audio",MODE="0660"' > /etc/udev/rules.d/40-firewire.rule
    ; sous d'autres distributions regarder la doc sur la création de règles udev et vérifiez qu'il n'en existe déjà pas une grace à la commande :
    grep -r raw1394 /etc/udev/rules.d

le module ieee1394

le module ieee1394 (module de base) est normalement chargé automatiquement aux cotés du module-pilote firewire utilisé. Ce dernier est en général ohci1394, bien qu'il me semble que ca ne soit pas le seul, en particulier un certain yenta... (à completer par vos expériences). Bref prennons ohci1394 pour l'exemple, c'est lui qui se greffe sur, et occupe l'IRQ de votre carte son.
Si ce dernier n'est pas chargé automatiquement par le système, il peut s'agir de différents problèmes :

module non présent dans le noyau :
Certaines distributions ne proposent pas le module firewire demandé (ohci1394, yenta ou autre ieee1394), pour vérifier le mieux est encore de chercher/poser la question sur le forum sur le matériel et les pilotes.
Vous trouverez aussi des distributions prêt à l'emploi pour la MAO et le firewire dans le coin du débutant
Et si vous compilez votre noyau vous-même, rendez-vous sur la page Tuto Compiler un noyau Temps-Réel qui aborde cette partie de la configuration.

module présent mais non chargé :
pour vérifier cela, la commande suivante nous donne un indice :
cat /proc/interrupts

exemple de retour :
...
  0:        130          0   IO-APIC-edge      timer
  1:          2          0   IO-APIC-edge      i8042
  8:          0          0   IO-APIC-edge      rtc0
  9:          0          0   IO-APIC-fasteoi   acpi
 12:          3          0   IO-APIC-edge      i8042
 16:  153812695          0   IO-APIC-fasteoi   i915, uhci_hcd:usb3, __ohci1394__
 17:      48180          0   IO-APIC-fasteoi   ehci_hcd:usb2, uhci_hcd:usb5
 18:          0          0   IO-APIC-fasteoi   ehci_hcd:usb1, uhci_hcd:usb7
 19:          0          0   IO-APIC-fasteoi   uhci_hcd:usb6
 20:      23606          0   IO-APIC-fasteoi   eth0
 21:      25830          0   IO-APIC-fasteoi   sata_sil, uhci_hcd:usb4
...

Dans cet exemple, le module ohci1394 partage l'IRQ 16 avec quelques autre modules, il est donc bien chargé, pas de problème ici ;-)
pour vérifier d'une autre manière (en super utilisateur :
lspci -v

exemple de retour :
...
07:04.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306 Fire II IEEE 1394 OHCI Link Layer Controller (rev 46) (prog-if 10 [[OHCI])
Subsystem: VIA Technologies, Inc. VT6306 Fire II IEEE 1394 OHCI Link Layer Controller
Flags: bus master, stepping, medium devsel, latency 32, IRQ 16
Memory at f0300000 (32-bit, non-prefetchable) [[size=2K]
I/O ports at 3000 [[size=128]
Capabilities: [[50] Power Management version 2
__Kernel driver in use: ohci1394__
__Kernel modules: ohci1394__
...

Dans cet exemple encore, pas de problème à vue de nez

le nouveau stack firewire


Les commandes du paragraphe précédent s'appliquent aussi à la configuration du nouveau stack firewire, aux quelques différences près ci-dessous ::
  • Pour utiliser le nouveau module firewire du noyau (dénommé Juju), il vous faudra vérifier que vous utilisez libraw1394 >= 2.0.5 et un kernel >= 2.6.32, ainsi qu'une version de FFADO compatible (>= 2.0.1 compilée avec support Juju)
  • c'est le fichier /dev/fw1 (et fw2 si vous avez une deuxième carte-son) qui doit être accessible en lecture par votre utilisateur. Pour cela il suffit d'ajouter votre utilisateur au groupe "video". (note pianolivier : je n'ai pas encore réussi à créer une règle udev pour donner les droits de lecture au groupe "audio", comme pour /dev/raw1394 plus haut)
    Pour ajouter votre utilisateur au groupe "video" (en super utilisateur) :
    gpasswd -a votre_user video

    Pour verifier que votre utilisateur fait bien parti du groupe video :
    $ groups
    jeanmichmuch adm dialout cdrom audio video plugdev lpadmin admin sambashare



J'ai toujours un message d'erreur !

à partir de là, si ffado-diag ou l'une des manipulations précédentes vous donne toujours un message d'erreur, les étapes à suivre sont :

Je n'ai pas de message d'erreur, aller plus loin

Si tout c'est bien passé, il ne vous reste plus qu'à lancer jack par la manière de votre choix : QJackCtl, ladish etc.
Si vous ne les connaissez pas encore, vous pourrez vous familiariser avec les options de jack sur la page jack > QJackCtl > configuration.
Si vous avez déjà lancé jack avec succès sur une autre carte son, alors les seuls modifications qu'il vous faudra peut-être apporter sont le "pilote > firewire" et le taux d'échantillonnage, voici un exemple de configuration à adapter :
jackd -P70 -dfirewire -r96000 -p256 -n3

exemple de configuration JACK/FFADO avec QJackCtl
exemple de configuration JACK/FFADO avec QJackCtl

en ce qui concerne les recherches de basse latence, il est déconseillé de réduire le nombre d'échantillons à moins de 3 x 64 (voir ce sujet du forum
Nous rappelons que les manipulations habituelles pour donner aux applications un accès temps réel restent de circonstances avec FFADO :


sources :




[+]

Documentation [Afficher / Cacher]

Faire un don
[Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

olinuxx, 11:48, ven. 15 mars 2024: Bonjour et bienvenue à Jerry cool
calixtus06, 18:03, mer. 13 mars 2024: Bonjour et bienvenue à tanguero :-)
olinuxx, 11:01, dim. 10 mars 2024: Bonjour et bienvenue à lolo cool
bda, 16:59, sam. 09 mars 2024: Chapeau pour l'édito. Vous êtes au top les gars :-)
allany, 07:20, jeu. 07 mars 2024: Ça ne fait jamais de mal, c'est l'éditorial ! [Lien]
olinuxx, 19:52, mer. 06 mars 2024: Bonjour et bienvenue à TrkNrk cool
calixtus06, 11:17, mar. 05 mars 2024: Bonjour et bienvenue à D752 :-)
calixtus06, 18:59, lun. 04 mars 2024: Bonjour et bienvenue à Hborsa et Adjudandouille :-)
olinuxx, 18:34, jeu. 29 Feb 2024: Bonjour et bienvenue à anto45500 cool
jujudusud, 23:38, mar. 27 Feb 2024: Venez participer à la joute numéro 17 : [Lien]
calixtus06, 18:36, jeu. 22 Feb 2024: Bonjour et bienvenue à nikartri et rckloar :-)
calixtus06, 10:15, mer. 14 Feb 2024: Bonjour et bienvenue à smonff, Alphascorpii, tadumtss et letoII :-)