le jitter logiciel

Posté par dematetcd le 24 novembre 2012

Dans le numéro de ce mois (Novembre 2012) de Stéréo Prestige, Musiq met le doigt sur une question, qui, à ma connaissance, n’a jamais été abordée nulle part: le jitter logiciel.

Cette forme de jitter concerne le décodage des pistes (transformation d’un fichier en flux audio) par logiciel au sein d’un Mac ou d’un PC.

Dans une platine CD, cette opération est menée à bien par un asservissement Électro-Mécanique de la lecture du CD. Cette technologie est très mature, et le flux audio en sortie d’un lecteur CD (vers son DAC interne ou un DAC externe) est très rigoureusement fabriqué.

Par la, ou plutôt, les façons dont fonctionnent les différents système d’exploitation (Windows, OSX, Linux), et les modes de développement des logiciels de décodage, il y a création d’un jitter, y compris de manière aléatoire, lors de la création d’un flux audio par logiciel à partir des pistes.

Ceci est sans doute l’une des raisons de la systématique infériorité d’un « drive Mac/PC » par rapport à un drive CD, toutes choses étant égales par ailleurs.

Cela explique sans doute, enfin!, les différences audibles constatées (contre tout logique) entre le décodage de fichiers WAVE, FLAC, AIF ou ALAC, qui théoriquement produisent strictement le même flux audio au décodage.

Il est possible (mais non encore annoncé par les concepteurs, ni démontré, ni écouté) que la programmation d’un logiciel de décodage dans la puce dédiée d’un lecteur réseau soit en mesure d’éviter totalement ce phénomène de jitter logiciel.

Toujours est-il qu’il semble que le décodage des pistes au sein d’un ordinateur soit a priori voué à se voir détérioré par la façon même dont les processeurs généralistes, les systèmes d’exploitation et les logiciels fonctionnent. A moins, peut-être, d’être en mesure de programmer de tels logiciels au plus près de l’architecture logique et physique des processeurs et en bypassant certaines couches logicielles ou d’abstraction des systèmes d’exploitation.

Merci à Musiq pour sa perspicacité, son article et pour corriger les éventuelles erreurs que j’aurais commises dans ce post.

Publié dans Editoriaux, Le Jitter, Kesako?, Les lecteurs réseau, Mac, PC, Serveurs de musique | 5 Commentaires »

Principes des « lecteurs réseau »

Posté par dematetcd le 13 octobre 2012

La première chose à saisir, me semble-t-il, c’est la différence entre des flux audio et des fichiers audio. Ce point a été esquissé dans la page Les principes, il est nécessaire d’aller un peu plus loin pour comprendre la nature exacte d’un lecteur réseau.

Signal numérique audio, flux audio
C’est, pour le format PCM (celui des CD et d’une majorité d’albums HD), l’association cohérente dans le temps, de trois choses:

  • les données elles-mêmes (une valeur a un instant donné)
  • un signal d’horloge qui indique les temps auxquels les données sont sensées être « produites »
  • les données d’échantillonnage qui indiquent comment plus précisément faire le lien entre les deux précédents type de données.

Il s’agit d’un FLUX, c’est a dire, que sa « lecture » se fait « continûment ».
Cela peut se comparer avec l’écoulement d’une rivière. Les débits, les vitesses de l’eau qui coule caractérisent la rivière.

Fichier audio
La nature même d’un flux, ne permet pas de le « stocker ». Pour le stocker, on parle alors d’encodage. Encodage en WAVE, en AIF, an FLAC.

Ce sont des « formats de fichier » dont le décodage produit STRICTEMENT A l’IDENTIQUE le flux PCM original.

La transformation d’un format d’encodage en un autre (WAVE en AIF, AIF en FLAC, etc.) est totalement réversible. Si on fait dix fois de suite des transformations AIF-WAVE-AIF, on retrouve au bit près le même fichier.

Il demeure cependant la question de comment les différents logiciels décodent (reproduisent le flux initial) les différents formats de fichier et s’ils sont tous « égaux ».
« Normalement », il ne devrait y avoir aucune différence. La façon de coder chaque format étant parfaitement déterministe, le décodage de chaque format « devrait » conduire au même flux PCM.

