Медіатека, яка тримає удар
Паралельний сканер читає повні теги, справжні тривалості й власний кодек кожного файлу, а не пробігає заголовком. Стеження за теками переживає перейменування, і ніщо не зникає мовчки.
Настільний музичний програвач для тих, у кого велика, дбайливо протегована локальна медіатека. Панелі ви складаєте самі, а тема - це один файл, який можна віддати іншому. Нативно на Linux, macOS і Windows.
rox іде одним бінарником і запускається раніше, ніж ви відпустите мишу.
| Програвач | Вікно з'явилося | Повністю завантажений | Пам'ять | CPU у простої |
|---|---|---|---|---|
| rox | 0,3 s | 2,3 s | 134 MB | 0,5% |
| Elisa | 0,7 s | ніколи не заспокоюється | 206 MB | 74% |
| fooyin | 0,3 s | 18 s | 364 MB | 0% |
| Quod Libet | - | 19 s | 384 MB | 0,2% |
| Strawberry | 0,3 s | 32 s | 434 MB | 0,8% |
| Museeks | - | 3 s | 436 MB | 0% |
| Tauon | 8,7 s | 12 s | 2,8 GB | 0% |
Усе це я міряв сам, на одній машині (Ryzen 9 5950X, Linux/Wayland), з тією самою медіатекою в 50 000 треків на зовнішньому SSD, кожен програвач через ту саму обв'язку із завантаженою медіатекою. Пам'ять - це PSS по всьому дереву процесів. «Завантажений» - це момент, коли CPU заспокоюється після запуску; простій - це програвач на паузі з видимим вікном. DeaDBeeF зупинився б на 44 МБ і виграв би за пам'яттю, але рядка не отримав: його MP3-парсер падає з segfault на середині імпорту цієї медіатеки, і так щоразу. rox індексує всі 50 000 треків, включно з обрізаними файлами, на яких той спотикається.
Паралельний сканер читає повні теги, справжні тривалості й власний кодек кожного файлу, а не пробігає заголовком. Стеження за теками переживає перейменування, і ніщо не зникає мовчки.
Повноцінний редактор з атомарним записом, пакетними правками та пошуком із заміною. Оцінки лежать у самих файлах через FMPS і POPM. Пошук через MusicBrainz, iTunes і Deezer.
FLAC на цілий диск поруч зі своїм cue-листом індексується справжніми рядками. Кожен проміжок перемотується, скроблиться, сортується й без пауз переходить у наступний, як це робить файл.
Один потік, із перемішуванням, повтором, «грати наступним» і повтором A-B. Закладка ставиться однією клавішею й сидить на смузі перемотування. Медіаклавіші й «зараз грає» працюють на всіх трьох платформах.
Еквалайзер в окремому вікні, кросфейд, який не чіпає власних склейок альбому, і ексклюзивний вивід, який каже, на що погодилося залізо.
rox описує ваші треки з їхнього ж звуку, включно з темпом, і вибудовує подальше за схожістю. Усе рахується на вашій машині за вашими файлами, без сервісів у ланцюжку.
Близько сорока видів панелей, від медіатеки й черги до сіток виконавців, спектра й індикатора VU. Дублюйте панель з її налаштуваннями, зберігайте як пресет або відділяйте в окреме вікно.
Робочий простір - це один файл із розкладкою, палітрою, оформленням і шейдерами. Палітра вміє тонуватися від обкладинки, що грає, ідучи у світле або темне слідом за нею.
Пишіть WGSL-шейдер поверх однієї панелі або всього вікна, або запускайте пресети Milkdrop через projectM. Іменовані сигнали зі спектра йдуть шейдерам на вхід.
Синхронізовані або звичайні, з файлів поруч, із тегів або з lrclib, із редактором, який пише туди ж, звідки прочитав. Журнал прослуховувань живить панель історії, статистику й скробл.
Улюблене, перетягування, M3U, PLS і XSPF всередину й назовні та розумні списки, які заново проганяють збережений запит, а не тримають знімок. Записи переживають зникнення файлу і його повернення.
Tarball, DMG або zip, плюс AUR і Nix flake. Портативний режим тримає медіатеку й налаштування в теці поруч із виконуваним файлом.
JSON-RPC через локальний сокет: транспорт, правки черги, пошук медіатекою і події, які він шле сам. Автентифікація - права на файл, ніщо не слухає порт.
Проксі поруч із застосунком кладе сокет на MCP: клієнт ШІ може спитати, що грає, або керувати відтворенням. Вимкнено за замовчуванням, перевіряється на кожному виклику.
Клієнт-джерело шле те, що грає rox, як MP3 на вашу точку монтування. Лише назовні: мережевий бік належить Icecast, а недоступний сервер не спиняє відтворення.
У коробці лежать готові робочі простори, усього вісім, і кожен в один клік у вікні «Вітання». Кожен - це один файл із розкладкою, палітрою й шейдерами, які він запускає, тож його можна правити, ламати й віддавати іншим. Подивитися всі.