Playsoundで、wavファイルの再生の時に、音が途中で途切れる

[戻る]
たい 2006/10/13(金) 08:56:09
VC++6のユーザーです。PlaysoundAで、音や音声を再生している時に、この関数実行の直後に、十分な長さの空ループでもしておかない限りは、足がすくわれる(再生が、途中で止まってしまう)のですが、原因が何であって、また、この現象に対しての、根本的な対策はありますでしょうか?

超初心者 2006/10/15(日) 09:34:31
改行追加
> VC++6のユーザーです。
> PlaysoundAで、音や音声を再生している時に、この関数実行の直後に、
> 十分な長さの空ループでもしておかない限りは、
> 足がすくわれる(再生が、途中で止まってしまう)のですが、
> 原因が何であって、また、この現象に対しての、
> 根本的な対策はありますでしょうか?

超初心者 2006/10/15(日) 09:39:40
PlaySoundのこと?
『十分な長さの空ループ』って?
『足がすくわれる』って?
『音や音声を再生している時』はPlaysoundAでのこと?

ITO 2006/10/15(日) 13:31:24
う--ん
Windowsって連続して同じ作業を行うことは出来ません。
『十分な長さの空ループ』とは多分そのための時間なんだと思います。
「十分な長さの」は語弊があり100ms位「Sleep(100)」でも適切なところに
入れておけばいいと思います。
注意: 作るソフトの構造により100mSの値は変わります。
ヘルプ見たけど
  「PlaySound」って長い『足がすくわれる』ほどの長い「音や音声」
って再生できないんじゃないかな。
ヘルプに
「pszSound パラメータで指定したサウンドは、使用可能な物理メモリに収まるサイズで
なければなりません。」
って書いてあります。
短い「音や音声」を間隔をあけて再生するしかないんじゃないかな。
あとは、「メディアプレイア」、「ダイレクトサウンド」に頼るとか。
SDKのあるはず。

古いスレッドには追加発言できません。