Modérateurs: Modération Forum Home-Cinéma, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 88 invités

Tout ce qui concerne les logiciels lié au HC sur ordinateur (PC, Mac, Linux...)
Règles du forum
Avant de poster, merci de prendre connaissance des règles du forum : à lire avant de poster

PCHC et Filtrage actif en multicanaux

Message » 01 Sep 2007 19:08

Lansing a écrit:Sur le système Maxio c'est une carte propriétaire avec son propre protocole et un seul driver, Windows ne voit donc que cette carte avec 8, 16, 24 ou 32 pistes suivant le nombre de racks branchés dessus.
La principale limitation c'est la nature même des drivers Asio, la plupart sont mono client ce qui limite de facto les possibilités avec un seul logiciel source.

Patrick

On est bien d'accord. Reste donc à vérifier, comme je le disais, si chez Lynx avec le LStream Loopback Windows ne voit aussi qu'une seule carte avec 12, 18 ou 24 ports.

Mais même dans l'affirmative, il reste à savoir si on peut s'en sortir même avec des cartes de marques différentes. Dans ce cas de figure, du haut de mes faibles connaissances, je me suis demandé si une appli tierce du genre Jack ne pourrait pas aider. J'ai donc envoyé un mail à son développeur, qui me répondra sûrement d'ici lundi.

Jose
Jose Hidalgo
 
Messages: 4973
Inscription Forum: 11 Fév 2005 0:17
Localisation: Lyon, France
  • offline

Message » 01 Sep 2007 19:18

Je pense que le "truc" c'est un seul driver, si tu dois en lancer plusieurs c'est le début des ennuis. Chez ESI les WT et WR ont un pilote qui gère jusqu'à 4 cartes identiques mais avec un inconvénient de taille, c'est une carte à la fois.

Patrick
Lansing
 
Messages: 5412
Inscription Forum: 23 Mai 2005 21:01
  • offline

Message » 01 Sep 2007 19:23

Oui, oui, on est d'accord. Donc envisageons le pire des cas : 2 cartes de marque différente, donc 2 drivers différents. L'horreur quoi. :mdr: C'est la question que j'ai posée au développeur de Jack. On verra bien, on ne sait jamais...

Pour le cas de Lynx, j'irai regarder sur leur forum et poser la question le cas échéant.
Jose Hidalgo
 
Messages: 4973
Inscription Forum: 11 Fév 2005 0:17
Localisation: Lyon, France
  • offline

Message » 02 Sep 2007 9:41

Réponse du développeur de Jack à mes questions :

" Pour communiquer avec les cartes son, jackdmp (mais jack en general)
utilise un driver qui est chargé par le server. Sur Windows ce driver
est écrit en utilisant une API appelée PortAudio ( www.portaudio.com ),
C'est le -d portaudio par example sur jackdmp windows. Sur OSX le
driver passe par CoreAudio et ALSA sur Linux.

Sur chaque systeme, la capacité à "agglomérer" plusieurs cartes comme
1 seule n'est pas gérée par jack directement, mais par le driver et
donc l'API particulière de chaque système. C'est possible avec ALSA
sous Linux et CoreAudio sur OSX, mais ce n'est pas très clair sur
Windows. En effet, sur Windows la couche PortAudio est simplement une
surcouche des API Winmme ou bien DirectX ou bien ASIO (ce qui veut
dire que jackdmp doit pourvoir interagir avec n'importe quelle carte
qui est supportée par une de ces 3 API). Mais je ne sais pas bien si
Winmme ou DirectX ou ASIO permettent d'agglomérer des cartes...
Auriez vous des infos la dessus ?
"


