ページ 11

曲の長さの取得

Posted: 2012年9月02日(日) 16:49
by だんごさん
DxLibでmp3などの音楽データの曲の長さを得る方法が思いつきません。
そういう関数があるか探しましたが見当たりませんでした(多分)。ここの制作ゲームAerobeatPlusでは曲の長さはデータとして外部からの情報になっているようですが、音楽だけで長さを得る方法はありますか?
知能不足か情報不足で申し訳ないですが「こういう方法でできるよ」とだけ教えてもらえれば幸いです。

OS:Windows7
VC++ 2008
C言語

Re: 曲の長さの取得

Posted: 2012年9月02日(日) 17:07
by softya(ソフト屋)
非公開関数として、GetSoundTotalTimeがありますがmp3で使えたかは良く分かりませんので動作確認してみてください。時間情報の精度として問題があるかもしれません。

extern int GetSoundTotalTime( int SoundHandle ) ; // サウンドハンドルの音の総時間を取得する(単位はミリ秒)

Re: 曲の長さの取得

Posted: 2012年9月02日(日) 17:30
by だんごさん
そんな関数あったんですね…。
mp3形式の音楽もミリ秒で取得できました。
ありがとうございました。

Re: 曲の長さの取得

Posted: 2012年9月03日(月) 00:43
by Dixq (管理人)
DXライブラリは便利な関数が非公開関数として大量にあるので、DxLib.hの中をのぞいてみるといいですよ。
非公開関数というだけあって、突然なくなるかもしれませんが・・。