S’il y a des différences a l’écoute d’un WAVE ou d’un FLAC, cela « devrait »provenir soit d’une malfaçon du logiciel de décodage, soit de malfaçons à l’encodage, soit du phénomène de jitter (voir Le jitter en bref), où là il est certain que les dégradations sont aléatoires.

Transmission
La transmission d’un fichier audio est du domaine de l’informatique. On sait, et depuis longtemps, transmettre un fichier du point A au point B sans aucune perte de données, entre deux ordinateurs, entre un ordinateur et un disque dur, entre un ordinateur et une imprimante.

La transmission d’un FLUX Audio est de nature totalement différente.

Parce que c’est un processus CONTINU. Par exemple, si on a loupé la transmission pendant une demi-seconde du flux, c’est irrattrapable, on a un « blanc » d’une demi- seconde. Ce qui n’est pas le cas avec un fichier, pour lesquels, le « récepteur » peut « redemander » ce qu’il n’a pas reçu.

Et pire, bien pire. Tout champ magnétique provoque des DÉCALAGES entre les tops du signal d’horloge et les données.
On n’y peut rien . Ce sont les lois de la physique. Cela s’appelle le jitter en anglais, gigue en Français, voir  Le jitter en bref.
Cela se passe: 

  • DANS une platine CD, entre le décodage de la piste du CD et le traitement du DAC, pendant la phase de transport entre décodage et le traitement du DAC.
  • Lors de la transmission, par câble SPDIF ou Toslink ou AES/EBU, du flux audio entre un Drive CD et son DAC externe.
  • Lors de la transmission d’un flux audio par un PC/Mac vers une interface numérique (M2Tech, Audiophilleo,…) ou directement vers un DAC, par un câble USB.

Le jitter est le mal génétique de toute transmission d’un flux audio.

Les différences sont en fait ÉNORMES entre un fichier (de l’eau en bouteille et le mode d’emploi pour reproduire l’écoulement d’une rivière) et un flux (qui est la rivière elle-même).

Les NAS ou disques durs multimédia réseau
Les NAS (Network Attached Storage) sont des systèmes de stockage de données un peu plus « intelligents » qu’un disque dur. Ils sont capables de « mettre à disposition » certains « types de fichiers » et de les envoyer si on leur demande, quel que soit les systèmes d’exploitation ou les formats des fichiers. Un « disque dur multimédia réseau » est une version simplifiée à l’extrême d’un NAS.

Un NAS contient en fait un ordinateur capable de faire toutes les opérations décrites ci-dessus.
Parmi les FICHIERS  qu’un NAS est capable de « mettre à disposition », il y a les fichiers « multimédia », musique, vidéo, photo.
Mais un NAS est AUSSI capable de transmettre des FLUX Audio ou Vidéo.

Le « protocole » qui permet de dialoguer et de mettre à disposition des FICHIERS et des FLUX s’appelle UPNP.
C’est une sorte de langage entre le NAS et les périphériques capables de recevoir des FICHIERS et de les décoder, ou simplement capable de recevoir des FLUX et de les transmettre à un appareil de « restitution » (une télé pour la vidéo, un DAC pour l’audio).
Pour qu’un Lecteur Réseau soit capable de profiter des avantages d’un NAS UPNP, il faut naturellement que lui aussi comprenne le langage UPNP. 

Les lecteurs réseaux
Un lecteur réseau UPNP est  connecté par Ethernet (câble) ou Wifi (sans fil) à un réseau domestique. Il est capable de « trouver » les NAS UPNP sur le réseau, de se déclarer « Récepteur de Flux » et/ou « Récepteur de Fichiers », et de demander leur transmission au NAS qui s’exécute.

Après ce qui a été dit sur les différences majeures entre « transmission de fichiers » et « transmission de flux audio », il est clair que la transmission de fichiers, strictement insensible au jitter, est de très très très loin préférable.

Une fois que le fichier est « sur place », dans le lecteur réseau (c’est un poil moins simple que cela, le fichier arrive par « morceaux », qui sont stockés temporairement sur le lecteur, « bufferisés »), on se retrouve EXACTEMENT dans la même situation que celle d’une platine CD!!

Le « fichier » du lecteur réseau c’est le « CD » de la platine CD. Identique au bit prêt, si le fichier est le rip d’un CD, et il est SUR PLACE, comme l’est le CD sur une platine CD.

