Modérateurs: Staff Univers Casques, Staff Haute-Fidélité, Staff Juridique • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 20 invités

Discussions sur le matériel Haute-Fidélité

FAQ sur le codage PCM

Message » 27 Juin 2006 13:48

Post de pio sur l'autre thread :

>tandis que pas mal de personnes bien au courant du fonctionnement des DACs actuels (Wmax sur hydrogenaudio, par exemple) tendent plutôt à marteler que les difficultés rencontrées sont complètement résolues depuis longtemps, en citant la réponse typique d'un lecteur de CD actuel : 0 dB à 20 kHz, <-100 dB à 22050 Hz.

oui c'est exact et je pense (enfin j'espère) l'avoir suffisamment dit ds l'autre thread pour que tout le monde en soit convaincu. Après on peut toujours bricoler son DAC comme ils l'ont fait TNT-Audio en disant que l'étage de reconstruction d'origine est pourri. Dans ce cas, j'aurais plutôt tendance à dire qu'il vaut mieux refaire la totalité de l'étage de conversion avec un DAC haut de gamme : ca coutera un peu plus cher mais le résultat sera garanti...

Il faut aussi comprendre que les DAC audio en haut des catalogues des fondeurs (akm, etc.) sont en quelques sortes des vitrines technologiques qui montrent tout le savoir faire ds ce domaine. Les perfs des derniers modèles donne des résidus <-120 dB. Et puis, les contraintes en termes de fréquences sur les DAC audio sont loin d'être les pires : qd on passe en vidéo ou en télécom, la clock fait un jolie bon en avant...


>Le mien est bien vieux, un Yamaha CDX-860 de 1991 (2990 FF prix public). Sa sortie n'atténue pas grand chose : -6 dB à 22000 Hz !

