![使用 FFPlay 静默播放和停止音频文件](https://linux22.com/image/1606981/%E4%BD%BF%E7%94%A8%20FFPlay%20%E9%9D%99%E9%BB%98%E6%92%AD%E6%94%BE%E5%92%8C%E5%81%9C%E6%AD%A2%E9%9F%B3%E9%A2%91%E6%96%87%E4%BB%B6.png)
因此,我正在构建一个简单的闹钟应用程序,并使用 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 在运行。如果没有,通过以下方式获取相关 ffplay 的 PID
tasklist | findstr ffplay
进而
taskkill /f /pid XYZ
答案2
ffplay
播放完音频或视频文件后,可以选择“自动退出”:
ffplay --autoexit /your/media/file.ogg