LINUX.ORG.RU

Euphonica

 , euphonica,

Euphonica

0

2

Euphonica — это новый клиент для Music Player Daemon (MPD), написанный на Rust. Разработанный Huỳnh Thiện Khiêm, он сочетает функциональность с визуальной эстетикой. Проект ориентирован на пользователей, ценящих современный дизайн без ущерба для функциональности MPD.

Ключевые особенности:

  • Чистый GTK4/libadwaita интерфейс с анимациями и размытием фона.

  • Поддержка MPRIS, асинхронного поиска и управления плейлистами.

  • Загрузка метаданных (обложки, тексты песен) из внешних источников.

  • Визуализатор спектра, индикаторы качества звука (Lossy/Lossless/Hi-Res/DSD).

  • Гибкие настройки, включая автоматическую цветовую тему на основе обложки.

Пока Euphonica находится в бета-версии и стабильного релиза на Flathub нет. Однако есть сборки для Nixpkgs и AUR. На GitHub также приведена инструкция по компиляции через GNOME Builder и созданию собственного Flatpak-пакета.

>>> GitHub

★★★

Проверено: Wizard_ ()
Последнее исправление: Wizard_ (всего исправлений: 3)

Ну, вот, первое графическое приложение на расте, не считая дискорда, появилось.

tiinn ★★★★★
()
Ответ на: комментарий от redeyedanonymous

а зачем вообще нужен этот MPD?

Админа развлекать. Закачает админ на сервер свою коллекцию музыки, и привычным для себя способом стримить её будет.

tiinn ★★★★★
()
Ответ на: комментарий от another

На скрине какой-то визуальный мусор и рандомные картинки. Это так и задумывалось? А то выглядит стремно.

В учебниках по программированию всякие foo, bar и MyClass.MyMethod () смущают разве что детей. А тут взрослые люди, преимущественно айтишники, испугались песни Lorem Ipsum исполнителя John Doe. Понятно, что рыба же.

Сейчас осталось два удобных способа слушать музыку альбомами:

  1. Покупать или записывать физические носители и вручную ставить их в проигрыватель.
  2. Индексировать библиотеку (накачанную или собственноручно рипнутую) таким вот медиакомбайном.

И есть три неудобных:

  1. Копировать альбом на флешку и вставлять ее в тупой проигрыватель, который последовательно играет все файлы в ФС.
  2. Как-то скармливать плееру все файлы в папке. В Винде когда-то был (или до сих пор есть) отдельный пункт контекстного меню, что ещё терпимо. Я же генерил плейлисты при помощи ls.
  3. Уговаривать стриминговый сервис таки сыграть тебе альбом. Стриминговый сервис на каждом шагу будет отвлекать тебя рекомендациями и подборками, в которых нет ничего плохого, но не тогда, когда ты собрался послушать альбом. И да, сервис нагенерит продолжение плейлиста, напрочь убив послевкусие.
Vidrele ★★★★★
()
Ответ на: комментарий от tiinn

Есть ещё какой-то клиент для Телеги. Я его даже собирал как-то. Практически ничего не умеет, но зато Руст+Гтк4!

densss ★★★★★
()
Ответ на: комментарий от Vidrele

Уговаривать стриминговый сервис таки сыграть тебе альбом.

Зачем уговаривать? Включил и слушай.

Стриминговый сервис на каждом шагу будет отвлекать тебя рекомендациями и подборками, в которых нет ничего плохого, но не тогда, когда ты собрался послушать альбом.

???

И да, сервис нагенерит продолжение плейлиста, напрочь убив послевкусие.

Не нагенерит, если залезешь в Settings и настроишь всё по своему вкусу/предпочтениям.

basilic ★★★
() автор топика
Ответ на: комментарий от basilic

???

Есть альтернативно одарённый ютуб, например. Где, даже если ты пропишешь ему альбом в поиске - выдаст тебе 2-3 песни этого исполнителя, а потом полный шлак по велению левой пятки какого-нибудь индуса с горы, который поиск в гугле писал.

tiinn ★★★★★
()
Ответ на: комментарий от tiinn

Есть альтернативно одарённый ютуб, например. Где, даже если ты пропишешь ему альбом в поиске - выдаст тебе 2-3 песни этого исполнителя, а потом полный шлак по велению левой пятки какого-нибудь индуса с горы, который поиск в гугле писал.

Я говорю не о сервисах видеостриминга типа YouTube, а об музыкальных стриминговых платформах а-ля Яндекс.Музыка и т.п.

