2

我正处于将有大量音频/视频输入和输出的应用程序的概念阶段。我想用Java来做;但不知何故,我还没有完全相信。你怎么看?到底能有多糟糕?有什么建议吗?

为什么我在想 Java:

  1. 这是我最熟悉的语言。
  2. 更容易的跨平台迁移将是一个奖励。
  3. 负担不起商业平台(如 .NET)或其他免费替代品(如 Python)不够好
  4. 我也略微倾向于 C++/Qt;但这对我来说需要更多时间,因为我在这方面并不出色,而且我有点担心可维护性。
4

6 回答 6

3

如果您有兴趣,请查看Xuggler。它展示了 FFmpeg 的所有功能,但是作为一个在 Windows、Mac 和 Linux 上运行的 Java API。优点是您可以从 Java 获得 FFmpeg 的所有功能。缺点是它需要安装 FFmpeg 本机 DLL/共享库。

于 2009-11-06T05:44:10.177 回答
2

更容易的跨平台迁移将是一个奖励。

音频和视频意味着您将处理每个受支持平台的专用本机库和 JNI 包装器;在这种情况下,Java 的跨平台论点并不真正适用。

于 2009-07-22T04:54:48.820 回答
2

我相信当你想写一个音频/视频应用程序时,你将使用的编程语言是第二重要的事情。最重要的是您的应用程序将使用的音频/视频框架,因为它定义了您的能力。

我知道两种流行的通用视频框架可用于访问大多数多媒体类型:Directshow 和 ffmpeg。Directshow与windows绑定,所以只剩下ffmpeg。

Ffmpeg 在 windows 和 unix 都有版本,虽然它是用 C 语言编写的,但它可以从很多语言中使用。

甚至还有一些 ffmpeg 的 java 包装器(例如,看看 xuggle)!

于 2009-07-28T07:31:53.917 回答
1

由于音频/视频处理中经常出现的性能问题以及视频/音频可用库的范围,C++ 将是首选。

关于熟悉 Java,您确实提出了一个很好的观点。如果时间紧迫,这一点更为重要。但是,如果您可以抽出一些时间来学习,C++ 将是非常值得的。

关于 .NET:包含您需要的一切的 .NET SDK 均可免费下载。获取一个免费的 IDE,比如SharpDevelop,你就可以开始运行了。花钱的是Visual Studio,你不需要Visual Studio来做.NET开发。

于 2009-07-22T04:55:30.567 回答
0

生锈的,

尝试做JavaFX Media API怎么样。最近,JavaFX的版本是 1.2.0,也带有 GUI 应用程序。它支持摇摆。语法基于脚本风格;但是,您可以将现有的 Swing 组件部署到 JavaFX 中。

我希望它有所帮助。

老虎

于 2009-07-22T05:09:07.247 回答
0

生锈,你最后做了什么?我也有一个我想做的视频应用程序,但我真的更喜欢 Java/JavaFX 而不是 C++。使用 Flash 和/或当前 JavaFX 视频支持的问题是 Flash 视频播放不是帧精确的。我真的需要能够像使用 QuickTime 一样在单个帧上停止/开始/踩踏。

有没有人尝试过使用 Xuggler 和 Java/JavaFX 进行播放?

于 2010-01-17T05:28:18.190 回答