Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Analyse du signal audio et génération d'OSC en conséquence #176

Open
Normandeau opened this issue Jan 5, 2022 · 1 comment
Open

Analyse du signal audio et génération d'OSC en conséquence #176

Normandeau opened this issue Jan 5, 2022 · 1 comment
Labels
enhancement New feature or request UdeM Priority

Comments

@Normandeau
Copy link
Member

Normandeau commented Jan 5, 2022

Préparer ControlGRIS afin qu'il puisse analyser le signal audio et en fonction des descripteurs audio, exporter des données OSC qui génèrent des trajectoires issues du signal lui-même.

@Normandeau Normandeau added enhancement New feature or request UdeM Priority labels Jan 5, 2022
@NicolaGiannini
Copy link

NicolaGiannini commented Feb 27, 2024

Je laisse ici une description de MapSPAT, avec l'idée de s'en inspirer éventuellement pour ajouter certaines fonctions de MapSPAT dans ControlGRIS.

Développé avec Jean-Philippe Jullin depuis 2023, l'objectif principal est de créer une spatialisation liée aux variations du spectre sonore en temps réel. Exemple : une augmentation de l'intensité crée une trajectoire du bas vers le haut et les vitesses des deux variations, sonore et spatiale sont corrélées.

L'outil est un patch MaxForLive (qui fonctionne aussi comme patch MaxMsp standalone) qui peut être utilisée à la place ControlGRIS dans l'architecture de SpatGRIS.

La différence avec ControlGRIS est que MapSPAT reçoit l'audio de la piste. Cet audio est analysé par les descripteurs audio FluCoMa basés sur la perception humaine. Les données de cette analyse peuvent contrôler les paramètres spatiaux (j'utilise l'exemple du mode DOME, mais cela fonctionne aussi avec CUBE) Azimut, Élévation, Span Vertical et Span Horizontale. Il est donc possible de créer des trajectoires d'Azimut et d'Élévation et des variations des Spans liées aux valeurs obtenues par l'analyse des descripteurs. MapSPAT envoie les signaux OSC de spatialisation à SpatGRIS.

Chaque paramètre spatial ne peut être associé qu'à un seul paramètre sonore.
Chaque paramètre sonore peut être associé à plusieurs paramètres spatiaux.

Les utilisateur-rice-s peuvent créer les correspondances qu'iels souhaitent entre les paramètres sonores et spatiaux. L'interface est illustrée ici.

Interface

Voici quelques exemples d'utilisation.

Ici, la Loudness contrôle l’Azimut et le Span Horizontale. La Loudness est mise à l'échelle à 291 % pour augmenter sa portée et le paramètre de lissage est au maximum pour avoir une variation plus uniforme. L'azimut commence à 292 degrés avec un Range de mouvement à 100 %.

Loudness.mov

Ici, le Pitch contrôle l'élévation et l'azimut, créant ainsi une sorte de spirale. Ici, la hauteur du son change par une variation continue (glissando).

Pitch.mov

Ici, le Pitch contrôle l'azimut et l'étendue verticale. La plage d'analyse est réglée entre 60 et 599Hz. Ici, la hauteur du son change en fonction des intervalles de notes.

Pitch2.mov

Ici, le centroïde du spectre contrôle tous les paramètres spatiaux. L'analyse du centroïde est réglée entre 110Hz et 8,59kHz.

Centroid.mov

Ici, la largeur du spectre, Spread, contrôle l'azimut.

Spread.mov

Ici, l'analyse détecte la différence entre un son bruité et un son à hauteur repérable. On a appelé cette analyse Noise et ici les données issues contrôlent tous les paramètres spatiaux.

Noise.mov

Ici, la vitesse de répétition du son, Speed, contrôle l'azimut. Pour cette analyse, il faut définir un seuil de volume audio, un algorithme par rapport aux différents types des matières sonores, une valeur minimale et une valeur maximale de temps par rapport aux répétitions.

Speed.mov

Il existe un système de préréglages automatisables qui permet d'effectuer différentes affectations le long d'une pièce.

Je vous partage aussi le patch :

MapSPAT_v0.3.11.amxd.zip

Si jamais en glissant le device, il ne fonctionne pas, Jean-Philippe suggère de faire cela :

  • Utiliser une autre version de Max que la version Bundled: Live -> Preferences -> File Folder -> Max Application -> Browse (+ restart Live)

  • Mettre le device sur une piste dans Live

  • Ouvrir le device dans Max:
    download

  • Unfreeze le device:

download-1

  • Sauver le device
  • Refreeze le device

Les affectations de la matrice fonctionnent et sont sauvegardées avec le projet Ableton. Pour définir des paramètres spatiaux sans que les descripteurs audio aient une influence sur eux, il faut quand même mettre ce paramètre en correspondance avec un descripteur audio et régler le Range du paramètre spatial sur zéro. De cette manière les valeurs sont enregistrées avec le projet d’Ableton.
Il me semble que dans le système de préréglage, il y a quelque chose à régler.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request UdeM Priority
Projects
None yet
Development

No branches or pull requests

2 participants