首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用FFProbe获取视频fps

使用FFProbe获取视频fps
EN

Stack Overflow用户
提问于 2015-01-06 06:00:45
回答 5查看 25.7K关注 0票数 29

我是新来的,我的目标是获取视频fps并存储到java程序中。我的代码存储xml文件,但我想直接像int fps=30那样存储;

代码语言:javascript
复制
ffprobe -v quiet -print_format xml -show_format -show_streams "/video/small/small.avi" > "/video/small/test.xml"

这是我的密码。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2016-02-15 08:50:01

这将打印视频FPS:

代码语言:javascript
复制
ffprobe -v error -select_streams v -of default=noprint_wrappers=1:nokey=1 -show_entries stream=r_frame_rate file.mp4
票数 52
EN

Stack Overflow用户

发布于 2020-05-28 06:58:34

您也可以简单地运行它,为了获得视频FPS,这将在linux机器上工作。

代码语言:javascript
复制
ffprobe -v quiet -show_streams -select_streams v:0 INPUT |grep "r_frame_rate"
票数 4
EN

Stack Overflow用户

发布于 2022-01-22 20:44:13

公认的答案建议使用stream=r_frame_rate。这是可以的,如果你只需要一个稍微圆润的结果。(30/1而不是29.7)

对于精确和未四舍五入的FPS,按持续时间除以总帧:

代码语言:javascript
复制
ffprobe -v error -select_streams v:0 -count_frames -show_entries stream=nb_read_frames -print_format csv="p=0" input.mp4 | read frames && 
ffprobe -i input.mp4 -show_entries format=duration -v quiet -of csv="p=0" | read duration && 
echo $(($frames/$duration))
    >> 29.970094916135743

文件持续时间:

代码语言:javascript
复制
ffprobe -i input.mp4 -show_entries format=duration -v quiet -of csv="p=0"
    >> 15.367000

文件的总帧计数:

代码语言:javascript
复制
ffprobe -v error -select_streams v:0 -count_frames -show_entries stream=nb_read_frames -print_format csv input.mp4
    >> 461
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27792934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档