Я борюсь с настройкой цикла для API YouTube, используя мой код каждый раз, когда загружается видео цикла. Я поместил только одно видео в цикл

Вот мое видео http://dynamitechefs.ch/
Я поместил одно видео в цикл. Видео загружается каждый раз. Как я могу удалить загрузку видео?
Вот мой код

 function onYouTubeIframeAPIReady() {
    player = new YT.Player('player', {
        height: mediaParams['height'],
        width: mediaParams['width'],
        videoId: mediaParams['v'],
        playerVars: {
            controls: 1,
            showinfo: 0 ,
            startAt:1,
            rel:0,
            loop:1,
            playlist : 'BmAL33M0jcI'    
        },
        events: {
            'onReady': onPlayerReady,
            'onStateChange': onPlayerStateChange
        }
    });
}

Заранее спасибо.

2 ответа

Исходя из документации параметров проигрывателя IFrame API, при воспроизведении одного видеопроигрывателя настройка 1 заставляет проигрыватель воспроизводить исходное видео снова и снова. В случае проигрывателя списка воспроизведения (или пользовательского проигрывателя) проигрыватель воспроизводит весь список воспроизведения, а затем снова запускается с первого видео.

Просто учтите, что в настоящее время параметр loop работает только на проигрывателе AS3, если используется вместе с параметром playlist. Чтобы зациклить одно видео, установите значение параметра цикла равным 1 и установите для параметра параметра списка воспроизведения тот же идентификатор видео, который уже указан в URL-адресе API проигрывателя:

 https://www.youtube.com/v/VIDEO_ID? > version=3
 &loop=1  
 &playlist=VIDEO_ID

Для получения дополнительной информации используйте эту демонстрацию, чтобы узнать, как работают различные параметры API IFrame.

Вы можете использовать функцию player.seekTo для поиска начала видео, когда видео близко к концу (т.е. завершено на 99%), чтобы сохранить буфер плеера в памяти и предотвратить перезагрузку. Вы можете увидеть этот пример в коде ниже:

var player;
// Callback for when the YouTube iFrame player is ready
function onYouTubeIframeAPIReady() {
  player = new YT.Player('player', {
    // Set Player height and width
    height: '390',
    width: '640',
    // Set the id of the video to be played
    videoId: 'Rykmwn0SMWU',
    // Setup event handelers
    events: {
      'onReady': onPlayerReady,
    }
  });
};

function onPlayerReady() {
var interval = setInterval(function(){
  console.log(player.getCurrentTime() / player.getDuration())
  if (player.getCurrentTime() / player.getDuration()  > .99) {
    player.seekTo(0)
  }
},500);
}
Другие вопросы по тегам