我想使用 ffmpeg 在 jenkins 构建作业中自动导出大量视频文件中的所有帧。
当我 ssh 进入从站并在同一文件夹中执行它时,该脚本运行良好:
find . -name "*.mp4" -exec ffmpeg -i {} -qscale:v 1 -vf fps=6 {}_exportedFrame_%d.jpg \;
它应该找到所有 mp4 文件并对其运行 ffmpeg。
当 jenkins 运行它时(执行 shell 插件),它会失败并显示此消息:
08:51:32 find: ffmpeg: No such file or directory
08:51:32 find: ffmpeg: No such file or directory
08:51:32 find: ffmpeg: No such file or directory
08:51:32 find: ffmpeg: No such file or directory
...many more lines of the same error
终端输出(运行良好):
bash-3.2$ find . -name "*.mp4" -exec ffmpeg -i {} -qscale:v 1 -vf fps=6 {}_exportedFrame_%d.jpg \;
ffmpeg version 4.1 Copyright (c) 2000-2018 the FFmpeg developers
built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
configuration: --prefix=/usr/local/Cellar/ffmpeg/4.1 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gpl --enable-libmp3lame --enable-libopus --enable-libsnappy --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-opencl --enable-videotoolbox
libavutil 56. 22.100 / 56. 22.100
libavcodec 58. 35.100 / 58. 35.100
...
Build Slave 正在运行最新版本的 mac os。 ffmpeg 已安装。
编辑:我已将 ffmpeg 添加到路径文件中
bash-3.2$ cat /etc/paths
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin/ffmpeg
bash-3.2$ type ffmpeg
ffmpeg is /usr/local/bin/ffmpeg
我仍然遇到同样的错误。
答案1
可能ffmpeg
不属于PATH
詹金斯的工作。
type ffmpeg
在您的终端中运行以查看ffmpeg
位于何处以及echo $PATH
您的詹金斯工作中并进行比较。