Динамическое обновление списка воспроизведения YouTube на веб-сайте - PullRequest
0 голосов
/ 13 февраля 2019

ОК. Я пытаюсь разработать веб-сайт, включающий плейлист YouTube.Позже каждый человек (в моей локальной сети), посещающий веб-сайт, сможет добавить песни в этот плейлист.Я буду использовать youtube-api и вероятный php или python для этого.

Теперь я включил плейлист через тег <iframe> и наткнулся на большую проблему.Если я сейчас добавлю больше песен в этот плейлист (поверх самого youtube), они, конечно, будут добавляться в плейлист только на моем веб-сайте, когда я перезагружу весь веб-сайт.И если я просто перезагружаю div, например, <iframe>, проблема в том, что список воспроизведения начинается заново с первой песни.

Есть ли способ динамического обновления списка воспроизведения на моем веб-сайте?Чтобы плейлист не начинался снова с самого начала, текущее воспроизведение остается, а новые добавленные песни фактически добавляются в плейлист «live»?

Здесь тег <iframe>, если это помогает:

<iframe id="playlist" src="https://www.youtube.com/embed/videoseries?list=PLmdXGEzOwfzb0fq7S2iP-t4i7x19R1ZN2"
        frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"
        allowfullscreen>
</iframe>

1 Ответ

0 голосов
/ 13 февраля 2019

Способ, который я предлагаю:

  • (Перед обновлением div, который содержит iframe) , вам необходимо получить как текущее воспроизводимое видео, так и текущее время 1

(После добавления видео в список воспроизведения и получения значений, которые я упоминал в предыдущих строках) , обновитеэлемент div (путем изменения значения src вашего iframe).

Пример может быть таким:

  • У вас есть список воспроизведения с идентификатором: PLmdXGEzOwfzb0fq7S2iP-t4i7x19R1ZN2.
  • Текущее воспроизводимое видео: 51iquRYKPbs
  • Если щелкнуть правой кнопкой мыши на воспроизводимом видео 51iquRYKPbs, вы получите параметр Copy URL video at current time.
  • После выбора опции Copy URL video at current time вы получите следующий URL:

youtu.be / 51iquRYKPbs ? List = PLmdXGEzOwfzb0fq7S2iP-t4i7x19R1ZN2 & t = 80

Проверьте выделенные значения - они понадобятся для перезагрузки вашего iframe.

Текущее значение iframe src выглядит следующим образом:

https://www.youtube.com/embed/videoseries?list=PLmdXGEzOwfzb0fq7S2iP-t4i7x19R1ZN2

(без изменений) .

Чтобы перезагрузить iframe с примененными изменениями, установите свой iframe src следующим образом:

https://www.youtube.com/embed/51iquRYKPbs?list=PLZCHH_4VqpRhMW1K9I1hbgBRmmlWdyK3k&autoplay=1&start=80

(Как только вы измените значение src вашего iframe, он перезагрузится с внесенными изменениями и продолжит воспроизведение видео в указанное время) .

Изменения, внесенные взначение src объясняется следующим образом:

  • Установите значение videoId видео, которое воспроизводилось (до завершения перезагрузки) .
  • Установите началозначение видео для продолжения воспроизведения в указанное время.
  • autoplay=1 необходимо для воспроизведения видео в указанное время.

1 О том, как получить текущее воспроизводимое видео и текущее время воспроизведения видео, является совершенно новым вопросом, и это будет зависеть от того, на каком языке вы обрабатываете все материалы YouTube на своем веб-сайте - (поскольку вы упомянули в своемвопрос, что вы будете использовать php или python) .

...