Générateur d’Image de Forme d’Onde

CHAQUE ÉCHANTILLON LU, PAS UN SUR DIX MILLE
⚡ La plupart des générateurs de forme d’onde lisent un échantillon par colonne de pixels. Sur un morceau de trois minutes dessiné en 800 px de large, cela représente 0,01 % de l’audio — les transitoires disparaissent, et la forme change quand vous redimensionnez l’image. Celui-ci lit chaque échantillon et vous montre, côte à côte, ce que le raccourci aurait dessiné. Rien n’est envoyé.
Déposez un fichier audio ici
ou cliquez pour choisir — MP3, WAV, FLAC, M4A, AAC, OGG ou Opus

Un échantillon par pixel, c’est 0,01 % de l’audio

Un morceau de trois minutes en 44,1 kHz, c’est 7 938 000 échantillons. Dessiné en 800 px de large, chaque colonne de pixels doit représenter 9 922,5 échantillons. Presque tous les générateurs de forme d’onde en choisissent un seul et dessinent sa hauteur.

Cela revient à regarder 800 échantillons sur 7 938 000 — 0,0101 % du fichier. Ce n’est pas un résumé de la colonne, c’est un échantillonnage ponctuel de celle-ci, et échantillonner un signal très en dessous de sa propre fréquence est la définition même du repliement de spectre. Le résultat n’est pas « un peu moins précis ». C’est un portrait du rapport entre la fréquence du son et le pas des pixels, ce qui n’est pas une propriété de la musique.

Le même son, dessiné de plusieurs façons

Nous avons généré un son constant à pleine échelle — amplitude 1,0 du premier au dernier échantillon, 180 secondes — et l’avons dessiné en 800 px de large. Le vrai dessin est un bloc plein de hauteur 1,000. Voici ce que renvoie un échantillon par colonne quand la fréquence change :

SonUn échantillon par colonneChaque échantillon (crête)
100 Hz0,00361,0000
220 Hz0,00781,0000
261,63 Hz0,63611,0000
440 Hz0,01571,0000
441 Hz0,63521,0000
1000 Hz0,03561,0000
2000 Hz0,07101,0000

Audio identique, réponses de 0,0036 à 0,6361. À un hertz d’écart — 440 et 441 — le raccourci dessine une ligne plate puis une onde à 64 % de hauteur. Lire chaque échantillon renvoie 1,0000 dans tous les cas, parce que c’est ce qu’il y a dans le fichier.

Redimensionnez l’image et l’onde change de forme

C’est la partie qui trahit le procédé. Prenez ce même fichier de 440 Hz et redessinez-le à différentes largeurs, sans rien changer d’autre :

LargeurÉchantillons par colonneUn échantillon par colonneChaque échantillon
600 px13 230,00,00001,0000
700 px11 340,00,62591,0000
800 px9 922,50,01571,0000
1000 px7 938,00,61551,0000
1200 px6 615,00,00001,0000
1920 px4 134,40,51141,0000

Une forme d’onde qui change quand vous changez la toile ne décrit pas l’audio. Si vous avez déjà exporté une onde en deux tailles et trouvé la seconde bizarre, c’est pour cela.

Les transitoires disparaissent complètement

Une impulsion de 2 ms en 44,1 kHz, c’est 88 échantillons — 0,89 % d’une colonne de 9 922 échantillons. Lire un échantillon par colonne tombe dessus environ 0,89 % du temps. Nous avons construit une piste de clics de 360 impulsions à pleine échelle, une toutes les 500 ms, et nous l’avons dessinée :

MesureUn échantillon par colonneChaque échantillon (crête)
Colonnes montrant une impulsion0 sur 800360 sur 800
Colonne la plus haute0,00000,8973
Échantillon unique à pleine échelle trouvé (200 essais)0 / 200200 / 200
Impulsion de 2 ms trouvée (200 essais)3 / 200200 / 200

Une piste de batterie dessinée ainsi peut ne montrer aucune batterie. Pas une batterie plus faible — aucune : chacune des 360 impulsions est tombée entre les échantillons regardés, et le dessin est revenu en ligne plate.

Ce que coûte de le faire correctement

Lire les 7 938 000 échantillons et les réduire à 800 colonnes a pris 4,70 ms, meilleur de cinq essais, dans un navigateur ordinaire. Le raccourci a pris 0,00 ms. C’est toute l’économie, et elle achète un dessin qui n’est pas celui de votre audio.

