Se connecter
Se connecter

ou
Créer un compte

ou

Sujet Distorsion de phase : des précisions.

  • 41 réponses
  • 7 participants
  • 6 352 vues
  • 2 followers
1 Distorsion de phase : des précisions.
Bonjour.

J'aimerais en savoir un peu plus sur la synthèse par distorsion de phase. J'ai lu ou entendu plusieurs choses à ce sujet, notamment qu'il s'agissait de lire des tables d'ondes simples à vitesse variable et dans les deux sens (je ne sais plus où), et d'autre part qu'il s'agissait d'opérer un déphasage de certaines hamoniques d'un signal complexe par rapport à la fondamentale (ici, chouette site, apparement...). Si cette dernière explication est bonne, cela signifie que les deux plus importants paramètres sont le déphasage induit et la fréquence de coupure.

Je voulais savoir ce qu'il en est exactement, si c'est cela ou si c'est plus subtil, ce qui ne m'étonnerait pas... Jé témanteu egzbligazion !...



Les questions annexes sont les suivantes :

- la synchro permet de renvoyer la forme d'onde d'un oscillateur esclave à son point de départ à chaque cycle d'un oscillateur maitre. Est-ce apparentable à la distorsion de phase dans un cas particulier ?

- un dispositif qui permettrait de déphaser les harmoniques d'un signal à partir d'une certaine fréquence permet-il de faire de la distorsion de phase ?
2
Eupeulà !!
3
Allez, il y a un bien un Choc ou un Gabou qui vont passer par là, non ?...
4
Oquet.

Je vais aussi jeter un coup d'oeil -pas pour ça spécialement- à ton PDF "l'audionumérique" que j'ai téléchargé il y a longtemps mais que j'ai retrouvé dernièrement.
5
Salut Stiive :8)

J’ai jeté un coup d’œil sur le synthèse par distorsion de phase sur ma nouvelle bible : Sound Synthesis & Sampling de Martin Russ.

Alors voila pour ce que j’ai compris…je garantie pas que c’est exact..le bouquin parle uniquement de waveshaping mais la synthèse par distorsion de phase peut être englobé dans la grande famille des synthèses types waveshaping.

Rappel sur le waveshaping.

Considère un signal audio e(t), la synthèse par waveshaping utilise une fonction h telle que la sortie du waveshaper soit y=h(e(t)). (h est appelé fonction de transfert, mais pas dans le même sens que les fonctions de transfert des filtres ou y est un produit de convolution entre la fonction de transfert du filtre et e(t))

Comme les signaux d’entrée et de sortie sont bornés par [-1,1], on s’intéresse à l’allure de h dans l’intervalle [-1,1] et à valeur sur [-1 1]. Lorsque l’on représente la fonction de transfert l’abscisse représente l’entrée c'est-à-dire e(t) et les ordonnées la sortie du waveshaper c-a-d y(t)

Quelques exemples :
Si h est une fonction linéaire de type h=ax alors h agit simplement comme un amplificateur car y=h(e(t))=a.e(t)…avec de la distorsion si a est supérieure à 1
Ce qui est intéressant c’est d’utiliser des fonctions non linéaires pour h, par exemple h peut être la fonction définit par
h=-0.5 dans l’intervalle [-1 :-0.5[,
h=a.x dans l’intervalle [-0.5 :0.5]
h=0.5 dans l’intervalle ]0.5 :1]

Dans ce cas si e(t) est une sinusoïde définit sur l’intervalle [-pi/2,pi/2]
y(t) aura l’apparence d’une sinusoïde pour t=[-pi/6 pi/6] car dans cette intervalle e(t) est compris dans l’intervalle [-0.5,0.5]
Dans l’intervalle [-pi/2 pi/6[ et ]pi/6,pi/2] y(t) sera égal respectivement à -0.5 et 0.5….Au niveau fréquentielle c’est intéressant car ca ajoute des harmoniques (surtout des harmoniques impaires du à l’apparence carré du signal)…mais que des harmoniques contrairement à la synthèse FM ou les fréquences peuvent être non-harmoniques (si la modulante n’est pas un entier de la porteuse)

Tu remarqueras que l’on peut faire plein de chose avec le waveshaping, comme modéliser les ouvertures de filtre passe pas. Tu peux en effet partir d’un signal e(t)=sin(2*pi*f*t) et utiliser au debut une fonction h linéaire (type h(x)=x) puis en fonction du temps tu change la fonction h pour terminer sur une fonction type h(x)=-1 si x appartient à [-1 0] et h(x)=1 si appartient à [0 1]….ca revient a ouvrir un filtre passe-bas sur un signal carré

En conclusion le waveshaping est une sorte de distorsion d’amplitude…

Note : Abynth possède un waveshaper

….Et au niveau de la synthèse par distorsion de phase …comment que ça marche ???

MAxMSP possède l’objet kink qui permet de faire de la distorsion de phase. Apres plusieurs tentatives voila ce que j’ai comme résultat…

Graphiquement je voie que la fonction h intervient sur e(t) comme ca
y=e(h(t)).

Si h(t) est une fonction linéaire de type h=t définit sur [0 2pi] et donc à valeur sur [0 2pi] pas de problème on retrouve y=e(t).
Maintenant si h est une fonction linéaire de type h=t/2 définit sur [0 2pi] et donc a valeur sur [0 pi] , y=e(t/2) …
Pour illustrer tout ça, si e(t) est un cosinus on a y=cos(t/2) pour t =[0 2pi]….c-ad- que l’on décrois de 1 à -1 en permanence sans jamais obtenir la partie croissante (car max(t/2)=pi, sur le cercle trigo on est dans la partie supérieure)….le signal de sortie y(t) est en fait un enchaînement de la première partie d’un cosinus coupé en 2…