La suite des opérations est alors identique à celles d’une platine CD:

  • Décodage de la piste (CD) ou du fichier (lecteur réseau): transformation des données en flux audio
  • Transmission à un DAC (externe ou intégré) du flux audio
  • Transformation du flux audio numérique en signal analogique (électrique)
  • Transmission du signal analogique  à un amplificateur
  • Transmission du signal analogique amplifié à des enceintes
  • Transmission du son aux oreilles :D

Si c’est un flux audio qui arrive au lecteur réseau (et les lecteurs réseau sont aussi nombreux à savoir aussi recevoir le flux audio de radios internet), celui-ci, qui a nécessairement subi un jitter préalable, est simplement transmis au DAC.

Sur ce principe de fonctionnement, il est clair que les lecteurs réseau doivent pouvoir lire les pistes d’une clé ou d’un disque dur, en USB, parce que c’est l’interface la plus courante, la transmission des fichiers se faisant alors par « simple » lecture de la clé ou du disque dur USB.

Conseils et conclusions
Si vous craquez pour un lecteur réseau, essayez de comprendre comment il fonctionne. Est-ce qu’il est capable de recevoir des flux de données (fichiers), des flux audio? Est-ce qu’il a un DAC intégré? Quelles sont sinon ses connections de sortie vers un DAC?

Et sur votre NAS, ai-je bien un activé un « serveur multimédia »? et non un « serveur audio »?

La standardisation de ce type de lecteur et que j’appelle de mes vœux ici, me semble être la clé du succès de la dématérialisation.

  • Brancher deux fils sur l’amplificateur comme pour une platine CD (voir ne rien brancher du tout si l’ampli est intégré)
  • Brancher la prise de courant
  • Mettre une clé USB contenant des pistes, comme on met un CD, et appuyer sur « Play ».

Avec ces caractéristiques, le  grand public pourra être atteint. Atteint et convaincu.
On peut imaginer quelques « sophistications » comme un NAS (disques durs multimédia réseau en plus de la clé USB), et toute la gamme de lecteurs, de 50€ à 30000€.

Le « principe » de fonctionnement est celui d’une platine CD:

  • Lecture des données audio (fichier ou CD)
  • Décodage des données et création du flux audio
  • Transport vers le DAC (interne ou externe)
L’innovation là dedans ne provient pas de l’architecture d’ensemble qui reste la même. Mais elle provient:
  • du remplacement du CD par des supports variés, SANS création de jitter:
    • un NAS
    • un disque dur Multimédia réseau
    • un disque dur USB
    • une clé USB
  • de la possibilité alors offerte de lire des formats autres que celui du CD
  • de la possibilité de progresser côté Studios par la mise au point de nouveaux formats, numérisation, etc.
  • de la possibilité de progresser côté lecteurs, SANS changer de matériel ou de support physique, par les upgrades de firmwares et de logiciel interne de ces lecteurs

Publié dans Exemples de systèmes, Les lecteurs réseau | Pas de Commentaire »

Le jitter en bref

Posté par dematetcd le 1 octobre 2012

Le jitter, c’est « gigue » en français.

Un signal audio (voir la page « Les principes ») comprend des informations d’horloge, comme le tic-tac d’une montre mécanique, ou la pulsation d’une montre à quartz.

Les champs magnétiques ont la propriété (particulièrement désagréable dans le monde audio) de perturber les signaux d’horloge (clock en anglais), de les « décaler ».

Le jitter en bref dans Le Jitter, Kesako? jitter-300x234

Or notre oreille est très sensible à ces (même infimes) décalages, à ces incohérences dans l’enchaînement des sons par rapport au moment exact où ils devraient être produits.

Cela explique la nécessité, dans la conception de produits audiophiles du choix de composants les moins « rayonnants ». Les alimentations notamment.

Cela explique aussi le son très « numérique » des premières platines CD où le traitement de ce phénomène n’était pas vraiment pris en compte.

Publié dans Le Jitter, Kesako? | Pas de Commentaire »

 

Erick Yuber |
Quadrumane Productions |
Le Blog de Cocktail |
Unblog.fr | Créer un blog | Annuaire | Signaler un abus | RADIO BEAUCHASTEL
| Ralassbirecordz12
| Vocalibre