Si on prend le design de DAC le plus simpliste : un simple bloqueur qui a une courbe en "sinc" ds le domaine fréquentiel provoquera une atténuation théorique de -3.92 dB à 22050 Hz. Ce a quoi, il faut ajouter l'atténuation du passe-bas qui normalement doit suivre le bloqueur et couper ce qu'il y a après fc/2. On peut aussi essayer de compenser cette perte par un petit coup de boost ds le domaine analogique (j'ai vu grâce au lien de Gbo que ça se faisait en video...).

Image

Avec des designs plus complexe (oversampling) on obtient qqchose de "plat" jusqu'à 20k de nos jours. Mon lecteur est donné pour "20 - 20 kHz, ± 0.05 dB at 44.1 kHz sample rate"

Un test sans consession a donné un pic à 0.09 dB juste avant 20k suivi d'une pente ultraraide pour supprimer tout aliasing.

Image

Le diag de phase est quasi parfait :

Image
Emmanuel Piat
Contributeur HCFR 2016
Contributeur HCFR 2016
 
Messages: 10078
Inscription: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Annonce

Message par Google » 27 Juin 2006 13:48

Publicite

 
Encart supprimé pour les membres HCFR

Message » 27 Juin 2006 14:00

>Un test sans consession a donné un pic à 0.09 dB juste avant 20k suivi d'une pente ultraraide pour supprimer tout aliasing.

En fait, vu qu'on part de 0.04, en différentiel, cela ne fait plus que 0.05 dB pour le pic.
Emmanuel Piat
Contributeur HCFR 2016
Contributeur HCFR 2016
 
Messages: 10078
Inscription: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 27 Juin 2006 15:33

GBo a écrit: Pré-out? tu veux dire pré-écho non?
Oui, j'édite. :oops:

GBo a écrit:Il y aurait plutot moins de pré-écho en pratique qu'en théorie
Je ne comprends pas là.
En théorie la somme des sync est strictement égale à la courbe mesurée (sous condition freq./echant.) c'est le théorème, il n'y a pas de place pour un pré écho, il ne peut venir que d'une approximation pratique, non ?
Ça rejoint ce qui est dit ci aprés et corrobore l'expérience que tu avais faite avec une arrête "surgie" vers 22 khz.
Si on tronque le filtre pour lui imposer un support fini (figure 21), on
introduit de petites résonnances près de la fréquence de coupure
qui peuvent
dénaturer l'image. Cet effet peut être atténué en appliquant au filtre une fenêtre F :
f(x) = sinc(x) * F(x)


GBo a écrit: mais de toutes façons il y n'a aucune preuve que ce pré-écho soit réellement audible.
Oui, j'essaye juste de comprendre le coté théorique.

GBo a écrit:Certains lecteur CD ne prennent d'ailleurs pas le sinc comme kernel de filtre d'oversampling, mais une fonction qui s'étend moins sur les cotés (antony² en a beaucoup parlé à une époque). Du point de vue de la théorie, on doit payer ce choix quelque part, par exemple sur le respect de la réponse en fréquence. Mais tout est une question de choix!
Il en est question dans le dernier document signalé par Emmanuel (approximation bicubique).
angus2
 
Messages: 5932
Inscription: 09 Déc 2003 14:18
Localisation: Paris
  • offline

Message » 27 Juin 2006 15:40

Emmanuel Piat a écrit:Mon lecteur est donné pour "20 - 20 kHz, ± 0.05 dB at 44.1 kHz sample rate"

Tu parles de ta carte son ou d'un lecteur spécifique ?
angus2
 
Messages: 5932
Inscription: 09 Déc 2003 14:18
Localisation: Paris
  • offline

Message » 27 Juin 2006 16:17

Effectivement, ici c'est la CS. Mais comme on est sur un forum hifi, je ne voulais pas introduire de "troubles"...
Emmanuel Piat
Contributeur HCFR 2016
Contributeur HCFR 2016
 
Messages: 10078
Inscription: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 27 Juin 2006 16:39

Emmanuel Piat a écrit: je ne voulais pas introduire de "troubles"...
:mdr:

Pour ceux que ça intéresse dans le document sur le suréchantillonnage il y a au passage la formule qui permet d'avoir la plage de db par rapport au nombre de bits.
db=20*log(1/2^bits)

Encore qu'on puisse préférer db=-20*log(2^bits)
angus2
 
Messages: 5932
Inscription: 09 Déc 2003 14:18
Localisation: Paris
  • offline

Message » 27 Juin 2006 17:40

angus2 a écrit:Encore qu'on puisse préférer db=-20*log(2^bits)


En comme 20*log(2) ça fait grosso merdo 6 on peut approximer par :
db = -6 * bits.

Plus simple :)
FauxFrodon
 
Messages: 303
Inscription: 18 Fév 2003 21:03
Localisation: Nice (enfin pas loin)
  • offline

Message » 27 Juin 2006 17:47

angus2 a écrit:
GBo a écrit: Pré-out? tu veux dire pré-écho non?
Oui, j'édite. :oops:
GBo a écrit:Il y aurait plutot moins de pré-écho en pratique qu'en théorie
Je ne comprends pas là.
En théorie la somme des sync est strictement égale à la courbe mesurée (sous condition freq./echant.) c'est le théorème, il n'y a pas de place pour un pré écho, il ne peut venir que d'une approximation pratique, non ?
Ça rejoint ce qui est dit ci aprés et corrobore l'expérience que tu avais faite avec une arrête "surgie" vers 22 khz.
Si on tronque le filtre pour lui imposer un support fini (figure 21), on
introduit de petites résonnances près de la fréquence de coupure
qui peuvent
dénaturer l'image. Cet effet peut être atténué en appliquant au filtre une fenêtre F :
f(x) = sinc(x) * F(x)

[...]

Si il y a une place pour le pré-écho dans la théorie, c'est à rapprocher de l'effet Gibbs. Il y a aussi un post-écho d'ailleurs, mais on en parle moins en audio car on considère qu'il ne peut en aucun cas être génant étant donnés les effets de masquage temporel de l'oreille (après une impulsion, l'oreille est comme aveuglée pendant un petit laps de temps).

