JavaFX应用程序(Gluon JavaFX端口)上的视频中的颜色有误

时间:2018-07-27 08:30:43

标签: java javafx raspberry-pi gstreamer gluon-mobile

我需要在Raspberry Pi上运行JavaFX应用程序。应用程序包含MediaPlayer对象。
由于Oracle的Java for ARM不包含javafx软件包,因此我已经为ARM安装了Gluon JavaFX端口。不幸的是,我通过应用程序播放的所有示例视频都交换了颜色(似乎交换了红色和蓝色通道)。我测试了来自不同来源的视频。在PC上,Oracle的JRE应用程序可播放色彩正确的视频。 Sample video
由于Gluon的JavaFX端口使用gstreamer0.10-ffmpeg,因此我还在Raspberry上测试了GStreamer:gst-launch-0.10 playbin uri=file:///sample.mp4,但是视频颜色是正确的,因此似乎是Gluon JavaFX端口错误。任何人都可以帮助修复或找到解决方法?

用于测试的示例类:

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) {
        Media pick = new Media(Paths.get("sample.mp4").toUri().toString());
        MediaPlayer player = new MediaPlayer(pick);

        MediaView mediaView = new MediaView(player);

        StackPane root = new StackPane();
        root.getChildren().add(mediaView);
        Scene scene = new Scene(root,300,250);

        primaryStage.setScene(scene);
        primaryStage.show();

        player.play();
    }
}

编辑:我尝试了其他多个选项来在Java应用程序上显示视频。对于需要在Raspberry上显示视频的其他人,请查看VLCJ库。 VLC显示正确的颜色,甚至比JavaFX MediaPlayer更加平滑。

0 个答案:

没有答案