Cet outil lit chaque échantillon et garde le minimum et le maximum de chaque colonne, ce qui survit au redimensionnement et ce qui attrape une transitoire. Vous pouvez basculer sur un échantillon par colonne dans le menu et voir votre propre fichier perdre ses crêtes, et la seconde toile montre cette comparaison par défaut pour que vous n’ayez pas à nous croire sur parole.

Le RMS est proposé aussi, et il faut dire qu’il n’est pas faux — c’est une autre grandeur. Le RMS d’une sinusoïde vaut 0,7071 contre une crête de 1,0000, donc une onde en RMS est 29,29 % plus basse qu’une onde en crête du même audio. Choisissez-en une et gardez-la ; un outil qui mélange les deux dans une seule image est incohérent avec lui-même.

L’ensemble des mesures, y compris le balayage en fréquence et les formes closes, est détaillé dans Pourquoi votre image de forme d’onde n’a pas de batterie.

Quels fichiers il peut ouvrir

Le décodage se fait dans votre navigateur, donc la liste est la sienne : MP3, WAV, FLAC, M4A, AAC, OGG et Opus se décodent. AIFF, WMA et APE non — ils lèvent une erreur de décodage sur des fichiers parfaitement valides. Si vous en avez un, convertissez-le d’abord avec le convertisseur audio, qui fait la conversion côté serveur, puis revenez. La page vous dit lequel des deux problèmes vous avez réellement rencontré au lieu de deviner.

Questions fréquentes

Mon audio est-il envoyé quelque part ?

Non. Le fichier est décodé par votre navigateur, réduit en colonnes dans la page, et dessiné sur une toile que vous téléchargez. Il n’atteint jamais de serveur, et c’est aussi pourquoi l’outil continue de fonctionner avec l’onglet hors ligne une fois la page chargée.

Pourquoi mon onde est-elle différente ici et dans un autre outil ?

Presque certainement parce que l’autre lit un échantillon par colonne de pixels et que celui-ci les lit tous. Sur un morceau de trois minutes, c’est la différence entre regarder 0,01 % de l’audio et le regarder en entier. La seconde toile de cette page dessine votre fichier des deux façons pour que vous compariez directement.

Quelle est la différence entre crête et RMS ?

La crête est l’échantillon le plus fort de la colonne ; le RMS est l’énergie moyenne de la colonne. Ce sont deux réponses correctes à deux questions différentes. Le RMS d’une sinusoïde vaut 0,7071 contre une crête de 1,0000, donc une onde en RMS est environ 29 % plus basse. La crête est le choix habituel pour une image de forme d’onde parce qu’elle montre les transitoires ; le RMS paraît plus lisse et plus proche du volume perçu.

Pourquoi mon fichier ne s’est-il pas ouvert ?

Pour deux raisons différentes, et la page les distingue. AIFF, WMA et APE ne sont décodables par aucun navigateur que nous ayons testé, même quand le fichier est parfait — convertissez ceux-là d’abord. Tout autre échec est un fichier abîmé ou mal étiqueté, et un message différent le dit.

Puis-je avoir un fond transparent ?

Oui, cochez Transparent et téléchargez le PNG. L’export SVG est transparent sauf si vous laissez le fond activé. Transparent est ce qu’il vous faut pour poser l’onde sur une vidéo ou sur une carte colorée.

PNG ou SVG ?

PNG pour tout ce qui part dans une vidéo ou une publication. SVG si vous comptez l’imprimer ou l’agrandir — une onde en SVG reste nette à toute taille parce qu’elle garde les colonnes sous forme de rectangles plutôt que de pixels. Le SVG est construit à partir des mêmes données de colonne que le PNG, donc les deux sont le même dessin.

Quelle durée de fichier peut-il traiter ?

La limite est la mémoire de votre navigateur, pas une règle de notre part — le décodage garde tout le fichier décompressé, environ 10 Mo par minute de stéréo en 44,1 kHz. Les fichiers très longs gagnent à être découpés d’abord avec le découpeur audio, qui vous laisse en plus dessiner exactement le passage voulu.

Normaliser change-t-il l’audio ?

Non. Rien n’est réécrit dans votre fichier — normaliser ne fait qu’ajuster le dessin pour que la colonne la plus haute atteigne le haut de l’image. Désactivez-le pour voir l’onde à son niveau réel contre le bord supérieur du cadre, ce qui est la vue honnête si vous comparez deux fichiers.