basilic ★★★
() автор топика
Ответ на: комментарий от mogwai

Авторы на сайте историю версий по дате отсортировать не смогли, а ты говоришь, что у них проигрыватель годный вышел

Меня интересует не история версий, а как он играет.

DrRulez ★★★★★
()
Ответ на: комментарий от pihter

илита в треде, хавайся кто может :)

Ну если для тебя вложения в себя-же на 350к на десяток лет является чем-то запредельным, то даже не знаю… Может работу поменять стоит?

DrRulez ★★★★★
()
Ответ на: комментарий от DrRulez

Заинтересовало. Думал, MP3 всегда распаковывается одинаково любыми-разными кодеками. То есть одинаковый PCM на выходе всегда и везде. Разве не так? Соответственно, плеер не может ничего привнести в звучание. Разве что, скажем, как-то повлиять на настройки звуковой карты, если умеет дружить с её драйвером. Но мы ведь сейчас не об этом.

alash
()
Ответ на: комментарий от basilic

Я говорю не о сервисах видеостриминга типа YouTube, а об музыкальных стриминговых платформах а-ля Яндекс.Музыка и т.п.

Есть вполне специализированный YouTube Music. Идёт вместе с подпиской YouTube Premium, которую я оплачиваю, чтобы смотреть основной YouTube без рекламы, слушать его в фоне, скачивать заранее видео в ожидании отключений света и т. д. и т. п. Пользуюсь, но не для прослушивания альбомами.

Со Spotify у меня не сложилось: авторам он почти не платит, многие треки недоступны без подписки, рекомендательная система отравлена подкастами на норвежском: я всего лишь снял наушники перед душем, не нажав на паузу, но это чмо решило, что я такое часами готов слушать. И да, неотключаемая реклама онлайн-казино прилагается.

Яндекс.Музыку я не слушаю, потому что мне лень ради нее VPN включать. Такие дела.

Vidrele ★★★★★
()
Ответ на: комментарий от DrRulez

вложения в себя-же на 350к на десяток лет

Аудиоаппаратура за 350к, если твоя профессия или профессиональные амбиции не связаны со звуком, - это не вложение в себя, а роскошь. Я к роскоши отношусь хорошо, пока она не переходит в понты, как у тебя.

Vidrele ★★★★★
()
Ответ на: комментарий от Vidrele

Со Spotify у меня не сложилось

Бывает

рекомендательная система отравлена подкастами на норвежском

Я не слушаю подкасты через Spotify, для подкастов у меня есть Castbox.

И да, неотключаемая реклама онлайн-казино прилагается.

Не замечал такого, хотя.. может потому что плачу за подписку и рекламу поэтому не вижу, а взамен получаю удобный сервис доступный в том числе оффлайн, т.к. вся многочисленная аудиобиблиотека хранится на десктопе/смартфоне.

basilic ★★★
() автор топика
Ответ на: комментарий от basilic

Не замечал такого, хотя..

Ну, количество и содержание рекламы зависят от законодательства и экономики страны.

может потому что плачу за подписку и рекламу поэтому не вижу, а взамен получаю удобный сервис доступный в том числе оффлайн

А вот это, пожалуй, интересно.

Vidrele ★★★★★
()
Ответ на: комментарий от alash

Думал, MP3 всегда распаковывается одинаково любыми-разными кодеками

Ну не только же mp3 существует, кому вообще он нужен. Есть куча нюансов, например DSD форматы кто вообще в линуксе играть может, вопроооос.

James_Holden ★★★★★
()
Ответ на: комментарий от James_Holden

mp3 как пример вариабельного сжатия и притом инвариантного декодирования. Форматы «без потерь» - с этими мне и так понятно, что от плеера они точно никак не могут зависеть. Нюансы есть, конечно, но не на уровне «распаковки», а на уровне железа. Всякие там джиттеры, нелинейности, бог знает ещё что - это ж всё про железо. То есть звуковой карты. Тот же DSD наверное без проблем играется той картой (может быть внешней), которая аппаратно умеет перевести входной однобитный поток в аналог. Собственно, и весь смысл существования подобных форматов -только в обязательной связке с приспособленным для таких данных «железом».

Плееры программные-то здесь каким боком? Вот что хотелось бы понять.

alash
()
Ответ на: комментарий от alash

которая аппаратно умеет перевести входной однобитный поток в аналог

А если не умеет, а если умеет dsd 256, а файл dsd 512, а если если если если

James_Holden ★★★★★
()
Ответ на: комментарий от James_Holden

