video - 如何捕获YouTube视频的图像并在网站上显示

标签 video youtube screenshot video-capture

我对创建一个在屏幕上显示一些“屏幕截图”的网站感兴趣。这些“屏幕截图”可以是任何图像文件类型(例如jpeg,png等),我希望能够显示YouTube视频的第一帧屏幕截图。当用户单击此按钮时,该用户将被重定向到Youtube URL。

给定URL,如何获取YouTube视频的屏幕快照或第一帧图像?例如:http://www.youtube.com/watch?v=gbcmYbMB9mo使用此图像,我想获得GoPro摄像机的图像。是否有API可以捕获YouTube视频的第一张图片?

谢谢

最佳答案

您可以使用 YouTube IFrame API (请参阅https://developers.google.com/youtube/iframe_api_reference)。

以下是播放问题中提供的视频(gbcmYbMB9mo)的示例:

<body onload="LoadYouTubeIframeAPI()">
    <script type="text/javascript">
        var player = null;
        var playerParams =
        {
            playerVars:
            {
                "enablejsapi":1,
                "origin":document.domain,
                "rel":0
            },
            events:
            {
                "onReady":onPlayerReady,
                "onError":onPlayerError,
                "onStateChange":onPlayerStateChange
            }
        };
        function LoadYouTubeIframeAPI()
        {
            var scriptElement = document.createElement("script");
            scriptElement.src = "http://www.youtube.com/iframe_api";
            var firstScriptElement = document.getElementsByTagName("script")[0];
            firstScriptElement.parentNode.insertBefore(scriptElement,firstScriptElement);
        }
        function onYouTubeIframeAPIReady()
        {
            player = new YT.Player("player",playerParams);
        }
        function onPlayerReady(event)
        {
            player.loadVideoById("gbcmYbMB9mo");
        }
        function onPlayerError(event)
        {
            ...
        }
        function onPlayerStateChange(event)
        {
            if (event.data == YT.PlayerState.ENDED)
            {
                ...
            }
        }
    </script>
</body>

您可能需要使用此代码“稍微播放”,以防止视频自动开始...

关于video - 如何捕获YouTube视频的图像并在网站上显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54456581/

相关文章:

asp.net - 从某个 channel 获取所有youtube视频(仅显示25个视频)asp.net

java - 截取特定 LinearLayout 的屏幕截图

jquery - 黑色覆盖显示在 ie9 中的 html5 视频之上

ios - MPMoviePlayerViewController 应该像 YTPlayer 一样制作动画

php - 从我的网站在YouTube channel 上上传视频

ruby-on-rails - 在 Markdown 中嵌入 YouTube 视频?

ios - 如何截取 UIView 的屏幕截图?

iphone - PhoneGap截图插件: get image file path and/or Uri

ios - 上传大视频时网络连接丢失

Python bar_chart_race 错误 - 'Exception: You do not have ffmpeg installed on your machine.'