Skip to content

TheKing-OfTime/YandexMusicModClient

Repository files navigation

YandexMusicModClient

TotalDownloads OS - Windows

Сервер Русский English

YandexMusicModClient или его разработчик не связаны с Яндексом или какой-либо из их компаний, сотрудников и т.д.

Сообщение для сотрудников Яндекс Музыки

Поскольку вы сочли мой код полезным и скопировали некоторые части (например отсюда, событие PLAYER_ACTION) и добавили их в ванильный клиент, возможно, вы захотите нанять меня. Моя работа будет намного эффективнее, если я буду работать над исходным кодом в уютном офисе, а не с минифицированной и прогнанной через webpack версией кода

Установка

  1. Загрузите последнюю версию клиента Яндекс музыки с официального сайта https://music.yandex.com/download/
  2. Откройте командную строку (Win + R -> cmd -> Enter)
  3. Выполните эту команду
    curl -L https://github.com/TheKing-OfTime/YandexMusicModClient/releases/latest/download/app.asar > %localappdata%/Programs/YandexMusic/resources/app.asar
  4. Готово!

Если из функций модификации вам нужны только разблокированные DevTools. То вы можете использовать эту команду.

curl -L https://github.com/TheKing-OfTime/YandexMusicModClient/releases/latest/download/appDevTools.asar > %localappdata%/Programs/YandexMusic/resources/app.asar

Преимущество в том что эта версия собирается полностью автоматически, и всегда использует последнюю версию ЯМ (Не спуфится как полная модификация)

Note

После установки модификации может потребоваться повторный вход в аккаунт.

Сборка проекта из исходников

  1. Убедитесь что Яндекс Музыка и node.js уже установлены
  2. Склонируйте проект git clone https://github.com/TheKing-OfTime/YandexMusicModClient.git
  3. Установите зависимости npm install Учтите, что зависимости вам нужно устанавливать в корневой папке проекта, а не в /src/
  4. Для удобства сборки в проекте есть cli скрипт toolset.js. Он позволят быстро и просто распоковать, упаковать, опубилковать, спуфнуть, или пропатчить код.
  5. node toolset.js build -d -m. Эта команда автоматически оптимизирует код (Минифицирует его), а после запакует его по пути Яндекс Музыки по умолчанию %localappdata%/Programs/YandexMusic/resources/app.asar
  6. Для быстрой сборки проекта при разработке можете убрать флаг -m. Без него не будет долгого процесса минификции

Возможности

Discord Статус

Подробнее
Настройки
  "discordRPC": {
		"enable": true or false,                         //Включает или отключает disocrd RPC
		"applicationIDForRPC": "1124055337234858005",    //ID пользовательского приложения вашего для discord RPC
		"showButtons": true or false,                    //Включает или отключает все кнопки в статусе discord 
		"overrideDeepLinksExperiment": true or false,    //Включает или отключает разделение веб-кнопок и кнопок рабочего стола на одну кнопку
		"showGitHubButton": true or false,               //Включает или отключает кнопку Github, если для параметра overrideDeepLinksExperiment установлено значение true
		"afkTimeout": 15,				 //Время в минутах через которое статус в дискорде пропадёт если трек был поставлен на паузу.
		"showAlbum": true or false,                      //Включает или отключает строчку с информацией о альбоме в статусе discord 
		"showSmallIcon": true or false,                  //Включает или отключает икноку статуса прослушивания в статусе discord 
  }

Добавляет поддержку отображения текущего трека как статуса в Discord image

Управление плеером с других устройств

Подробнее

Добавляет поддержку управления воспроизведением настольного клиента с других устройств.

Список устройств для воспроизведения Управление воспроизведение с телефона на ПК клиенте
Настройки

Можно выключить в настройках внутри приложения

image

Скробблинг Last.FM

Подробнее

Добавляет поддержку cкробблинга в Last.FM. Трек заскробблится если вы прослушаете хотя бы его половину. (Но при этом запрос скроббла отправиться при смене трека)

Страница пользователя Last.FM с заскроббленными треками
Настройки

Авторизоваться в Last.FM, а также включить/выключить функцию можно в соответствующем меню в настройках приложения.

image

Процесс авторизации
_._22Sne2kCZ9.mp4

Настраиваемая папка кеша

Подробнее

В ванильной версии весь кеш (в том числе скаченные вами треки для оффлейн прослушивания) хранится по пути %appdata%/YandexMusic/

Данная функия позволяет использовать для кеша другой путь. Например чтобы 10 гигабайт скаченной вами музыки не тратили место на системном диске

image

Глобальные хоткеи

Подробнее

Добавляет поддержку глобальных хоткеев.

Настройки
"globalShortcuts": {
	"TOGGLE_PLAY": "Ctrl+/",
	"MOVE_FORWARD": "Ctrl+,",
	"MOVE_BACKWARD": "Ctrl+.",
	"TOGGLE_SHUFFLE": "Ctrl+\'",
	"REPEAT_NONE": undefined,
	"REPEAT_CONTEXT": undefined,
	"REPEAT_NONE": undefined,
	"TOGGLE_LIKE": undefined,
	"TOGGLE_DISLIKE": undefined,
}

Улучшение превью панели задач

Подробнее

Добавляет поддержку расширений панели задач (Taskbar Extensions)

Настройки
  "taskBarExtensions": {
		"enable": true or false //Включает или отключает расширения панели задач
		"coverAsThumbnail": true or false //Включает или отключает замену Live превью на картинку обложки трека
	}

image

Возврат кнопки дизлайка

Подробнее

Возвращает кнопку дизлайка в плеер на главной.

image

Возврат кнопки повтора

Подробнее

Возвращает кнопку повтора в плеер на главной когда играет Моя Волна.

Отображение качества трека

Подробнее

Отображает качество либо кодек текущего трека

Настройки
"playerBarEnhancement": {
	"showDislikeButton": true //Включает или выключает отображение кнопки дизлайка в проигрывателе.
	"showCodecInsteadOfQualityMark": true //Показать кодек вместо качества
}

image

Улучшенная анимация Моей Волны

Подробнее

Улучшает поведение анимации Моей Волны. Она начинает лучше адаптироваться к музыке. Также позволяет настраивать частоту кадров в секунду при рендеринге анимации.

Настройки
  "vibeAnimationEnhancement": {
    "maxFPS": 25,             	// Максимально допустимая частота кадров в секунду. По умолчанию: 25. Рекомендуемое: 25 - 144. Не устанавливайте значание меньше 1
    "intensityCoefficient": 1, 	// Чувствительность музыкального анализа. По умолчанию: 1; Рекомендуемое: 0,5 - 2; При значении 0 отключается улучшение анимации (почти :D)
    "linearDeBoost": 5,		// [УСТАРЕЛО] Коэффициент выделения пиков в треке от основного трека. По умолчанию: 5. Рекомендуемое: 2 - 8. Если 1, отключает разделение пиков.
    "playOnAnyEntity": false,	// Если включено, анимация воспроизводится, даже если источник трека не Моя Волна.
    "disableRendering": false	// Полностью отключает анимацию. Используйте только если почувствуете значительное падение кадров в секунду. В противном случае подберите оптимальное значение параметра maxFPS для вашей системы.
  }

До:

_._yfSdEcSdhY.mp4

После:

_._BS8XsWB3Sg.mp4

Поиск при добавлении трека в плейлист

Подробнее

Добавляет строку поиска в контекстное меню выбора плейлиста.

image

Информация о скачанных треках

Подробнее

Добавляет информацию о скачанных треках на страницу настроек (количество скачанных треков и используемое хранилище для скачанных треков)

image

Скачивание текущего трека в файл

Подробнее

Позволяет скачать текущий трек вам на ПК.

image

image

Эксперементы

Подробнее

Позволяет включать/выключать эксперементы. Для этого вам нужно включить Режим разработчика.

image

Devtools & Панель Разработчика

Подробнее

Devtools по умолчанию отключены. Чтобы включить их, вам необходимо изменить %appdata%\YandexMusic\config.json:

Измените "enableDevTools": false на "enableDevTools": true

electron_L6SeZLnSAH

electron_y6aOeckPLH

Настройки

Настройки можно найти в %appdata%\YandexMusic\config.json

Настройки внутри приложения:

Пример настроек внутри приложения

Поддержка

Если вам действительно понравился новый опыт использования Яндекс Музыки с этой модификацией, вы можете поддержать мою работу над ней:

Поддержите меня на бусти

Спонсоры

Большое спасибо спонсорам, которые позволяют мне активно работать над этим проектом.

am0rall ajioe1111 xab4er Crosbic foreA-adoxid Maks1mio FaSSteR Dott-rus Lemon4ksan SergheyUmca schwarzalexey dudoska Diramix trigger-off Baduga LazyMind Schelchki entaneey saqura1337 alex2810com ellatuk LockMea LockMea Danila0986 Cheafiss

Список обновляется вручную

About

Modification for Yandex Music Desktop application to add some features

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 5