"Crosstalk"という名前のC++オーディオライブラリを作成しました。
クロストークは、オーディオシステムの作成とルーティングを可能にするリアルタイムのC++オーディオエンジンです。
は、ここでは、あなたのmp3ファイルを再生することができる方法の例です:クロストークに含ま
XtSystem system;
XtMp3Decoder mp3Decoder;
XtAudioDevice audioDevice;
long md = system.addComponent(&mp3Decoder);
long ad = system.addComponent(&audioDevice);
system.connOutToIn(md,0,ad,0);
system.connOutToIn(md,1,ad,1);
mp3Decoder.loadFile("../05 Tchaikovski-Swan Lake-Scene.mp3");
mp3Decoder.play();
は、例えば、XcodeとのVisual Studioプロジェクトです。
クロストークをダウンロードして、APIのドキュメントとライセンスの詳細hereをチェックすることができます。
EDIT:ボリュームを設定するという点で
:あなたがMP3デコーダ出力とオーディオデバイスの入力の間に直列に配線することができ、「XtGain」と呼ばれるクロストークに含まれている成分があります。これにより、オーディオストリームがスピーカーに到達する前に音量を設定することができます。
EDIT(2012年1月12日):
クロストークは、 "DSPatch" と呼ばれるオープンソースプロジェクトに置き換えられました。 DSPatchは本来、音声処理だけに限定されないクロストークの背後にあるルーティングエンジンのアップグレードバージョンです。 DSPatchを使用すると、ほぼすべてのタイプのプロセスチェーンを想像できるように作成してルーティングすることができ、個人的および独自の使用のために自由に使用できます。
downvoterからの情報はありますか?私は音楽やMP3プレーヤーを作るつもりはない。私はsystem()に関係しないmp3を簡単かつ直接的に演奏したいのです。 PlaySound()と同じように簡単にするAPIはありますか? – user987280