Se connecter
Se connecter

ou
Créer un compte

ou

Sujet fréquences d'échantillonnage, resampling et résolution démystifées ?

  • 104 réponses
  • 18 participants
  • 13 263 vues
  • 27 followers
1 fréquences d'échantillonnage, resampling et résolution démystifées ?
Bonjour,

J'ai passé du temps à faire des tests et à réfléchir pour essayer de déterminer le format audio optimum pour l'enregistrement et le travail en studio.

Au final je me pose encore quelques questions, auxquelles peut-être des spécialistes pourront répondre de façon éclairée ? (je les ai mises en gras)

Voici d'abord quelques réflexions suite à mes observations.
Vu que c'est un chouilla long :oops: et un peu pointu (sans mauvais esprit :mdr:), j'ai essayé de structurer clairement les choses.


Fréquence d'échantillonnage :


1) première approche :

il paraît évident dans l'absolu qu'un signal échantilloné à une fréquence élevée sera plus proche du signal analogique original (continu).
Au-delà de la bande passante et du théorème de Shanon Nyquist (qui sert un peu vite d'argument à tous les partis), le rendu des aigus en particulier devrait être plus juste, moins distortionné (décrire une sinusoïde avec 2 points ça paraît pas top).
Evidement on pourrait répondre que les fréquences en question sont inaudibles pour nos vieilles oreilles et que la distorsion des aigues ne fera que créer des harmoniques encore plus aigus et inaudibles (et qui seront de toute façon filtrés dans les formats audio de consommation actuels, fort heureusement dirait Nyquist).
Au final, est-ce que ça fait réellement une différence (surtout pour de la musique consommée en 44.1 kHz) ?


2) traitements et sommation :

en cas de mixage numérique, je suppose que les plugins peuvent délivrer un résultat sonore plus proche de l'analogique s'ils traitent un son "plus continu". En tous cas la différence m'a semblée flagrante à l'audition sur des réverbs qui prenaient une toute autre dimension et consistance (comparaison projet test en 44.1 et en 192).
Au delà du point de vue spectral, je suppose qu'une F.d'E. plus élevée amène une meilleure fluidité temporelle et dynamique.
La sommation aussi est meilleure je suppose, vu la résolution temporelle accrue et la plus grande précision des valeurs à sommer (erreurs de crête moindres, représentation des niveaux plus fidèle à chaque échantillon).


3) rendu final (44.1 kHz) :

Pour me rendre compte si au final ça faisait une différence de travailler à des F.d'E. supérieures, j'ai fait ce test :
- j'avais un projet enregistré en 44.1 kHz.
- j'ai resamplé toutes les pistes en 192 kHz (crystal resampler, wavelab 7).
- j'ai mixé en 192 kHz.
- exporté en 192 kHz puis resamplé en 44.1 kHz.
- j'ai dupliqué le projet de mixage en 44.1 kHz et passé les fichier originaux dedans.
- j'ai créé un fichier delta (différence entre les deux exports finaux).

Conclusions :
- à l'écoute il me semble entendre une différence entre l'export 192 et l'export 44.1 (plus d'ampleur, d'ouverture).
- par contre entre l'export travaillé en 192 puis resamplé en 44 et l'export tout 44, c'est moins évident (difficile de jurer que la différence n'est pas suggérée).
- Evidement, je ne saurai jamais si j'aurais mixé de la même façon en 44 qu'en 192 (ça m'a quand même paru auditivement très confortable, impression d'entendre plus clairement ce qu'il y avait à faire et ce que je faisais).
- le fichier delta montre une différence objective tout à fait flagrante entre les 2 exports (travaillés en 192 puis resamplé en 44 contre tout 44). On a l'impression d'entendre la composante "définiton" du son. Mais je me demande si elle n'est pas liée au resampling à des fréquences non multiples (parce qu'en écoute comparative c'est loin d'être aussi flagrant).

Du coup, vu que j'étais lancé, j'ai resamplé mes fichiers en 174.6 kHz, je les ai repassés dans le mix version 174, puis j'ai exporté et resamplé en 44.1.
Effectivement, le fichier delta est beaucoup moins flagrant même s'il reste une différence du même genre que l'autre fichier delta.
A part ça, les conclusions sont du même ordre qu'avec le mix en 192.

Plein de motivation, j'ai reproduit les processus en 88.1 kHz. Comme on pouvait s'y attendre, les constats sont du même acabit mais moins prononcés.

Il y a quand même quelque chose qui me turlupine :

