2012-01-11 9 views
1

私のプログラムは現在、wp7でMediaElementを使用して.wavファイルを再生しています。SilverlightでWaveファイルのサウンドビジュアライザ

非常に単純なビジュアライザー(波の振幅を示す数字など)を書きたいと思います。しかし、私はMediaElementから生のメディア情報をどのように入手するべきかについて全く知らない。

私はSalus MediaKit(MP3のみ)、ビート検出(複雑なアルゴリズムを含む)、WaveControl(リアルタイムでは表示されません)で検索しました。

オーディオ処理に精通している方なら、私が取ることのできるアプローチを指摘できますか?

答えて

2

メディア要素から生のオーディオデータを取得することはできません。計算を行う前にオーディオファイルにアクセスし、MediaStreamSourceクラスのGetSampleAsyncを使用してオーディオサンプルをMediaElementに送信する必要があります。 MSDN hereに関するドキュメントがあります。

Salute Media Kitは、mp3ファイルを最初にデコードして生のオーディオデータにしてからその操作を行うため、参考として使用できます。これを参照するためにRawMP3MediaStreamSourceクラスを見ることができます。 WAVファイルは圧縮されていないので、ヘッダー情報を取り除いた後に振幅を計算できるはずです。読むのがいいのは、uncompressed audio (PCM)がどのように格納されているかです。

関連する問題