Un synthétiseur sonore basé sur le Web open source construit avec React, TypeScript et Tone.js. Ce polystème présente deux oscillateurs qui peuvent être joués en tandem en appuyant sur les touches de piano. Chaque oscillateur a quatre formes d'onde à choisir et est acheminé par une enveloppe d'amplitude, un filtre biquadratique et un égaliseur de trois bac permettant un contrôle total sur la forme et les fréquences du son. Le son peut être modifié davantage avec des effets, notamment le retard de rétroaction, le crusseur de bits, la distorsion et la réverbération. La sortie de l'instrument est également visualisée dans l'écran pendant que les notes sont en cours de lecture.
Démo en direct

Les synthétiseurs peuvent être assez intimidants si vous ne les connaissez pas, mais êtes assez simples une fois que vous comprenez ce que tout fait. Si vous êtes nouveau dans les synthétiseurs, je vous recommande de commencer en jouant les touches avec les paramètres par défaut et en ajustant lentement les paramètres de base comme les formes d'onde de l'oscillateur ou en jouant avec les effets avec environ 30% sur le bouton humide correspondant. Veillez à ne pas apporter trop de changements drastiques sur les paramètres que vous ne comprenez pas car cela peut être très fort!
A single cycle waveform looped to match a specific pitch which creates the synthesizer's base voices.
La forme de la sortie sonore par l'oscillateur. Peut être réglé sur: sinus, carré, triangle ou dents de scie.
La sortie du volume de l'oscillateur en décibels.
La position de départ dans le cycle de l'oscillateur en degrés. Par exemple, une phase de 180 ° commencerait à mi-chemin à travers le cycle de l'oscillateur.
Le signal de contrôle de désintension en cents. Par exemple, une désinténuation de 100 cents déplacerait le son en avant un demi-pas.
Astuce: essayez de définir un oscillateur à -1200 et l'autre à 1200 pour un effet cool!
An amplitude envelope which shapes the attack, decay, sustain, and release of the sound.
Le temps qu'il faut à l'enveloppe pour atteindre sa valeur maximale en secondes.
Après la partie d'attaque de l'enveloppe, la valeur tombera sur la durée du temps de désintégration à sa valeur de maintien en quelques secondes.
La valeur dans laquelle se trouve l'enveloppe après l'attaque de l'enveloppe est déclenchée avant la libération.
Le temps qu'il faut pour que l'enveloppe tombe à sa valeur minimale en secondes.
A biquad filter which blocks certain frequencies while allowing others to pass through.
Graphique qui visualise les données de fréquence (FFT) et la réponse en fréquence du filtre. L'axe des y est décibels et l'axe x est les fréquences dans Hertz (échelle de base de log).
La forme du filtre. Peut être défini sur: AllPass, LowPass, High Pass, Lowshelf, Highshelf, Notch ou Bandpass.
Remarque: Certains types ne sont pas affectés par certains paramètres, par exemple AllPass permet à toutes les fréquences de traverser les paramètres.
La goutte des décibels par octave.
Le Q ou le facteur de qualité du filtre.
La fréquence dans laquelle le filtre tombe.
Le rapport de la puissance de sortie à la puissance d'entrée du signal dans les décibels.
A feedback delay which postpones a signal and can feed the signal back into itself.
Le pourcentage du signal de l'effet qui passera à la sortie. 0% n'a aucun effet et 100% ne sortira que l'effet avec aucun du signal d'origine.
La durée entre le signal d'origine et le signal retardé en millisecondes.
La quantité de signal qui est réintégrée dans l'entrée de l'effet.
BitCrusher down-samples the incoming signal to a different bit depth. Lowering the bit depth of the signal creates distortion.
Le pourcentage du signal de l'effet qui passera à la sortie. 0% n'a aucun effet et 100% ne sortira que l'effet avec aucun du signal d'origine.
La profondeur du bit de l'effet.
A simple effect which alters a signal creating a distorted sound.
Le pourcentage du signal de l'effet qui passera à la sortie. 0% n'a aucun effet et 100% ne sortira que l'effet avec aucun du signal d'origine.
Le pourcentage de l'intensité de la distorsion.
A simple convolution which emulates the sound in a closed space with decaying noise.
Le pourcentage du signal de l'effet qui passera à la sortie. 0% n'a aucun effet et 100% ne sortira que l'effet avec aucun du signal d'origine.
La durée de la réverbération en secondes.
An EQ3 which provides three isolated frequency bins and can boost them, lower them, or leave them unchanged.
Le gain en décibels pour chaque bac de fréquence.
La fréquence de croisement basse / médiane.
La fréquence de croisement moyenne / élevée.
Le volume maître du synthétiseur.
L'octave de base du synthétiseur.
Les touches peuvent être jouées en les cliquant / les touchant, avec un clavier MIDI, ou avec votre clavier d'ordinateur avec les raccourcis clavier ci-dessous.
Les boutons peuvent être tournés en cliquant / touchant et en faisant glisser ou en les survolant avec votre souris et en faisant défiler.
Tenir le décalage pendant le défilement tourne les boutons plus rapidement.
Les curseurs peuvent être déplacés de haut en bas en cliquant / touchant et en faisant glisser ou en les survolant avec votre souris et en faisant défiler.
Tenir le changement tout en faisant défiler déplace les curseurs plus rapidement.
Ce projet a été créé comme une pièce de portefeuille pour pratiquer et acquérir de nouvelles compétences en développement frontal, en particulier à l'aide de react.js et de typeScript. Je voulais également limiter l'utilisation des bibliothèques externes et utiliser tous les CSS personnalisés pour le style.
Environnement
Framework audio Web
Langue
Essai
N'hésitez pas à contribuer en soumettant des problèmes ou en tirant des demandes sur GitHub. Les suggestions d'améliorations et les critiques constructives sont les bienvenues!
Vous pouvez me contacter en m'envoyant un message sur Linked In.