Youtube APIを使ってみます。Youtube APIには3つの種類があるようです。
https://developers.google.com/youtube
その中で、簡単そうなIFrame Player APIを使ってみます。自身のページでyoutubeの動画を再生するためのAPIです。
iframe_api_reference
プレーヤの下にプレイ動画の情報が表示されています。
下記のテキストボックスにYoutubeのURLを記載して下さい。その後、Loadボタンを押すと上のプレーヤでYoutub画像が再生されます。
https://youtu.be/ |
下のボックスに時間、分(min)と秒(sec)を設定して、GOボタンを押すとその時間にジャンプします。
TIME (min) (sec)以下は、Youtubeプレーヤを立ち上げるためのプログラム例です。
<!-- 1. The<iframe> (and video player) will replace this <div> tag. --> <!-- 1. <ifreme>とvideo player は、この<div id="player"></div>に置き換えられる。</div> --> <div id="player"></div> <script> // 2. This code loads the IFrame Player API code asynchronously. //2. このコードは非同期にIFrame Player APIを読み込む。 //以下の4行は、IFrame Player APIを読み込むには必須 var tag = document.createElement('script'); tag.src = "https://www.youtube.com/iframe_api"; var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); // 3. This function creates an <iframe> (and YouTube player) // after the API code downloads. //3. この関数onYouTubeIframeAPIReadyは、API code がダウンロードされた後に、 // <iframe> (and YouTube player)を立ち上げる。 var player; function onYouTubeIframeAPIReady() { player = new YT.Player('player', { height: '390', width: '640', videoId: 'M7lc1UVf-VE', events: { 'onReady': onPlayerReady, 'onStateChange': onPlayerStateChange } }); } // 4. The API will call this function when the video player is ready. //4. 関数onPlayerReadyは、Video Playerが準備できたときに読み出される。 function onPlayerReady(event) { event.target.playVideo(); } // 5. The API calls this function when the player's state changes. // The function indicates that when playing a video (state=1), // the player should play for six seconds and then stop. //5. 関数onPlayerStateChangeは、Playerの状態が変更されたときに読み出される。 // この例ではHPが読み込まれ、video が再生(state=1)され、10秒play した後ストップする。 // 次回、Play ボタンが押されたときには、連続して再生される。 var done = false; function onPlayerStateChange(event) { if (event.data == YT.PlayerState.PLAYING && !done) { setTimeout(stopVideo, 10000); done = true; } } //6. 関数stopVideoは、Playerをストップする。 function stopVideo() { player.stopVideo(); } </script>