Youtube嵌入式播放器:视频结束时的事件

本文关键字:事件 结束 视频 嵌入式 播放器 Youtube | 更新日期: 2023-09-27 17:50:43

我正在创建一个在c# (winform)中播放youtube视频的应用程序。现在我想在视频结束时触发一个事件或类似的东西。我正在使用web浏览器控件并像这样调用youtube视频:

wbYoutube.Navigate("http://www.youtube.com/v/" + playString[1] + "?version=3&enablejsapi=1&autoplay=1");

playString[1]为youtube视频id(如rGJN5K2cV_8)。

我已经试着让这个工作几天了,有没有人有一个关于如何实现这一点的想法?如果有可能的话…

如果你需要更多的信息,请告诉我。由于

Youtube嵌入式播放器:视频结束时的事件

我认为这是可能的,但你必须自己编写html代码到浏览器元素

wbYoutube.DocumentText = "";

这是html(你必须转义它)

    <html><head></head><body>
    <script type='text/javascript' src='http://www.youtube.com/player_api'></script>
    <iframe id="player" width="100%" height="100%" src="http://www.youtube.com/embed/VIDEO_ID?autoplay=1&controls=0&enablejsapi=1" frameborder="0" allowfullscreen></iframe>
    <script type="text/javascript">
    var player;
    function onYouTubeIframeAPIReady() {
        player = new YT.Player('player', {
            videoId: 'VIDEO_ID',
            events: {
                'onStateChange': function(evt){
                    if(evt.data == 0){
                        window.external.Test('Video finished!!');
                    }
                }
            }
        });
    }
    </script>
</body></html>

和看一下实现DHTML代码和客户端应用程序代码之间的双向通信

在这里您可以找到剩下的代码。