• ベストアンサー

direcetsoundでmp3再生方法

DirectSoundでmp3の再生方法が分かりません MSDNや検索で調べたのですがその部分だけのサンプルを見つけることが出来ませんでした 私にも分かりやすい情報はないでしょうか 環境 ・Microsoft Visual Studio .Net2005 ・C++ ・DirectX9

質問者が選んだベストアンサー

  • ベストアンサー
  • aho0xff
  • ベストアンサー率12% (218/1771)
回答No.2

再度登場です。補足に対する回答ですが、もしかしたら元のファイルに無音状態があったりしませんか? 単純にそれならファイルを変更すれば済みますが、そうじゃないならDirectShowだけでは厳しくりますかね・・・・ そうなってくると、エンコード自体をDirectShowでやってDirectSoundに実データを渡すか、 mp3のエンコードプログラムを自前で入手し組み込むか・・・・・・ 双方一筋縄ではいかなくなります。そして自前のエンコードプログラムでやるのはフォーマットのアルゴリズム 的に権利関係が面倒なので、公開目的ならオススメしません。DirectShowをオススメしたのも万が一そこを 突っ込まれても、最悪マイクロソフトのせいに出来そうだからです。(まあここら辺は私は苦手なんで そもそもmp3を使わずに何とかしますけどね。)

参考URL:
http://www.initialt.org/lame/patent.html
daiga
質問者

お礼

とりあえずACMを利用してmp3⇒wavに変換、それをDirectSoundで再生していたのですがそれもやはり特許の問題にひっかかるのでしょうか・・・ このプログラムはフリーゲームの開発でサウンドファイルがかさばるのでmp3がやはり必要です。 DirectSoundはwav、DirectShowはmp3というふうに使い分けてみます。 いろいろと説明していただいて、ありがとうございました。

その他の回答 (1)

  • aho0xff
  • ベストアンサー率12% (218/1771)
回答No.1

まあDirectShowを使うのがいろいろな意味で面倒は無いでしょうね。 てなわけで、なんかシンプルっぽいプログラムを参考URLにあげて起きます。

参考URL:
http://www.geekpage.jp/programming/directshow/renderfile.php
daiga
質問者

補足

ありがとうございます。 DirectShowを使ってみたのですが今度はループ再生がうまくいきませんでした。 wavでもmp3でも最初に戻るときに音が1秒くらい途切れてしまうようです。 この対策はないでしょうか?

関連するQ&A