2015-11-07 80 views
0

我有这个小批处理脚本。目的是节省我们的rtmp直播流的一小部分如何停止ffmpeg并继续批处理运行

@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进程,然后继续运行脚本的其余部分?

谢谢

回答

0

有些程序忽略/等待选项,但你可以试试这个。基本上你必须产生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 
+0

我打算在命令提示符下显示微调。有没有办法,主命令提示符是活动窗口,但CTRL + C将被发送到ffmpeg进程?我试过你的命令,它的工作原理,但问题是ffmpeg终端是顶部和我的微调在bat文件将不会被看到。希望能够隐藏ffmpeg进程并能够从批处理文件命令本身中停止它。如果没有这样的选择。我必须解决这个问题。谢谢 – Wayne

相关问题