我的问题是,Youtube直播流是否可以使用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这样的直播流不起作用。my "browser"/application不支持WebM VP8、媒体源扩展、MSE & H.264和MSE & WebM VP9。here描述了一种有效的方法(但性能很差),但这是一种适用于Swing的方法,而不是JavaFX8。这仍然是一个概念证明,表明在Java应用程序中播放流是可能的。我也读过this,但它是1.适用于Android/IOS,2.只指Youtube-Life API,它实际上并没有回答这个问题,似乎对我想要实现的目标有点夸大其词。
我的问题是:有没有可能在JavaFX 8应用程序中播放Youtube上播放的直播流?如果这在本地是不可能的,那么有没有外部库来实现这个目标呢?
发布于 2018-01-11 04:17:49
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();
}https://stackoverflow.com/questions/39949785
复制相似问题