HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2022
0719
めいぷる音を流し、ボタンが押されたら止めたい2解決


めいぷる

リンク

2022/7/19(Tue) 14:16:08|NO.96823

mp3の音源を出して、ボタンが押されたら音を止め、止めた3秒後にまた別の音源を流してボタンが押されたら音を止める、というループのスクリプトを作りたいのですが、mmplayとmmstopの制御が上手くできません。
以下のようなスクリプトで試みていますがうまくいきません。どうすればよいか知恵をお貸しください。

(”1.mp3”のように名付けられた音源を48番目まで順番に流したいという設定です。)

repeat 48,0
mmload str(cnt)+".mp3",cnt,2
mmplay cnt
loop
にすると音が順番に流れ、

repeat 48,0
mmload str(cnt)+".mp3",cnt,2
mmplay cnt
v=o,keycheck=0
while keycheck=0
getkey v,86
if v=1:keycheck=1
await 1
wend
mmstop
loop
にすると、ボタンを押すと音が流れます。mmstopは効きません。



この記事に返信する


沢渡

リンク

2022/7/19(Tue) 15:03:27|NO.96824

このような形ではどうでしょうか。

repeat 48,0 mmload str(cnt)+".mp3",0 //一度鳴らした音はもう鳴らさないので0番バッファを使い回す。 getkey v0,86 //曲が鳴る前からVキーを押しっぱなしにしていたのなら、一旦離すまでは入力を受け付けないようにする。 mmplay 0 v=0 repeat if v0 { getkey v0,86 } else { getkey v,86 if v : break } await 33 //awaitの待ち時間が1ミリ秒では短すぎて、処理が重くなるのに繋がってしまう。 //とりあえず仮にここでは30FPSと想定し、1000/30で33ミリ秒とする。 loop mmstop await 3000 //3秒待つ。 loop



めいぷる

リンク

2022/7/21(Thu) 15:21:15|NO.96836

解決いたしました、大変助かりましたありがとうございます!!



記事削除

記事NO.パスワード
(質問が解決したスレッドは他の利用者に活用してもらうため、削除しないようお願いします)

NO.96823への返信

マスコット

好きなマスコットを選んでください。

名前

e-mail
HOME
  1. 初めて利用する方は、HSP3掲示板の使い方をお読みください。
  2. 不要部分の多い長いスクリプトの投稿は ご遠慮ください。
  3. 書き込みは自動改行されません。適度に改行を入れてください。
  4. スクリプトは小文字の<pre>〜</pre>で囲むと見やすく表示できます。

削除用パスワード

解決したら質問者本人がここをチェックしてください。

エラー発生時、再送信すると二重送信になることがあります。
回答が得られたら、お礼書き込み時に[解決]チェックしてください。
SPAM防止のためURLから始まる文章は投稿できません。
SPAM防止のため英文字のみの本文を投稿することはできません。

ONION software Copyright 1997-2021(c) All rights reserved.