【问题标题】:JavaFX MediaPlayer in Ubuntu 14.04 64 bitsUbuntu 14.04 64 位中的 JavaFX MediaPlayer
【发布时间】:2014-09-26 21:32:59
【问题描述】:

我正在尝试在 Ubuntu 14.04 64 位中执行下面的简单程序。

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

public class simple 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/JavaRap/prog_index.m3u8")
    );
        oracleVid.setAutoPlay(true);
    stage.setScene(new Scene(new Group(new MediaView(oracleVid)), 540, 208));
    stage.show();

    oracleVid.play();
  }
}

我知道视频和音频格式是正确的。实际上,这个 URL 取自 JavaFX 的演示。此外,我已经在 Ubuntu 13.10 中使用 JavaSDK 1.7 和相同的硬件测试了该应用程序,一切正常。该应用程序也在 Windows 中执行。但是,当我在 Ubuntu 14.04 中尝试 Java SDK 1.7 和 1.8 时,它失败了。

我猜这与我的配置中缺少的某些编解码器或某些在 14.04 中不可用的库有关。

对我来说最糟糕的是应用程序失败的方式。它不会抛出异常,不会因分段错误而崩溃,也不会抱怨缺少某些库。相反,它只显示一个带有背景颜色的窗口,没有声音、视频或任何类型的日志。

有人遇到过同样的问题吗?我已经浏览了好几个小时了。

编辑。 我一直在使用 oracle-java。

【问题讨论】:

    标签: java configuration javafx ubuntu-14.04


    【解决方案1】:

    这是在 Ubuntu 14.04 下运行的 JavaFX 的一个已知问题。

    该问题已针对 Java 8u40 进行了修复。

    Java 8u40 early access builds 可用,因此您可以测试修复并确保它在您的系统上有效。

    【讨论】:

    • 我按照您的答案链接中的建议结束了编译 libav-0.8。只需在配置过程中使用 --enable-pic 和 --enable-shared 即可。
    【解决方案2】:

    对于那些正在寻找解决方法说明的人:

    sudo apt-get install yasm
    wget https://libav.org/releases/libav-0.8.16.tar.xz
    tar xf libav-0.8.16.tar.xz
    cd libav-0.8.16
    ./configure --enable-pic --enable-shared && make
    sudo make install
    

    【讨论】:

    • 对我不起作用,看来需要其他编解码器
    猜你喜欢
    • 1970-01-01
    • 2015-07-08
    • 1970-01-01
    • 2014-07-28
    • 1970-01-01
    • 2019-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多