Programmation d'effet reverb en Langage C - C - Programmation
Marsh Posté le 08-12-2006 à 15:46:39
Déja il faut que tu recherches les différents algorithmes pour générer les effets.
Le chorus, c'est une réinjection du signal avec une phase variable.
Le délai, c'est une réinjection pondérée et retardée temporellement.
Pour la réverb, soit tu te casses la tete, soit tu utilises plusieurs délais savamment réglés.
Mais je préfère te prévenir, ça va vraiment pas etre une partie de plaisir...
Le plus simple c'est encore de coder un conteneur de plugin DX ou VST, tu auras des miliers d'effets a dispo.
Marsh Posté le 08-12-2006 à 15:50:34
Le problème c'est que vu que celà fait partie des cours je n'ai pas le droit à d'autre logiciel que le code que nous génerons nous c'est à dire sous linux avec du Kwrite et autre éditeurs de texte dans le genre lol.
Donc pas le droits à des plugins qu'on recoderait normalement...
voilà merci que même et si d'autres ont des solutions je veux bien
merci
Marsh Posté le 08-12-2006 à 16:54:44
Citation : [07] Dans l'absence de réponses, il n'est pas nécessaire de 'upper' le topic toutes les 5 minutes.
|
Marsh Posté le 08-12-2006 à 17:04:01
<hors topic>
-Thx- jessaie de recoder les principaux instruments de la TR808 (a coup de sin , square wave etc) , pour les trucs simples (BD, CB,hats) ca marche bien mais ca manque un peu de punch, tu pourrait peut etre maider....
</hors topic>
Marsh Posté le 08-12-2006 à 17:13:49
red faction a écrit : <hors topic> |
Ca manque de punch dans quel sens ? Si tu parles de la dynamique de ton signal généré, pourquoi tu n'implémentes pas un compresseur-expenseur de base ? Quitte à tricher, pour gagner en dynamique sur tes attaques, tu peux multiplier ta sortie par :
1 + exp(-t / l )
avec t le temps actuel de ton signal, l la longueur de ton signal généré.
Ca va multiplier par 2 ton signal de sortie pendant un temps, puis doucement redescendre a ton signal de base.. une compression d'escroc
Marsh Posté le 08-12-2006 à 17:23:10
non enfait je me suis mal exprimmé: en fait les sons ne ressemble pas toujours a ceux de la 808 , par exemple les hats claquent beacoup moins fort que sur la vraie machine, j'ai essaye de plusieurs manières avec des filtres , white noise etc, mais comme je suis pas un expert la dedans...
en plus jessaie de coder ca avec le minimum de lignes possibles , car le but est de mettre tout ca dans ma demo 4k , (et pq pas faire une boite a ryhtme soft par apres)
je posterai le code au soir des instru que j'ai deja refait c pas tres long ...
Marsh Posté le 08-12-2006 à 17:26:08
-ThX- a écrit : Ca manque de punch dans quel sens ? Si tu parles de la dynamique de ton signal généré, pourquoi tu n'implémentes pas un compresseur-expenseur de base ? Quitte à tricher, pour gagner en dynamique sur tes attaques, tu peux multiplier ta sortie par : |
faut que jessaie ce truc , ca a lair terrible!! j'aime les trucs simple qui font de leffet!!
l'autre jour j'ai trouve un low/highpass filter qui faisait seulement qq lignes (et qui marche , teste et approuvé)
Marsh Posté le 08-12-2006 à 17:48:03
le lowpass le plus simple a coder amha c'est le moyenneur... le b.a.ba du traitement numérique: ( avec Yn signal sortie et Xn signal entree )
Yn = ( Xn + X(n-1) + X(n-2) ) / 3
Ca lisse ton signal, donc c'est un passe bas. Pour savoir la fréquence de coupure, faut calculer la transformée en Z de la fonction de transfert mais la c'est vraiment super-hs
Marsh Posté le 08-12-2006 à 18:46:07
Code :
|
enfait ca ressemble fort a ta methode, en gros ca fait une moyenne aussi ...
sinon javais trouve ca aussi qui fait low pass filter egalement + resonance, (mais c pas de moi)
Code :
|
je vais peut-etre creer un topic pour eviter de lui pourrir le sien....
Marsh Posté le 08-12-2006 à 22:17:53
J'utilise un filtre passe bas de second ordre comme ceci : (bon la, il y à deux filtres en cascade)
Code :
|
Cf mon blog pour écouter ce que ça donne.
Pour répondre à la question initiale, je conseil la lecture de cet excellent article.
Marsh Posté le 08-12-2006 à 15:33:51
Bonjour à tous et à toutes,
j'aurais aimé savoir si il y avait possibilité que l'on m'aide à créer un programme qui fera partie d'une bibliothèque en C dans mon IUT
On doit pour celà créer un fichier.c qui permettra aux futures personnes utilisant la bibliothèque en question de pouvoir faire des effets reverb,(delay et chorus) sur des sons
mais je ne sais pas exactement comment m'y prendre d'une part pour gérer des sons dans un programme en C et je ne sais pas non plus comment faire pour créer un programme qui ait cette fonctionnalité pourriez-vous m'éclairer un peu si ce n'est pas m'illuminer
Merci à tous et à toutes pour l'aide qui m'aura été apportée.