-->

任何简单的(最新的)Java框架的Swing应用程序中嵌入的电影吗?任何简单的(最新的)Java框架

2019-05-13 20:21发布

我建立,我想嵌入一个电影中的小Swing应用程序。 重要的是,这个应用程序是一个Webstart的应用 - 和库应该能够被我推出 - 即不依赖于本地库的JNLP内包装。

我所知道的,并尝试JMF但格式的兼容性,我相信相对于其他框架存在时,相对较差。

可能有人请使用其推荐的库提供一个简单实现的示例代码段?

提前谢谢了。

Answer 1:

JavaFX的一些考虑作为一种解决方案为基于Java的媒体播放框架。

  1. 作为Jdk7u4的,JavaFX是共同捆绑了JDK适用于Mac和Windows(XP,Vista中,7,32位和64位)。
  2. JavaFX的可以嵌入在Swing应用程序。
  3. JavaFX的包括机库,但任何Java框架是将需要本机库做视频很好。
  4. 全面部署工具包中包含了JavaFX SDK和/或包含于基于JNLP部署的能力。
  5. JavaFX的2.1支持VP6编码FLV文件(较旧的格式),以及一些更现代的和经常使用的编码格式,如MP4 / AAC / MP3。
  6. 如果您已经安装在计算机上的编解码器,可以在播放该格式编码的文件,例如铬,Windows媒体播放器或闪存并不能保证的JavaFX只支持有限的媒体编解码器及容器格式,例如,同样的文件会JavaFX中播放。
  7. 在XP或Linux MP4的播放还需要用户手动安装必要的编解码器,但是其他平台(OSX,WIN7,VISTA)不需要手动MP4编解码器安装。
  8. JavaFX的在Mac上的使用需要用户使用的OpenJDK 7的Mac,而不是苹果的JDK。
  9. 对JNLP JavaFX支持推出的Mac上的应用程序将无法使用,直到今年晚些时候(2012年),并同样适用于Linux。
  10. 你也许可以捆绑整个JavaFX平台,在一个JNLP您的应用程序(虽然我还没有看到任何人这样做还)。
  11. 一个JNLP部署推荐的方法是添加一个最小的JavaFX环境的JNLP的规范,并有JavaFX的部署工具包,并在webstart采取的确保其存在和在用户的机器上安装正确护理。
  12. Swing和JavaFX的互动关系,需要一定的不便和照顾周围的线程也摇摆和JavaFX之间略有不同应用的启动代码。 有些人抱怨这个论坛上,大多数人似乎不能够有太多的问题。
  13. 为了更好或更坏(我相信更好),JavaFX是可能从Oracle正在接收正在进行的重大发展和新功能的唯一媒体和客户端开发框架。
  14. 最终,(今年或明年)的JavaFX将包含在所有新的Java运行时适用于运行的Java SE的现代版本的所有主要的消费平台。
  15. 从Oracle和第三方的JavaFX开发社区支持是(我相信)好。

下面是一个简单的JavaFX应用程序,它播放视频:

import javafx.application.Application;
import javafx.scene.*;
import javafx.scene.media.*;
import javafx.stage.Stage;

public class VideoPlayerExample extends Application {
  public static void main(String[] args) throws Exception { launch(args); }
  @Override public void start(final Stage stage) throws Exception {
    final MediaPlayer oracleVid = new MediaPlayer(
      new Media("http://download.oracle.com/otndocs/products/javafx/oow2010-2.flv")
    );
    stage.setScene(new Scene(new Group(new MediaView(oracleVid)), 540, 208));
    stage.show();

    oracleVid.play();
  }
}


Answer 2:

虽然我还没有与格式的兼容性ØJMF任何问题,你可以在JavaFX的一看就是被设计成一个竞争对手的Flash,所以应该支持所有的媒体格式和编解码器。 您还可以嵌入Flash播放器将使用JNI / JNA Java应用程序,但它似乎太复杂了。 我建议你先从JMF并查找只有当你真的有问题的其他解决方案。



Answer 3:

..have试图JMF但格式的兼容性,我相信相对于其他框架存在时,相对较差。

你是对的对缺乏现代编解码器的支持,但它工作得很好,对老年人的编解码器。 它可能是,如果一个可行的选择:

  1. 您可以控制的格式(而不是用户开放在它的任何旧的视频“)。 你显然做的。
  2. 带宽是不是一个巨大的问题。 更现代的编解码器显着提高压缩。

虽然它采用土人JMF的“性能包”版本支持更多的格式,Java核心API JMF也提供了一些基本的格式。



文章来源: Any simple (and up to date) Java frameworks for embedding movies within a Swing Application?
标签: java swing jmf