実現したいこと
再生プレーヤーとしてVLCを利用
バッチファイルを起動させると33%の確率で音楽1が流れ、67%の確率で音楽2が流れる
以下繰り返しでループ再生
前提
複数の音楽ファイルがありそれぞれループ再生で聞きたいのですが、それぞれ重要度が違うため重要度の高いファイルを優先して再生するバッチファイルを作りたいです。それぞれ9秒の音楽ファイルです。
発生している問題・エラーメッセージ
現在一応一回目は再生するのですが、次が再生されません。
該当のソースコード
@echo off start "" "C:\Program Files\VideoLAN\VLC\vlc.exe" REM 無限ループを開始 :loop REM ランダムな整数を生成(1 ~ 100) set /a randomNum=%random% %% 100 + 1 REM 条件分岐 if %randomNum% lss 33 ( "C:\Program Files\VideoLAN\VLC\vlc.exe" "1番目に再生したい音楽ファイルのパス" timeout /t 9 ) else ( "C:\Program Files\VideoLAN\VLC\vlc.exe" "2番目に再生したい音楽ファイルのパス" timeout /t 9 ) REM 無限ループ goto loop
試したこと
チャットGPTを使いましたがダメでした
補足情報(FW/ツールのバージョンなど)
アドバイスとしては、@echo off を書かなければ実行している行が表示されるので、
"C:\Program Files\VideoLAN\VLC\vlc.exe" "1番目に再生したい音楽ファイルのパス"
がずっと実行中で次の行に進んでないことが分かったはずです。
そうするともしかすると自力で解決できたかも知れないし、質問するにしてもポイントが違ってきます。
「Windowsのバッチスクリプトから、vlc.exeというプログラムを起動すると、ウィンドウを閉じるまで次の行に進みません。起動したら次の行に進むにはどうしたらいいでしょうか?」
とChatGPTに聞いたら、ちゃんとstartコマンドを使う回答が出てきました。
@echo offを書くのはデバッグが終わってバッチスクリプトが完成してからです。
あるいは最初は書いても良いけど、意図通りに動かない場合は@echo offを消します。

回答1件
あなたの回答
tips
プレビュー