忍者ブログ
ブログに書かれている内容は、リアルで喋っちゃ駄目だぞっ!
[603] [601] [600] [596] [595] [594] [593] [591] [589] [585] [586]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

前回のwave解析ツールのソースをちょちょいといじり、出力データをエクセルで開いてみました。



既存の波形編集ツールなんかで見られるのと同じ……なのかな?

当初の目標は、waveファイルの音楽データから音階や音色を判定するプログラムの作成です。

音色の判定は難しいだろうと思うので、まずは音階の判定からやってみたいと思います。


音楽における音階、つまり「ド」とか「レ」みたいな音の高さは、波形の周波数で決まります。

例えば「普通のド」なら261ヘルツ。 「普通のファ」なら350ヘルツ。

C#の.NETにはビープ音を特定の周波数で鳴らす事が出来るメソッドがありまして、

どの周波数を何秒ならすといった方法で、エリーゼのためにをビープ音で演奏するプログラムを作った事があります。

つまり、周波数が分かれば音階が分かるんです。


周波数を調べるにはどうすれば良いか?

中学の理科の授業だかで、オシロスコープを使った電波や音波の勉強があったと思います。

音波では、波の高低が大きいと音量が大きく、波の数が多いと高い音になる……はず。


で、波の数を調べるって事は……。

プログラムの処理として考えれば、値が正か負かを毎回チェックして切り替わったタイミングを

秒単位のデータでカウントしていけば良いんじゃないでしょうか。

この時点では、値の大きさ(絶対値)は無視できます。


こことか読んでみると理解できるかと思いますが、実際の波形データは沢山の周波数が合成されており

この方法で判別できるのは単一の周波数のみのデータです。

聴力検査なんかで聞く「ピーーー」って音です。


とりあえず、この「ピーーー」の周波数を調べるのと

ファイルのヘッダ情報から処理を分岐する部分の実装を目標にやってみようと思います。
PR
KKK(きっときっと楓ちゃん)
当ブログは、shuffle!に登場する楓ちゃんを応援しています。
ブログ内検索
アクセス解析
最新コメント
[05/01 盥]
[02/27 めそ…あ、いや、何でもない]
[11/27 レオン]
名雪かわいいよ、名雪

忍者ブログ | [PR]

Design by Dress
Material by tudu*uzu