Bash:将 ffmpeg 输出保存到变量

Bash:将 ffmpeg 输出保存到变量

如何将 ffmpeg 文件信息输出保存到变量?如果我将以下命令放入变量中,它始终为空,即使该命令生成输出 /usr/bin/ffmpeg/ffmpeg -i $1

我尝试过

INFO=$(/usr/bin/ffmpeg/ffmpeg -i $1)

if [ -z "$INFO" ]; then
        echo "empty variable"
else
        echo "$INFO"
fi

答案1

尝试保存 STDERR 和 STDOUT。以下命令将标准错误重定向到标准输出:

INFO=$(/usr/bin/ffmpeg/ffmpeg -i $1 2>&1)

默认情况下,ffmpeg 将其所有文本输出到 STDERR,留下 STDOUT 以便将视频/音频数据传输到其他应用程序。

相关内容