Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaFX中观看Twitch直播流_Java_Javafx_Twitch - Fatal编程技术网

在JavaFX中观看Twitch直播流

在JavaFX中观看Twitch直播流,java,javafx,twitch,Java,Javafx,Twitch,我想做一个简单的JavaFX应用程序来观看Twitch直播流。 到目前为止,我提出了3种可能的解决方案: 1) javafxwebview。有了它,我成功地观看了Twitch剪辑视频,但直播似乎不受支持。 代码: 2) JavaFX scene.media包。我在JavaFX文档中发现了这个包:它声明支持HLS实时流媒体,但我发现加载任何Twitch频道都没有成功。 代码: 3) TwitchDevelopersAPI。到目前为止,在这里还没有找到任何关于使用Java的live stea

我想做一个简单的JavaFX应用程序来观看Twitch直播流。
到目前为止,我提出了3种可能的解决方案:
1) javafxwebview。有了它,我成功地观看了Twitch剪辑视频,但直播似乎不受支持。
代码:

2) JavaFX scene.media包。我在JavaFX文档中发现了这个包:它声明支持HLS实时流媒体,但我发现加载任何Twitch频道都没有成功。
代码:

3) TwitchDevelopersAPI。到目前为止,在这里还没有找到任何关于使用Java的live steams的信息。


还有,是的,我在网上搜索过这个问题。例如,我发现了一个,但it OPs问题没有得到解决。

对于第二个问题,您需要为它提供实时流(m3u8)的路径,而不是页面。@szatmary,您能提供一个这样的路径示例吗?只需查看浏览器调试工具中的“网络”选项卡并筛选m3u8文件。
public class App extends Application {
    public static void main(String[] args) {
        launch();
    }

    @Override
    public void start(Stage stage) {
        WebView webview = new WebView();
        webview.getEngine().load(
                "https://www.twitch.tv/stariy_bog/clip/RelievedPopularYakinikuDancingBanana"
        );
        WebView webView = new WebView();
        webview.setPrefSize(640, 390);

        stage.setScene(new Scene(webview));
        stage.show();
    }
}
public class MediaTest extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        String uri = "https://www.twitch.tv/qsnake";
        try {
            primaryStage.setTitle("Embedded Media Player");
            Group root = new Group();
            Scene scene = new Scene(root, 540, 210);

            Media media = new Media(uri);
            MediaPlayer mediaPlayer = new MediaPlayer(media);
            mediaPlayer.setAutoPlay(true);
            // create mediaView and add media player to the viewer
            MediaView mediaView = new MediaView(mediaPlayer);
            ((Group) scene.getRoot()).getChildren().add(mediaView);

            primaryStage.setScene(scene);
            primaryStage.sizeToScene();
            primaryStage.show();
            mediaPlayer.setOnPlaying(() -> {
                System.out.println(mediaPlayer.getMedia().getDuration().toString());
            });
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
}