仅显示包含指定单词的输出行

display only lines from output that contains a specified word

我正在寻找一种方法来仅获取包含指定单词的行,在这种情况下,所有包含单词 Stream 的行来自输出

我试过了;

streams=$(ffprobe -i  "movie.mp4"  | grep "Stream")

但是没有得到任何结果..

或者我是否需要将其输出到文件,然后尝试提取我要查找的行?

@paulsm4 准确无误...输出到 STDERR。

streams=$(ffprobe -i  "movie.mp4"  |& grep "Stream")

注意 &

不需要grep。只需直接使用 ffprobe 即可获取您需要的任何信息。

输出所有信息

ffprobe -loglevel error -show_format -show_streams input.mp4

仅视频信息

ffprobe -loglevel error -show_streams -select_streams v input.mp4

只有音频信息

ffprobe -loglevel error -show_streams -select_streams a input.mp4

宽度 x 高度

Getting video dimension / resolution / width x height from ffmpeg

持续时间

How to get video duration?

格式/编解码器

  • Is there a way to use ffmpeg to determine the encoding of a file before transcoding?

帧信息

Get video frames information with ffmpeg

更多信息和示例

FFmpeg Wiki: ffprobe