L'expérience que j'ai faite sur un transitoire de triangle corrobore la présence de ce pré-écho à 22.05 Khz lorsque je suis passé de Fs = 96 KHz natif à 44.1 KHz (downsampling).

Le quote sur le fenêtrage par F parle de résonance en fréquence, pas en temps...

Prenons cet applet:
http://web.mit.edu/6.555/www/fir.html
- par défaut sur cet applet la fenêtre est rectangulaire (le sinc est tronqué brutalement) => ondulation sur la bande passante.
- passe la fenetre à blackman par exemple, la réponse fréquentielle se modifie.
Et en observant le kernel du filtre (= réponse temporelle du filtre sur une impulsion), on voit que le pré-écho est moins important que dans la fenetre rectangulaire et moins long que s'il était...infini, comme le veut la théorie.
GBo
 
Messages: 3377
Inscription: 03 Avr 2002 2:00
Localisation: RP 78
  • offline

Message » 27 Juin 2006 18:04

FauxFrodon a écrit:
angus2 a écrit:Encore qu'on puisse préférer db=-20*log(2^bits)


En comme 20*log(2) ça fait grosso merdo 6 on peut approximer par :
db = -6 * bits.

Plus simple :)

bien vu :mdr:
angus2
 
Messages: 5932
Inscription: 09 Déc 2003 14:18
Localisation: Paris
  • offline

Message » 27 Juin 2006 19:25

GBo a écrit: Si il y a une place pour le pré-écho dans la théorie, c'est à rapprocher de l'effet Gibbs. Il y a aussi un post-écho d'ailleurs, mais on en parle moins en audio car on considère qu'il ne peut en aucun cas être génant étant donnés les effets de masquage temporel de l'oreille (après une impulsion, l'oreille est comme aveuglée pendant un petit laps de temps).
C'est parti, à la recherche de Gibbs. :lol:

GBo a écrit:L'expérience que j'ai faite sur un transitoire de triangle corrobore la présence de ce pré-écho à 22.05 Khz lorsque je suis passé de Fs = 96 KHz natif à 44.1 KHz (downsampling).
Le quote sur le fenêtrage par F parle de résonance en fréquence, pas en temps...
:o
J'ai coupé un peu court peut être, voici le lien http://www.lri.fr/~mbl/ENS/IG2/cours1/AntiAliassage.pdf (fin page 17 et 18)
Il me semble bien qu'on parle de la même chose.
Il dit qu'on pourri le signal à la fréquence de coupure (chose que tu signales toi aussi à cette fréquence) quand on fait le calcul des sync par convolution pour chaque sample (donc en temps ?) dans une fenêtre simple au lieu de rester dans l'infini.
Il dit ensuite qu'on peut atténuer les dégats avec un fenêtrage pondéré (de type Blackman par exemple).
Ton arrête ressemble tout de même beaucoup à ce qui est décrit ici.
Si le pré écho c'est encore autre chose es tu sûr en fin de compte que l'arête le représente ?

GBo a écrit:
Prenons cet applet:
http://web.mit.edu/6.555/www/fir.html
- par défaut sur cet applet la fenêtre est rectangulaire (le sinc est tronqué brutalement) => ondulation sur la bande passante.
- passe la fenetre à blackman par exemple, la réponse fréquentielle se modifie.
Et en observant le kernel du filtre (= réponse temporelle du filtre sur une impulsion), on voit que le pré-écho est moins important que dans la fenetre rectangulaire et moins long que s'il était...infini, comme le veut la théorie.

Oui fenêtre carré brutale c'est pas terrible (parce que coupure brusque aux extrémités), fenêtre pondérée (blackman par ex) c'est mieux (parce qu'il n'y a pas coupure brusque, on forme une pente qui termine à zéro par le jeu des pondérations) (comme pour l'infini, pente douce vers zéro sans coupure, là c'est moi qui improvise :oops: ).
Infini, j'ai compris que c'était parfait tu dis que c'est encore pire. Il y a un truc qui m'échappe, ça n'étonnera personne. :lol:
Je reviens aprés avoir cherché du coté de Gibbs.
Dernière édition par angus2 le 27 Juin 2006 19:45, édité 1 fois.
angus2
 
