Question

J'ai quelque chose comme:

    void createSinewave( short * array, int duration, int startOffset,
float freq, float amp ) ;
    void createSquarewave( short * array, int duration, int startOffset,
float freq, float amp ) ;

D'autres fonctions « slide » une forme d'onde d'une certaine fréquence basse à une certaine fréquence élevée, et d'accepter deux paramètres de fréquence.

En utilisant seulement ces fonctions, je suis en mesure de créer une variété de sons .. grosse caisse, un vieux son feu laser école, et un tas de choses qui sonnent comme des pas. Je n'ai pas été capable de synthétiser un son de type de caisse claire.

Toutes les suggestions sur la façon de générer un? Quelles sont les fréquences de mélanger et en quelles quantités les mélanger? D'autres types de formes d'ondes à utiliser de sinusoïde et carré et triangle?

Kind of inspiré par 64 k exécutable concours.

Était-ce utile?

La solution

Les tambours sont souvent synthétisés par de courtes rafales de bruit, par exemple blanc, rose ou brun bruit .

Parmi ceux-ci, le bruit blanc est le plus facile à générer: il suffit de remplir votre tableau avec des échantillons aléatoires, choisis indépendamment avec une probabilité uniforme. bruit Brown est également assez facile.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top