Avec h=t/4, on a la partie décroissante du cosinus mais qui décroît au minimum vers 0. (donc un enchaînement de la première partie d’un cosinus coupé en 4)

En fait c’est une sorte de up sampling d’un facteur x d’une forme d’onde couplé avec un retour à l’origine de la forme d’onde tous les t ou t est le nombre échantillon de la forme d’onde original (la fondamentale f=Fe/t de la forme d’onde reste la même)…(dans le cas ou h(t=0)=0 sinon on boucle sur une autre partie de la forme d’onde downsamplé)

Sur MaxMSP la fonction h(t) est une forme d’onde du type dent de scie*2pi (amplitude qui croie donc linéairement de 0 à 2pi) et on règle son amplitude comme ça on peut faire en sorte que h(t) varie de 0 à pi ou de 0 à pi/4 etc…A noter que la fréquence de la dent de scie définit la fondamentale du signal de sortie y(t)….

Voila c’est ce que je constate…l’idéal pour utiliser tous ca c’est indéniablement MaxMSP…mais bon toi comme moi on aime pas trop l’ircam donc utilise absynth (waveshaping : distorsion d’amplitude) voir pure data .

je m’exprime moyennement bien :clin: donc si tu veux je peux te filer les courbes…
6
Wo je n'ai rien contre l'IRCAM : je n'avais qu'à faire une école d'ingé, le conservatoire, ou bien m'appeler Stiiiiiiive Henri. J'ai pureData, mais je ne me sens pas trop de mettre le nez dedans tout de suite ; j'ai un peu de boulot ailleurs. Par contre, j'essaierai peut-être avec un CSP qui tourne depuis peu sur mon ordinateur et qui est un peu pus accessible, apparement.

Tu t'exprimes en scientifique... j'ai derrière moi un tel cursus, donc je comprends plutôt bien. Il y a juste l'exemple de WaveShaping que j'ai un peu de mal à retrouver sur le papier, mais je ne me suis pas trop creusé non plus et puis j'ai compris l'essentiel.
Si tu as des courbes à disposition, je veux bien les voir.

Il y a quelque chose dont je voudrais être sûr.
Si -dans le cas de la distorsion de phase- on joue "un demi sinus", càd la partie positive, cette partie durera-t-elle T/2 (avec T=période du sinus) ou bien est-elle justement "time stretchée" pour garder la période du sinus entier afin de conserver la hauteur de la fondamentale ?

Parce que ce que je me demande, au fond de mon petit coeur de synthésiste en herbe, c'est si de la synchro d'oscillateur peut revenir au même ou pas. Parce qu'au fond, la synchro consiste aussi à tronquer une forme d'onde (slave) à chaque cycle d'une forme d'onde (master). Par contre ici, la fondamentale peut varier selon les réglages des fréquences du slave et du master.

Hors sujet : Où puis-je acquérir certains bons ouvrages en la matière ? Par exemple le Martin Russ ou un Curtis Roads ?

EDIT : chez ALAPAGE, par exemple.

7
En france c'est les cahiers de l'acme qui propose ces ouvrages

http://ourworld.compuserve.com/homepages/cahiersacme/ACMEHOME.html

Citation : Tu t'exprimes en scientifique... j'ai derrière moi un tel cursus, donc je comprends plutôt bien.



Bah oui, j'adapte mon explication à l'auditoire :8)

Citation : Si -dans le cas de la distorsion de phase- on joue "un demi sinus", càd la partie positive, cette partie durera-t-elle T/2 (avec T=période du sinus) ou bien est-elle justement "time stretchée" pour garder la période du sinus entier afin de conserver la hauteur de la fondamentale ?



elle est time-strecher (up samplé en fait...je me suis trompé auparavant) et elle a une periode T....
si tu up-sample un premier sinus de periode definit par N echantillons par un facteur deux, sa periode sera définit sur 2N, maintenant tu coupes le sinus upsamplé en 2, donc la periode sera definit sur 2N/2=N echantillons

Citation : si de la synchro d'oscillateur peut revenir au même ou pas. Parce qu'au fond, la synchro consiste aussi à tronquer une forme d'onde (slave) à chaque cycle d'une forme d'onde (master). Par contre ici, la fondamentale peut varier selon les réglages des fréquences du slave et du master.



Pareil :clin: je vois les choses de la meme facon
8
Upsamplée, dis-tu. Donc non ce n'est pas tout à fait pareil que la synchro qui n'utilise pas l'upsampling.

Merci pour le lien et la recherche !...

EDIT : le site que tu me mets en lien, je l'ai déjà un peu visité, mais il semble qu'il soit en friche : les dernières mises à jours datent de 1999. Qu'en est-il ?...
9
Tout ce que je sais c'est que le bouquin de Martin Russ je l'ai acheté chez eux (ils avaient un stand aux journées porte-ouverte ircam)
10

Hors sujet : Et par simple curiosité, combien l'as-tu payé ?...

11
Voici des infos et tutos sur la distorsion de phase :

- The Casio CZ series
- Tutoriel d'Algomusic
- The PD Synthesis
- PD/ iPD vs. FM-Synthesis
- How it sounds and New Waveforms


Un VSTi gratuit inspiré par les Casio CZ :
SONIC ASSAULT Kassiopeia!