J'ai lu le livre DAFX d'Udo Zölzer sur l'effet de distorsion aux pages 124-125 et il dit qu'une simulation appropriée de la distorsion est donnée par la fonction:
Quelqu'un peut-il expliquer cette formule et quel type de signal nous obtenons?
D'après ce que je comprends, «x» est le signal échantillonné, c'est donc une séquence de nombres. Que signifie | x | signifier? Fait-il référence à la valeur absolue de x pour chaque valeur échantillonnée?
Donc, si je veux mettre en œuvre cette simulation de l'effet de distorsion,
- J'ai besoin de connaître la longueur de x (elle est donnée par le nombre d'échantillons)
- Dans une boucle, je dois calculer cette formule pour chaque valeur d'échantillon
- après la fin de la boucle, j'obtiens le signal déformé (sous forme numérique)
Après cela, je dois le convertir en un signal analogique pour pouvoir l'entendre.
audio
algorithms
c
digital
distortion
Elior
la source
la source
Réponses:
| x | désigne la valeur absolue - le x / | x | bit de la formule est là pour vous assurer que le signe de l'entrée est conservé dans la sortie. En ce qui concerne la mise en œuvre, oui, les étapes que vous avez répertoriées sont correctes.
la source
Grâce à l'intrigue dans la réponse d'Olli Niemitalo, je suis convaincu que la formule donnée dans le livre a une erreur de signe. La non-linéarité utilisée pour le fuzz ou la distorsion est toujours un type de fonction d'écrêtage lissé, qui comprime le signal d'entrée. Les petites amplitudes d'entrée subissent donc peu de changement tandis que les amplitudes d'entrée élevées sont (plus ou moins) légèrement écrêtées. Et le chiffre indiqué dans la réponse d'Olli fait exactement le contraire.
Je suis donc convaincu que la bonne formule devrait être
la source
Vous pouvez écrire le corps de la fonction directement dans Wolfram Alpha et il le trace:
Cela ressemble à une forme d' onde pour moi, et ceux-ci peuvent être utilisés comme vous le décrivez.
la source