【发布时间】:2020-07-08 15:15:58
【问题描述】:
我想用 Java 生成视频的缩略图预览。我主要是 JMF 和视频操作疏远。
- 有简单的方法吗?
- 编解码器呢?我必须处理它吗?
- 是否支持任何视频类型? (包括 Quicktime)
【问题讨论】:
我想用 Java 生成视频的缩略图预览。我主要是 JMF 和视频操作疏远。
【问题讨论】:
好吧,既然你没有被 JMF 困住,你考虑过Xuggler 吗? Xuggler 是一个 Java API,它在后台使用 FFmpeg 进行所有视频解码和编码。它是免费的并获得 LGPL 许可。
其实我们有一个教程显示How to Make Thumbnails of an Existing File
【讨论】:
似乎有几个例子比what I was going to send you.好得多
见http://krishnabhargav.blogspot.com/2008/02/processing-videos-in-java.html。
不过,我同意 Stu 的观点。如果你能找到一种方法来使用一些命令行工具(并使用Commons-Exec 运行它们)来获得你想要的东西,那么你可能会有一个比依赖于本质上是梵文的 Java 扩展更好的整体解决方案。
【讨论】:
您确定 JMF 适合您吗?不幸的是,它的状态并不是特别好。除非您已经致力于 JMF,否则您很可能想要研究替代方案。维基百科在 en.wikipedia.org/wiki/Java_Media_Framework
上有不错的概述许多 JMF 开发人员抱怨说它在现代使用中支持的编解码器和格式很少。例如,它的全 Java 版本无法播放 MPEG-2、MPEG-4、Windows Media、RealMedia、大多数 QuickTime 电影、比 Flash 2 更新的 Flash 内容,并且需要插件才能播放无处不在的 MP3 格式。虽然性能包提供使用本机平台媒体库的能力,但它们仅适用于 Linux、Solaris 和 Windows。此外,基于 Windows 的 JMF 开发人员可能会在不知不觉中认为 JMF 提供了比实际更多的格式支持,当他们的应用程序无法在其他平台上播放这些格式时,他们会感到惊讶。
对 JMF 的另一个打击是 Sun 似乎放弃了它。 API 自 1999 年以来一直没有被触及,JMF 主页上的最后一条新闻发布于 2004 年 11 月。
虽然 JMF 是为可扩展性而构建的,但很少有这样的第三方扩展。
此外,JMF 中实际上不存在编辑功能,这使得广泛的潜在应用变得不切实际。
【讨论】:
我自己的服务器端应用程序使用 FFmpeg 进行编码。我 98.42% 肯定 FFmpeg 也会做快照。 (这是一个全唱全跳的野兽程序。仅命令行选项就可以写满一本书。)
【讨论】:
您可以在这里找到一个相对较新的选项,称为 JThumbnailer:https://github.com/makbn/JThumbnail
JThumbnail 是一个 Java 库,用于创建常见类型的缩略图 文件包括 .doc、.docx、.pdf、.mp4 等完整列表
【讨论】: