音楽ソフト->Windows->その他->ゆらぎ解析君  
  CDから取り出したWAVファイルを解析して、曲がもつゆらぎを調べ、「1/fのゆらぎ」にどれだけ近いかによって、曲を評価するソフトです。
ゆらぎ解析君は、こちらからダウンロードできます。
 
ソフトの目的
音楽を聴いたときに、人間が特にここちよく感じるゆらぎ(リズム)は、「1/fのゆらぎ」と呼ばれるものです。たとえば、モーツアルトの曲には、この「1/fのゆらぎ」をもつものが多く、本当かどうかは分かりませんが、曲を聴くと、人間であれば、脳からアルファ波が出たり、胎教にも良いとか、植物であれば、成長が促進されたり、と言ったことが起きると言われています。
CDショップに行くと、「アルファ波音楽」として、「1/fのゆらぎ」をもつ曲を集めたCDが売られていますが、このソフトは、自分が持っているCDの中から、「1/fのゆらぎ」をもつ曲を探すことができます。ただし、「1/fのゆらぎ」があるかどうかによって、曲の良し悪しを判断するものではないので、注意してください。このソフトでは、曲を解析して、「1/fのゆらぎ」に比べて、ゆらぎが多いか、少ないか、という尺度で、曲を評価します。
周波数成分の解析方法
ゆらぎ解析君は、一言で言うと、WAVファイルを解析し、周波数成分をグラフで表示するソフトです。周波数の解析には、FFTという手法を使っていますが、この手法では解析する長さ(換算が必要ですが、秒数と同じと思ってください)を指定するようになっています。単純に考えれば、解析する曲の長さを指定すればよいのですが、ここで制約があります。まず、指定する長さは、2の乗数(2、4、8、16とか)でなければなりません。また、長さを長くすると、指数的に、解析にかかる時間が長くなります。(とても待っていられません。)なので、このソフトでは、1つの曲をブツ切りして解析を行い、あとで、ブツ切りにした各部分の周波数成分の値を合計して、曲全体の周波数成分としています。
ゆらぎ解析君では、どれくらいの大きさで、ブツ切りにするかを「サンプル数」という項目で、指定できるようになっています。 このサンプル数によって分析幅がきまります。人間の可聴域と分析幅についての説明は、こちらにあります。

通常のCDに入っている音楽は、44100Hzというサンプリングレートになっています。1秒間に、44100ですから、上の図の2048という長さは、秒に換算すると、0.046秒になります。
グラフでは、上記の長さでブツ切りにした1区間の解析が終わるたびに、それまでに累積した値に加えて、表示しています。なので、解析をはじめた直後は、累積されている値に対して、新しく取得した値の与える影響が大きいため、グラフが大きく変動します。解析が曲の後半に進むと、累積されている値に対して、新しく取得した値の与える影響が、相対的に少なくなるため、グラフはあまり変動しなくなります。

 
ゆらぎの判定方法
ゆらぎ解析君では、「適度なゆらぎ」「過剰なゆらぎ」「過小なゆらぎ」などの結果をグラフとともに表示します。 解析した曲がどのような特性を持っているかは、グラフ表示を[対数グラフ]にすると分かりやすくなります。グラフの傾きが45度に近い場合は、「1/fのゆらぎ」と呼ばれる特性をもっていることになります。

ゆらぎ解析君では、上記の45度のラインを理想形と考え、解析した曲の周波数成分が、その線より、どれくらいズレているかで、「適度なゆらぎ」「過度のゆらぎ」「過小なゆらぎ」などの結果を判定します。

ちなみに、大雑把な傾向として、クラシックは45度くらい、ロックなど、激しい曲調のものだと、もっと傾きがきつくなっているらしいです。このような鋭い角度のグラフは、1/f2(fの2乗分の1)のグラフなどと呼ばれています。雑音だと、上の図のような90度の線になります。

ただし、解析の手法上、どのような曲でも、周波数の一番低いところと高いところで、歪ができてしまうようなので、まっすぐ45度のラインで判定するのではなく、すこし補正した曲線で判定しています。

この曲線をどのようにひくかの計算式は、試行錯誤の上、三角関数などを使用して、適当に考えました。問い合わせが多いので、該当部分のソースを掲載します。

for(i = 0; i < NumSamples/2; i++)
{
    double factor = cos(asin((double)i*2.0 * sample_facutor /(NumSamples/2)));
    guide_data[i] = factor*100.0;
}

上記の式について、さらに問い合わせが来たので、こちらのページで説明しています。

 

の図で、赤くなっている部分が、理想形から、はみ出しているところ、緑の部分が、収まっているところです。理想形から超えてしまったところだけでなく、理想の値に満たない領域も、赤くなっているのが分かると思います。

判定時には、上記のような、、「適度なゆらぎ」「過剰なゆらぎ」「過小なゆらぎ」などの結果とともに、数値が表示されるようになっています。最高点は、100点、最低点は0点ですが、無音の場合でも、52点になりますから、このあたりが実質上の最低点と思われます。 (0点になるファイルも存在するというメールをユーザーさんからもらいましたので、そのようなファイルもあるかもしれません。)得点が90点以上だと、「適度なゆらぎ」と判定します。
 
さらに詳しい説明が必要な方は・・・
毎年、卒論の時期になると、質問が寄せられます。
Q&A的なものを作りましたので、こちらをご覧ください。
解析結果の算出方法に関する詳細情報はこちらのページ