Об этом проекте
GooseOb's Music Player — кроссплатформенный десктопный музыкальный плеер, созданный на Rust с использованием GUI-библиотеки iced. Он поддерживает поиск и потоковую передачу из YouTube Music, SoundCloud, Bandcamp, Last.fm и MusicBrainz, при этом yt-dlp отвечает за потоковую передачу и загрузку аудио. Потоковая передача Bandcamp использует прямой HTTP. Потоковое аудио кэшируется на диск для повторного воспроизведения, а треки можно скачивать в формате MP3.
Локальное воспроизведение поддерживает файлы MP3, FLAC, WAV, OGG, M4A, AAC, OPUS и WMA. Пользователи могут создавать и организовывать плейлисты, сохранять альбомы, исполнителей и плейлисты в библиотеку, а также просматривать страницы исполнителей с популярными треками, альбомами и похожими исполнителями. Дополнительные возможности включают радио по песне и исполнителю, панель очереди с вкладками «Далее» и «Недавно прослушано», разделённые представления и управление треками с помощью перетаскивания.
Тексты песен загружаются из LRCLib (без API-ключа) с синхронизированными кликабельными строками, а также из Genius с построчными аннотациями и переводами. Пользователи могут добавлять собственные синхронизированные или обычные тексты для каждого трека и прикреплять многострочные заметки к строкам. Функция ИИ-перевода поддерживает любой сервер, совместимый с OpenAI, или локальный экземпляр Ollama для перевода текстов песен с учебными заметками.
Системные медиаэлементы управления интегрируются через MPRIS (Linux), SMTC (Windows) и Now Playing (macOS). Приложение предлагает нормализацию громкости, историю поиска, восстановление сеанса, историю навигации, тёмную тему и локализацию на 13 языков. Конфигурация хранится в JSON и редактируется через встроенное представление приложения. Установка доступна через shell-скрипт, готовые сборки или `cargo install goosemusic`. Предварительные требования включают Rust, yt-dlp и, опционально, Python 3 с ytmusicapi для поиска в YouTube Music.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.