首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >检测部分帧上的场景变化

检测部分帧上的场景变化
EN

Stack Overflow用户
提问于 2021-06-16 10:06:45
回答 1查看 706关注 0票数 0

我有一个视频文件的在线讲座协调幻灯片与音频的背景。

我想保存每张幻灯片的图片以及幻灯片的时间戳。我使用场景和元数据筛选器来完成此操作:

代码语言:javascript
运行
复制
ffmpeg -i week-01.mp4 -filter_complex "select='gt(scene,0.011)',metadata=print:file=frames/time.txt" -vsync vfr frames/img%03d.jpg

这是一件很好的事情,在视频文件的右边有一个定时器。如果我把它设置得足够小,以获取所有的幻灯片更改,它也会接收计时器的更改。

这是我的问题,我可以问:

  1. 对部分帧进行分析(仅右侧到左侧约75% )。然后,在检测到该区域的场景变化时,保存整个帧和时间戳。

我想做个剧本

origional

  • analize

  • 将视频与裁剪后的视频一起保存,用于场景更改,并使用时间戳

从原始视频中保存帧。

是否有更好/更快/更短的方法来做到这一点?提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-16 10:30:53

你可以在这样的命令下完成,

ffmpeg -i week-01.mp4 -filter_complex "[0]split=2[full][no_timer];[no_timer]drawbox=w=0.25*iw:h=ih:x=0.75*iw:y=0[no_timer];[no_timer]select='gt(scene,0.011)',metadata=print:file=frames/time.txt[no_timer];[no_timer][full]overlay" -vsync vfr frames/img%03d.jpg

基本上,制作两份视频,在一份拷贝上使用画框在右边的四分之一屏幕上涂上纯黑,分析场景变化并记录到文件中,然后将整个未涂过的帧覆盖在画图上。由于重叠同步帧的方式,只有具有相应时间戳的完整帧才能用于在所选基本帧的顶部覆盖。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68000581

复制
相关文章

相似问题

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