質問

だから私は次のようなものを持っています:

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

他の関数は、波形を低周波数から高周波数に「スライド」させ、2 つの周波数パラメータを受け入れます。

これだけの機能を使うだけで、いろいろな音を作ることができます。キックドラム、昔ながらのレーザー発射音、そして足音のようなものがたくさんあります。スネアドラム系の音を合成できません。

生成方法について何か提案はありますか?どの周波数で、どのくらいの量で混ぜるのか?正弦波、方形波、三角波以外の波形タイプを使用できますか?

ある種のインスピレーションを受けたもの 64k 実行可能ファイル コンテスト。

役に立ちましたか?

解決

ドラムは、たとえば、短いノイズのバーストによって合成されることがよくあります。 , ピンク または 茶色 ノイズ。

このうち、ホワイト ノイズが最も生成しやすいです。均一の確率で個別に選択されたランダムなサンプルを配列に入力するだけです。ブラウンノイズもかなり簡単です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top