Бесшумное воспроизведение и остановка аудиофайла с помощью FFPlay

Бесшумное воспроизведение и остановка аудиофайла с помощью FFPlay

Итак, я создаю простое приложение-будильник и использую FFPlay для воспроизведения звука будильника. Я хотел бы воспроизводить звук «без звука» (без вывода на консоль или всплывающих окон), но когда я это делаю, я не могу остановить FFPlay, не убив процесс.

Команда:

ffplay -i "C:\Users\GJBalaich\Google Drive\Audition\Run Alarm\Exports\Run Alarm.mp3" -loop 0 -showmode 0 -loglevel -8 -exitonkeydown

Итак, это просто зацикливание аудиофайла, и я установил -showmodeзначение 0, что соответствует видео, поэтому всплывающего окна не будет (поскольку нет видеопотока). Однако я обнаружил, что это -exitonkeydownна самом деле не работает, если вы не сосредоточены на всплывающем окне FFPlay, которое я отключил.

Есть ли способ корректно остановить FFPlay, не фокусируясь на всплывающем окне?

решение1

События нажатия клавиш перехватываются SDL, который и рисует окно дисплея. Таким образом, отсутствие окна равно отсутствию событий нажатия клавиш.

В Windows для удаленного завершения работы ffplay выполните команду:

taskkill /f /im ffplay.exe

предполагая, что у вас запущен только один ffplay. Если нет, получите PID для соответствующего ffplay через

tasklist | findstr ffplay

а потом

taskkill /f /pid XYZ

решение2

ffplayимеет опцию «автоматического выхода» после завершения воспроизведения аудио- или видеофайла:

ffplay --autoexit /your/media/file.ogg

Связанный контент