6

MP3 用の OpenGL ビジュアライザーをペット プロジェクトとして作成することに興味があります。

拡張現実と組み合わせて使用​​されているビジュアライザーを誰かが披露しているこの youtube ビデオに出くわしました。

http://www.youtube.com/watch?v=SnshyLJSpnc#t=1m15s

そのビデオを見てください。ただし、そのビデオの拡張現実の側面は無視してください。拡張現実ではなく、ビジュアライザーを作成することにのみ関心があります。

音楽に関連するこれらのパターンを生成するために、どのような種類のアルゴリズムが使用されましたか? 見ると、視覚化のいくつかの異なる方法のように見えるものを見ることができます。最初のものは独特の外観を持っています:

最初のものは、レンダリング領域上を移動する波のように見えました: 代替テキスト

別の「モード」では、視覚化が同心円の中心を中心に移動するように見えました。 代替テキスト

オーディオプログラミングに精通している人なら誰でも、どのようなアルゴリズムを使用して同様の視覚化を生成できますか? 最初のアルゴリズムはどのようなアルゴリズムを使用しましたか? それとも同心円のもの?

音楽に基づいてこれらのビジュアライゼーションを生成するために使用されたアルゴリズムを教えていただけると、非常に助かります。

4

1 に答える 1

8

まず、これらはすべて FFT アルゴリズム (高速フーリエ変換) に基づいているように見えます。これは、特定のタイム スライスの音波を取得し、それを XY スペクトル ライン グラフに分離できます。ここで、X は周波数スペクトルを表します (通常は対数ベース)。 20hz から 20,000hz まで)、Y はそれぞれの異なる周波数での音の振幅または音量を表します。

最初のビジュアライゼーション (ビデオの前半のフラットで無色のビジュアライゼーション) を見ると、まさにこれが飾られていない形で表示されます。低い音は左側にピークとスパイクとして表示されますが、高い音は中央と右側に表示されます。これは古典的なフーリエ変換マッピングです。(実際、このビデオの最大の欠点は、イントロダクションの後の後半で、左から右への FFT マッピングに欠陥があり、最高音と最低音のほとんどが左端と右端のカットオフになっていることです。ビジュアライゼーション)。

ここから彼は、この 1 つの基本的なトリックにさまざまな複雑な装飾を加えていきます。最初に彼は非常に基本的なカラー マッピングを追加します。波形の高さはその色に直接マッピングされます: 赤 (最低) から濃い青/藍色 (最高) まで、古典的な ROYGBIV パターン (赤、オレンジ、黄、緑) に従います。 、ブルー、インディゴ、バイオレット)。高さはその周波数の音量にも対応することを忘れないでください。私が知る限り、彼はこの同じカラーマッピングを一貫して使用しています。

以降のすべての装飾とバリエーションは、プログレッシブ タイム マッピングをいじるさまざまな方法のように見えます。最初は、視覚領域の前面に波形をマッピングし、徐々にそれらを遠ざけるようにします。これにより、周波数が左から右に、音量 (および色) が下から上に表示される、連続的に実行される 3D 曲面グラフを効果的に作成します。そして時間は前から後ろへ。これは、最初の写真にあるものです。

他のすべては、これのますます洗練されたバージョンであり、時間 (および時間のみ) をより複雑な方法でマッピングします。たとえば、あなたが2番目に示した円形のものでは、彼は真ん中の明らかな極の周りに非常に高速な放射状のスイープパターンで時間をマッピングしていると思います.

于 2010-02-05T21:12:56.280 に答える