Понимаю. Всякие передискретизации, это да. Только на уровне аудиофила (прости господи) разве допустима программная передискретизация? Только правильное железо, и никак иначе. Это лишь скромные, невзыскательные потребители готовы слушать переведённый из 512 в 256 DSD-поток. А таковых любой плеер устроит, с любым конвертором-передискритезатором. И разницу не заметят.

alash
()
Ответ на: комментарий от alash

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

В линуксе, с настройками по умолчанию, и pulse, и pipewire, и alsa с dmix выставлены в частоту дискретизации 48000 Гц, соответственно все будет ресемплироваться, при отдаче тупо потока cd формата в звуковой сервер. Плееры, даже deadbeef когда я его последний раз видел, могут внутри себя ресемплировать в 48 по дефолту.

Не говоря о том что есть рум коррекция, может делаться dsp модулем в том же foobar, а в линуксе? Вот и выходит куча вопросов.

James_Holden ★★★★★
()
Последнее исправление: James_Holden (всего исправлений: 1)
Ответ на: комментарий от alash

Если мы рассмотрим линуксовые плееры, то получается неприглядная картина какая-то. Большинство плееров, за исключением разве что deadbeef и MPD (в меньшей степени), вообще не уделяет внимания звуку, DSP обработке, корректной работе со звуковой системой.

В распиаренных Clementine/Strawberry используется движок GStreamer, который имеет сам по себе крайне сомнительное качество даже просто кода, и был замечен в том что реально корежил mp3. Quod Libet использует GStreamer. QMMP свой движок, но он не поддерживает даже gapless playback!! Кошмар. VLC не может gapless playback.

Кто-то из разрабов Clementine вообще говорил, в духе «аудиофилы идут на юг, мне нужен просто высокоуровневый движок который будет что-то играть сам, мне похрен как, а у меня не будет болеть голова».

James_Holden ★★★★★
()
Ответ на: комментарий от James_Holden

Теперь более понятно стало. Всегда думал что эти вопросы ну никак не к плееру должны относиться, а к бэкендам. В этом соглашусь с «кое кто из разрабов».

Что касается ошибок распаковки Gstreamer-ом, это получается своего рода «заводской брак», грубая ошибка в коде, то есть продукт технически неисправный.

Gapless… если это то, что умели карманные плееры в начале 2000-х (можно было задать в настройках), тогда решительно непонятно как это может быть проблемой нынче на десктопе. Не укладывается в голове просто.

alash
()
Последнее исправление: alash (всего исправлений: 2)

Почему дизайн музыкальных плееров стал таким перегруженным? Есть же хорошие примеры: xmmp, audacious, deadbeef* они просто играют музыку, в компактном окне, без кучи ненужных свистелок и перделок.

Kolins ★★★★★
()

сочетает функциональность с визуальной эстетикой

Но почему тогда на скрине гномовкая копия ютюбмузыки?

ya-betmen ★★★★★
()
Последнее исправление: ya-betmen (всего исправлений: 1)
Ответ на: комментарий от kott

Да, но я пока использую foobar. Пока идёт разработка моего плеера бугага))

James_Holden ★★★★★
()
Ответ на: комментарий от Kolins

Кому ненужно, а кому и нужно. Благо, клиентов MPD много.

James_Holden ★★★★★
()
Ответ на: комментарий от DrRulez

Ну если для тебя вложения в себя-же на 350к на десяток лет является чем-то запредельным, то даже не знаю… Может работу поменять стоит?

Есть те, кто бегает по утрам, а есть те, кто рассказывает всем окружающим что бегает, даже когда не особо-то и спрашивали

pihter ★★★★★
()
Ответ на: комментарий от Kolins

Почему дизайн музыкальных плееров стал таким перегруженным? Есть же хорошие примеры:

iTunes 7, 8. Идеально было.

mogwai ★★★★★
()
Ответ на: комментарий от James_Holden

В линуксе, с настройками по умолчанию, и pulse, и pipewire, и alsa с dmix выставлены в частоту дискретизации 48000 Гц

Вот это в своё время удивило. Но, к счастью, лечится правкой буквально двух строк в pipewire.conf

В распиаренных Clementine/Strawberry используется движок GStreamer, который имеет сам по себе крайне сомнительное качество даже просто кода, и был замечен в том что реально корежил mp3. Quod Libet использует GStreamer

Вы уверены, что среднестатистический юзер заметит разницу на слух?

Кто-то из разрабов Clementine вообще говорил, в духе «аудиофилы идут на юг, мне нужен просто высокоуровневый движок который будет что-то играть сам, мне похрен как, а у меня не будет болеть голова».

