音の合成 ― 2011/11/05 23:57
少し勉強しているのは音の合成なんですが、ステップとしてWAVファイルの作成を手始めにしました。WAVファイルはフォーマットが決められてる割にヘッダのサイズとかは指定しなくても作りっぱなしで鳴る様で比較的簡単に矩形波やサイン波を作るコトができました。
次に二つの音を重ねるコトを以前からしたかったのですが、知ってる人に聞くと加算すれば良いと言う回答がきました。でも考えたらおかしいんですよね。音を加算すると二つの音がオーバーフローを起こす場合があります。これが解決出来なかったので、今まで出来ませんでした。
コチラを見ると、最大値を超えない値で扱ったら良いと書いてあって、マジ?と思いこの通りしてみると、和音ができあがりました!本当に足すだけで和音になりますね(笑)
矩形波は簡単に思いついてました。二つの音が最大値の場合は最大値、最大値と最長値の場合は0にすると言う単純な仕組みを繰り返したら和音が出来てました。
サイン波が出来たら多分二つのWAVファイルの合成なんかも出来ると思います。速度さえ間に合ったらマイコンでも出力出来ると思うので、簡単な楽器や、音が重なる「へぇ~」ボタンも作ってみたいと思います。もちろん今更ですが(笑)
サイン波で作ったドミソとSingerSongWriterのサイン波で作ったドミソを比べると、和音の感覚は同じだったので、多分成功してると思います。あまりに素の音過ぎてクリアな感じはしますが、楽しい一日でした!!!
次に二つの音を重ねるコトを以前からしたかったのですが、知ってる人に聞くと加算すれば良いと言う回答がきました。でも考えたらおかしいんですよね。音を加算すると二つの音がオーバーフローを起こす場合があります。これが解決出来なかったので、今まで出来ませんでした。
コチラを見ると、最大値を超えない値で扱ったら良いと書いてあって、マジ?と思いこの通りしてみると、和音ができあがりました!本当に足すだけで和音になりますね(笑)
矩形波は簡単に思いついてました。二つの音が最大値の場合は最大値、最大値と最長値の場合は0にすると言う単純な仕組みを繰り返したら和音が出来てました。
サイン波が出来たら多分二つのWAVファイルの合成なんかも出来ると思います。速度さえ間に合ったらマイコンでも出力出来ると思うので、簡単な楽器や、音が重なる「へぇ~」ボタンも作ってみたいと思います。もちろん今更ですが(笑)
サイン波で作ったドミソとSingerSongWriterのサイン波で作ったドミソを比べると、和音の感覚は同じだったので、多分成功してると思います。あまりに素の音過ぎてクリアな感じはしますが、楽しい一日でした!!!
最近のコメント