- ベストアンサー
direcetsoundでmp3再生方法
DirectSoundでmp3の再生方法が分かりません MSDNや検索で調べたのですがその部分だけのサンプルを見つけることが出来ませんでした 私にも分かりやすい情報はないでしょうか 環境 ・Microsoft Visual Studio .Net2005 ・C++ ・DirectX9
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
再度登場です。補足に対する回答ですが、もしかしたら元のファイルに無音状態があったりしませんか? 単純にそれならファイルを変更すれば済みますが、そうじゃないならDirectShowだけでは厳しくりますかね・・・・ そうなってくると、エンコード自体をDirectShowでやってDirectSoundに実データを渡すか、 mp3のエンコードプログラムを自前で入手し組み込むか・・・・・・ 双方一筋縄ではいかなくなります。そして自前のエンコードプログラムでやるのはフォーマットのアルゴリズム 的に権利関係が面倒なので、公開目的ならオススメしません。DirectShowをオススメしたのも万が一そこを 突っ込まれても、最悪マイクロソフトのせいに出来そうだからです。(まあここら辺は私は苦手なんで そもそもmp3を使わずに何とかしますけどね。)
その他の回答 (1)
- aho0xff
- ベストアンサー率12% (218/1771)
回答No.1
まあDirectShowを使うのがいろいろな意味で面倒は無いでしょうね。 てなわけで、なんかシンプルっぽいプログラムを参考URLにあげて起きます。
質問者
補足
ありがとうございます。 DirectShowを使ってみたのですが今度はループ再生がうまくいきませんでした。 wavでもmp3でも最初に戻るときに音が1秒くらい途切れてしまうようです。 この対策はないでしょうか?
お礼
とりあえずACMを利用してmp3⇒wavに変換、それをDirectSoundで再生していたのですがそれもやはり特許の問題にひっかかるのでしょうか・・・ このプログラムはフリーゲームの開発でサウンドファイルがかさばるのでmp3がやはり必要です。 DirectSoundはwav、DirectShowはmp3というふうに使い分けてみます。 いろいろと説明していただいて、ありがとうございました。