【问题标题】:How to stop ffmpeg and continue batch running如何停止 ffmpeg 并继续批处理运行
【发布时间】:2023-04-03 01:55:01
【问题描述】:

我有这个小批量脚本。目的是保存我们的 rtmp 直播流的一小部分

@echo off
echo Live Stream Cropper v0.1
echo **************************
echo video codec : libxh264
echo audio codec : mp3
echo **************************
echo Recording...
echo.

for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /format:list') do set datetime=%%I

set output=%datetime:~0,8%-%datetime:~8,4%

ffmpeg -i rtmp://my.streaming.path/public/appname -acodec mp3 -vcodec libx264  "X:\PATH\%output%.avi" -nostats -loglevel 0

echo.
echo "Recorded video is saved on X:\PATH\%output%.avi"
pause

ffmpeg 进程按预期工作。我的问题是按CTRL + C停止ffmpeg进程后,没有执行显示录制文件保存位置的echo命令。

如何停止 ffmpeg 进程,然后继续运行脚本的剩余部分?

谢谢

【问题讨论】:

    标签: batch-file ffmpeg batch-processing


    【解决方案1】:

    有些程序会忽略 /wait 选项,但您可以试试这个。本质上,您必须将 ffmpeg 生成到另一个环境中,并且主环境将等待 ffmpeg 完成后再继续。

    START "FFMPEG" /WAIT ffmpeg -i rtmp://my.streaming.path/public/appname -acodec mp3 -vcodec libx264  "X:\PATH\%output%.avi" -nostats -loglevel 0
    

    也试试这个。

    cmd /c ffmpeg -i rtmp://my.streaming.path/public/appname -acodec mp3 -vcodec libx264  "X:\PATH\%output%.avi" -nostats -loglevel 0
    

    【讨论】:

    • 我打算在命令提示符下显示一个微调器。有没有办法让主命令提示符是活动窗口但 CTRL + C 将被发送到 ffmpeg 进程?我试过你的命令,它可以工作,但问题是 ffmpeg 终端在顶部,我在 bat 文件上的微调器将不会被看到。希望可以隐藏ffmpeg进程并能够从批处理文件命令本身中阻止它。如果没有这样的选择。我将不得不解决这个问题。谢谢
    猜你喜欢
    • 1970-01-01
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 2015-08-09
    • 1970-01-01
    相关资源
    最近更新 更多