windows - 输入为 dshow 时 ffmpeg 不停止

标签 windows command-line ffmpeg

我们通过指定命名管道作为视频帧的输入来录制视频,如下所示:

ffmpeg -r 30 -f rawvideo -pix_fmt bgra -s 640x480 -i namedPipe [... output options] out.mp4

它运行良好,一旦命名管道关闭,FFmpeg 就会停止,正如所愿。

但是,我们还想从 directshow 录制现场音频,如下所示:
ffmpeg -r 30 -f rawvideo -pix_fmt bgra -s 640x480 -i namedPipe -f dshow -i audio=virtual-audio-capturer [... output options] out.mp4

这也有效,但问题是,一旦我们关闭视频帧的命名管道,该过程现在不会停止。
我的猜测是 ffmpeg 仍然获得音频输入,因此只是继续运行。

如何更改 FFmpeg 命令,以便在视频帧不断出现时停止?

最佳答案

添加 -shortest[... output options] -shortest out.mp4

关于windows - 输入为 dshow 时 ffmpeg 不停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38950481/

相关文章:

c++ - 播放波形文件立即结束(C++,Windows)

c++ - 使用删除时新声明包含垃圾值和堆损坏

windows - powershell 2.0命令行重定向

c# - 我如何使用 ffmpeg 修复(组合 1 个音频和 1 个图像)

python - 删除错误 : 'requests' is a dependency of conda and cannot be removed from conda's operating environment

windows - Windows下用MinGW-w64编译POCO库(找不到消息编译器)

python - 如何从 bash shell 提示符运行带有句子作为命令行参数的 python 程序

windows - 在命令行中终止进程树的进程 (Windows)

image - 适用于 Instagram 的 ffmpeg 缩放图像 (640x640)

ffmpeg - HW Accel 转码 Intel 快速同步视频 QSV h264_qsv 和 CRF 质量