Visualisation de forme d'onde dans Ruby
-
09-06-2019 - |
Question
Je suis sur le point de démarrer un projet qui enregistrera et éditera des fichiers audio, et je recherche une bonne bibliothèque (de préférence Ruby, mais prendra en compte tout autre chose que Java ou .NET) pour la visualisation à la volée des formes d'onde.
Est-ce que quelqu'un sait par où commencer ma recherche ?
La solution
Cela représente beaucoup de données à diffuser dans un navigateur.Les graphiques Flash ou Flex sont probablement la seule solution efficace en termes de mémoire.Les graphiques Javascript ont tendance à s'effondrer pour les grands ensembles de données.
Autres conseils
Lors de l'affichage d'une forme d'onde audio, vous souhaiterez effectuer une sorte de réduction des données sur les données d'origine, car il y a généralement plus de données disponibles dans un fichier audio que de pixels à l'écran.La plupart des éditeurs audio créent un fichier séparé (appelé fichier de crête ou fichier de présentation) qui stocke un sous-ensemble de données audio (généralement les pics et les vallées d'une forme d'onde) pour une utilisation à différents niveaux de zoom.Ensuite, lorsque vous zoomez au-delà d'un certain point, vous commencez à référencer les données audio brutes elles-mêmes.
Voici quelques bons articles à ce sujet :
Créer un affichage de forme d'onde audio
En ce qui concerne le code source, je recommanderais de parcourir le Audace code source.L'affichage des formes d'onde d'Audacity est plutôt bon et effectue probablement un type similaire de réduction des données lors du rendu des formes d'onde.
j'en ai écrit un :
http://github.com/pangdudu/rude/tree/master/lib/waveform_narray_testing.rb
,pseudo
L'autre option consiste à générer les formes d'onde côté serveur avec GD ou RMagick.Mais bonne chance pour compiler RubyGD.
Le traitement est souvent utilisé pour la visualisation et dispose d'un port Ruby :