首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >时间过得很慢

时间过得很慢
EN

Stack Overflow用户
提问于 2018-09-23 19:57:27
回答 1查看 908关注 0票数 0

我在用

代码语言:javascript
运行
复制
ffmpeg -i IMG_5299.MOV -c:v libx264 -crf 20 -r 60 -filter:v "setpts=0.0015*PTS" -an IMG_5299-speedup.mkv

若要从H.265 4K60fps视频中创建600倍时间间隔,请执行以下操作。我只想让ffmpeg选择每600帧,并把它放在一个新的60 new视频。没有插值,什么都没有。尽管如此,在最近的i5-7600T CPU上,我只获得了0.2fps,同时在没有使用加速比的情况下转换了相同的视频。

代码语言:javascript
运行
复制
ffmpeg -i IMG_5299.MOV -c:v libx264 -crf 20 -an IMG_5299-2.mkv

给了我5下。那么,为什么要比仅仅转换视频速度慢25倍呢?它对600帧中的每一帧做了什么漂亮的插值吗?

编辑:这是经过几分钟编码后得到的状态线:

代码语言:javascript
运行
复制
frame=  447 fps=0.2 q=28.0 size=   68639kB time=00:00:06.56 bitrate=85611.1kbits/s dup=0 drop=147650 speed=0.00233x
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-24 05:18:13

这很慢,因为你在每666帧中挑一个。在对一个帧进行编码之前,必须对所有这666帧进行解码和过滤。假设您的系统可以以每秒333帧的速度解码,那么您的编码速度上限是0.5fps。

您可以使用

代码语言:javascript
运行
复制
ffmpeg -i IMG_5299.MOV -an -f null -

您可以通过只从MOV中拆分关键帧数据包来加快编码速度。

代码语言:javascript
运行
复制
ffmpeg -discard nokey -i IMG_5299.MOV -c:v libx264 -crf 20 -r 60 -vf "setpts=0.0015*PTS" -an IMG_5299-speedup.mkv
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52469754

复制
相关文章

相似问题

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