音を見るロゴ





作成時期・98年10月

画像作成・GATEWAY2000 P5-133

使用言語・VC++




赤ランプ   赤ランプ   赤ランプ






現代人なら、こんなモノを必ず見たことがあると思います。


グライコ


グライコなどと呼ばれている、コンポやラジカセについているアレです。 これはその瞬間の音を周波数分析して、重低音や高音がどの程度鳴っているかを 示すメーターです。よく、これを見ながら重低音を強めたりボーカル帯域を強めたりしますね。

グライコは時間と共に上下に一生懸命に動いていますが、この「上下」を時間と周波数の両方に 対してプロットするとどうなるでしょう。つまり、横軸に時間、縦軸に周波数、「上下」を 明るさでプロットしてみることを考えます。プロットに使う音楽は、本当は有名な曲を 使いたいのですが、なにぶん著作権の厳しい世界ですので、ここでは筆者がはるか昔、 まだ作曲を趣味としていたころに作った曲を使います。そのイントロの部分を使って、 2次元プロットを実行しますと、こうなります。


128


縦軸はグライコの各バーに相当し、横軸は時間です。 各バーが時間的に激しく動いている様子がわかります。ところで、このような 周波数分析では周波数の解像度Δfと、時間の解像度Δtの間に、いわゆる不確定性関係 Δf・Δt?const が成り立ちます。つまり、周波数についての情報を より詳しく知るなら時間についての情報が犠牲になり、時間についての情報をより 詳しく知るなら周波数についての情報が犠牲になります。

上の図では、周波数の情報が少なく、時間の情報が多いように見えます。そこで、 範囲を変えず、解像度だけずらして、周波数による情報を上げて再びプロットしてみます。 すると、こうなります。


128


いやあ、なんともいえない雰囲気の図が得られました。これは一種のウェーブレット変換の図です。 変換には最も安直な方形窓を通したフーリエ変換を使っていますから、学術的には全く低レベルな 図でありますが、この図は数理科学美術館の目的を達しているでしょう。

さて、この図の縦軸は周波数ですから、縦軸はそのまま音程に相当します。 今回使った音楽はピアノの伴奏でオーボエが鳴っています。 上の図において、細切れの横線がピアノで、3本の明るい横線がオーボエです。 なぜ3本かというと、1本ならただの正弦波(音叉の音)ですが、3本合わさることで、 オーボエという音色になっているのです。良く見ると縦に等間隔に3本並んでいるのが わかるでしょう。等間隔に並ぶということは倍音で構成されていることを意味します。

さらに、良く見ると、オーボエの線が細かく上下にスライドしている箇所があります。 つまり、これはメロディーそのものなのです。


楽譜との対応


こうして見ると、プロットの図から、どの部分がどの音に対応するか、だいたい わかってきます。もし、特定の楽器とプロットの図の一部が対応付けられたなら、 その音だけ取り去ったり抜き出したりすることが可能となります。

ためしに、オーボエと思われる部分を以下のように消してみます。


処理後


これをフーリエ逆変換して元の波形データに戻し、再生すると、みごとに オーボエの音のみが消えて、ピアノの伴奏だけになります。 (逆変換の際は境界条件など細かい問題が発生するが、この問題は隣り合う方形窓を 互いに重ねることでクリアしている。また、WAVファイルはサイズが巨大になるため、 処理は 16bit で行ったが、書き出し時に 8bit に圧縮している)

処理前( 313kB )

処理後( 313kB )

(フォーマットは Windows の WAVE ファイルです)

ヘッドホンなどで聞くと、わずかにオーボエの音の残骸を確認することが できます。

もっとも、普通はこんなにうまくいくことは珍しく、オーケストラや ポップミュージックなど、いろいろごちゃごちゃ入っている音楽では この方法で特定の楽器を抽出するのは実際、不可能か、非常に困難です。 楽器を容易に聞き分けられる人間の耳が優秀であることを再確認させられます。

さて、ここで、フーリエ変換をおさらいしてみましょう。フーリエ変換には 実数のフーリエ級数などいくつか亜種がありますが、最も自然な変換の式は 以下です。



これを解説するのが目的ではありません。言いたいのはフーリエ変換は 複素数を扱うということです。たまたま変換されるデータが 実数であるだけです。当然、変換されたデータは複素数になります。 先に示した燃えるような図は、各複素数の絶対値(大きさ)を プロットしたもので、x + yi = r exp(iθ) のrについて のみの情報です。ですから、位相情報がまだプロットされていません。

位相をプロットするには、「位相で見る波動関数」で使った「色による位相表現」を 使います。振幅とあわせて位相もプロットすると以下のようになります。


位相


一つの正弦波に、勝手に決めた時間幅でフーリエ変換を方形窓で適用 すると、位相は時間変化とともに等間隔でぐるぐる回転することはちょっと考えれば わかるでしょう。この図はそれを意味しています。(ある場所を横にたどると 虹色に変化している)

位相は相対的な情報ですから、ある時の位相がいくらであるかという ことは意味がありません。その変化に意味があります。ですから、少しでも 意味のある図をプロットするなら、位相を時間で微分しなければなりません。

微分すると、一つの音はおおよそ一つの位相に対応します。これをプロットしたのが 以下の図です。色の塊があちらこちらに見えます。


位相を時間で微分


ただ、この位相が実のところ何を意味しているかは筆者にはよくわかりません。 一つの音が色で明確に特徴つけられるので、エディットが楽になるという ことぐらいしか思い付きません。

まあ、でも、きれいなので、載せました。

さて、今回の作品は、あるソフトを作って実現しました。 アップロード先はこちらです。


Wave Master


↑その作ったソフト。名前は「Wave Master」。周波数解析の 他に、速度を変えない音程変更機能、音程を変えない速度変更機能などもサポートしている。 ただ、Pentium133MHzでは重過ぎ。







赤ランプ   赤ランプ   赤ランプ



   リンク:[ メニュー ] [ 入口 ] [ 作者 ]
   メール:Morikawa_Hiroshi@yahoo.co.jp