La comparaison entre le mix en 44 et en 192 (fréquences non multiples) sous forme de fichier delta fait ressortir un résidu très estéthique (sorte de composante de définition du son).
C'est manifestement lié au resampling à des fréquences non multiples : j'ai fait le test de resampler un fichier 44.1 en 192 puis de nouveau en 44.1 et de comparer avec l'original. La différence est du même type.

Les questions que je me pose (même si la différence semble moins flagrante en écoute comparative) :
- est-ce dû à un phénomène de "déphasage d'échantillonnage" qui ferait entendre une différence flagrante mais non pertinente (de la même façon qu'on pourrait obtenir un effet de filtre en peigne flagrant en comparant 2 fichiers très légèrement décalés) ?
- si ce n'était pas le cas, serait-il possible qu'un resampler de bonne qualité, "obligé" d'extrapoler la courbe continue d'une façon plus approfondie pour des fréquences non multiples, offre au final un meilleur résultat ?


4) questions en suspens :

- fréquences multiples ou pas ?

pour les multiples :

. ça paraît plausible que la reconversion soit plus simple en cas de fréquences multiples et amène moins d'artéfacts...

. pourquoi les constructeurs s'emmerderaient sinon à proposer 88.2 et 176.4 kHz ?

pour les non multiples :

. dans l'absolu, avec une fréquence d'échantillonnage plus élevée on se rapproche davantage de ce cher son continu.

. la différence absolue du nombre d'échantillons devient peut-être intéressante aux ordes supérieurs de fréquence d'échantillonnage ?

. avec de bons convertisseurs ou en cas de mastering analogique par exemple, l'histoire de fréquences multiples devient peut-être moins pertinente ?

- 44/48, 88/96 ou 174/192 ?

. par rapport au rendu sonore final, à quel point est-ce que ça vaut la peine de mutliplier la F.d'E. (vu que les ressources nécessaires doublent chaque fois) ? Concrètement, est-ce que ça vaut pas la peine ? x2 ? x4 ?

. le son qu'on entend est quand même toujours reconverti en analogique, passé dans des haut-parleurs avec une inertie non nulle, propagé dans un air élastique et capté par nos oreilles au fonctionnement continu.

Au mieux tous ces éléments sont de très bonne qualité. Dans ce cas les convertisseurs lisseront joliment le signal, les haut-parleurs rendront fidèlement ce signal joliment analogisé, l'air sera transparent (si j'ose dire ;)) et les oreilles averties et ravies percevront très finement les jolies subtilités du son si bien rendu (en supposant que le signal sonore vaille le coup/coût évidement...).

Ou alors les convertisseurs lissent mal le signal sonore, les caractéristiques des HPs se combinent justement très mal avec ces irrégularités (tweeter hyper agressif), l'air déforme le son en le propageant avec un mauvais goût total, les oreilles qui perçoivent le résultat sont abîmées et la personne à qui appartiennent ces oreilles ne cherche pas à apprécier les jolies subtilités (ça tombe bien).

Dans l'immense majorité des cas, la réalité se situe quelque part entre ces 2 extrêmes (toutes les combinaisons d'incidence étant possibles).

Mais honnêtement, dans quels cas le fait de travailler à des F.d'E. supérieures à 44.1 kHz aboutira à une différence pertinente pour l'auditeur ?


Résolution :


1) 16 bit :

Si je ne me trompe pas, il y a 1 bit de signe (pour la polarité), il reste donc 15 bits pour décrire l'amplitude du signal, soit 2^15 = 32768 valeurs pour décrire le niveau de l'échantillon.
Pour une plage dynamique de 90 dB, ça ferait donc 364 valeurs possibles par dB...
Si c'est bien juste, ça me paraît déjà franchement bien !

2) 24 bit :

Les 8 bits supplémentaire ne servent qu'à décrire les niveaux inférieurs à - 90dB. C'est d'ailleurs confirmé avec un bitmètre.
Franchement, est-ce que ça change quelque chose ?
Je veux bien croire que ce n'est pas purement marketing, mais j'ai du mal à comprendre où est la pluvalue, que ce soit à l'enregistrement, pour les traitements ou la sommation : même pour de la musique classique ou un instrument seul très léger et plein de transitoires et d'harmoniques, j'ai l'impression que c'est quand même rare d'avoir un passage musical qui module suffisament bas pour que ce qui se passe quelque part à -90dB ne soit pas masqué par d'autres composantes sonores ou simplement par le bruit de fond environnant à l'écoute (ampli et HP compris).

3) 32 bit flottant :

