2010-02-22 4 views
6

So habe ich so etwas wie:Procedural Snare Drum

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

Weitere Funktionen „slide“ eine Wellenform von einer niedrigen Frequenz bis zu einem gewissen Hochfrequenz und zwei Frequenzparameter akzeptieren.

Mit nur diesen Funktionen konnte ich eine Vielzahl von Klängen erstellen. Kick Drum, ein Old School Laser Feuer Sound und eine Menge Dinge, die wie Schritte klingen. Ich war nicht in der Lage, einen Snare-Drum-Sound zu synthetisieren.

Irgendwelche Vorschläge, wie man einen erzeugt? Welche Frequenzen mischen und in welchen Mengen mischen sie sich? Andere Wave Form-Typen als Sinus und Square und Triangle Wave?

Art von inspiriert von 64 k executable Wettbewerbe.

+0

+1. Das ist einfach cool! –

Antwort

2

Trommeln werden oft durch kurze Störimpulse synthetisiert, zum Beispiel white, pink oder brown Rauschen.

Von diesen ist weißes Rauschen am einfachsten zu erzeugen: Füllen Sie einfach Ihr Array mit zufälligen Stichproben, unabhängig mit gleichmäßiger Wahrscheinlichkeit gewählt. Braunes Rauschen ist auch ziemlich einfach.

Verwandte Themen