トップページ > 過去ログ > 記事閲覧
音声データ再生時の関数の呼び出し順序について
名前:AKI 日時: 2011/02/03 02:40

はじめまして。DXライブラリを毎日ありがたく使わせて頂いています。 音楽データ再生時にちょっとした不具合があったため、ご報告します。 現在最新版(Ver3.04d)のDXライブラリをWindowsXPで使用しているのですが、音声データ再生時に LoadSoundMem ↓ ChangeVolumeSoundMem ↓ SetLoopPosSoundMem ↓ PlaySoundMem という順番で音声データを再生しようとするとChangeVolumeSoundMemの効果が消えてしまいます。 SetLoopPosSoundMemをChangeVolumeSoundMemより先に実行すると大丈夫でした。 もし元々このような仕様でしたらすみません。一応ご報告まで。 (追記) SetCurrentPositionSoundMemはSetLoopPosMemより前に実行した場合に効果が消えてしまいました。 但しこちらはChangeVolumeSoundMemより後に実行しても大丈夫でした。

Page: 1 |

Re: 音声データ再生時の関数の呼び出し順序について ( No.1 )
名前:管理人 日時:2011/02/05 23:24

ご報告ありがとうございます 私の手元でも現象を確認いたしました 修正版をアップしましたので、よろしければお試しになってみてください m(_ _)m http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe // VisualC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe // BorlandC++ 用 (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』、VCをお使いの場合は『リビルド』をして下さい) < 以下原因です、ご興味がありましたらお読み下さい > 原因は、ループ位置を設定できるサウンドハンドルは SetCreateSoundDataType 関数で DX_SOUNDDATATYPE_MEMNOPRESS 以外の設定をしてストリーミング方式の再生を行うタイプの サウンドハンドルだけなので、デフォルトのストリーミング方式の再生を行わないタイプの サウンドハンドルに対して SetLoopPosSoundMem などのループ位置を設定する関数を 使用した場合は内部で非ストリーミング方式のサウンドハンドルをストリーミング方式の サウンドハンドルに作り直すのですが、このとき非ストリーミング方式のサウンドハンドルに対して ChangeVolumeSoundMem や SetCurrentPositionSoundMem などの関数で設定したパラメータを ストリーミング方式のサウンドハンドルに引き継ぐ処理をしていなかったので今回ご報告いただいたような 現象が発生してしまっていました orz
Re: 音声データ再生時の関数の呼び出し順序について ( No.2 )
名前:AKI 日時:2011/02/06 01:05

アップして頂いた修正版を試してみたところ、 SetCurrentPositionSoundMemはSetLoopPosSoundMemの前でも大丈夫なようになりましたが、 ChangeVolumeSoundMemは以前と同様に効果が消えてしまっていました。 対処方法がわかっているためそれほど重大ではないのですが、 もし時間があれば再度確認して頂けますか?
Re: 音声データ再生時の関数の呼び出し順序について ( No.3 )
名前:管理人 日時:2011/02/06 03:00

すいません、音量に関して直っていないことを確認しました。 今度こそ修正したものをアップしましたので、お手数ですがお試しになってみていただけないでしょうか?m(_ _;m http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe // VisualC++ 用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe // BorlandC++ 用 (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』、VCをお使いの場合は『リビルド』をして下さい)
Re: 音声データ再生時の関数の呼び出し順序について ( No.4 )
名前:AKI(解決) 日時:2011/02/06 03:36

修正版を確認したところ、音量についても大丈夫になりました。 迅速な対応ありがとうございました!

Page: 1 |