逐帧处理视频

时间:2018-04-27 09:34:08

标签: video javafx frame video-processing

JavaFX中是否有办法处理帧,例如从加载的视频中提取帧?

使用框架是什么意思?当某个帧出现时触发动作,例如,使用画布在视频上显示字幕或弹出窗口。 或者到视频中的某个帧,虽然这可能是使用时间索引完成的(如上所述,在时间索引被击中时触发动作。)

此外,是否可以使用JavaFX创建以下youtube功能?

  • 字幕
  • 沿着时间线标记并悬停在这些标记上并显示重叠的内容
  • 叠加(链接,评论等)
  • 质量水平调整
  • 速度调整

以及youtube中没有的功能:

  • 提取序列,丰富其他内容,添加到时间线
  • 提取框架评论它们,将它们添加回视频序列(可能是这样一种方式,即可以在彼此之后添加序列,将原始序列切割成更小的片段并插入如此序列的序列123 - > 12new3

1 个答案:

答案 0 :(得分:1)

  

JavaFX中是否有办法处理帧,例如从加载的视频中提取帧?

不,没有 - JavaFX媒体支持非常有限。如果您想以某种支持的格式加载视频并在JavaFX场景中播放,那么您就可以了。你可以做正常的"您在视频播放器中所期望的行为,因此您可以暂停,停止,搜索,静音等等,但不会更多。

  

或者到达视频中的某个帧,尽管这可能是使用时间索引

完成的

是的,您可以使用时间索引(在MediaPlayer上查看currentTimeProperty()。)这是您在JFX级别执行此操作时唯一明智的方法。

如果您想要更进一步,您将不得不直接使用GStreamer框架(或其他一些本机框架)。如果您想进入帧级视频提取,我历来推荐Xuggler,但现在几年都没有支持。