ページ 11

SetLoopPosSoundMemを使用してのBGMのループ

Posted: 2011年4月03日(日) 14:25
by YYSS
~開発環境~
○Windows 7 Ultimate SP1
○Visual C++ 2010 Express
○DXライブラリ使用

DXライブラリの関数「 SetLoopPosSoundMem 」を使用して曲のループを行いました。、

指定時間からのループは出来たのですが、曲の終わりから指定時間に飛ぶ時に、一瞬音楽が途切れてしまいます・・・

これは仕様上しょうがないのでしょうか?


設定がコチラ

コード:

	int loopPoint	= 13840;
	int BGM		= LoadSoundMem( "BOSS.mp3" );
	SetLoopPosSoundMem( loopPoint, BGM );

	PlaySoundMem( BGM, DX_PLAYTYPE_LOOP, false );
MP3ファイルは、
容量1.32MB
曲時間58秒です。
曲の終わりから13秒あたりに繋がるように作ってあります。

Re: SetLoopPosSoundMemを使用してのBGMのループ

Posted: 2011年4月03日(日) 18:12
by Cir
曲の終わりに一瞬だけ無音があるからではないでしょうか。

Re: SetLoopPosSoundMemを使用してのBGMのループ

Posted: 2011年4月04日(月) 17:10
by おっく
Cirさんが指摘されてる通りなのかなーと想像してます。

SoundEngineってツール使うと楽にチェック出来ます。
再生開始点を設定し、(loopPointと同じ値でいいでしょう)
終点はファイルの最後までとし、
その設定区間をリピート再生する。
これで一瞬途切れるのであれば、波形から見ても分かるように、
無音かそれに近い時間が見て分かるはす。

Re: SetLoopPosSoundMemを使用してのBGMのループ

Posted: 2011年4月09日(土) 10:43
by YYSS
教えてくださったSoundEngineというソフトを使って確認したら、ループ開始地点がずれていたようで、
それが原因で一瞬無音に聴こえたということが分かりました。

解答ありがとうございました。