2012-03-18 3 views
3

音楽ビジュアライザーを作成しようとしています。私はそれを調べ、sound.sampledはデータを読むための良いライブラリのように見えます。ただし、jdkは.wavファイルのみをロードできます。ですから、私は.mp3を読み込むことができる柔軟なアドオンを探しています。私が使うことになるJDK 1.6で.mp3からデータを読み込むのに最適なアドオン

クラスはここにある: http://uk.answers.yahoo.com/question/index?qid=20100125081723AAdnYzf

P.S.あなたが以前に音楽のビジュアライザーを試したことがあるなら、Lemmeは知っています。

答えて

2

However, the jdk..

重要なJDKではなくJREです。

..can only load .wav files. ..

AudioSystem.getAudioFileTypes()によって返されるタイプ(のサブセット)をロードすることができます。 Java 7でAudioFileFormat.Typeのドキュメントをチェックすると、5種類のリストが表示されますが、最終的なチェックはJREが返すものです。 JMFのmp3plugin.jar

.. So I'm looking for a flexible addon that'll enable me to load .mp3.

はJavaSoundへのMP3デコーディングのサポートを追加するために、実行時のクラスパスに追加することができます。私はそれを探しに行ったそのジャー最後の時間を見つけることができませんでしたが、あなたは http://pscode.org/lib/mp3plugin.jar

Lemme know if you've attempted music visualizers before.

Music Visualizer

Yupで自分のサイトからそれを得ることができます;)


I made this wonderful starry background and thought the stars should twinkle and glow based on the music. Do you think it's possible to detect the odd instrument that's playing? Like drums or strings?

Iを最近私自身のプレーヤーを壊して、他のもので忙しくて、WinAmpを使って私のお気に入りのトラックをプレイし、WinAmpの(300+)ビジュアライゼーションのいくつかを見ていますffers。私が言及した理由は、私の痕跡は2種類あり、「オシロスコープ」のスタイル&「リサージュ」スタイルです。それぞれの例については、上記のYouTubeサイトで確認してください。

WinAmp OTOHは、見た目にはかなり違ったスタイルを提供しています。その中には、音楽に視覚的に密接に結びついているものや、完全に無関係なもの(自分だけの美しいアニメーション)があります。私は音楽へのリンケージ(私のソフトウェアのようなトレースそのものを表現することを超えて)を持っていて、信号のボリュームにグラフィックスを載せていることがあります。

音量を計算する正しい方法は、デシベル(dB)単位で計算することですが、私のソフトウェアでは、各チャネルのRMSを検出する簡単なアルゴリズムを実装しました。これらの音量バーはRasputinaトラックで見ることができます。

Visualization with RMS levels

彼らは(の左下/右)、そのイメージで特に明確ではないですが、私はあなたが彼らが&プラン「脈動のために良い基礎を見やすくしている見つけることだと思うthe video &見ますあなたがしている星の種類の効果(基本的な明るさを乗算する数値)。星を周波数によって異なるように(例えば、低音、高音、高音)、スペクトル分析のようなものを探す必要があります。高速フーリエ変換はこれを行う方法の1つです。

+0

私はディスパラクシアを持っているので、JREは助けにならないと言っています。P ...リンクには大変感謝しています。 私はこの素晴らしい星空の背景を作って、星が輝き、音楽に基づいて輝くはずだと考えました。演奏中の奇妙な楽器を検出することは可能でしょうか?ドラムや弦のように? –

+0

アップデートを参照してください。 –

+0

はい私は高速フーリエを調べましたが、私は興奮しています:D ..今私にとって難しいことは、実際にこの作業をする時間を見つけることです。 –

1

Javazoomには、mp3形式のライブラリがあります。私はそれを自分自身を使用していませんでした

http://www.javazoom.net/javalayer/javalayer.html

。しかし、私は他の人がうまくやったことを知っています

ミックスから楽器を抽出するためのツールが現実になりましたが、それらがJavaで実現されているかどうかはわかりません。私はそれが可能だと思っていますが、かなりの努力と現時点での成功は限られています。 Javaの側面では、 "C"ファミリ言語(リアルタイム保証の欠如:ガベージコレクションのタイミングのばらつき、スレッドの切り替え)に比べて、このようなことをやりにくくする必要があります。

+0

Javaでは計算が多少なりとも瞬時に行われます。それはいつもかかっている絵です。だから私はopen-glを使用しています。ガベージコレクションについては、必要なオブジェクトをすべて作成してから、新しいオブジェクトを作成するのではなく、それらを継続して使用することができます。私ができるだけ効率的にするなら、それは何の問題もないはずです。 :D –

+0

クール!あなたが何を思いつくのを楽しみにしています。ところで、あなたはProcessing(別名Proce $$ ing)を見たことがありますか?私はそれを使って作成された魅惑的なビジュアライザーをいくつか見てきましたが、それはJavaの上に構築されています。 (例:flight404の作業http://vimeo.com/2120027) –

+0

あなたはこのProce $$ ingの話を正確には何ですか?それは有望に見えます。 –

関連する問題