Logiciels > Freewares > AudioFreqResp - V0.9.1.0

Dernière mise à jour : 03/04/2011

Présentation

Le logiciel AudioFreqResp est un logiciel permettant la mesure de la bande passante d'un équipement audio dans la plage 20 Hz - 20 kHz. Il s'appuie sur une interface audio quelconque, carte son basique ou haut de gamme. Bien entendu, la fiabilité et la pertinence des résultats de mesure dépend en premier lieu de la qualité des convertisseurs N/A (numérique / analogique) et A/N (analogique / numérique de l'interface audio utilisée.

audiofreqresp_main_001

Ce logiciel dispose d'un module de calibrage qui permet de compenser partiellement les défauts de linéarité dans la bande audio, défauts assez marqués dans le bas du spectre et dans le haut du spectre des cartes son bas de gamme. 

Calibrage

La fonction de calibrage permet d'estimer la "linéarité en fréquence" des convertisseurs N/A de la sortie audio et A/N de l'entrée audio. Pendant l'étape de calibrage, la sortie et l'entrée de l'interface audio doivent être physiquement raccordées ensemble (bouclage). Le logiciel compare les signaux envoyés sur la sortie de la carte son (tonalités fixes à amplitude constante, niveau fixé à -12 dBFS) et ceux reçus sur l'entrée de la carte son (on peut utiliser une même interface ou deux interfaces différentes pour la sortie et pour l'entrée). Les différences de niveau sont relevées pour chaque tonalité et sont stockées dans une table, pour pouvoir ensuite être utilisées lors des mesures pour compensation. En théorie, la phase de calibrage n'est nécessaire qu'une seule fois pour chaque couple entrée / sortie d'une même interface audio, et il est possible de sauvegarder dans un fichier les points relevés pour chargement ultérieur. Mais rien ne vous interdit de la remettre en route avant chaque séquence de mesure, on a parfois des surprises... Inutile de dire que l'étape de calibrage doit être réalisée avec les cordons audio qui seront utilisés pour les mesures. Si ces cordons sont de bonne qualité et courts, on peut à la limite se passer de les inclure dans la chaine de calibrage. Mais comme il s'agit d'une bonne habitude à prendre, autant la prendre dès maintenant.

Remarques : pour l'étape de calibrage, le logiciel effectue les mêmes actions que celles effectuées pour la mesure. La différence réside simplement dans l'utilisation des résultats, qui sont "construits" avec les valeurs en cours et les valeurs préalablements acquise lors de l'étape de calibrage. Par exemple, si le logiciel voit qu'à 100 Hz le niveau de signal reçu est 3 dB en-dessous du signal de référence (1 kHz / 0 dB), il ajoutera +3 dB lors de la mesure à 100 Hz.

Méthode de mesure

La mesure peut s'effectuer de deux façons :
- avec générateur à tonalités fixes (10, 34 ou 64 valeurs) et mesure d'amplitude classique pour chaque tonalité;
- avec générateur de bruit blanc et analyse FFT.

Mesure avec tonalités fixes (fonctionnel)
Dans ce mode de mesure, le logiciel produit une suite de tonalités de fréquence croissante et l'envoie sur la sortie de l'interface audio sélectionnée. Puis il analyse ce qui arrive sur l'entrée audio sélectionnée. La mesure à chaque fréquence prend entre 200 ms et 300 ms. Je prévois d'ajouter un filtre (débrayable) sur l'entrée de mesure, centré sur la fréquence en cours du générateur, afin de limiter l'influence de bruit éventuel autour de la fréquence mesurée.

Mesure avec bruit blanc (pas encore implémenté)
Dans ce mode de mesure, le logiciel produit non pas une suite de tonalités fixes, mais du bruit blanc, théoriquement composé d'une multitude de signaux de même amplitude sur l'ensemble de la bande passante. Côté récepteur, on fait une analyse spectrale par décomposition en série de Fourrier (FFT, Fast Fourrier Transform) et on regarde le niveau du signal reçu à chaque point de mesure, à la fréquence concernée.

Remarques :
- En théorie, les écarts de mesure obtenus avec les deux méthodes devraient être assez faibles. En réalité, j'ai pensé implémenter ces deux méthodes plus pour me faire la main d'un point de vue développement que pour une efficacité accrue des résultats. A vous de choisir la méthode qui vous convient le mieux.
- L'entrée de mesure peut s'établir avec une quantification de 16 bits (valeur par défaut), de 24 bits ou 32 bits. Pour l'heure les tests n'ont été réalisés qu'en 16 bits.

Affichage

Les résultats de mesure de la bande passante sont visibles sous forme numérique et sous forme graphique. Le graphique dispose d'une échelle adaptable par l'utilisateur :

Axe vertical
Les valeurs minimale et maximale de l'axe vertical du graphe peuvent être fixées entre -24 dB et +24 dB. La plage de niveau peut par exemple être fixée de -6 dB à +6 dB, ou de -10 dB à +3 dB. On travaille en relatif, la valeur 0 dB correspond à la valeur de référence à 1000 Hz. Si par exemple le niveau de sortie du générateur BF est de -12 dBFS à 1000 Hz et que cela correspond à un niveau de sortie analogique de -10 dBu, et si l'entrée de mesure qui reçoit ce signal donne un niveau de -8 dBFS une fois convertit en numérique, alors la valeur -8 dB sert de référence et devient le 0 dB relatif. Si l'entrée de mesure reçoit un signal de -11 dBu à 100 Hz et que cela se traduit par un niveau de -9 dBFS, alors la valeur affichée sur le graphe à 100 Hz sera de -1 dB.

Axe horizontal
L'axe horizontal montre une plage spectrale comprise entre 10 Hz et 20 kHz et ne peut être modifiée. La progression de la courbe peut se faire en linéaire ou en logarithmique grâce aux deux boutons radio Affichage fréquence Log et Lin.

Durée de la mesure

La durée de la mesure n'est pas la même selon la méthode de mesure utilisée.

Méthode de mesure par tonalités
La durée totale de la mesure dépend du nombre de points à mesurer dans la bande passante, ce nombre pouvant s'étendre de 10 à 128 (il me semble plus sérieux d'en prendre au moins une trentaine, au tiers d'octave). Du fait même de la nature du signal sinus produit par le générateur BF, il faut un temps minimum pour être sûr de tomber sur au moins une crête et d'obtenir la valeur maximale du signal entrant dans la section analyseur. Supposons en effet que l'on génère un signal sinus à 50 Hz et dont la période est donc de 20 ms. Si la mesure ne durait que 15 ms, on pourrait très bien tomber entre deux crêtes et louper la valeur max réelle. Mais la théorie est une chose... dans la pratique, mieux vaut mesurer plusieures périodes du signal et en faire une "moyenne" pour ne pas être trop dépendant de "fluctuations parasites". Dans le cas présent, j'ai adopté une durée de mesure de 500 ms par point, mais je sais que je pourrais aller bien plus vite surtout pour les fréquences médium et hautes.

Méthode de mesure par FFT
Cette méthode est un peu plus rapide. Mais pour l'heure elle n'est pas totalement implémentée.

Fonctions à venir

Ce logiciel n'en est qu'à ses balbutiements, et quelques fonctions sont déjà prévues pour l'avenir.

Manuel / automatique
Les mesures sont normalement réalisées de façon automatique, mais une fonction manuelle sera également prévue. En mode automatique, l'ensemble du spectre sonore est balayé de façon séquentielle. On appuie sur un bouton et on attend le résultat des mesures. En mode manuel, le changement de fréquence du générateur (si méthode de mesure par tonalités) doit être réalisé par l'utilisateur, point après point. De même, la mesure côté récepteur
doit être "marquée" par l'utilisateur. A vous de découvrir en quoi le mode manuel peut être intéressant...

Plus de courbes de mesure...
Pour l'heure le graphe ne comporte que deux paires de courbes, une pour la bande passante avant calibrage et une pour la bande passante après calibrage. A terme, il sera possible d'afficher et de conserver 8 paires de courbes de mesure, pour permettre les comparaisons entre diverses mesures (par exemple même équipement d'encodage audio avec des débits différents).

Mesures de la réponse amplitude/fréquence de micros ou de haut-parleurs ?

Le logiciel AudioFreqResp est avant tout destiné aux mesures de bande passante d'un équipement "tout électrique", n'incluant pas d'acoustique. La mesure de la réponse amplitude/fréquence d'un microphone ou d'un HP doit impérativement se faire dans un local dont l'acoustique est adaptée (ce sera le cas quels que soient les matériels et logiciels utilisés). En environement pro (dans une chambre anéchoïque) c'est déjà délicat à faire, on peut parfois noter des belles différences de niveau à certaines fréquences quand le micro est déplacé de quelques cm. Bien entendu, les résultats obtenus dépendent aussi beaucoup des caractéristiques de linéarité et de directivité du HP qui sert de source sonore (pour la mesure d'un micro) ou du micro de mesure (dans le cas où on mesure un HP). Bref, le point critique n'est pas le matériel technique, mais le lieu choisi pour les tests/mesures.

Téléchargement

Voir Avertissements donnés à la page Freewares.

Version actuelle
Compatible Windows XP / Vista / Seven.
Le logiciel n'est pas terminé mais est tout de même fonctionnel avec le mode de mesure par tonalités. Merci de tenir compte des limitations actuelles :
- Seule la méthode de mesure par tonalités (34 points) est fonctionnelle.
- La précision de la mesure de niveau après calibrage est généralement de l'ordre de +/-0,2 dB, ce qui n'est pas si mal.
- Le réglage du niveau de l'entrée audio sélectionnée directement depuis le logiciel n'est pas encore possible.
A_Lire.txt
AudioFreqResp V0.9.1.0 - (03/04/2011)

Crédits

Un grand merci à Boian Mitov, pour le travail extraordinaire qu'il a accompli avec ses composants multimédia AudioLab, SignalLab, PlotLab, VideoLab, VisionLab et OpenWire ! Pour les développeur sous Delphi, je vous conseille d'y jeter un oeil !
Thanks a lot to Boian Mitov, for its splendid multimedia components libraries AudioLab, SignalLab, PlotLab, VideoLab, VisionLab et OpenWire ! If you're writting audio or video applications under Delphi, these components will certainely be very helpfull !
Mitov Components Lab