1

現在ゲームを作成中です。私のゲームは、ユーザーが送信した mp3 ファイルの音楽を使用して、物を配置する場所やレベルの移動速度などを決定します。mp3 に関する情報を読んだことはありますが、私はこれにかなり慣れていません。現在、使用している mp3 ファイル内のすべてのフレームを見つけました。ここからどこへ行けばいいのかわからない。私がやりたいことは、特定の時間 (毎秒など) に音楽の音波の周波数を測定し、その周波数に基づいて、ゲームに必要なことを行うことです。mp3 をデコードする必要があるかどうかはわかりません。これは大変な作業のように見えます。2 がない場合、またはフレーム内のバイトを読み取って変換せずに変換できる場合は、そうしたくありません。何でも解読。ゲーム エンジン FlatRedBall を使用して、これを c# で開発しています。私はライブラリを使用していません。私もこのゲームの販売を考えているので、出来れば他人のコードを使うのは避けたいと思っています。誰か助けてください。ここからの方向性が必要です。ヘッダーを解析してフレーム長を計算する方法は知っていますが、やりたいことの次のステップがわかりません...

4

2 に答える 2

0

音楽を無料の .ogg 形式に変換し、無料のライブラリを使用して再生します。

于 2012-10-18T00:15:32.420 に答える
0

注: これをコメントとして投稿するつもりでしたが、すぐに大きくなりすぎました。:)

独自の MP3 エンコーダー/デコーダーを作成するには、おそらくかなりの労力が必要です。おそらくあなたのゲーム自体に費やすほうがよいでしょう。ですので、ぜひオープンソースのライブラリを使ってみてはいかがでしょうか。

とはいえ、ほとんどの優れた MP3 ライブラリは LGPL/GPL ライセンスです。これは、動的にリンクする限り、商用環境で使用できることを意味します。また、バージョン 1.2.12 の時点で、SDL Mixer ライブラリは MP3 をサポートし、より寛容な zlib ライセンスの下にありますが、C# について言及しているため、安定した最新のバインディングが利用可能かどうかはわかりません。また、あなたのプロジェクトは最初から SDL で書かれていないため、統合するのは難しいかもしれません。

また、@pro_metedor が示唆したように、よりオープンな形式を使用すると、ライセンスの問題が解決する可能性があります。一般に、OGG は MP3 よりも優れた圧縮を実現します。これは、ダウンロード サイズ、帯域幅/リソースの使用量などにプラスになります。

しばらく買い物をして、少し柔軟になるようにしてください。きっと素敵なものが見つかりますよ!:)

于 2012-10-18T00:42:27.780 に答える