【发布时间】:2016-06-13 11:08:09
【问题描述】:
我正在尝试创建一个媒体播放器,它使用 JavaFX 2.0 版通过 HTTP 实时流播放本地媒体文件/媒体。
我可以在我的媒体播放器中成功播放本地媒体文件。但是当我尝试通过 HTTP 实时流播放媒体文件时,它就不起作用了。当我尝试使用 HTTP 实时流播放媒体文件时,出现如下所示的白屏。
click here to see the screenshot
以下是我通过 HTTP 实时流播放媒体的代码:
public class RemoteMultipleFileStreaming extends Application {
private static final String MEDIA_URL = "http://youtu.be/uvcUO8DPWfs?list=PLRQuJcU2aZG-aMedJxa7p7ylYmOn5iMlS&t=2";
@Override
public void start(Stage primaryStage) {
GridPane root = new GridPane();
Scene scene = new Scene(root);
primaryStage.setScene(scene);
primaryStage.setMaximized(true);
primaryStage.show();
Media media = new Media(MEDIA_URL);
MediaPlayer mediaPlayer = new MediaPlayer(media);
mediaPlayer.setAutoPlay(true);
MediaView mediaView = new MediaView(mediaPlayer);
mediaView.setFitHeight(500);
mediaView.setFitWidth(500);
root.add(mediaView);
mediaPlayer.play();
}
public static void main(String[] args) {
launch(args);
}
}
请告诉我需要做什么才能使用 JavaFX 在媒体播放器中通过 HTTP 实时流播放媒体文件。
【问题讨论】:
-
您正在尝试流式传输 HTTPS 网址而不是 HTTP。 JavaFX 当前不支持 HTTPS 流。
-
感谢您指出我的错误。我尝试使用 HTTP 协议流式传输视频,但仍然遇到同样的问题。所以请告诉我如何解决这个问题。
-
您使用的网址不正确,因为它不是直接的 mp4 文件。你应该尝试类似 techslides.com/demos/sample-videos/small.mp4
标签: java http javafx video-streaming