Справка по настройкам
Все настройки — в OBS. Дважды щёлкните источник Trackspin в «Источниках», и откроется окно свойств.
Состояние
Вверху окна видно, что сейчас играет и какие плееры видит Trackspin: приложения, вкладки браузера с расширением и браузеры без него. Чтобы проверить ещё раз, нажмите Обновить.
В блоке Последние треки — 10 последних треков и время, когда каждый начал играть.
Вид карточки
- Тема: Компактная или Пластинка с вращающимся диском.
- Расположение: Обложка слева или Обложка сверху.
- Фон: Тёмный, Светлый или Цвет обложки. В последнем случае карточка берёт тёмный оттенок основного цвета обложки, а полоса прогресса — светлый, так что каждый трек выглядит немного по-своему.
- Шрифт: Системный (Segoe UI), Onest или Unbounded.
Отдельной настройки размера нет. Меняйте размер источника рамкой на сцене, как у любого источника OBS. Карточка рисуется в двойном размере, поэтому остаётся чёткой при увеличении до 2 раз.
Время и прогресс
- Полоса прогресса: включает или выключает тонкую полосу под названием.
- Время трека: Не показывать, Прошло (
1:23), Осталось (−2:41), Прошло и всего (1:23 / 4:04) или Прошло и осталось (1:23 · −2:41). У радио и стримов нет длительности, поэтому для них показывается только прошедшее время. - Свой цвет полосы: свой цвет для полосы прогресса вместо того, что идёт вместе с фоном.
Поведение
- На паузе: Приглушать карточку или Скрывать карточку.
- Показывать: Всегда или Несколько секунд после смены трека. Во втором режиме карточка появляется, когда начинается новый трек и когда музыка продолжается после паузы, держится столько, сколько указано в поле Сколько показывать (от 3 до 120 секунд, по умолчанию 10), и прячется.
Не показывать
Список треков, которые карточка должна пропускать. Пишите по одной записи на строку. Каждая строка — одно из трёх:
- исполнитель, например
Queen; - название трека, например
Under Pressure; - исполнитель и название через дефис или тире, например
Queen - Under Pressure.
Заглавные буквы не важны, кириллица тоже работает.
Как сравниваются строки
- Исполнитель скрывает все его треки, включая совместные. Исполнители, записанные через
&, запятую,feat.илиft., проверяются по отдельности. Имя сравнивается целиком, а не как часть другого слова. - Название скрывает этот трек у любого исполнителя, включая каверы. Хвосты в скобках и после « - » не учитываются, поэтому
Under Pressureскроет и «Under Pressure (Remastered 2011)», и «Under Pressure - Live». Часть слова не считается. - Исполнитель - Название скрывает только этот трек этого исполнителя.
Примеры
| Строка | Скроет | Не скроет |
|---|---|---|
Queen | Queen — Bohemian Rhapsody Queen & David Bowie — Under Pressure | Queens of the Stone Age — No One Knows |
Under Pressure | Under Pressure любого исполнителя Under Pressure (Remastered 2011) | Pressure Drop |
Pressure | ничего: это только часть названия | Under Pressure, Pressure Drop |
Queen - Under Pressure | Queen & David Bowie — Under Pressure, потому что Queen среди исполнителей | кавер Under Pressure другого исполнителя |
Что происходит со скрытым треком
Карточка ведёт себя так, будто ничего не играет, и плавно исчезает. Если в это же время играет другой плеер, карточка покажет его. Скрытые треки также не попадают в текстовые файлы, API и последние треки.
Когда это пригодится
- треки, на которые на стриме может прийти жалоба правообладателя;
- что-то личное, что не хочется показывать;
- реклама и звуки, которые плеер выдаёт за трек.
Осторожнее с частыми названиями. Строка Intro скроет все интро всех исполнителей. Чтобы скрыть одно, пишите Исполнитель - Intro.
Положение на экране
- Положение на экране: Вручную (двигать мышкой), один из четырёх углов, середина любого края или По центру.
- Отступ от края: расстояние от карточки до края сцены в пикселях, по умолчанию 40.
Карточка сама встаёт в выбранное место и остаётся там при смене темы: она растёт от своего угла, а не уезжает. Если добавить источник в другую сцену, он тоже встанет на место. Чтобы двигать карточку мышкой, выберите Вручную.
Музыкальные сервисы и другие источники
В блоке Музыкальные сервисы — переключатель для каждого сервиса: Яндекс Музыка, VK Музыка, Spotify, YouTube Music, Apple Music, SoundCloud, Deezer, TIDAL и Amazon Music. Выключите сервис, и карточка перестанет его замечать.
Другие источники:
- Другие музыкальные плееры (AIMP, foobar2000, MusicBee, Media Player и другие): включены по умолчанию.
- Видеоплееры (VLC, PotPlayer, MPC и другие) и Видео на YouTube: выключены по умолчанию, чтобы фильмы и ролики не попадали на карточку.
- Музыка в браузерах без расширения: Trackspin видит музыку в Chrome, Edge, Firefox и Opera и без расширения, но не знает, какой сайт играет, поэтому может попасть видео с YouTube. Расширение для браузера это исправляет.
- Тестовые треки (демо): показывает пример карточки, пока музыка не играет. Удобно, чтобы настроить внешний вид.
Сохранять трек в файлы
Включите Сохранять трек в файлы и выберите Папку. По умолчанию это %APPDATA%\obs-studio\plugin_config\trackspin\now-playing. Кнопка Открыть папку покажет её в Проводнике. Файлы обновляются при каждой смене трека:
| Файл | Что внутри |
|---|---|
track.txt | Исполнитель — Название |
title.txt, artist.txt, album.txt | название, исполнитель и альбом по отдельности |
cover.jpg | обложка. Внутри может быть PNG, OBS с этим справляется. Без обложки — прозрачная картинка 1×1 |
nowplaying.json | всё сразу, в том же формате, что у API |
Когда ничего не играет, текстовые файлы пустые.
Чтобы вывести их в OBS, добавьте источник Текст (GDI+), отметьте Читать из файла и выберите track.txt. Для обложки добавьте источник Изображение с файлом cover.jpg.
Для своих виджетов и ботов
Пока открыт OBS, Trackspin отвечает на вашем компьютере. Streamer.bot, скрипты и локальные виджеты могут брать текущий трек по этим адресам:
GET http://127.0.0.1:48210/api/now-playing: текущий трек в JSON;GET /events: тот же JSON потоком Server-Sent Events, сразу после подключения и затем при каждом изменении;GET /api/history: 20 последних треков, новые первыми.
Порт — первый свободный из 48210–48214, обычно 48210. Точный адрес показан внизу окна свойств.
Основные поля: active (false, когда ничего не играет или трек скрыт), title, artist, album, status (playing или paused), durationMs и positionMs (пустые у радио), positionAt, coverUrl, service и trackId, который меняется с каждым треком. Текущая позиция во время игры — positionMs плюс время, прошедшее с positionAt.
const es = new EventSource('http://127.0.0.1:48210/events');
es.onmessage = (e) => {
const s = JSON.parse(e.data);
console.log(s.active ? `${s.artist} — ${s.title}` : 'ничего не играет');
};
Программы на вашем компьютере читают его без ограничений. В браузере — только локальные страницы: открытые из файла, с localhost или 127.0.0.1, например браузерный источник OBS с вашим виджетом. Обычные сайты прочитать трек не могут.