Трансляция видео по расписанию (автовебинар)

Статус
Закрыто для дальнейших ответов.

Grasss

Active Member
Регистрация
02.11.2017
Сообщения
36
Доброго времени суток!
Подскажите как реализовать на сайте трансляцию видео по расписанию?
На сервере будет храниться видеофайл, который нужно транслировать на сайт в определённое время.
Как быть с прокруткой видео до определённого момента? Например если видео началось в 17:00, а пользователь зашел на сайт в 17:20, тогда он должен смотреть видео начиная с 20-той минуты, как это реализовать?
 

BaNru

Пацифизжу
Команда форума
Регистрация
13.11.2010
Сообщения
4 137
Ну так перематывай плеер на необходимое время. В чем именно проблема реализации?
 

Grasss

Active Member
Регистрация
02.11.2017
Сообщения
36
BaNru сказал(а):
Ну так перематывай плеер на необходимое время. В чем именно проблема реализации?
Это должно выглядеть как трансляция, а не просто воспроизведение видео, которое можно промотать.
Трансляция начинается в 17:00 и заканчивается в 18:30
 

Grasss

Active Member
Регистрация
02.11.2017
Сообщения
36
BaNru сказал(а):
Ну так запрети перемотку.
Иначе, если хочешь именно как вещание - разворачивай любой stream media сервер.
Либо попробуй почитать
https://habrahabr.ru/post/162237/
https://habrahabr.ru/post/78677/
Вот тут нашел что-то похожее на мою тему https://ru.stackoverflow.com/questions/597172/%D0%9A%D0%B0%D0%BA-%D1%82%D1%80%D0%B0%D0%BD%D1%81%D0%BB%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C-%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-%D0%BF%D0%BE-%D1%80%D0%B0%D1%81%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D1%8E-%D0%BD%D0%B0-%D1%81%D0%B0%D0%B9%D1%82%D0%B5
 

BaNru

Пацифизжу
Команда форума
Регистрация
13.11.2010
Сообщения
4 137
Ну так это то, на что я изначально и намекал.
Это не решит вашу проблему.
 

Grasss

Active Member
Регистрация
02.11.2017
Сообщения
36
BaNru сказал(а):
Ну так это то, на что я изначально и намекал.
Это не решит вашу проблему.
<script>
var start_hour = 17;
var end_hour = 19

var tag = document.createElement('script');
tag.src = "iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('player', {

height: '590',
playerVars: { 'autoplay': 0, 'controls': 0, 'showinfo': 0, 'rel': 0, 'modestbranding': 1, 'hd': 1, 'cc_load_policy': 1, 'autoplay': 1, 'enablejsapi': 1, 'loop':1},
width: '1050',
align: 'center',
videoId: 'dwiGTtbo6WM',
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}

function onPlayerReady(event) {
event.target.playVideo();
}

var jump = false;
function onPlayerStateChange(event) {
if (event.data == YT.PlayerState.PLAYING && !jump) {
player.seekTo(getSeconds());
jump = true;
}
}
function stopVideo() {
player.stopVideo();
}

var d = new Date();
var h = d.getHours();
var m = d.getMinutes();
function getSeconds() {
if (h >= end_hour && m) return 0;
if (h >= start_hour) {
var time_now = d;
var time_start = new Date(d.getFullYear(), d.getMonth(), d.getDate(), start_hour, 0);
var time_end = new Date(d.getFullYear(), d.getMonth(), d.getDate(), end_hour, 0);
return ((time_end - time_start) - (time_end - time_now)) / 1000;
}
}

</script>


Скрипт работает, он отсчитывает время с начала трансляции и когда пользователь заходит на сайт спустя 30мин, ему открывается момент именно с 30 минуты, в принципе полдела сделано.
 

negenka

New Member
Регистрация
20.11.2017
Сообщения
5
а разве пользователи не поймут что это не прямое вещание а не запись???
 

Grasss

Active Member
Регистрация
02.11.2017
Сообщения
36
negenka сказал(а):
а разве пользователи не поймут что это не прямое вещание а не запись???
Нет, скрипт делает запись трансляцией, сверху накладывается строка состояния <<в эфире>> и все остальные элементы управления скрыты, нельзя ни остановить, ни перемотать, получается как телевещание, началось в 08-00, закончилось в 10-00, если пользователь открыл страницу в 9:59, то через минуту всё закончится.
 
Статус
Закрыто для дальнейших ответов.
Верх Низ