トップページ > 過去ログ > 記事閲覧
音楽を途中から再生したいのですが・・・
名前: 日時: 2008/07/07 03:49

初めまして。DXライブラリにはとてもお世話になってます。 音楽再生部分を作ってる時にどうしても分からないことが出たので質問させてください。 音楽を途中から再生したいのですが、 リファレンスでは音楽を途中から再生する関数が見当たりませんでした。 そして、リファレンスには載ってないのですが int SetSoundCurrentTime( int Time, int SoundHandle ) ; という関数を見つけたので試しに色々と使ってみたのですが、音楽の最初からしか再生されないようです。 この関数はどのように使えばよいのでしょうか? よろしければ使用例などを教えてもらえないでしょうか。

Page: 1 |

Re: 音楽を途中から再生したいのですが・・・ ( No.1 )
名前: 日時:2008/07/07 10:43

SetSoundCurrentTime関数は、 再生中に設定することができないようです。 過去、管理人さんから以下のようなレスがあります。 >名前:管理人 日時:2007/04/08 14:02 > > まず、SetSoundCurrentTime は音が再生中の場合は正常に動作しませんので、 >PlaySoundMem の前に実行してください。 > そして、PlaySoundMem 関数はデフォルトで音の再生位置を先頭に戻してから >再生を開始しますので、それを行わないようにするために非公開関数の >第三引数 TopPositionFlag に FALSE を渡すようにして下さい。 > >(PlaySoundMem 関数は実際には以下の様に宣言されています) >int PlaySoundMem( int SoundHandle, int PlayType, int TopPositionFlag = TRUE ); > >int OGGHnd,i ; >OGGHnd = LoadSoundMem("music.ogg") ; >i = SetSoundCurrentTime(23000,OGGHnd) ; >PlaySoundMem(OGGHnd,DX_PLAYTYPE_LOOP,FALSE ) ; > > また、Ogg Vorbis 形式の場合 >SetCreateSoundDataType 関数で >DX_SOUNDDATATYPE_MEMNOPRESS 以外を指定している>と SetSoundCurrentTime 関係の >再生位置設定関数を使用しても再生位置が変更され>ないようになっていましたので、 >もし DX_SOUNDDATATYPE_MEMNOPRESS 以外をお使いでしたらお手数ですが以下の >修正バージョンをお使いください。m(_ _)m > >http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe //VC用 >http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe //BCC用 >(中身を既存のライブラリのファイルに上書きして、BCCをお使いの >場合は『再構築』、VCをお使いの場合は『リビルド』をして下さい)
Re: 音楽を途中から再生したいのですが・・・ ( No.2 )
名前: 日時:2008/07/07 22:13

ありゃ、既に過去ログにあったのですか。 検索不足で申し訳ない。 回答大変参考になりました。 おかげで思った通りに動いてくれました。ありがとうございます。

Page: 1 |