Как реализовать видеообъявления, такие как YouTube и Netflix, которые показываются перед воспроизведением реального видео - PullRequest
1 голос
/ 16 февраля 2020

** Я пытаюсь создать сайт потокового видео, запрограммированный в

PHP или ASP. NET

Я пытаюсь воссоздать senerio, который показывает YouTube. ie. Когда кто-то нажимает на видео, оно показывает видеообъявление в моем видеоплеере. **

Проблема: я хочу показать рекламный ролик без фактического добавления видео ко всем 20k + видео, и пусть будет 4 видео-ролика с названием 1/2/3 / 4.mp4 соответственно, так что должно быть Случайно, что видео воспроизводится.

Ответы [ 2 ]

2 голосов
/ 16 февраля 2020

Самый простой способ сделать это sh, это использовать Формат потока байтов WebM , который позволяет браузеру загружать видео порциями ( это называется кластерами WebM ). Когда браузер загружает один чанк, он отправляет токен обратно на сервер, запрашивая следующий чанк ( на основе меток времени в видеопотоке ). Затем сервер может принять решение прекратить отправку видеопотока основной функции и вместо этого отправить видеопоток для рекламы. Как правило, он обновляет браузер новыми токенами при каждом запросе, чтобы гарантировать, что токены не могут быть повторно использованы для получения новых фрагментов, без того, чтобы сервер сначала принял решение о том, следует ли показывать рекламу в середине потока или нет. Этот же механизм используется большинством сайтов потокового видео для контроля того, когда реклама может воспроизводиться во время видеопотока.

WebM - это формат файла цифрового мультимедийного контейнера, поддерживаемый open- исходный проект WebM. Он содержит подмножество формата мультимедийного контейнера Matroska.


Итак, чтобы рассмотреть практический пример этой техники, давайте предположим, что у нас есть видеофайл длиной 10 минут. Мы стремимся нарезать видео на более мелкие фрагменты (скажем, по 30 секунд каждый), но только логичным способом. Видеофайл физически не поврежден. Когда страница загружается в первый раз, сервер предоставит одноразовый токен (например, nonce ), который можно использовать для извлечения первого фрагмента видео ( первые 30 секунд ) , Таким образом, браузер сгенерирует запрос AJAX вместе с токеном, и сервер ответит 30-секундным фрагментом видео и обновленным токеном. Этот процесс будет повторяться снова и снова, пока мы не достигнем конца видео. Если в какой-то момент сервер решит, что нам нужно показать рекламу, то вместо отправки следующих 30 секунд видео мы отправляем вместо рекламы. Для конечного пользователя создается впечатление, что все видео и реклама воспроизводятся в одном и том же видео.

То, как сервер отслеживает, сколько видео было просмотрено пользователем, основано на токенах. пользователь отправляет обратно в следующем запросе. Вот как вы можете произвольно размещать рекламу в видео на основе длины видео.

1 голос
/ 16 февраля 2020

Использование WebM является опцией, но вы можете сделать это как refre sh таймер, который выбирает случайный номер.

Пример (для начинающих)

$ a = (URL видео) $ b = генерировать случайное число нет. (1-4) // я не добавил. Любой код

Теперь, когда на странице разрешено www.example.com

Создать таймер примерно на время видео, затем воспроизвести видео, после чего d ie () установить соединение и воспроизвести видео ссылка с окончанием таймера с заголовком ()

Я не умею объяснять, но это должно работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...