Ваша вселенная Spotify, управляемая NVDA.
Выйдите за рамки простого воспроизведения. Accessify Play превращает NVDA в мощный командный центр для всего вашего взаимодействия с Spotify. Управляйте воспроизведением на любом из ваших устройств — ПК, телефоне, умной колонке или консоли — прямо с клавиатуры, не прикасаясь к приложению Spotify.
Ищите, открывайте, управляйте плейлистами и контролируйте свою музыку с беспрецедентной свободой. Именно так и должен восприниматься Spotify с экранным диктором.
⚠️ Важно: Требуется Spotify Premium!
Из-за ограничений API Spotify для функций управления воспроизведением требуется активная подписка Spotify Premium. Бесплатные аккаунты имеют ограниченный доступ к API и не будут корректно работать с этим дополнением.
Accessify Play теперь включает поддержку текстов песен на основе lrclib.net — бесплатной, открытой и развиваемой сообществом базы данных текстов песен. Все тексты, предоставляемые lrclib.net, распространяются под лицензией Creative Commons Zero (CC0), что означает их нахождение в общественном достоянии и возможность свободного использования без каких-либо ограничений по авторским правам. Это ключевое отличие, делающее данную функцию законной, распространяемой и полностью соответствующей требованиям — в отличие от получения данных из нелицензионных источников.
В командном слое (NVDA+Alt+g) доступны два режима работы с текстами песен:
W — Окно текста песни: Открывает всплывающее окно с полным текстом текущей песни в виде обычного текста. Перемещайтесь по строкам с помощью клавиш со стрелками — NVDA будет читать каждую строку по мере перемещения.Y — Автоматическое чтение текста: NVDA автоматически озвучивает каждую строку текста в реальном времени, синхронизируясь с воспроизведением музыки. Нажмите Y снова, чтобы остановить чтение.Это дополнение распространяется под лицензией GNU General Public License v2.0.
Accessify Play насыщен функциями, организованными для вашего удобства:
W): Откройте всплывающее окно с полным текстом текущего трека, доступным для построчного чтения с помощью клавиш со стрелками.Y): Включите автоматическое озвучивание строк текста в реальном времени в синхронизации с музыкой.| Команда | Сочетание клавиш |
| :--------------------------- | :----------------------------------- |
| Воспроизведение/Пауза | NVDA+Shift+Alt+Space |
| Следующий трек | NVDA+Shift+Alt+RightArrow |
| Предыдущий трек | NVDA+Shift+Alt+LeftArrow |
| Увеличить громкость | NVDA+Shift+Alt+UpArrow |
| Уменьшить громкость | NVDA+Shift+Alt+DownArrow |
| Установить точную громкость | NVDA+Shift+Alt+V |
| Перемотка вперёд (настраиваемо)| Control+Alt+NVDA+RightArrow |
| Перемотка назад (настраиваемо)| Control+Alt+NVDA+LeftArrow |
| Озвучить текущий трек | NVDA+Shift+Alt+I |
| Озвучить время воспроизведения| NVDA+Alt+Shift+T |
| Скопировать URL трека | NVDA+Shift+Alt+C |
| Открыть диалог поиска | NVDA+Shift+Alt+S |
| Открыть диалог «Воспроизвести по ссылке» | NVDA+Shift+Alt+P |
| Открыть список очереди | NVDA+Shift+Alt+Q |
| Озвучить следующий в очереди | NVDA+Shift+Alt+N |
| Сохранить трек в библиотеку | NVDA+Alt+Shift+L |
| Добавить трек в плейлист | NVDA+Alt+Shift+A |
| Открыть диалог управления | NVDA+Alt+Shift+M |
NVDA+Alt+g) — Краткая справкаСначала нажмите
NVDA+Alt+g, чтобы войти в командный слой, затем нажмите одну из перечисленных ниже клавиш.
| Клавиша | Действие |
| :-- | :----- |
| P | Воспроизведение / Пауза |
| N | Следующий трек |
| B | Предыдущий трек |
| S | Поиск |
| V | Установить громкость |
| I | Озвучить текущий трек |
| T | Озвучить время воспроизведения |
| L | Добавить/Удалить из «Понравившихся» |
| H | Включить/Выключить перемешивание |
| R | Переключить режим повтора |
| Q | Список очереди |
| A | Добавить в плейлист |
| M | Диалог управления |
| D | Переключить устройство |
| U | Воспроизвести по ссылке |
| J | Диалог перемотки |
| X | Скопировать универсальную ссылку (Song.link) |
| Z | Таймер сна |
| W | Окно текста песни |
| Y | Включить/Выключить автоматическое чтение текста |
| F1 | Показать справку по командам |
| F2 | Открыть редактор командного слоя |
| F4 | Открыть настройки |
| Escape | Закрыть командный слой |
Вы могли заметить, что список очереди в Accessify Play (NVDA+Shift+Alt+Q) может быть одновременно невероятно точным и, в других случаях, совершенно не синхронизироваться с тем, что играет следующим. Такое поведение не является ошибкой, а является прямым следствием данных, предоставляемых API Spotify.
Вот точное описание того, когда список очереди дополнения является надёжным, а когда нет:
Список очереди, отображаемый дополнением, корректно отражает то, что Spotify будет воспроизводить следующим в двух ключевых сценариях:
Предсказуемость полностью нарушается в двух очень распространённых ситуациях, вызывая несоответствие между дополнением и приложением Spotify:
Чтобы обеспечить единообразный опыт, Accessify Play разработан для отображения именно тех данных, которые предоставляет API Spotify. Дополнение использует официальную конечную точку /me/player/queue. Согласно документации для разработчиков Spotify, эта конечная точка предназначена для:
Получения списка объектов, составляющих очередь пользователя.
Это означает, что определение «очереди» в API — это прежде всего список вручную добавленных треков. Хотя ответ API также включает следующий трек из текущего контекста (альбом/плейлист), он не может предоставить полную предстоящую последовательность для перемешанного или алгоритмически сгенерированного контента.
Таким образом, функция очереди Accessify Play является вашим надёжным инструментом для двух основных целей:
Её не следует использовать как ориентир, когда включено перемешивание или когда запущено автовоспроизведение, поскольку API не предоставляет необходимых данных для этих сценариев.
Чтобы использовать это дополнение, вам необходимо получить Client ID и Client Secret из панели разработчика Spotify. Внимательно следуйте этим шагам.
http://127.0.0.1:8888/callback
> Примечание о порте 8888: По сообщениям пользователей, у некоторых возникают ошибки проверки. Это может произойти, если другое приложение на вашем компьютере (часто локальный сервер разработки) уже использует порт 8888.
>
> Будущее обновление: Чтобы предотвратить этот конфликт, порт по умолчанию для дополнения будет изменён на 8539 в будущей версии.NVDA+N), выберите Параметры, затем Настройки.main на GitHub.dev на GitHub.Accessify Play включает встроенную систему обновлений, которая поддерживает ваше дополнение в актуальном состоянии с новейшими функциями и исправлениями ошибок. Обновления загружаются непосредственно из релизов GitHub.
Если в настройках включена опция «Проверять наличие обновлений автоматически», Accessify Play будет выполнять автоматическую проверку новых версий при каждом запуске NVDA. Если обновление доступно для выбранного вами канала (Стабильный или Бета), появится всплывающее окно с информацией о новой версии и списке изменений. Вы можете загрузить и установить обновление или отложить его.
Если обновление недоступно или во время фоновой проверки произошла ошибка (например, отсутствует интернет-соединение), дополнение не будет отображать никаких сообщений.
Вы можете вручную проверить наличие обновлений в любое время, перейдя в панель настроек Accessify Play (меню NVDA -> Параметры -> Настройки -> Accessify Play) и нажав кнопку «Проверить наличие обновлений». Процесс аналогичен автоматическому обновлению: если найдена новая версия, появится всплывающее окно; в противном случае появится сообщение, подтверждающее, что у вас установлена последняя версия.
В настройках вы можете выбрать между двумя каналами обновлений:
main на GitHub.dev на GitHub. Хотя они предоставляют ранний доступ, они могут быть менее стабильными, чем официальные выпуски.В версии 1.3.0 система аутентификации Accessify Play была значительно обновлена для повышения безопасности и улучшения пользовательского опыта, особенно для портативных установок NVDA.
Client Secret, делая интеграцию с Spotify более безопасной.%userprofile%/.spotify_client_id.json. Это гарантирует, что ваш Client ID останется неизменным даже при перемещении или переустановке NVDA, и им легче управлять.%userprofile%/.spotify_client_id.json.Возможно, вы задаётесь вопросом, почему Accessify Play требует от вас создания собственного приложения Spotify и ввода Client ID, вместо того чтобы предлагать простую кнопку «Войти в Spotify», как во многих других приложениях (например, Alexa, Google Home и т.д.). Ответ кроется в политике API Spotify и проблемах, с которыми сталкиваются независимые разработчики.
Чтобы обеспечить удобный вход в Spotify без необходимости для пользователей становиться «мини-разработчиками», приложение должно подать заявку и получить Расширенную квоту от Spotify. Требования для получения такой квоты весьма значительны и часто включают:
Для небольшого, независимого дополнения с открытым исходным кодом, такого как Accessify Play, выполнение этих строгих требований практически невозможно. Ресурсы, юридические издержки и необходимая пользовательская база намного превышают то, что этот проект может реалистично достичь.
Поэтому текущий метод, хотя и требует от пользователя выполнения дополнительных шагов, является необходимым обходным путём. Он позволяет Accessify Play функционировать и предоставлять свои ценные функции доступности, используя стандартный доступ разработчика Spotify, без необходимости соответствовать запретительным критериям для получения расширенных квот. Этот подход даёт вам, пользователю, возможность напрямую контролировать доступ к API Spotify, гарантируя, что дополнение останется функциональным и доступным.
Этот проект не был бы там, где он находится сегодня, без невероятной поддержки и преданности нашего сообщества. Искренняя благодарность всем тестировщикам, которые предоставили бесценные идеи, неустанно помогали с отладкой и оказывали поддерживающее поощрение на протяжении всего процесса разработки. Ваш вклад сыграл важную роль в формировании Accessify Play таким, какой он есть. Спасибо за то, что сделали этот проект успешным!
Если вы считаете это дополнение полезным, пожалуйста, рассмотрите возможность поддержки его разработки. Даже небольшая помощь имеет значение!