gpt4 book ai didi

java - 使用 JavaFX 8 播放 Youtube-LiveStreams

转载 作者:太空宇宙 更新时间:2023-11-04 12:09:52 24 4
gpt4 key购买 nike

我的问题是 Youtube-Livestreams 是否可以使用 JDK 8u102 播放。使用 WebView,可以轻松播放 Youtube 视频 (VoD)。示例:

package application;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.web.WebView;
import javafx.stage.Stage;


public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {
WebView embeddedWV = new WebView();
embeddedWV.getEngine().load(
"https://www.youtube.com/embed/oyA8odjCzZ4"
);
embeddedWV.setPrefSize(640, 400);
Scene scene = new Scene(embeddedWV);
primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
launch(args);
}
}

但这种方法不适用于直播,例如 https://youtu.be/opHkchLbYR4 。错误指出我的“浏览器”/应用程序不支持 WebM VP8、媒体源扩展、MSE & H.264 以及 MSE & WebM VP9。描述了一种有效的方法(但性能很糟糕)here ,但这是 Swing 的一种方法,而不是 JavaFX8。它仍然是一个概念证明,表明可以在 Java 应用程序中播放流。我还读过this ,但它是 1. 对于 Android/IOS 和 2. 仅指 Youtube-Life API,它实际上并没有回答问题,对于我试图完成的任务来说似乎有点矫枉过正。

我的问题是:是否可以在 JavaFX 8 应用程序中播放 Youtube 广播的直播?如果本身不可能,是否有外部库可以实现这样的目标?

最佳答案

public void start(Stage primaryStage) {
StackPane root = new StackPane();
Scene scene = new Scene(root, 640, 400);
primaryStage.setScene(scene);
WebView embeddedWV = new WebView();
embeddedWV.getEngine().load(
"https://www.youtube.com/embed/oyA8odjCzZ4"
);
embeddedWV.setPrefSize(640, 400);
root.getChildren().add(embeddedWV);

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

关于java - 使用 JavaFX 8 播放 Youtube-LiveStreams,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39949785/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com