Documentation Index
Fetch the complete documentation index at: https://bym.lonestill.uk/llms.txt
Use this file to discover all available pages before exploring further.
Воспроизведение
api.Player.isPlaying() // → boolean
api.Player.getPosition() // → number, текущее время (сек)
api.Player.getDuration() // → number, длина трека (сек)
api.Player.seek(sec) // перемотать на позицию
Скорость
api.Player.getSpeed() // → number (0.25–4)
api.Player.setSpeed(n) // установить скорость
api.Player.resetSpeed() // сбросить до 1× и остановить enforcer
setSpeed запускает фоновый таймер каждые 500мс — YM иногда сбрасывает скорость при смене трека, таймер это исправляет.
Громкость
api.Player.getVolume() // → number (0–1)
api.Player.setVolume(v) // установить (0–1)
Управление треками
api.Player.next() // следующий трек
api.Player.prev() // предыдущий трек
api.Player.like() // лайк
api.Player.dislike() // дизлайк
Реализованы через клик по DOM кнопкам плеера.
Повтор и перемешивание
api.Player.getRepeat() // → 'none' | 'all' | 'one'
api.Player.toggleRepeat() // none → all → one → none
api.Player.getShuffle() // → boolean
api.Player.toggleShuffle() // переключить
Метаданные трека
api.Player.getTrack()
// → null | { title, artist, album, artwork }
Источник — MediaSession API. Возвращает null если ничего не играет.
| Поле | Тип | Описание |
|---|
title | string | Название трека |
artist | string | Исполнитель |
album | string | Альбом |
artwork | string | URL обложки |
Пример
BYM.register({ id: 'player-demo' }, (api) => {
function onTrack(track) {
if (!track) return;
api.Logger.log(`${track.artist} — ${track.title}`);
api.UI.notify(track.artist, track.title);
}
return {
start() {
api.Player.setSpeed(1.25);
api.Events.on('trackChange', onTrack);
},
stop() {
api.Player.resetSpeed();
api.Events.off('trackChange', onTrack);
},
};
});