Se connecter
Se connecter

ou
Créer un compte

ou

Sujet Création d'un synthé sous Matlab (Choc par ici !)

  • 114 réponses
  • 7 participants
  • 14 299 vues
  • 9 followers
Sujet de la discussion Création d'un synthé sous Matlab (Choc par ici !)
Salut à tous et à Choc qui a intérêt à se ramener vite fait :ptdr:

Bon, je me suis acheté un Palm T|X pour pouvoir faire tourner dessus le séquenceur MIDI Bhajis Loops (basé sur un sampleur et sur des banques d'échantillons, une vraie tuerie ce soft !). Donc j'ai commencé à sampler plein de trucs à droite et à gauche pour en faire des WAV qui sont lisibles par ce logiciel.

Je me suis dit que c'était comme même dommage qu'il n'y ait pas de VSTis sur ce séquenceur, même si je sais pertinemment que de toutes façons, au vu de la puissance des CPU pour Palm, ça serait complètement impossible... Du coup je me suis dit que ça serait génial d'avoir un synthétiseur sur Palm, qui ne fonctionne pas en temps réel mais qui permette d'exporter des WAV pour les utiliser dans Bhajis Loops ! Ca serait parfait.

J'ai donc deux solutions pour faire ça : la première c'est de développer un soft avec un compilateur pour Palm OS, comme HB++... Ca a l'air un peu pénible comme même mais c'est faisable...

La deuxième solution, qui me convient le plus, c'est un Matlab like gratuit qui existe sur Palm OS qui s'appelle LyME ! Ainsi, j'aurais qu'à écrire le programme et changer les définitions de variables au début pour le paramétrer... En plus je crois qu'il y a des fonctions pour faire une vraie GUI donc c'est parfait. Le seul hic, c'est que ce soft ne fait pas encore l'import/export en WAV, mais j'ai contacté les developpeurs à ce sujet, donc ça sera peut être possible...Donc, en attendant, je vais m'y mettre sur Matlab !

En gros, si vous avez des conseils, je suis preneur... Je vais faire un truc de synthèse additive pour commencer avec 2 ou 3 oscillos, autant de filtres, un LFO etc. et ensuite il faudra que l'utilisateur spécifie un fréquence d'échantillonnage et une note/octave, pour créer un fichier WAV correspondant... Bref il me faut un truc versatile, qui crée une bonne variété de sons différents, et peut-être que je vais tester ensuite d'autres types de synthèse. Quelques suggestions ? Des remarques sur mon projet ?

Autre question en passant : qu'est-ce qui donne le caractère de tel ou tel autre synthétiseur numérique ? Est-ce les formes d'ondes (par exemple un sinus bruité modélise sur du sinus analogique au lieu d'un sinus numérique parfait), la nature des filtres ?

Choc > je suis en train de me plonger dans tes sources Matlab sur la synthèse, c'est très intéressant et ça va bien m'aider :bave:

Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape

Afficher le sujet de la discussion
31
Ouf ça y'est, j'ai réussi à faire mes passe-bas/passe haut du premier ordre, ce fut dur étant donné qu'internet est plein de fautes et que personne ne lâche jamais TOUTES les infos mais j'y suis arrivé :8) Si ça t'intéresse Choc, je te dirai la méthode, l'avantage c'est qu'avec Laplace tu vois instantanément la réponse fréquentielle d'une fonction H en regardant les poles et les zéros, donc une formule qui réalise des filtres Z à partir de filtres Laplace c'est super pratique :mrg:

Et j'ai regardé tes fonctions, y'en a aucune qui fait la conversion Laplace vers Z, donc il n'y a toujours pas de moyen de déterminer la réponse fréquentielle en fonction des poles/zéros de la transformée Z :?!:

D'ailleurs, je ne pourrais plus utiliser la fonction filter maintenant, je vais être obligé de faire le calcul de y(n) en fonction des x(n - k) et des y(n - k), étant donné qu'avec un LFO les coefficients des filtres ne sont pas fixes :|

Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape

32

Citation : Et j'ai regardé tes fonctions, y'en a aucune qui fait la conversion Laplace vers Z, donc il n'y a toujours pas de moyen de déterminer la réponse fréquentielle en fonction des poles/zéros de la transformée Z



Clair, t'es trop une b*te Choc. :oops2:

:clin:
33
Il s'éclate :ptdr:

Hors sujet : Ca t'intéresserait pas d'ailleurs des études là-dedans ?

Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape

34

Hors sujet : J'ai eu six en math au bac. :D:

35

Hors sujet : La note ça veut rien dire, mais faut comme même pas détester bouffer des maths toute la journée pour bosser là dedans :D:

Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape

36

Hors sujet : ouille! :mrg:

37

Citation : il n'y a toujours pas de moyen de déterminer la réponse fréquentielle en fonction des poles/zéros de la transformée Z



zp2tf: Zero-pole to transfer function conversion
[B,A] = ZP2TF(Z,P,K) forms the transfer function


freqz: Digital filter frequency response.
[H,W] = FREQZ(B,A,N) returns the N-point complex frequency response
vector H and the N-point frequency vector W in radians/sample of
the filter

Hors sujet :

Citation : Clair, t'es trop une b*te Choc.



Trop une bete, je sais merci :oops: :mdr:

38

Citation : freqz: Digital filter frequency response


OK ça peut servir :mrg:

Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape

39
Bon finalement j'ai laissé tomber Matlab et LyME, trop chiant tout ce bordel, je suis en train d'utiliser HB++ qui est une sorte de Visual Basic shareware (sans limitations en version gratuite sauf la licence commerciale), ça donne ça :



Je vais rajouter aussi un "Send FM" sur l'oscillo 2 pour aller sur le 1, et pour l'instant on peut juste ouvrir/sauvegarder ses paramètres et jouer les formes d'ondes basiques avec les paramètres définis dans Main. La partie chiante sera encore et toujours le filtrage, ainsi que l'interpolation des formes d'ondes du LFO (pour cause de performances pourrites, il est impossible de calculer les formes d'ondes en direct, tout est basé sur du sampling).

Développeur de Musical Entropy | Nouveau plug-in freeware, The Great Escape

40
Yo c'est la classe ton bidulle :bravo:

J'ai droit de sortit une alerte geek ici ou pas :idee: