Обновить

Тот самый Winamp на Маке: как я с ИИ-агентами сделал плеер из своего детства на SwiftUI и AppKit

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели9.4K
Всего голосов 5: ↑5 и ↓0+5
Комментарии27

Комментарии 27

Мем_с_лошадью_и_углем.jpg

Порт под винду ждать?

токены обновятся только

Вы не уловили иронии в шутке про порт под винду

Обязательно. И назвать его WinAmp.

Хотя погодите…

От одного вида уже ностальгия накатила, спасибо! Пойду тестить

Если найдете что-то, что не работает или глючит, пишите сюда или на гите в issues.

в 4К малипусечный совсем

Еще не тестировал на 4K, как временное решение можно использовать Double mode, но все равно плейлист будет мелким.

Если сделать векторный скейл на четыре икса, классический скин просто потеряет весь свой теплый ламповый вид. Весь цимес именно в оригинальной пиксельной сетке. Лучше включить удвоение и посадить окно в угол экрана

Добавил поддержку скейла интерфейса плеера: 150% и 200%.

О я тоже над подобным работал, и даже написал на флаттере - но результат мне не понравился. Хотел именно кросс платформенный.
Сейчас думаю взяться за EGUI и rust что бы пиксельперфект и кроссплатформенно было

Вобще дело не в ностальгии а в том что раньше интерфейсы рисовались как цельная картина. Тот же AIMP тоже выглядет очень не дурно и имел тоже интересные скины.

Учитывая что весь интерфейс оригинала это набор bmp странно что возникают проблемы

Да с bmp проблем нет. Есть проблемы с отдельными окнами под разными системами

Почему результат не понравился?

GOOM будет??

Да, визуализаторы будут доработаны и добавлю поддержку Milkdrop (projectM) .milk пресеты и What A Goom.

Визуализатор GOOM добавлен, обновитесь до версии 0.9 и проверьте.

грейт стафф! спасибо! пойду агента озадачу такой же проигрыватель на Андроид )

класс, спасибо) ностальгией запахло

Стоит ли ожидать интеграции с subsonic?

Добавил в roadmap: Subsonic servers (Navidrome and others) as a Media Library source.

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

А почему не под MacOS 12.7?

Плеер использует возможности, которые появились в macOS 13 и 14 (расчёт размеров окон, часть элементов интерфейса), поэтому сейчас минимальная версия macOS 14.

Поддержку macOS 12 не обещаю, и мне не на чем её проверить.

Добавил проигрывание трека Llama при установке и первом запуске плеера.

Проверить можно, обновив плеер до версии 0.9 и перед запуском временно убрав папку настроек (плеер должен быть закрыт):

mv ~/Library/Application\ Support/MacAmp ~/Library/Application\ Support/MacAmp.bak

Вернуть настройки обратно, снова закрыв плеер:

rm -rf ~/Library/Application\ Support/MacAmp && mv ~/Library/Application\ Support/MacAmp.bak ~/Library/Application\ Support/MacAmp

А как-то решена проблема со скроллом длинных плейлистов на несколько тысяч треков? В старом винапе список летал мгновенно, а AppKit на больших коллекциях иногда начинает заикаться

Плейлист не использует стандартную таблицу AppKit: окно рисует себя само, как в оригинальном Winamp, и только те строки, которые сейчас на экране. Поэтому скорость прокрутки не зависит от длины списка.

В версии 0.9 это ещё доработано, и теперь при прокрутке перерисовывается только изменившаяся часть, длительности треков читаются в фоне (сначала для видимых строк), а большие папки добавляются по одному каталогу и не подвешивают окно.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации