Page 2 sur 6

Publié : 29 déc. 2004, 00:55
par bluebird
A mon avis Naro ce ne sont pas avec les outils traditionnels, mais avec un nouvel outil mathematique (ce que veut dire sigir, je pense).
Si j'ai la reponse impulsionnelle d'un espace, et qu'ensuite j'enregistre une voix dans cet environnement... il doit bien y avoir un moyen de retrouver un grande partie de l'information "voix" en retirant la "composante continue" reverberation, par une sorte de déconvolution...
Mais j'avoue on se heure à un premier probleme, les pertes issues de l'action des phases.

Ca ne sera probablement pas un outil utilisable en temps reel car du principe même de la reverb, "ce qui n'est pas encore" depend de "ce qui est". Donc ce qui "ne doit pas être" doit etre retiré de "ce qui sera".
Nan, c'est pas de la philo :lol:

Je pense que sur le papier, si on connait la reveb, et on connait le signal final on peut connaitre le signal propre.
Seulement la realité est plus complexe, l'algorythme à mettre en place n'est pas simple, sinon ca serait deja breveté et vendu par Steinberg, Apple, Motu, Digidesign, et consors :)

Publié : 29 déc. 2004, 01:28
par Invité
Voilà, c'est ça.
Je me dis que la réverbération numérique n'est que des calculs et je me demande pourquoi on ne peut pas calculer à l'envers, à partir de l'analyse du son puisqu'on sait aussi analyser des choses.

Le son de la réverb est assez significatif et reconnaissable pour un humain. Peut-être qu'un logiciel a plus de mal.

Bien sûr, ce ne serait qu'un dégrossissage.

Publié : 29 déc. 2004, 10:18
par adsr
le seul souci c'est que chaque solution (calcul) serait propre à un seul et unique lieu......une sorte d'altiverb à l'envers....

Publié : 29 déc. 2004, 10:33
par naro
d'accord,ok pour le principe.

Mais pour que le logiciel fonctionne,il faudrait l'emprunte de l'espace comme vous dites mais il y a bien d'autre probleme.
L'emprunte varie suivant l'emplacement de la source dans un meme lieu ,donc de multiple choix.(altiverb propose plusieur emplacement,plusieurs prises avec divers type de micro pour un meme lieu et les resultat en sont tous differents)

ca me parait complique mais bon,sait on jamais.Apres tout,qui aurait parie que l'on pourrait faire autant de chose avec nos ordis de nos jours?

Publié : 30 déc. 2004, 01:34
par Fix
Le problème c'est qu'une reverb n'est pas juste une convolution. Le son est également filtré en étant renvoyé par une surface. Et puis les sons réverbérés sont à leur tour réverbérés. Mais bon ça ne fait que compliquer le problème.
Non le véritable problème est qu'il faut connaître l'emplacement et la direction de la bouche qui parle et celle des micros, et la réponse impultionnelle de la pièce pour chaque emplacement de la source et des micros. Le tout dans la même configuration que lors du tournage (objets, personnes, meubles, etc...).
A mon avis, même si le calcul est possible, on passe plus de temps et d'argent à mesurer la réponse de la pièce qu'à refaire la scène en post-synchro.
Sinon on peut toujours essayer de simuler l'acoustique de la pièce par le calcul, mais on risque de passer 3 jours à rentrer tous les paramètres de chaque tissu, de chaque meuble. C'est déjà pas possible pour simuler la reverb d'un lieu alors pour l'enlever...

Publié : 30 déc. 2004, 09:37
par bluebird
Mon idée, à la base, c'est qu'au moment de la prise de son, se prenne également la reponse impulsionnelle (et tout dépendra alors de la qualité de la prise de cette RI) qui permette les calculs ulterieurs. A partir de là tout y sera inclu, chaque tissu, chaque matériel diffusant, absorbant, reverberant...

Au même titre qu'on enregistre du silence, on enregistre la RI.

Je vais prendre un exemple simple : il y a sur ce site une personne qui chante (au hasard : Cecgwen). Elle s'enregistre dans son petit bureau aux murs bien brillants avec la jolie fenetre à 80 cm du micro. Lorsqu'elle me fournis ses pistes dry (hors-mi le souffle) j'ai le droit aux reveberations de sa piece. Si j'en connais la RI, j'amerais pouvoir "élaguer" le reste. Car couper les queue de reverb etant impossibles sur les parties chargées

Pour l'instant ca ne serait utilisable que dans des conditions extrèmes (plan fixe, dans un seul axe, piece isolée, etc...) Mais mon idée c'est une base... et de cette base, voir quels algoritmes on peut en tirer pour optimiser, accoustiquement et surtout psycoacoustiquement.

Je rappel le principe theorique (super simplifiée et un peu fausse) de la Reponse Impulsionnelle : c'est la reponse à une impulsion (temporelle), or on a f=1/T
puisque T = 0 (c'est une impulsion, toute l'energie est dans l'amplitude et pas dans la frequence), f= infini.

Une impulsion couvre toutes les frequences du spectre. Donc prendre la reponse impulsionnelle revient à connaitre la reponse d'un environnement à chaque frequence (en electronique c'est une fonction de transfert).
Convolué avec le signal émis revient à connaitre la reponse de cet environnement aux signal considéré.

Maintenant si je "connait" le signal résultant et un des deux signaux de reference (en l'occurence la RI), il devrait etre possible de trouver le signal source en grande partie (90 - 95% ca devrait etre deja pas mal). Presque aussi simple qu'une équation à une inconnue :lol:

Bon okay, c'est super theorique, c'est pas utilisable patriquement en l'état, etc...
Mais ca pourrait etre une piste interessante de nouvelle generation plugin de "nettoyage" de piste, nan?

Publié : 30 déc. 2004, 10:44
par Fix
Dans ces cas là ok. Moi je voyais tout de suite une prise de ciné, avec les acteurs qui jouent et tout.

Juste un petit détail, la réponse impulsionnelle c'est en mode transitoire, alors que la fonction de transfert c'est en mode stationnaire. C'est là qu'est toute la différence. Une fonction de transfert c'est super facile à mesurer, alors qu'une réponse impulsionnelle on a déjà du mal à obtenir deux mesures qui se ressemblent avec le même matos, à 30s d'intervalle (pour l'avoir fait en labo).

Mais pourquoi pas, c'est à tester...
Moi j'ai pas trop le temps en ce moment mais si y'a des gens qui veulent se mettre à Mathlab. Je pense que la première approche consiste à simuler une pièce simple pour tester et développer l'algo. Mais c'est coton. Perso j'ai bossé sur la rétro-propagation du son: en gros on prend le son à 1 m de la source avec une matrice de micros et on obtient une image de la pression acoustique dans le plan de la source. Ca sert (entre autre) à trouver les pièces qui font du bruit dans un moteur de voiture.

Publié : 30 déc. 2004, 12:35
par bluebird
Le boulet qui s'appel invité c'est moi :)
Fix a écrit :Juste un petit détail, la réponse impulsionnelle c'est en mode transitoire, alors que la fonction de transfert c'est en mode stationnaire. C'est là qu'est toute la différence. Une fonction de transfert c'est super facile à mesurer, alors qu'une réponse impulsionnelle on a déjà du mal à obtenir deux mesures qui se ressemblent avec le même matos, à 30s d'intervalle (pour l'avoir fait en labo).
Je ne sais pas ce qu'il en est précisément pour le son et les mesures physiques dans la pratique (j'en fais trop peu) mais mathématiquement la fonction de transfert et la reponse impulsionelle diffèrent de peu... :

La transformée en z de la réponse impulsionnelle d'un système discret est identique à la fonction de transfert du système.
La transformée en z de la réponse d'un système discret peut s'exprimer à l'aide de la formule:
Y(z)=H(z)U(z), où U(z) est la transformée en z de l'entrée.
Dans le cas particulier d'une entrée de type impulsion d'amplitude 1, U(z)=1.


Pour info pour ceux qui se demandent ce qu'est la transormée en z (Fix j'imagine que tu sais) est une forme particulière des transformée de Fourrier (FFT) non pas en continu (signal analogique), mais discret (échantillonné).

A l'occase j'essaierai ca tiens... un signal simple (genre sinus) passé dans une reveb à convolution (Spacedesigner en l'occurance) puis essayer de faire le programe qui va bien (mathlab ou scilab ou un JMax - Reaktor ne gère pas les fft grrrr...) pour déconvoluer la chose à partir de la RI utilisée dans space designer et du signal résultant. On va voir de combien je me plante :)

Hem... mais comme fix... un peu beaucoup de truc à faire pour le moment. Mais je trouve l'idée séduisante (merci SDO) :)

Publié : 30 déc. 2004, 13:20
par Fix
J'imagine qu'on peut passer de la réponse impulisonnelle à la fonction de transfert en admettant que les signaux sont causaux (il faudrait vérifier ça dans un bouquin). C'est une approximation qui marche bien en général.

Un signal causal est un signal qui commence à la date 0 (début de l'expérience) et qui ne s'arrête jamais.

Enfin bon, je crois qu'on a dépassé la limite en terme de théorie théoricienne, le mieux serrait d'essayer.

Publié : 17 janv. 2005, 15:33
par bluebird
Apres une rapide recherche digestive post dejeuner, il semblerait que des algoritmes de déconvolution dédiés aux reverbs existent déjà bel et bien. Certains tournent sour mathlab, d'autres sont des executable (PC, bien sur).

Je me dis que pour du sound design ca peut etre une nouvelle piste de sculpture sonore interessante (retirer à un signal une reverb qui n'existe pas, ce doit etre rigolo).