Прекрасно его понимаю.

redeyedanonymous
()
Ответ на: комментарий от redeyedanonymous

Вы уверены, что среднестатистический юзер заметит разницу на слух?

Я не оперирую такими понятиями. В моей системе мышления, есть дело, и это дело должно быть сделано как положено. В какой помойке сидит среднестатистический кто-то, мне вообще не важно. Надо чтобы работало как мне надо. Даже если я на слух не слышу, но знаю с технической стороны, что звук корежится - это уже достаточный для меня аргумент так не делать. Конечно, не надо ничего доводить до маразма, всегда есть границы разумного, но того что плохо реализовано не просто потому что сложно сделать лучше, а потому что сделали по-тупому - надо избегать.

Прекрасно его понимаю.

А я не понимаю. Плеер должен воспроизводить звук. Все остальное вторично. А для них все остальное первично, звук не важен. Это не плеер, а показывалка текстов песен и обложек.

James_Holden ★★★★★
()

Опять из папки музыка в хардкоде тащит или можно свои метаколлекции, плейлисты и альбомы создавать вне зависимости от директории?

intel ★★
()
Последнее исправление: intel (всего исправлений: 1)
Ответ на: комментарий от basilic

Не нагенерит, если залезешь в Settings

музыкальных стриминговых платформах а-ля Яндекс.Музыка

Вот как раз в яндексе эту галочку уже убрали, предлагают жрать что дают.

Aceler ★★★★★
()
Ответ на: комментарий от macrohard

Закинул в плейлист файл с клиента — играет на сервере

Хм, не знал что MPD это поддерживает. А как оно работает? Файл закидывается во временную папку на сервере? Или ты заранее выбираешь куда закинуть?

STinger
()
Ответ на: комментарий от STinger

Кантата запускает http радио поток, и заставляет MPD играть его.

James_Holden ★★★★★
()
Ответ на: комментарий от th3m3

Нужно создание .deb/.rpm - иначе, нафиг он такой нужен с этими снапами и прочими флатпаками. Или хотя бы .appimage.

Увы, но:

[dependencies.gtk]
package = "gtk4"
version = "0.10"
features = ["v4_18"]

убивает это желание.

Кто-то там в gtk-rs решил, что нефиг парится с дальнейшей поддержкой gtk3, отправили код в архив. И давай наяривать рассказывать, как можно собрать под Flatpak и Windows.

При этом сравним число загрузок протухшего и новомодного:

gtk v0.18.2
UNMAINTAINED Rust bindings for the GTK+ 3 library (use gtk4 instead)

All-Time: 8 119 217
Recent: 1 591 614
gtk4 v0.10.0
Rust bindings of the GTK 4 library

All-Time: 1 852 758
Recent: 197 898
AlexVR ★★★★★
()

Под постом какая-то перепись старпёров, любящих обмазываться пакетами и совершать непристойные действия. Вот никанонЪ без deb’а и rpm’ки. При этом, у самих лапки.

Вы, блджад, попробуйте хоть раз собрать rpm, который будет работать одновременно хорошо в Fedora, CentOS, CentOS Stream, OpenSUSE и Alt Linux. Или deb пакет, который будет одновременно хорошо работать в Debian, Ubuntu и Astra Linux.

И тогда, может, поймёте, почему разрабы на болте вертели эти ваши пакеты и не кидаются их в первую очередь предоставлять.

P.S. AppImage требовать ещё более-менее адекватно, единственный действительно универсальный вариант. ИМХО.

egzakharovich
()
22 сентября 2025 г.
Ответ на: комментарий от egzakharovich

Вы, блджад, попробуйте хоть раз собрать rpm, который будет работать одновременно хорошо в Fedora, CentOS, CentOS Stream, OpenSUSE и Alt Linux. Или deb пакет, который будет одновременно хорошо работать в Debian, Ubuntu и Astra Linux.

А в чём проблема? Некоторые (особенно поставщики проприетарного ПО, та их часть, у которой руки из правильного места растут) так и делают. Нате вам универсальный RPM, нате вам универсальный DEB и ни в чём себе не отказывайте. Подозреваю, секрет в том, что они нужные библиотеки подключают статикой.

AppImage требовать ещё более-менее адекватно, единственный действительно универсальный вариант.

Я этот квест недавно прошёл, тоже с помощью статики. Вот только отдачу правильного AppStream наладить не удалось, и судя по тому, что пишет – не только мне.

hobbit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.