" Pour complèter un peu ma réponse, le problème principal pour gérer
plusieurs cartes comme une seule carte virtuelle est la question de
la synchronisation: normalement (sous Linux par exemple) la méthode
la plus fiable est de réaliser une synchronisation externe entre les
2 cartes pour qu'ensuite les échantillons soient reçus et envoyés aux
2 cartes à exactement la même vitesse. Sur OSX, il est même possible
de réaliser une synchronisation software avec la possibilité de
rééchantillonnage pour aligner les vitesses. Je ne sais pas si la
synchronisation externe entre 2 cartes se réalise couramment sous
Windows ?
Ensuite l'autre problème (si cela est le cas) serait
d'accèder aux 2 cartes en mêmes temps (par ex en mode ASIO) et de
combiner les flux. "


Là cela devient un peu technique pour moi, mais une chose est sûre, le développeur de Jack a l'air plein de bonne volonté et de réactivité. :D Donc si un de nos experts concernés par ce sujet veut entamer la discussion avec lui dans l'intérêt général (discussion intéressante AMHA pour qui saura s'y coller) et lui apporter au passage les précisions qu'il demande (passages soulignés), il n'a qu'à se déclarer sur le topic, et je lui fournirai alors l'email correspondant. Merci !
Jose Hidalgo
 
Messages: 4973
Inscription Forum: 11 Fév 2005 0:17
Localisation: Lyon, France
  • offline

Message » 03 Sep 2007 11:53

j'aimerais bien connaitre le temps de traitement pour un Tape de FIR, sur disons.. un core 2 duo...

en fait, je me demande si le proc serait assez puissant pour reussir a traiter 14 filtres FIR en 192KHz/24bit, sachant qu'il a plein plein d'autre bordel a gérer derrier..

je dis ça, car sur un DSP SHARC (des grosse bête de chez analogue device, on sait traiter juste 4 filtres à cette fréquence la (en 32bit) :oops: )
Dernière édition par duncan le 03 Sep 2007 14:54, édité 1 fois.
duncan
 
Messages: 1537
Inscription Forum: 05 Juin 2003 18:36
Localisation: près de la 3 monts
  • offline

Message » 03 Sep 2007 12:02

Bonjour Duncan,
Je vais refaire un essai cet après-midi pour pouvoir te répondre, tu devras extrapoler, je fais ça avec un P4 3.2 en HT.
A tout allure.

Patrick
Lansing
 
Messages: 5412
Inscription Forum: 23 Mai 2005 21:01
  • offline

Message » 03 Sep 2007 13:08

j'ai oublier de preciser le nombre de tapeque j'ai utilisé dans le calcul aussi : à 1024 tape, ce qui bien sur est un minimuù a 192/kHz (cela nous fait un equivalent de 256 tape à 48KHz, ce qui est deja bien peu pour pouvoir restituer les basses fréquences...)

(bon normallement il faut un nombre de tape impaire et symetrique sur les coefs du FIR, mais c'etait pour simplifier mon calcul)
Dernière édition par duncan le 03 Sep 2007 14:54, édité 1 fois.
duncan
 
Messages: 1537
Inscription Forum: 05 Juin 2003 18:36
Localisation: près de la 3 monts
  • offline

Message » 03 Sep 2007 14:24

duncan a écrit:j'ai oublier de preciser le nombre de tapeque j'ai utilisé dans le calcul aussi : à 1024 tape, ce qui bien sur est un minimuù a 192/kbps (cela nous fait un equivalent de 256 tape à 48KHz, ce qui est deja bien peu pour pouvoir restituer les basses fréquences...)


Tu veux parler de KHz au lieu de kbps non ? (sinon je vois pas bien le rapport)
FauxFrodon
 
Messages: 303
Inscription Forum: 18 Fév 2003 21:03
Localisation: Nice (enfin pas loin)
  • offline

Message » 03 Sep 2007 14:53

heu oui, tout a fait, escuse moi -_-" je fais un truc sur du transputer en parrallel, ça me destabilise...
duncan
 
Messages: 1537
Inscription Forum: 05 Juin 2003 18:36
Localisation: près de la 3 monts
  • offline

Message » 03 Sep 2007 18:37

Voila, je n'ai pas compris pourquoi mais Console n'a pas voulu monter à 192kHz, dernier arrêt à 96. Comme c'est mon PCHC je n'ai aucun autre outil pour dépasser ça, avec Audiomulch peut-être...
J'ai quand même fait un essai à 24/96, en fait c'est ma config lorsque j'écoute des fichiers de cette nature.
Difficile de se faire une idée précise, il y a beaucoup de pompage sur la conso CPU, disons qu'en faisant des observations sur une période de plusieurs minutes et en activant ou pas les filtres j'en ai déduit que dans ces conditions la conso est de 5 à 6 % par filtre stéréo en 1024.
Seule ton expérience peut te permettre d'évaluer ça en 192 sur ton PC, après tout dépend de ce qui tourne en arrière plan, j'avais tout arrêté pour la circonstance.

Patrick
Lansing
 
Messages: 5412
Inscription Forum: 23 Mai 2005 21:01
  • offline

Message » 03 Sep 2007 18:50

Et sinon, la réponse du dév de Jack plus haut, tout le monde s'en fout ? :mdr:

(ça me fait bien marrer, sachant qu'une partie des personnes intéressées par ce topic va finir par utiliser Jack, qui est LA référence sous Linux et Mac OS pour faire du ReWire & co., et qui le deviendra sûrement aussi sous Windows faute d'alternatives crédibles).
Jose Hidalgo
 
Messages: 4973
Inscription Forum: 11 Fév 2005 0:17
Localisation: Lyon, France
  • offline

Message » 03 Sep 2007 19:06

6%en 96KHz/24bit, le double donc en 192KHz si on reste en 1024 sample (donc qu'on divise par 2 le nombre de tape)..

12% sur ton proc, x8 filtre pour le 7.1... (c'est de la mega grosse extrapolationparce que on peu faire des optimisation de pipline et que c'est du recursif, mais bon...)

pas mal a peu de chose pres, on arrive a 96% :mdr:

en gros, un processeur pour le FIR.. c'est bien ce a quoi je m'attendais pour 14 canneaux...

edit PS : en faisant un rapide calcul, on retombe bien a peu prés sur la puissance du proc de ton P4 (nombre de multiiplication/adition necessaire pour l'algo) , donc c'est bien ça, 1 processeur pour 14 filtre en 192KHz/24bit :mdr:
duncan
 
Messages: 1537
Inscription Forum: 05 Juin 2003 18:36
Localisation: près de la 3 monts
  • offline

Message » 05 Sep 2007 12:22

j'ai un soft qui fait du filtrage par convolution FIR sur 4 voies stéréo (soit 8 filtres) et comme il peut être utilisé en stand-alone (ou en VST), c'est facile de voir la puissance CPU consommée.
C'est ici : http://www.ohl.to/about-audio/audio-softwares/crossvolver/
Ca m'intéresserait de connaître la puissance en 24/96 et 24/192 sur des grosses bécanes.
Si quelqu'un veut tester...
Je pourrais alors aussi le faire en 5.1 et voir si c'est utilisable.
ohl
Pro-Divers
Pro-Divers
 
Messages: 2030
Inscription Forum: 13 Aoû 2004 16:17
  • offline

Message » 08 Sep 2007 8:44

duncan a écrit:6%en 96KHz/24bit, le double donc en 192KHz si on reste en 1024 sample (donc qu'on divise par 2 le nombre de tape)..

12% sur ton proc, x8 filtre pour le 7.1... (c'est de la mega grosse extrapolationparce que on peu faire des optimisation de pipline et que c'est du recursif, mais bon...)

pas mal a peu de chose pres, on arrive a 96% :mdr:

en gros, un processeur pour le FIR.. c'est bien ce a quoi je m'attendais pour 14 canneaux...

edit PS : en faisant un rapide calcul, on retombe bien a peu prés sur la puissance du proc de ton P4 (nombre de multiiplication/adition necessaire pour l'algo) , donc c'est bien ça, 1 processeur pour 14 filtre en 192KHz/24bit :mdr:



Sur les 6%, en fait il y a moins d 1% dedié au calcul du filtre.
La conso cpu va egalement dependre de la latence tolerée (a ne pas confondre avec la latence du filtre lui meme) car on laisse plus ou moins de marge au soft pour faire les calcul, ca varie du simple au double entre 64 sample et 32768 par exemple.

Avec un amd64 @2200MHz, une latence de 4096 samples :
14 filtres de 1024 samples@96kHz: conso totale 24% / conso plug in 13%
idem avec 2 filtre : 11/1
14 filtres de 1024 samples@48kHz :11/7

On voit que c'est extrapolable et quasi proportionnelle avec le taux d echantillonage (vitesse de lecture) soit le double @192kHz (avec un filtre de nbre de samples egale et donc de "durée" /2)

Maintenant plus serieu, avec des filtres de 48000 (45 x plus long) , car on veut 14 filtres d une bande passante/precision extreme (le nombre de sample necessaire diminuant de maniere exponentielle avec la frequence et la largeur de la bp)

14 filtres de 48000 samples@96kHz: 50/40
idem avec 2 filtres : 15/4
14 filtres de 48000 samples@48kHz :25/20

Pour le fun, 28 filtres de 48000 samples@96kHz (de quoi etre parer pour les futurs format hd multicannaux d une vingtaine d année a venir :mdr:): 93/80

On remarque qu en multpliant la taille du filtre par 45, la conso n a augmenter que d un facteur 3 ce qui est pour le moins bizzare. Il faudrait faire des mesures avec des valeur intermediaires, je ne vois pas trop quel complexité est suivie ici.
A noter egalement que ce sont des fir pas forcement symetrique (on doit pouvoir diviser par 2 par exemple si on fait du simple filtrage a phase lineaire)
Avec une becane audio dedié sous linux on doit pouvoir se rapprocher de la conso "plug in", a comparer avec les meilleur becane pro dediés, d apres ce que tu dit on en est tres loin ce qui est un peu bizzare (meme avec un cpu 1er prix et une latence quasi nul :mdr: ).


@José
Non a tes 2 questions asio et synchro, sur ce point (critique) Jack n apporte rien de nouveau pour l instant.
Essaye d en parler au develloppeur ca serait une grosse avancé je pense (encore que certain driver asio, comme celui de nuendo gere le multi carte -testé avec mes 2 192X- mais pas les syncrho et au prix d une latence excessive).

@+
Avi
melavi
 
Messages: 1950
Inscription Forum: 03 Fév 2003 18:02
  • offline

Combiner plusieurs cartes audio

Message » 09 Sep 2007 14:17

Je pense qu'il est nécessaire de synchroniser les 2 cartes (plus pécisemment les horloges) si on veut pouvoir combiner les flux audio, *sans* avoir besoin de rééchantillonner les flux en provenance d'une des cartes par rapport à l'autre.

En pratique au niveau des drivers, l'application (ici le serveur Jack) va recevoir 2 interruptions audio (en imaginant que les 2 drivers utilisent la même taille de buffer). L'une seule de ces interruptions va cadencer l'ensemble des transferts audio sur le graphe des applications jack. L'autre interruption ne sera pas utilisée pour cadencer las calculs mais les échantillons seront "récupérés".

Si les 2 cartes ne tournent pas exactement à la même fréquence, ce qui est le cas en pratique même si elle utilisent théoriquement la méme fréquence d'échantillonnage, alors on a risque d'avoir progressivement un décalage d'une interuption par rapport à l'autre. Si on peut éviter rééchantillonner les flux, c'est toujours mieux et surtout beaucoup plus simple à implémenter.
sletz
 
Messages: 1
Inscription Forum: 09 Sep 2007 14:02
  • offline


Retourner vers Logiciel PC Home-cinéma

 
  • Articles en relation
    Dernier message