Как подключать плеер, а также список всех функций/событий/настроек, читайте в описании API ядра.
Если hls-сервер сконфигурирован особым образом и хранит звук длительное время, то есть возможность перематывать эфир к заданному времени (с точность до ~5 секунд - такова длина одного аудио-фрагмента в hls потоке). Для перемотки используется метод rewindToUnixTimestamp(timestamp)
.
Метод принимает UNIX timestamp
, то есть число секунд с начала эпохи UNIX (Это время UTC и не зависит от часового пояса). Заметьте, что стандартный метод Date.now()
возвращает число миллисекунд, а не секунд.
Например, чтобы переместиться в эфире на 1 час назад, следует вызвать:
player.rewindToUnixTimestamp(Math.floor(Date.now() / 1000) - 60 * 60)
Ниже показана примерная схема, как можно перемещаться по эфиру (до суток назад), используя стандартный слайдер.
<input id="timeline" type="range" min="-86400" max="0" step="5" value="0">
// создаем плеер
var player = new MelonPlayer.Core({
source: "//hls-01-radiovera.hostingradio.ru/rewind/30/playlist.m3u8",
parent: document.querySelector("#hidden_element")
});
player.play(); // не все браузеры разрешают воспроизведение до первого взаимодействия с интерфейсом
// мотаем время, когда пользователь двигает слайдер
document.querySelector('#timeline').addEventListener('change', e => {
var timestamp = Math.floor(Date.now() / 1000) + Number(e.target.value);
player.rewindToUnixTimestamp(timestamp);
});