Grâce à la virgule flottante on peut décrire à travers toute la plage dynamique des niveaux intermédaires qui ne sont pas utilisés en virgule fixe. Dès lors la pluvalue semble plus claire (enregistrement, traitements, sommation).
Sauf que si mes calculs sont justes (quelqu'un peut-il confirmer ?), même en 16 bit on a 364 valeurs par dB cf. § 16 bit).
Si c'est bien le cas, est-ce vraiment utile d'en avoir plus (même pour la sommation de nombreuses pistes), vu qu'on travaille au mieux au 1/10 de dB ?
Si je calcule bien (mais je me trompe peut-être), on obtiendrait une différence d'1/10 de dB entre une résolution à virgule fixe ou flottante si on avait par exemple à sommer 73 signaux tous très mal approximés par la virgule fixe.
Calcul : en virgule fixe 364 valeurs par dB -> erreur d'approximation maximale = moitié de cet intervalle (donc 1/728ème de dB) -> il faudrait donc cumuler 72,8 erreurs pour atteindre 1/10 de dB...
Et en plus, en cas de travail en virgule flottante, au final les valeurs sont de toute façon arrondies. Donc même si les valeurs finales sont légèrement plus justes après traitements et sommation que si on était resté en virugle fixe, cette précision est quand même partiellement rabotée (et là, même débat que pour les fréquences d'échantillonnage supérieures).

4) en conclusion :

Je veux bien croire qu'il y ait une bonne raison pour que les constructeurs et développeurs proposent des produits qui travaillent en 24 bit, 32 bit flottant, 48 bit non flottant... mais quelle est-elle ?

Quelqu'un d'avisé peut-il expliquer clairement si ça vaut la peine d'enregistrer et/ou de travailler en plus que 16 bit et à quel point ça fera une différence ou pas ?


Si vous avez tout lu, waw !
Si vous avez parcouru et relevé certaines questions, super !
Si vous pouvez y répondre de façon éclairante et justifiée, MERCI !!
2
Wahou c'est très poussé. Je ne saurais y répondre désolé mais je poste car le sujet m’intéresse.

TROP YO

3

salut

je n'ai pas lu la totalité de ton post mais je pourrais te donner qques elements de reponse de ta partie 4, etant entendu que je suis tres loin d'être un pro..;

Enregistre un morceau avec quand même un nombre de pistes minimum genre une quinzaine comprise batterie, le tout en 16 bits

Enregistre le même morceau en 24 bits, en essayant de garder les mêmes niveaux d'entrée sur toutes les pistes.

Fait un pseudo mastering à 2 balles genre compresseur+limiteur réglages identiques sur le 16 et le 24bits

Tu vas entendre que tu pourras aller plus fort en 24bits que en 16 sans avoir une bouillasse ignoble au final -et plus tu mets de pistes plus c'est flagrant-

 

Je pense que tu vas trouver beacoup beaucoup de choses sur le sujet sur AF ou autres !

"If you have a good set of earplugs, you can crank it up to 5 or 6 and it will crush small villages."

"Everything is context"

4
je me trompe peut-être mais je croyais que les conversions ne devaient idéalement aller que dans le sens meilleure résolution vers basse résolution...et le plus tard possible
Citation :
- j'avais un projet enregistré en 44.1 kHz.
- j'ai resamplé toutes les pistes en 192 kHz


J'ai essayé de suivre mais je ne vois pas trop l'intérêt de partir de données d'abord enregistrées en 44.1.
Le passage à 192 ne fera que recopier "l'escalier de sample 44.1" vers "le même escalier mais en 192" (en le coupant en plus petites parties dans le temps).
Alors évidement toutes tes modifications de ton mix - réverbs et eq vont influencer le son mais pour être vraiment parlant il faudrait enregistrer les mêmes sources dans les deux formats.
Donc le processus "expérimental" voudrait plutôt que tu enregistre les pistes en 192, que tu fasses la conversion en 44.1 avant de te lancer dans tes deux mix (qui ne seront jamais objectivement les mêmes tu l'as bien dit).
Quoiqu'on pourrait envisager mixer tout le projet en 192 et puis une fois le mix fait exporter piste par piste en 44.1 mais en excluant tout rêglage de piste et automation et le réimporter dans une session à 44.1 avec ces mêmes r^glages...Mais ça c'est trop de chipot pour moi.


[ Dernière édition du message le 17/01/2012 à 17:53:38 ]

5
Je n'ai pas tout lu, je réponds juste à ça :
Citation de Brubao :
décrire une sinusoïde avec 2 points ça paraît pas top.

L'énoncé complet du théorème de Shannon dit qu'il est possible de reconstruire exactement le signal à la condition d'utiliser la formule d'interpolation de Whittaker-Shannon (et non pas une simple interpolation linéaire). :tourne:

Before you play, ask yourself: will it improve upon the silence ?

6
Pour la partie échantillonnage,

Comme le fait remarquer Odieux Fonzy, si ce que tu veux faire c'est représenter un signal dont la fréquence max est F, il suffit de l'échantillonner à 2*F pour être capable de le reconstruire sans aucune erreur. (encore faut-il utiliser la bonne méthode de reconstruction ;) )

Par contre, si tu appliques des effets, notamment des traitements de la dynamique, tu peux montrer que l'équivalent analogique créée des composantes hautes-fréquences qui peuvent aller au-delà de la bande passante initiale. La donne est alors effectivement différente.


Un exemple :
Tu prends une sinusoïde à la fréquence F=100Hz. Il suffirait de l’échantillonner à 200Hz pour la reproduite fidèlement.

Tu lui appliques une violente saturation qui la transforme en signal carré : la sortie comportera alors une infinité de composantes harmoniques (d'amplitudes décroissantes) à des fréquences multiples de F. La fréquence d'échantillonnage devrait alors être infinie.

On s'en sort alors en exploitant 2 phénomènes :
- Les composantes harmoniques ont une amplitude qui tend vers 0 (quand tu montes dans les fréquences)
- Au-delà d'une certaine fréquence (~20kHz), on n'entend plus rien de toute façon.

En clair, au-delà de 20kHz les composantes sont doublement inaudibles.

Du coup, tu n'as pas vraiment d'intérêt à représenter le signal carré à une fréquence d'échantillonnage supérieure à 40kHz, et il se trouve de plus qu'il est possible de calculer directement le résultat du signal carré échantillonné à 40kHz à partir de la sinusoïde échantillonnée à 40kHz. Pas besoin de calculer les composantes qui seront en dehors de la bande retenue.


Bon, pour un traitement plus subtile et plus complexe, avec une oreille entraînée, cette analyse est un peu simpliste. Il est effectivement parfois nécessaire de sur-échantillonner le signal d'entrée pour produire la sortie à la fréquence d'échantillonnage ciblée.
Cependant, étant donné les phénomènes pyschoacoustiques (largeur de bande critique, masquages, etc.), il faut vraiment se poser la question de la pertinence du sur-échantillonnage à l'écoute.

Dit autrement, oui pour certains traitements le sur-échantillonnage est "mathématiquement" un plus, mais l'amélioration de la "modélisation" apportée est parfois complétement négligeable à l'écoute (et l'écoute ou la visualisation de la différence n'est pas un critère pertinent car elles ignorent des phénomènes psychoacoustiques d'importance). Alors...

Pour s'en convaincre, il suffit d'écouter la différence entre un signal original et sa version compressée en mp3 : le résidu est franchement audible, c'est même assez impressionnant.
Cependant, la dégradation constatée à l'écoute du morceau compressé est loin d'être aussi notable.


Ma philosophie (qui vaut ce qu'elle vaut :-p ) :
- Si je peux monter en fréquence, pour un coût et un confort d'utilisation raisonnables, je ne gêne pas pour le faire.
- Si ça commence à coincer niveau ressource matérielle, j'essaie de tester la différence sonore à l'écoute pour vérifier que ce que je fais est pertinent.

Citation :
Par contre entre l'export travaillé en 192 puis resamplé en 44 et l'export tout 44, c'est moins évident (difficile de jurer que la différence n'est pas suggérée).
Et oui, ce n'est pas forcément pertinent.
Fais un sondage, en demandant aux personnes de deviner lequel a été mixé à 192kHz. Si tu te retrouves avec un résultat proche de 50%-50%... Ben c'est que ce n'est pas pertinent.


Pour la partie quantification :
Tu as oublié les 64bits flottant :-p

La grosse différence entre le flottant et le fixe est la façon dont les erreurs de quantifications se repartissent.
- La virgule fixe assure une erreur absolue max, ce qui a un intérêt pour les sommations et différences,
- La virgule flottante assure une erreur relative, ce qui a un intérêt pour les multiplications, les divisions, les racines carrées et les opérations de seuillage (par des valeurs réelles).

Je ne te fais pas les démo et je vais rapidement aux conclusions.
- En virgule fixe, l'erreur est constante quelque soit la dynamique du signal. Le SNR évolue linéairement avec la dynamique utile.
- En virgule flottante, l'erreur est proportionnelle à la dynamique du signal. Le SNR est constant.

https://www.irisa.fr/archi03/Presentations/Menard.pdf
(6ème planche)

Si tu traces le SNR en fonction du nombre de bits de codage pour le fixe et le flottant d'un traitement "standard" où il a plusieurs types d'opérations, tu t'aperçois que le fixe est meilleur que le flottant en-dessous de 16bits et que le flottant est meilleur que le fixe au-delà.


En ce qui concerne le 24bits fixe... *met sa casquette d'ingé en traitement du signal* Et bien pour moi c'est une aberration...
Il est toujours possible de fabriquer un exemple où le 24bits fixe est meilleur que le 24bits flottant, mais il ne serait pas du tout représentatif de l'ensemble des traitements effectivement réalisé dans les applications audios.
Un 24bits en virgule flottante donne, dans la plus grande majorité des cas, de meilleurs comportements (je parle des erreurs de calculs des traitements, caractérisé par un SNR).


Si tu m'as suivi, le 32bits flottant est a priori le meilleur système de codage pour le traitement audio parmi les 3 que tu cites (même meilleur que la 48bits fixe, en fait).

Je relativise quand même : les erreurs de quantif en 24bits fixe cumulés pour une application de studio sont quasiment inaudibles. Ça devrait suffire. N'empêche que 32bits c'est finalement très rependu et mieux.

Le 64bits flottant est bien sûr meilleur que le 32bits flottant mais c'est... plutôt inutile.

[ Dernière édition du message le 17/01/2012 à 21:17:00 ]

7
Merci pour vos réponses ! :)

Mac Mouloud, effectivement avant de poster j'ai essayé de trouver un max d'infos sur audiofanzine et ailleurs (j'ai d'ailleurs appris plein de trucs), mais il me restait encore des questions pour boucler le sujet une fois pour toutes...

Erikomic, effectivement c'est vrai qu'en utilisant une fonction "convertir la fréquence d'échantillonnage" (en tous cas pour les fréquences multiples), le signal reste identique. Par contre un véritable "upsampler" extrapole les échantillons intermédiaires pour se rapprocher de la courbe originale. C'est le cas du "crystal resampler" de wavelab (ça se confirme en observant les formes d'onde obtenues avec les 2 procédés).
Sinon effectivement ça semble moins parlant comme test. En fait j'ai "upsamplé" parce que je n'avais pas de projet enregistré à plus de 44.1 kHz (j'aurais aussi préféré faire l'inverse).

Odieux Fonzy, merci pour l'info et le lien ;)

Eratom, merci pour tes réponses ! J'aime bien ce genre de raisonnements avertis et pragmatiques. :aime:
En cas de suréchantillonnage, vaut-il mieux rester entre multiples ?

Si quelqu'un d'autre pense à quelque chose, n'hésitez pas à faire signe hein...

PS : quelqu'un sait si j'ai le record du post le plus long ? :lol:

[ Dernière édition du message le 17/01/2012 à 23:17:40 ]

8
Je ne peux pas y répondre mais je pose un drapeau parce que ça a le mérite d'être fouillé et ça m'intéresse malgré tout.

 

 

 

9

Citation de Brubao :

Par contre un véritable "upsampler" extrapole les échantillons intermédiaires pour se rapprocher de la courbe originale.

Si par là tu entends "le signal original avant numérisation", c'est évidemment faux. Retour aux fondamentaux, et par conséquent à Nyquist/Shannon. Le meilleur "resampleur" du monde ne peut restituer que ce qu'il connait, et il ne connait rien de ce qu'il se passe au delà de Fe/2.

JM

10
Citation :
il ne connait rien de ce qu'il se passe au delà de Fe/2

Jan a raison, il n'y a pas de méthode miracle qui permet de retrouver une information perdue.
Par contre il y a des moyens plus ou moins "malins" de faire des extrapolations en introduisant des connaissances a priori sur les mécanismes de formation et de captation du son, par exemple tenter de recréer des spectres harmoniques, etc.
Mais ça ne donne pas forcément des résultats plus probant qu'une simple interpolation linéaire quand le signal est complexe ou avec une composante de bruit importante (disons que la grande complexité de ce genre de techniques n'est pas souvent justifiée par les résultats).

Lors d'un sous-échantillonnage il est plus simple d'utiliser des fréquences multiples parce que l'interpolation est alors inutile ; ça supprime une source d'erreur éventuelle (quand on n'est pas sûr que la méthode d'interpolation de l'outil que l'on utilise soit géniale i.e. que ce n'est pas une interpolateur de Whittaker–Shannon...)