7

数年前、私はDShow / DSoundの周りにいくつかのutilライブラリを作成して、WindowsC++アプリケーションでMP3を再生できるようにしました。それはまだC++/ MFCアプリでそれを行う通常の方法ですか、それとも一般的なWindows APIに組み込まれているDirectXの領域ですか?

動機は、単にWAVに標準のWindows PlaySoundメソッドを使用し、Windowsまたはより複雑な機能をラップするために作成したもののいずれかによって提供される同様に単純なAPIを使用してMP3を再生できるようにすることです。

編集:これは、大規模な商用のクローズドソースプロジェクト用です。そして、私たちは物事を単純にプレイしたいだけで、図書館に多額のお金を払っても飛ぶことはありません。

4

6 に答える 6

7

DirectShow を使用できますが、DirectX の一部ではなくなりました。または、 BassFModmpg123 、さらにはlibwmp3などのサードパーティ ライブラリに依存することもできます。

DirectShow をもう使用したくない場合 (ただし、既存のコードが機能し続けるのに変更する必要はありません)、MCIを使用できます。

mciSendString("open la_chenille.mp3 type mpegvideo alias song1", NULL, 0, 0); 
mciSendString("play song1", NULL, 0, 0);
mciSendString("close song1", NULL, 0, 0);
于 2010-01-12T15:02:51.203 に答える
3

これは、任意のオーディオ ファイルを再生する簡単な方法です: http://msdn.microsoft.com/en-us/library/dd390090(VS.85).aspx

于 2010-01-20T16:02:24.150 に答える
2

MCI Windows 関数を使用できます。 https://msdn.microsoft.com/en-us/library/ms709626

MP3、WAV、MIDIなど、多くのオーディオファイル形式を再生できます。

私の記憶が正しければ、DirectX は必要ありません。

PlaySound 機能も役立つ場合があります。

于 2010-01-25T16:42:51.780 に答える
0

ライセンスを支払う必要がなく、社内で行いたい場合は、mp3 ファイルの解析を行い、それを XAudio2 に渡します。1 回 (最大で 2 ~ 3 時間) 実行すれば、いつでも使用できます。:P

于 2010-01-12T15:45:09.703 に答える
-1

BASSをご覧ください。非営利目的での使用は無料で、使いやすいオーディオ ライブラリです。

于 2010-01-12T15:02:48.053 に答える