Historique: Spectrum3d
Aperçu de cette version: 10
Spectrum3d : affichage des harmoniques en 3D
Spectrum 3D affiche un spectrogrammeen 3D; la souce audio peut être le microphone, un fichier audio, ou bien jack. Il peut être lancé en temps réel sans Jack (voir les remarque importantes à ce propos). il est également tactile multitouch en option. Il utilise les bibliothèques libres Gstreamer, SDL, OpenGl, Gtk+ et uTouch-Geis et est sous licence GPL.
Il peut être télechargé ici
Installation
1. Installer les dépendances:
Elles sont toutes dans le gestionnaire de paquet Synaptic.
- - gcc, pkg-config;
- - libgtk+-2.0-dev;
- - lidsdl1.2-dev et libsdl-ttf2.0-dev;
- - libgstreamer0.10-dev;
- - gstreamer0.10-plugins-bad, gstreamer0.10-plugins-bad-multiverse, gstreamer0.10-plugins-ugly et gstreamer0.10-plugins-ugly-multiverse (pour lire les fichiers tels que les mp3);
Si on veut le support de Jack :
- - libjack-dev (pour jack1) ou libjack-jackd2-dev pour jack2);
pour le suport tactile 'multitouch' (écran tactile and pavé tactile dans Natty):
- - libutouch-geis-dev;
1) - désinstaller libutouch-geis-dev et libutouch-geis des depots;
- taper dans un terminal : sudo apt-get build-dep libutouch-geis-dev (pour avoir toutes les dépendances nécessaires);
- télécharger les sources sur le site de uTouch-Geis(https://launchpad.net/canonical-multitouch/utouch-geis) et suivre les instructions du fichier INSTALL, comprenant les étaped ./configure, make, install.
2) une autre méthode plus facile est d'installer les paquets deb pour Natty sur Maverick. Installer d'abord libutouch-geis1 et ensuite libutouch-geis-dev .
Pour les autres distributions, les dépendances devraient être similaire. uTouch-Geis commence être porté sur d'autre distibution telles que Fedora ou Gentoo.
2. Compiler et installer :
1) dans un terminal, se rendre dans le répertoire où se trouvent les sources :par example, si les sources sont dans le répertoire '/home/victor' :
Copy to clipboard
cd /home/victor/spectrum3d-0.2-2
2) dans un terminal, taper :
Copy to clipboard
./configure
ajouter:
Copy to clipboard
--enable-jack
Copy to clipboard
--enable-realtime
Copy to clipboard
--enable-geis
Copy to clipboard
./configure --enable-jack --enable-realtime --enable-multitouch
L'ordre des arguments n'a pas d'importance.
3) dans un terminal, taper :
Copy to clipboard
make
4) dans un terminal, taper :
Copy to clipboard
sudo make install
Utilisation
On lance Spectrum3d via le menu->Applications->Son & Video ou bien en tapant dans un terminal :
Copy to clipboard
spectrum3d
On voit alors l'interface graphique de commande.
Choix de la sources sonores :
Les sources sonores sont le micro (intégré au PC ou externe), un fichier audio ou bien une source sonore provenant de Jack; le choix de formats de fichiers supportés est très large, puisqu'il s'agit de toute le gamme fournie par Gstreamer. Pour les fichiers sonores, les boutons ">>" et "<<" permettent d'avancer ou de reculer de 5 secondes dans la lecture. On peut sélectionner plusieurs fichiers qui seront lu à la suite. Lorsqu'on appuie sur le bouton 'Play' l'affichage en 3d commence avec les fréquences en X, l'amplitude en Y et le temps en Z.
Gamme de fréquences analysées et affichées :
Spectrum3D analyse le spectre auditif jusqu'à 20 000 Hz. Le zoom le plus précis est de 1000 Hz; par ailleurs, l'affichage peut commencer plus haut que 0; par exemple, on peut afficher un zoom sur les fréquences allant de 2000 à 4000 Hz. La précision maximale est de 2 Hz. Par défaut, le zoom appliqué affiche les fréquences de 0 à 6000 Hz.
Choix de la vitesse de défilement :
6 Vitesse possibles.
Echelle :
Les cases à cocher 'Text' et 'Lines' font apparaître des échelles numérique et de graduations; la case à cocher 'Panels' fait apparaître des "paneaux de séparation" verticaux parallèles aux lignes, donc la hauteur peut être réglée par le curseur 'Panel height'.
Représentation temporelle :
Le curseur 'Depth' détermine l'axe du temps : à 0, il n'a qu'une représentation instantanée du spectrogramme produit au moment présent; à 1, on voit les 100 spectrogrammes précedents; à 2, on en voit 200.
Amplitude de la représentation du signal sonore :
Curseur 'Gain'.
Changement de la perpective :
Après lancement et affichage des harmoniques en 3d, on peut modifier la perspective en faisant une rotation dans les 3 aes ou une translation dans les 3 axes. Ceci se fait par des commandes au clavier, à le souris (avec ou sans clavier) ou avec contrôle tactile (écran ou pavé tactile).
| ACTION | COMMANDE CLAVIER | COMMANDE SOURIS | |
| Play/pause | Barre d'espace | ||
| Stop | Echap/Escape | ||
| Rotation autour de l'axe des X | Flèche haut/bas | Curseur de la souris vers le haut/bas | |
| Rotation autour de l'axe des Y | Flèche droite/gauche | Curseur de la souris vers la droite/gauche | |
| Rotation autour de l'axe des Z | 'c' + Flèche haut/bas | 'c' + curseur de la souris vers le haut/bas | |
| Translation le long de l'axe des X | 'x' + flèche droite/gauche | 'x' + curseur de la souris vers la droite/gauche | |
| Translation le long de l'axe des Y | 'y' + flèche haut/bas | 'y' + curseur de la souris vers le haut/bas | |
| Translation le long de l'axe des Z | 'z' + flèche droite/gauche | 'z' + curseur de la souris vers le haut/bas | |
| Augmentation/diminution du Gain | 'g' + Flèche haut/bas | 'g' + curseur de la souris vers le haut/bas | |
| Augmentation/diminution du début du zoom | 's' + Flèche haut/bas | ||
| Lecture par petits échantillons | 'v' + flèche droite | ||
Remarques importantes
1. Bien qu'il s'agisse de 3D avec OpenGL, l'installation des pilotes permettant l'accélération 3D n'est pas nécessaire, même si celle-ci peut améliorer la qualité du rendu.
2. Spectrum 3D est assez gourmand en ressources, vu l'analyse en temps réel des données et leur affichage; 3 aspects peuvent être importants : la puissance du processeur, la puissance de la carte graphique, le type de noyau (générique, preempt ou RT). Si votre machine a des ressources limitées, il vaut mieux démarrer Spectrum 3d avec une largeur de fenêtre à 700, et un intervalle de temps à 15 (réglabls dans Menu -> Edit -> Preferences), et puis voir ce qui est possible.
3. Le mode Temps Réel sans Jack alloue à Spectrum3d une priorité supérieure et permet donc que Spectrum 3d ne soit pas rallenti par d'autre processus concomittants. En aucun cas, cela ne réduira les ressources nécessaires. AVERTISSEMENT IMPORTANT: Pour utiliser cela, il faut éditer ou créer le fichier '/etc/security/limits.d/audio.conf' en y placant quelque chose de similaire :
Copy to clipboard
@audio - rtprio 95 @audio - memlock unlimited
Si Jack est déjà installé avec le temps réel activé, ceci est en principe déjà fait.
Il faut également appartenir au groupe 'audio' :
- soit dans Système->Préférences->Utilisateurs et Groupes ->Gérer les Groupes, choisir 'audio' et s'inclure comme membre du groupe en cochant son nom;
- ou bien en tapant dans un terminal :
Copy to clipboard
sudo adduser ${LOGNAME} audio
Après ces manoeuvres, il faut redémarrer.
Si on a actvé l'option 'temps-réel' sans faire ces manoeuvres, il faudra démarrer Spectrum3d en tant que 'root'
Copy to clipboard
sudo spectrum3d
4. Multitouch support is still experimental for now; it is provided by the uTouch-geis API. For now, the whole screen receives fingers input for Spectrum3d while Spectrum3d is running (input is not limited to the Spectrum3d window). On the other hand, when Sprectrum3d is running, the mouse pointer cannot be used from the touchpoint on the screen, but the mouse pointer is still drived by the mouse. This behaviour could be the same in Natty, if you have a touchpad that supports multitouch : the touchpad only receives input as multitouch gestures, and you cannot use it anymore to drive the mouse as long as Spectrum 3d is running.
You'll find more information in the 'Multitouch' file in the Doc directory.