Messages: 5932
Inscription: 09 Déc 2003 14:18
Localisation: Paris
  • offline

Message » 27 Juin 2006 19:45

angus2 a écrit::o
J'ai coupé un peu court peut être, voici le lien http://www.lri.fr/~mbl/ENS/IG2/cours1/AntiAliassage.pdf (à la fin, page 18 je crois)
Il me semble bien qu'on parle de la même chose.

Il ne me semble pas, puisque c'est de la troncature du sinc par fenetre carrée dont il est question dans le texte, je confirme que si elle n'est pas lissée par une fonction genre haming, blackman ou autre, cela entraine du ripple fréquentiel près de la fréquence de coupure (comme l'applet le montre!). En ce qui concerne le ringing temporel, tous les filtres en sinc (fenetré ou pas) en produisent en réponse à une impulsion, par construction, je ne peux donc pas interpreter ce texte autrement. Le pré-écho n'est autre que la partie gauche d'un sinc fortement pondéré, additionné avec rien.
Dernière édition par GBo le 27 Juin 2006 19:48, édité 1 fois.
GBo
 
Messages: 3377
Inscription: 03 Avr 2002 2:00
Localisation: RP 78
  • offline

Message » 27 Juin 2006 19:47

Bon, il faut que je me remette à l'ouvrage alors. :( :wink:
angus2
 
Messages: 5932
Inscription: 09 Déc 2003 14:18
Localisation: Paris
  • offline

Message » 27 Juin 2006 19:52

Une dernière question pour aujourd'hui quand même
GBo a écrit: je confirme que si elle n'est pas lissée par une fonction genre haming, blackman ou autre, cela entraine du ripple fréquentiel près de la fréquence de coupure (comme l'applet le montre!).

Avec un fenétrage pondéré type blackman il n'y a plus de "ripple fréquentiel" ?
L'applet et ton commentaire le laissent penser mais le pdf parlait juste d'atténuation.
Dernière édition par angus2 le 27 Juin 2006 19:52, édité 1 fois.
angus2
 
Messages: 5932
Inscription: 09 Déc 2003 14:18
Localisation: Paris
  • offline

Message » 27 Juin 2006 19:52

angus2 a écrit:En théorie la somme des sync est strictement égale à la courbe mesurée (sous condition freq./echant.) c'est le théorème, il n'y a pas de place pour un pré écho, il ne peut venir que d'une approximation pratique, non ?


La courbe mesurée répond, comme tu le mets entre parenthèses, à la condition de fréquence d'échantillonnage. On mesure une courbe qui a déjà subi un passe bas afin de ne pas déborder de fs/2, et qui souffre donc déjà de pré echo.

Le filtre sinc parfait, celui qui a une réponse plate jusqu'à 22050 Hz exclu, a un pré-echo infini.

Il faudrait mettre en ligne des exemples filtrés à 10 kHz, ce serait beaucoup plus instructif. Le pré-echo sinc s'entend alors parfaitement, et donne un rendu épouvantable. Mais je suis occupé toute cette semaine.
Pio2001
 
Messages: 5908
Inscription: 07 Oct 2003 12:50
Localisation: Neuville-sur-Saône
  • offline

Message » 27 Juin 2006 20:00

Pio2001 a écrit:Mais je suis occupé toute cette semaine.

Pas de soucis, à ce stade là il faut surtout que je fasse la jointure entre cette notion de pré écho qui m'échappe et les quelques éléments de théorie que j'ai absorbé ce we sans avoir forcément tout bien digérer encore.
C'est maintenant plus un travail de recherche et d'assimilation personnel, mais comme tu dis, la semaine ...
angus2
 
Messages: 5932
Inscription: 09 Déc 2003 14:18
Localisation: Paris
  • offline



Retourner vers Discussions Générales

 
  • Articles en relation
    Dernier message