这个命令是程序员用来获取视频信息的吗:
ffmpeg -i input.mp4
在我看来,它让你经历了许多困难,因为它将所有信息都放在一个长字符串中(例如,你无法获取单独的信息),并且该字符串的格式并不易于解析(它不像键:值对!)
那么我应该使用 FFmpeg 来获取视频信息,还是应该使用其他工具?
答案1
使用ffprobe
:
基本示例
$ ffprobe -v error -show_format input.mkv
[FORMAT]
filename=input.mkv
nb_streams=2
nb_programs=0
format_name=matroska,webm
format_long_name=Matroska / WebM
start_time=0.000000
duration=108.501000
size=56164272
bit_rate=4141106
probe_score=100
TAG:encoder=libebml v0.7.7 + libmatroska v0.8.1
TAG:creation_time=2008-10-22 06:43:30
[/FORMAT]
持续时间示例
$ ffprobe -v error -show_format -of flat=s=_ -show_entries format=duration input.mkv
format_duration="60.029388"
笔记
- 您可以使用 控制输出格式
-of
。 - 可以使用 选择特定流
-select_streams
。 - 您可以使用 显示有关每个流的信息
-show_streams
。
另请参阅
- FFprobe 文档以获得更多选项。
- FFprobe 提示查看更多示例。