【问题标题】:How to extract programmatically video frames?如何以编程方式提取视频帧?
【发布时间】:2013-06-26 11:33:13
【问题描述】:

我需要以编程方式从 mp4 视频文件中提取帧,因此每个帧都放入一个单独的文件中。请就允许获得类似于以下 VLC 命令 (http://www.videolan.org/vlc/) 的结果的库提供建议:

vlc v1.mp4 --video-filter=scene --vout=dummy --start-time=1 --stop-time=5 --scene-ratio=1 --scene-prefix=img- --scene-path=./images vlc://quit

任何这些 Java / Python / Erlang / Haskell 的库都可以为我完成这项工作。

【问题讨论】:

标签: java python haskell erlang video-processing


【解决方案1】:

考虑使用 Popscan 的以下class。用法如下:

VideoSource vs = new VideoSource("file://c:\test.avi");
vs.initialize();
...
int frameIndex = 12345; // any frame 
BufferedImage frame = vs.getFrame(frameIndex);

【讨论】:

【解决方案2】:

我个人会寻找包装 ffmpeg/libavcodec 的库(许多编码器和播放器使用的最能理解的库)。

我还没有真正尝试过,所以不能说代码质量和易用性,但the five-line pyffmpeg example 建议这是一个简单的选择 - 尽管它很可能是 *nix-only。

【讨论】:

  • 目前已过时
猜你喜欢
  • 1970-01-01
  • 2011-03-03
  • 2011-03-03
  • 2012-06-18
  • 2016-02-29
  • 2023-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多