Concerto
Слушай музыку из Local/Online/NeteaseCloud/QQMusic в Minecraft. 在Minecraft游戏中听本地/在线/网易云/QQ音乐! Поддержка обмена песнями и заказа музыки на сервере!
- Загрузчики
- FabricNeoForgeForgePaper
- Скачиваний на Modrinth
- 85,6 тыс.
- Подписчиков на Modrinth
- 43
- версий
- 219
- Обновлён
- 30 июля 202630 июл.
- Опубликован
- в 2024
Коротко о моде
Работает и в игре, и на сервере — ставьте, где нужен
Concerto
✨ Возможности
- Много источников, один плеер — NetEase Cloud Music, QQ Music, KuGou Music, локальные аудиофайлы (перетаскиванием) и прямые HTTP-ссылки.
- Плавное воспроизведение — перетаскивай полосу прогресса, чтобы перемещаться по треку, слушай дальше, пока загружается поток, и выбирай вариант аудиовыхода, если стандартный тебе не подходит. Поддерживаются форматы MP3, OGG/Opus, FLAC, WAV, M4A/AAC и AIFF.
- Музыкальные комнаты (слушаем вместе) — участники комнаты синхронно воспроизводят музыку в реальном времени: один и тот же трек, одна и та же позиция, одни и те же паузы. Комнатам можно давать названия, они могут отображаться в общем списке, а присоединиться можно через экран в браузере или по UUID.
- Очередь на весь сервер (режим KTV) — игроки заказывают песни для всего сервера, голосуют за пропуск, а когда очередь пуста, сервер переключается на предустановленные радиостанции.
- Общий доступ и готовые плейлисты — владельцы серверов могут настроить собственные аккаунты поддерживаемых музыкальных сервисов для сервера и делиться подборками плейлистов со всеми.
- Кроссплатформенность — Fabric и NeoForge на клиенте; отдельный плагин для Paper позволяет клиентам с модами использовать все серверные функции на плагин-серверах.
📦 Установка
| Платформа | Что устанавливать |
|---|---|
| Клиент Fabric | `Concerto-mc-fabric-.jar` + Fabric API |
| Клиент NeoForge | `Concerto-mc-neoforge-.jar` |
| Сервер Paper | `Concerto-mc-paper-.jarв папкуplugins/` |
Concerto хранит свои настройки, плейлисты, загрузки и данные входа в папке Concerto/ рядом с папкой игры или сервера.
Concerto можно использовать как локальный плеер в одиночной игре и на серверах, где он не установлен. Общие комнаты, общий доступ и очередь на весь сервер требуют Concerto и на сервере (Fabric, NeoForge или Paper).
⌨️ Горячие клавиши
Все горячие клавиши можно переназначить в Настройки → Управление.
| Клавиша по умолчанию | Действие |
|---|---|
I | Открыть меню Concerto (главное меню) |
U | Открыть экран плейлиста |
N | Включить следующий трек |
P | Пауза / продолжить |
🖱️ Экраны и управление
Главный экран (I)
Твоя отправная точка для плейлистов, музыкальных сервисов (NetEase / QQ / KuGou), поиска, локальных файлов, ссылок, музыкальных комнат и настроек.
Экран плейлиста (U)
- Перетаскивай аудиофайлы или целые папки из файлового менеджера, чтобы импортировать их.
- Двойной клик по записи запускает её; одиночный клик выделяет.
- Нижний ряд: следующий / воспроизведение / удалить / порядок (обычный, случайный, обратный, повтор) / пауза / информация / очистить.
- В очереди на весь сервер кнопка Воспроизведение превращается в Заказать на сервере и ставит выбранную песню в очередь.
- Кнопка громкости открывает ползунок (клик в любом другом месте закрывает его). Изменения громкости применяются сразу и сохраняются в конфиг.
- Поле поиска фильтрует текущий плейлист.
Предпросмотр плейлистов
- Выбери Сохранить локально, чтобы сразу добавить отображаемый плейлист в Локальные плейлисты; он также записывается в формате JSON в
Concerto/local_playlists/.
Экран плеера
- Перетаскивай полосу прогресса, чтобы перемотать; во время перетаскивания показывается предпросмотр целевой позиции.
- Отображает название, исполнителя, источник, обложку и состояние буферизации для потоковых треков.
Экран музыкальных комнат
- Режим обзора: список публичных (видимых) комнат сервера с присоединением в один клик, а также поля для создания именованной комнаты, присоединения по UUID, обновления списка или входа в серверную очередь.
- Режим управления (когда ты в комнате): список участников, переименование, переключение видимости / возможности присоединиться, выдача прав со-ведущего, а также роспуск или выход из комнаты.
Экран настроек
Через игровые настройки можно менять аудиовыход, видимость HUD, скорость прокрутки текста, качество звука NetEase и многое другое. Изменения аудиовыхода вступают в силу со следующего трека.
📜 Команды
Управление клиентским плеером – /concerto (алиас /music)
Алиас /music можно отключить опцией клиентского конфига registerMusicCommand.
Большинство повседневных действий доступно через экраны выше. Команды — это необязательные сокращения для игроков и владельцев серверов, которым так удобнее.
| Команда | Описание |
|---|---|
/concerto pause | Переключить паузу / продолжить |
/concerto start | Запустить плеер, если он не работает |
/concerto stop | Остановить воспроизведение |
/concerto clear | Остановить воспроизведение и очистить плейлист |
/concerto restart | Перезапустить ядро плеера (восстанавливает зависшее состояние) |
/concerto reload | Перезагрузить конфиги, локальные плейлисты и перезапустить плеер |
/concerto save | Закешировать текущий трек локально (только для источников с поддержкой кеша) |
/concerto like / dislike | Лайкнуть / дизлайкнуть текущий трек (только NetEase Cloud Music) |
/concerto download-current | Скачать текущий трек и его текст в Concerto/ |
/concerto download-all | Скачать все треки из текущего плейлиста |
/concerto export-as-playlist | Экспортировать текущий плейлист как JSON-пресет плейлиста (Concerto/local_playlists) |
/concerto clean-cache | Очистить клиентский кеш (музыка, изображения, файлы проверки) |
Музыкальные комнаты и серверная очередь — /musicroom (требуется Concerto на сервере)
| Команда | Описание |
|---|---|
/musicroom create [name] | Создать комнату (необязательно с названием) и войти в неё; UUID комнаты копируется в буфер обмена. Доступ регулируется серверным musicRoomCommandPermission |
| `/musicroom join ` | Войти в комнату по UUID |
/musicroom quit | Покинуть текущую комнату или серверную очередь |
/musicroom remove | Распустить свою комнату |
/musicroom members | Показать владельца комнаты и список участников |
| `/musicroom op ` | Переключить право участника управлять воспроизведением (только владелец) |
/musicroom agent join / quit | Войти в общую серверную очередь / выйти из неё (режим KTV) |
/musicroom agent add | Добавить текущий играющий трек в серверную очередь |
/musicroom agent vote | Запустить голосование за пропуск текущего трека в очереди |
/musicroom agent vote <true|false> | Отдать голос в идущем голосовании за пропуск |
Обмен музыкой между игроками — /sharemusic
| Команда | Описание |
|---|---|
| `/sharemusic to ` | Поделиться текущим треком с одним игроком или со всеми (@a проходит через серверную очередь проверки, если включён аудит). Источники, раскрывающие локальные пути к файлам, отклоняются как небезопасные |
| `/sharemusic accept ` | Принять приглашение поделиться |
| `/sharemusic reject ` | Отклонить приглашение поделиться |
/sharemusic reject all | Отклонить все ожидающие приглашения |
| `/sharemusic list ` | Показать ожидающие приглашения (кнопки принять / отклонить) |
Администрирование сервера — /concerto-server
Все подкоманды требуют уровень прав 2 (OP), кроме fetch-radios, которую может использовать любой игрок.
| Команда | Описание |
|---|---|
| `/concerto-server audit ` | Одобрить ожидающий запрос на трансляцию @a |
| `/concerto-server audit reject ` | Отклонить ожидающий запрос на трансляцию |
/concerto-server audit reject all | Отклонить все ожидающие запросы |
| `/concerto-server audit list ` | Показать очередь проверки (кнопки одобрить / отклонить) |
/concerto-server reload | Перезагрузить серверный конфиг, пресеты радио и куки платформ |
/concerto-server reload-cookie | Перезагрузить только файлы куки платформ |
/concerto-server clean-cache | Очистить серверный кеш |
/concerto-server fetch-radios | Отправить пресеты радио с сервера на ваш клиент |
/concerto-server agent reset | Полностью сбросить серверную очередь |
/concerto-server agent cut | Принудительно пропустить текущий трек в очереди |
/concerto-server agent stop / start | Остановить / перезапустить режим KTV |
📖 Как пользоваться
Слушайте вместе в музыкальной комнате
/musicroom create My Room(или через экран музыкальных комнат) — UUID попадёт в буфер обмена.- Передайте UUID друзьям (`/musicroom join `) или отметьте комнату как видимую и доступную для входа, чтобы она появилась в браузере комнат у всех.
- Всё, что воспроизводят, перематывают или ставят на паузу управляющие участники, синхронизируется у каждого участника в реальном времени. С помощью
/musicroom opрешайте, кто может управлять воспроизведением.
Запустите общую очередь на сервере (режим KTV)
- В настройках Concerto на сервере оставьте общую очередь включённой. Там же можно выбрать, получать ли игрокам приглашение при входе.
- Игроки заходят через
/musicroom agent join, затем используют Request in server на выбранной песне. Команда/musicroom agent addпо-прежнему может добавить текущий трек в очередь; обе ограничены по частоте параметромmusicAgentAddTimeLimit. - Если сервер определяет песню как пробный фрагмент, все в очереди получают уведомление.
- Любой в очереди может запустить голосование за пропуск:
/musicroom agent vote, затем остальные подтверждают через/musicroom agent vote true(илиfalse). - Когда очередь пуста, сервер включает свои предустановленные радиостанции, если они настроены.
Поделитесь аккаунтом музыкального сервиса с сервером
- Войдите в музыкальный сервис на своём клиенте.
- Скопируйте файлы
.cookie, созданные в папкеConcerto/вашего клиента, в папкуConcerto/на сервере. Обращайтесь с этими файлами как с паролями. - В настройках Concerto на сервере включите доступ к общему аккаунту для очереди, затем выполните
/concerto-server reload-cookie.
Поставляйте готовые плейлисты
Положите экспортированные JSON-файлы плейлистов (см. /concerto export-as-playlist) на сервер в папку Concerto/preset_radios/; специальный файл music_agent.json — это то, к чему откатывается режим KTV. Клиенты получают радиостанции автоматически или по запросу через /concerto-server fetch-radios.
Кэш и загрузки
Concerto сохраняет музыку только тогда, когда вы об этом попросите: используйте /concerto save для текущего трека или download-current / download-all для постоянных копий с текстами. Размер кэша можно настроить в настройках.
⚙️ Конфигурация
Для обычного использования редактировать файлы не нужно: экран настроек в игре покрывает основные варианты. Справка ниже — для игроков и владельцев серверов, которым нужно больше контроля. Файлы настроек находятся в Concerto/; редактируйте их только при закрытой игре.
client_config.json
Воспроизведение и сеть
| Ключ | По умолчанию | Значение |
|---|---|---|
playerVolume | 1.0 | Громкость плеера, 0.0 – 1.0 |
playerVolumeFollowsMaster | true | Умножать на общую громкость Minecraft |
playbackBackend | "JAVASOUND" | Аудиобэкенд: "JAVASOUND" или "OPENAL". Изменение вступает в силу со следующего трека |
displayPlayerScreenCoverAndSpectrum | true | Показывать обложку и спектр на экране плеера; false использует полноширинный вид с текстами |
neteaseMusicQuality | "HIRES" | Качество NetEase: "STANDARD", "HIGHER", "EXHIGH", "LOSSLESS", "HIRES" |
maxCacheSize | 100000000 | Лимит кэша в байтах (отдельно для музыки и изображений) |
handshakeRequired | true | Проверять рукопожатие Concerto перед использованием серверных функций |
confirmAfterReceived | true | Спрашивать перед принятием входящего общего доступа (false — принимать автоматически) |
joinAgentWhenInvited | false | Автоматически принимать приглашение KTV от сервера при входе |
registerMusicCommand | true | Регистрировать псевдоним /music |
printRequestResults | false | Логировать ответы API платформы (для отладки) |
kuGouMusicLite | false | Использовать эндпоинты KuGou "concept/lite" |
autoGetKuGouDailyVIP | false | Автоматически получать ежедневный VIP KuGou |
HUD
У каждого элемента HUD есть переключатель display*, позиция, выравнивание (LEFT / CENTER / RIGHT) и цвета в формате ARGB:
| Элемент | Ключи |
|---|---|
| Текст песни | displayLyrics, lyricsPosition (по умолчанию 0.5,1-100), lyricsAlignment, lyricsColor |
| Подтекст (перевод) | displaySubLyrics, subLyricsPosition (по умолчанию 0.5,1-89), subLyricsAlignment, subLyricsColor |
| Детали трека | displayMusicDetails, musicDetailsPosition (по умолчанию 1-30,0+5), musicDetailsAlignment, musicDetailsColor |
| Время и полоса прогресса | displayTimeProgress, timeProgressPosition (по умолчанию 1-30,0+15), timeProgressAlignment, timeProgressTextColor, timeProgressColor, timeProgressBgColor |
| Обложка | displayCoverImg, coverImgPosition (по умолчанию 1-25,0), coverImgSize, coverImgInCircle, coverImgRotate |
| Разное | textShadow, hideWhenChat, scrollingTextSpeed |
- Формат позиции:
<доля по x>±<пиксели>,<доля по y>±<пиксели>.0.5,1-100= по центру по горизонтали, 100 px от нижнего края;1-30,0+15= 30 px от правого края, 15 px от верхнего. - Формат цвета:
#AARRGGBB, например#ffffffff— непрозрачный белый,#ff00aaaa— непрозрачный бирюзовый.
server_config.json
| Ключ | По умолчанию | Значение |
|---|---|---|
auditionRequired | true | Рассылки @a требуют одобрения оператора через /concerto-server audit |
serverMusicAgent | true | Включить общую серверную очередь (режим караоке) |
agentInviteWhenJoin | true | Приглашать игроков в очередь при входе |
musicRoomCommandPermission | 2 | Минимальный уровень прав для создания музыкальной комнаты |
musicAgentAddTimeLimit | 60 | Сколько секунд игрок должен ждать между добавлениями треков в очередь |
musicAgentUseShared | true | Искать треки из очереди через собственные cookie сервера |
kuGouMusicLite | false | Использовать облегчённые эндпоинты KuGou на стороне сервера (также передаётся клиентам) |
❓ FAQ
Как настроить аккаунт музыкального сервиса на сервере? Сначала войдите в него на своём клиенте, затем скопируйте файлы .cookie из папки Concerto/ клиента в такую же папку на сервере. После этого выполните /concerto-server reload-cookie. Держите эти файлы в секрете: они дают доступ к вашему аккаунту.
NetEase постоянно выдаёт ошибку после входа по QR-коду. Система контроля рисков NetEase агрессивно помечает входы с новых устройств и из новых мест. Не входите по QR-коду или паролю, а вставьте полный cookie уже работающей сессии из браузера.
QQ Music перестаёт работать через несколько дней. Cookie QQ Music быстро истекают — так задумано. Обновите файлы cookie на сервере и выполните /concerto-server reload-cookie.
Какой вариант вывода звука выбрать? JAVASOUND — рекомендуемый вариант по умолчанию. Попробуйте OPENAL, если звук заикается или идёт не на то устройство. Изменение вступит в силу со следующего трека.
Иногда перемотка по треку идёт медленно. Некоторые потоковые файлы и радиостанции не позволяют перейти сразу в любую точку, поэтому Concerto может понадобиться время, чтобы догнать. Перемотка внутри недавно проигранного аудио обычно быстрее.
Какие локальные аудиофайлы можно воспроизводить? Concerto поддерживает MP3, OGG/Opus, FLAC, WAV, M4A/AAC и AIFF. Поддержка необычных кодировок внутри этих контейнеров может отличаться, так что конвертация проблемного файла в MP3 или WAV всё ещё остаётся надёжным запасным вариантом.
Плеер завис / молчит после ошибки. /concerto restart перезапускает ядро плеера, не трогая ваш плейлист. Если экраны отрисовываются неправильно или обложки чёрные — /concerto clean-cache, а в крайнем случае удалите Concerto/cache при закрытой игре.
Команды комнат / общего доступа сообщают, что функция недоступна. Эти функции требуют Concerto на сервере (Fabric, NeoForge или плагин для Paper). На ванильных серверах мод всё ещё работает как обычный локальный плеер.
Моя громкость сбрасывается или игнорирует ползунок. Если playerVolumeFollowsMaster включён, итоговая громкость — это playerVolume × master volume — проверьте также настройки Music & Sounds в самом Minecraft.
✨ Особенности
- Много источников, один плеер — NetEase Cloud Music, QQ Music, Kugou Music, локальные аудиофайлы (с поддержкой drag-and-drop), прямые HTTP-ссылки — всё в одной очереди воспроизведения.
- Плавное воспроизведение — перетащите ползунок, чтобы перемотать, потоковая загрузка не прерывает прослушивание; если вывод по умолчанию не подходит, можно переключить способ вывода звука. Поддерживаются MP3, OGG/Opus, FLAC, WAV, M4A/AAC и AIFF.
- Музыкальная комната (слушаем вместе) — участники одной комнаты в реальном времени делят состояние воспроизведения: одна песня, один прогресс, синхронная пауза. Комнату можно назвать, сделать публичной, присоединиться в один клик из списка комнат или по UUID.
- Общий заказ музыки (режим KTV) — игроки ставят песни в очередь на весь сервер, можно запустить голосование за смену трека; когда никто не заказывает, автоматически играет серверный плейлист.
- Общие аккаунты и готовые плейлисты — владелец сервера может настроить свой авторизованный аккаунт музыкального сервиса и поделиться подготовленным плейлистом со всеми игроками.
- Кроссплатформенность — клиент поддерживает Fabric и NeoForge; для плагин-серверов есть отдельный плагин Paper, а модовый клиент на плагин-сервере тоже получает доступ ко всем серверным функциям.
📦 Установка
| Платформа | Что нужно установить |
|---|---|
| Клиент Fabric | Concerto-mc<версия>-fabric-<версия мода>.jar + Fabric API |
| Клиент NeoForge | Concerto-mc<версия>-neoforge-<версия мода>.jar |
| Сервер Paper | Concerto-mc<версия>-paper-<версия мода>.jar в папку plugins/ |
Concerto хранит настройки, плейлисты, загруженный контент и данные входа в папке Concerto/ рядом с директорией игры или сервера.
В одиночной игре и на серверах без Concerto его можно использовать как локальный плеер; для музыкальных комнат, обмена музыкой и общего заказа музыки Concerto должен быть установлен и на сервере (Fabric, NeoForge или Paper — любой).
⌨️ Горячие клавиши
Все эти клавиши можно переназначить в Настройки → Управление.
| Клавиша по умолчанию | Действие |
|---|---|
I | Открыть главное меню Concerto |
U | Открыть интерфейс плейлиста |
N | Следующий трек |
P | Пауза / продолжить |
🖱️ Интерфейс и управление
Главное меню (I)
Единая точка входа для плейлистов, каталогов NetEase / QQ / Kugou, поиска, локальных файлов, ссылок, музыкальных комнат и настроек.
Интерфейс плейлиста (U)
- Перетаскивайте аудиофайлы или целые папки прямо из файлового менеджера для импорта.
- Двойной клик по элементу — воспроизвести, одиночный — выбрать.
- Нижний ряд кнопок: следующий трек / воспроизвести / удалить / порядок воспроизведения (по порядку, случайно, в обратном порядке, повтор одного трека) / пауза / подробности / очистить.
- После подключения к общему заказу музыки кнопка воспроизвести превращается в заказать на сервере и добавляет выбранную песню в серверную очередь.
- Кнопка громкости открывает ползунок, который автоматически скрывается при клике в любом другом месте интерфейса; громкость применяется сразу и сохраняется в конфиг.
- Поле поиска сверху фильтрует текущий список.
Предпросмотр плейлиста
- Нажмите сохранить локально, чтобы сразу добавить текущий плейлист в локальные плейлисты; одновременно он записывается в JSON-файл в
Concerto/local_playlists/.
Интерфейс плеера
- Перетаскивайте ползунок, чтобы перейти к позиции воспроизведения; во время перетаскивания показывается предпросмотр целевой позиции.
- Отображаются название, исполнитель, источник, обложка; для потоковых треков показывается состояние буферизации.
Интерфейс музыкальной комнаты
- Режим обзора: список публичных (видимых) комнат на сервере, присоединение в один клик; здесь же можно создать комнату с названием, присоединиться по UUID, обновить список или перейти к общему заказу музыки.
- Режим управления (когда вы уже в комнате): список участников, переименование, переключение видимая / доступная для входа, выдача прав участникам, роспуск или выход из комнаты.
Интерфейс настроек
В игровых настройках можно изменить вывод звука, отображение HUD, скорость прокрутки текста, качество звука NetEase и другое. Смена вывода звука вступает в силу со следующего трека.
📜 Список команд
Управление воспроизведением на клиенте — /concerto (алиас /music)
Алиас /music можно отключить через клиентскую настройку registerMusicCommand.
Все повседневные действия выполняются через интерфейс выше; команды ниже — лишь дополнение для любителей горячих клавиш и владельцев серверов.
| Команда | Описание |
|---|---|
/concerto pause | Пауза / продолжить |
/concerto start | Запустить плеер (если он не запущен) |
/concerto stop | Остановить воспроизведение |
/concerto clear | Остановить воспроизведение и очистить плейлист |
/concerto restart | Перезапустить ядро плеера (для восстановления из зависшего состояния) |
/concerto reload | Перезагрузить конфиг и локальные плейлисты, перезапустить плеер |
/concerto save | Сохранить текущий трек в локальный кэш (только для источников с поддержкой кэширования) |
/concerto like / dislike | Добавить / убрать текущий трек из избранного (только NetEase Cloud Music) |
/concerto download-current | Скачать текущий трек и текст песни в Concerto/ |
/concerto download-all | Скачать все треки из текущего плейлиста |
/concerto export-as-playlist | Экспортировать текущий плейлист в JSON-пресет (Concerto/local_playlists) |
/concerto clean-cache | Очистить клиентский кэш (музыка, изображения, файлы проверки) |
Музыкальные комнаты и общий заказ музыки — /musicroom (требуется Concerto на сервере)
| Команда | Описание |
|---|---|
/musicroom create [название комнаты] | Создать (с названием) и войти в комнату, UUID комнаты автоматически копируется в буфер обмена; ограничено серверным правом musicRoomCommandPermission |
| `/musicroom join ` | Войти в комнату по UUID |
/musicroom quit | Выйти из текущей комнаты или очереди общего заказа музыки |
/musicroom remove | Распустить созданную вами комнату |
/musicroom members | Посмотреть владельца и список участников |
/musicroom op <игрок> | Выдать / забрать у участника право управления воспроизведением (только для владельца комнаты) |
/musicroom agent join / quit | Войти / выйти из общего заказа музыки (режим KTV) |
/musicroom agent add | Отправить текущий воспроизводимый трек в очередь общего заказа музыки |
/musicroom agent vote | Запустить голосование за смену текущего трека в общем заказе |
/musicroom agent vote <true|false> | Проголосовать за / против в идущем голосовании |
Обмен музыкой между игроками — /sharemusic
| Команда | Описание |
|---|---|
/sharemusic to <игрок | @a> | Поделиться текущим треком с указанным игроком; @a — трансляция на весь сервер (при включённой модерации сначала попадает в очередь проверки администратором). Источники, раскрывающие локальные пути к файлам, из соображений безопасности поделить нельзя |
| `/sharemusic accept ` | Принять приглашение поделиться |
| `/sharemusic reject ` | Отклонить приглашение поделиться |
/sharemusic reject all | Отклонить все ожидающие приглашения |
/sharemusic list <страница> | Постранично просмотреть ожидающие приглашения (с кликабельными кнопками принять / отклонить) |
Управление сервером —— /concerto-server
Кроме fetch-radios, доступной всем, остальные подкоманды требуют 2-й уровень прав (OP).
| Команда | Описание |
|---|---|
| `/concerto-server audit ` | Одобрить запрос на всемирную трансляцию, ожидающий проверки |
| `/concerto-server audit reject ` | Отклонить запрос на трансляцию |
/concerto-server audit reject all | Отклонить все запросы, ожидающие проверки |
/concerto-server audit list <页码> | Постраничный просмотр очереди проверки (с кликабельными кнопками принять / отклонить) |
/concerto-server reload | Перезагрузить конфигурацию сервера, предустановленные радиостанции и Cookie платформы |
/concerto-server reload-cookie | Перезагрузить только файл Cookie платформы |
/concerto-server clean-cache | Очистить кэш сервера |
/concerto-server fetch-radios | Синхронизировать предустановленные радиостанции сервера на свой клиент |
/concerto-server agent reset | Полностью сбросить очередь заказов всего сервера |
/concerto-server agent cut | Принудительно переключить текущий заказанный трек |
/concerto-server agent stop / start | Остановить / снова запустить режим KTV |
📖 Руководство по использованию
«Слушать вместе» с друзьями
/musicroom create 我的房间(или через интерфейс музыкальной комнаты), UUID автоматически попадёт в буфер обмена.- Отправьте UUID другу (`/musicroom join `); или сделайте комнату видимой + доступной для присоединения, чтобы она появилась в списке комнат у всех.
- Участники с правами управления переключают треки, перематывают, ставят на паузу — остальные следуют в реальном времени. С помощью
/musicroom opрешите, у кого есть права управления.
Устроить всемирную KTV
- В настройках Concerto на сервере оставьте всемирный заказ включённым; также можно выбрать, отправлять ли приглашение при входе игрока на сервер.
- Игроки заходят в очередь через
/musicroom agent join, затем на странице песни нажимают 服务器点歌;/musicroom agent addпо-прежнему позволяет добавить играющую песню в очередь, оба способа ограниченыmusicAgentAddTimeLimit. - Когда сервер находит пробный фрагмент, он уведомляет всех участников очереди.
- Песня не по вкусу? Любой игрок в очереди может через
/musicroom agent voteзапустить голосование за переключение, остальные выражают мнение через/musicroom agent vote true(илиfalse). - Когда никто не заказывает песни, сервер автоматически воспроизводит предустановленные радиостанции (если настроены).
Общий аккаунт музыкального сервиса для всего сервера
- Сначала войдите в музыкальный сервис на своём клиенте.
- Скопируйте созданный в клиентской папке
Concerto/файл.cookieв серверную папкуConcerto/. Храните эти файлы как пароль. - В настройках Concerto на сервере включите общий доступ к аккаунту для очереди заказов, затем выполните
/concerto-server reload-cookie.
Раздача предустановленных плейлистов
Поместите экспортированный JSON плейлиста (см. /concerto export-as-playlist) в серверную папку Concerto/preset_radios/; среди них music_agent.json — запасной плейлист для простоя режима KTV. Клиент автоматически получит список радиостанций, также можно вручную запросить его через /concerto-server fetch-radios.
Кэш и загрузки
Concerto сохраняет музыку только при ваших активных действиях: /concerto save сохраняет текущий трек, download-current / download-all скачивают вместе с текстами песен копии для долгосрочного хранения. Размер кэша можно настроить в параметрах.
⚙️ Описание конфигурации
Для повседневного использования редактировать файлы не нужно — внутриигровые опции охватывают обычные настройки. Приведённое ниже предназначено для игроков и владельцев серверов, желающих дополнительно всё настроить. Файлы настроек находятся в папке Concerto/; если нужно их редактировать, сначала закройте игру.
client_config.json
Воспроизведение и сеть
| Параметр | Значение по умолчанию | Описание |
|---|---|---|
playerVolume | 1.0 | Громкость плеера, 0.0 – 1.0 |
playerVolumeFollowsMaster | true | Громкость дополнительно умножается на общую громкость Minecraft |
playbackBackend | "JAVASOUND" | Аудиобэкенд: "JAVASOUND" или "OPENAL", переключение вступает в силу со следующего трека |
displayPlayerScreenCoverAndSpectrum | true | Показывать обложку и спектр на странице воспроизведения; при false используется полноширинный вид с текстом песни |
neteaseMusicQuality | "HIRES" | Качество NetEase Cloud Music: "STANDARD", "HIGHER", "EXHIGH", "LOSSLESS", "HIRES" |
maxCacheSize | 100000000 | Лимит кэша (байты, музыка и изображения считаются отдельно) |
handshakeRequired | true | Требовать прохождения проверки рукопожатия Concerto перед использованием серверных функций |
confirmAfterReceived | true | Спрашивать при получении общего доступа (при false принимать автоматически) |
joinAgentWhenInvited | false | Автоматически принимать приглашение во всемирный заказ при входе на сервер |
registerMusicCommand | true | Зарегистрировать псевдоним /music |
printRequestResults | false | Выводить ответы API платформы (для отладки) |
kuGouMusicLite | false | Использовать интерфейс KuGou Lite |
autoGetKuGouDailyVIP | false | Автоматически получать ежедневный VIP KuGou |
Отображение HUD
У каждого элемента HUD есть переключатель display*, позиция, выравнивание (LEFT / CENTER / RIGHT) и цвет ARGB:
| Элемент | Связанные параметры |
|---|---|
| Текст песни | displayLyrics, lyricsPosition (по умолчанию 0.5,1-100), lyricsAlignment, lyricsColor |
| Дополнительный текст песни (перевод) | displaySubLyrics, subLyricsPosition (по умолчанию 0.5,1-89), subLyricsAlignment, subLyricsColor |
| Информация о треке | displayMusicDetails, musicDetailsPosition (по умолчанию 1-30,0+5), musicDetailsAlignment, musicDetailsColor |
| Время и полоса прогресса | displayTimeProgress, timeProgressPosition (по умолчанию 1-30,0+15), timeProgressAlignment, timeProgressTextColor, timeProgressColor, timeProgressBgColor |
| Обложка | displayCoverImg, coverImgPosition (по умолчанию 1-25,0), coverImgSize, coverImgInCircle, coverImgRotate |
| Прочее | textShadow, hideWhenChat, scrollingTextSpeed |
- Формат позиции:
<доля по горизонтали>±<пиксели>,<доля по вертикали>±<пиксели>. Например,0.5,1-100означает выравнивание по центру по горизонтали и 100 пикселей от нижнего края;1-30,0+15означает 30 пикселей от правого края и 15 пикселей от верхнего края. - Формат цвета:
#AARRGGBB, например#ffffffff— непрозрачный чисто белый,#ff00aaaa— непрозрачный голубой.
server_config.json
| 配置项 | 默认值 | 说明 |
|---|---|---|
auditionRequired | true | @a 全服广播需要 OP 通过 /concerto-server audit 审核 |
serverMusicAgent | true | 开启全服点播(KTV 模式) |
agentInviteWhenJoin | true | 玩家进服时发送点播邀请 |
musicRoomCommandPermission | 2 | 创建音乐室所需的最低权限等级 |
musicAgentAddTimeLimit | 60 | 单个玩家两次点歌的最小间隔(秒) |
musicAgentUseShared | true | 点播曲目统一通过服务端自己的 Cookie 解析 |
kuGouMusicLite | false | 服务端使用酷狗概念版接口(会同步给客户端) |
❓ 常见问题
怎样在服务端配置音乐服务账号? 先在自己的客户端登录,再把客户端 Concerto/ 中的 .cookie 文件复制到服务端同名目录,然后执行 /concerto-server reload-cookie。这些文件可以访问你的账号,务必妥善保管。
网易云扫码登录后一直报错? 网易云的风控对新设备、异地登录非常敏感。建议放弃扫码 / 密码登录,直接把浏览器里已正常登录的完整 Cookie 粘贴进来。
QQ 音乐过几天就解析失败? QQ 音乐的授权有效期本来就短,过期是正常现象。在服务端更新 Cookie 文件后执行 /concerto-server reload-cookie 即可。
音频输出选哪个? 推荐先使用默认的 JAVASOUND。如果遇到卡顿或输出设备不对,再试试 OPENAL。切换后从下一首开始生效。
有些歌拖动进度条很慢? 部分流媒体文件和电台无法直接跳到任意位置,因此 Concerto 可能需要一点时间追上进度;在刚刚播放过的片段之间移动通常会更快。
本地音频文件支持哪些格式? Concerto 支持 MP3、OGG/Opus、FLAC、WAV、M4A/AAC 和 AIFF。同一种格式中较少见的编码方式可能仍有差异;遇到无法播放的文件时,可尝试转换为 MP3 或 WAV。
播放器卡死 / 出错后没声音? /concerto restart 会重启播放器核心且不动播放列表。如果界面渲染异常、封面黑块,先 /concerto clean-cache;仍不行就在游戏关闭状态下删除 Concerto/cache 目录。
音乐室 / 分享指令提示功能不可用? 这些功能需要服务端装有 Concerto(Fabric、NeoForge 或 Paper 插件)。在纯净服务器上,模组仍可作为本地播放器正常使用。
音量调了没反应或自己变小? 如果开着 playerVolumeFollowsMaster,实际音量是 playerVolume × 主音量——记得检查 Minecraft 自己的音乐音量设置。




Частые вопросы
Как установить Concerto?
Установите Fabric под свою версию Minecraft, скачайте Concerto под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Concerto?
У Concerto есть сборки для Minecraft 1.16–26.2.
Нужен ли Concerto на сервере?
Работает и в игре, и на сервере — ставьте, где нужен