Интеграция с Windows (winres): Внедрена нативная сборка ресурсов Windows с помощью winres. Исполняемый файл теперь компилируется со встроенной иконкой высокого разрешения icon.ico.
Системный трей: Разработан парсер ICO-файлов в setup.rs, извлекающий заготовки максимального разрешения прямо из бинарных ресурсов для корректного и сглаженного отображения иконки в системном трее.
Анализатор спектра (БПФ): Разработан асинхронный анализатор спектрограммы высокого разрешения на базе БПФ (FFT) с окном Ханна. Отрисовка и спектральная анимация выполняются через кастомный WGSL-шейдер в реальном времени.
Стабильность кроссфейда: Исправлен баг в cubeb_host.rs: флаг конца трека (track_eof) теперь корректно разделен на логический конец декодирования (decoder_eof) и физическое опустошение кольцевого буфера. Это предотвращает преждевременное переключение треков во время активного кроссфейда.
Опции UI: Добавлена информационная вкладка «О программе» в меню настроек.
Доработки верстки: Оптимизирован размер кнопок A-B лупинга до 20x20 пикселей, добавлены текстовые лейблы для всех основных слайдеров DSP-тракта.
Версия 0.9.0(21.05.2026)
3D-виртуализатор HRTF: Разработан модуль Hrtf3DVirtualizer для имитации трехмерной акустической сцены при прослушивании в наушниках: Mid/Side декомпозиция, пиковый фильтр на 3 кГц для симуляции резонанса ушного канала, режекторный фильтр на 6.5 кГц для выноса вокала вперед, эмуляция ранних отражений (0.9 мс, -15.5 дБ), режекторный срез на 8 кГц для Side, моделирование задержки ITD (0.28 мс) и акустической тени головы.
DynamicsPre (Входная динамика): Реализован блок фильтрации неслышимого инфрабаса (20 Гц HPF Линквица-Райли 4-го порядка) для разгрузки усилителей, срез ультразвука (22 кГц LPF) и блок автоматической регулировки усиления (AGC) с медленным RMS-детектором (целевой уровень -16 dBFS).
DynamicsPost (Выходной лимитер): Разработан упреждающий пиковый лимитер (Look-ahead) с буфером задержки 2 мс (атака 0.5 мс, спад 50 мс) для предотвращения цифрового клиппинга на выходе.
A-B Лупинг: Реализована функция циклического воспроизведения отрезка A-B с возможностью визуального фиксирования точек начала и конца петли на интерактивном вейвформе.
Кривые громкости: Добавлены логарифмическая и гибридная кривые масштабирования аппаратной громкости.
Версия 0.8.0(20.05.2026)
SoundUP RT — Басовый резонатор: Выделяет низкие частоты ниже 100 Гц с помощью фильтра Линквица-Райли 4-го порядка и генерирует субгармоники методом нелинейной сатурации ADAA-tanh для придания плотности басу.
SoundUP RT — Декоррелятор Хааса: Расширяет стереобазу путем задержки высокочастотных компонентов (выше 800 Гц) в одном из каналов на 1.2 мс.
SoundUP RT — Модуль ATR: Находит резкие атаки и транзиенты в СЧ/ВЧ-спектре (около 6.5 кГц) с помощью быстрой и медленной огибающих, динамически акцентируя их фазу нарастания.
SoundUP RT — Эксайтер ВЧ: Извлекает гармоники из полосы 4.5 кГц, генерирует четные и нечетные обертоны выше 11 кГц с помощью полиномиального синтеза и подмешивает розовый шум для воссоздания «воздушной» текстуры (фильтр Баттерворта 16–36 кГц).
SoundUP RT — Ленточный сатуратор: Эмулирует мягкое насыщение магнитной ленты на Mid-канале с регулировкой уровня перегрузки.
Интерфейс SoundUP RT: В меню настроек добавлен блок «SoundUP RT» со слайдерами регулировки интенсивности для всех пяти модулей.
Панель управления: На главную панель управления плеера добавлена кнопка активации будущего реалтайм-спектроанализатора.
Версия 0.7.0(16.05.2026)
Изменение темпа и тона: Разработан блок изменения высоты тона и темпа (TimeStretchEngine) с алгоритмами WSOLA, Phase Vocoder и Resampling (Pitch Linked).
Ревербератор Шредера: Реализован пространственный ревербератор SchroederReverb на базе сети гребенчатых и всепропускающих фильтров Шредера с регулировкой размера виртуальной комнаты.
Crossfeed: Добавлен блок Crossfeed (подмешивание каналов с задержкой в 320 мкс для симуляции акустических систем при прослушивании в наушниках).
Тонкая коррекция сигнала: Создан блок тонкой коррекции сигнала (SignalCorrector), поддерживающий регулировку смещения таймингов (Time Alignment) в миллисекундах, поканальную инверсию фазы и моно-сведение (Downmix).
Редактор кривых Безье: Внедрена поддержка интерактивного редактора геометрических кривых Безье для процессов Fade-In и Fade-Out. Пользователь может визуально настраивать форму спада и нарастания громкости на координатной сетке, а логарифмический интерполятор на лету рассчитывает громкость при микшировании.
Умный Shuffle: Реализован усовершенствованный алгоритм случайного воспроизведения («Перемешивание + Алгоритмическая аппроксимация случайности»), который перетасовывает плейлист и страхует слушателя от повторов на стыках циклов, закрепляя текущий трек на нулевом индексе.
Быстрые настройки DSP (Quick DSP): На панель управления добавлен вызов окна быстрых настроек DSP («Quick DSP Settings») с физическими слайдерами скорости, тональности, темпа, реверберации, кроссфида и баланса.
Версия 0.6.0(13.05.2026)
Аудио-бэкенд Cubeb: Низкоуровневый аудиодвижок CPAL полностью заменен на мультимедийную библиотеку Cubeb для более стабильного вывода под Windows (поддерживаются WASAPI Shared, WASAPI Exclusive и ASIо-драйверы).
Выбор аудиоустройств: Реализована функция сканирования и выбора физических звуковых устройств вывода (audio_device).
Бесшовный Crossfade: Полностью переписан декодирующий поток (decoder.rs). Внедрена поддержка бесшовного смешивания треков (Crossfade) при переходе. Аудиодвижок теперь может одновременно декодировать и микшировать несколько аудиопотоков в рамках одной структуры DecStream со своим шагом затухания/нарастания громкости.
Кастомизация скругления: Добавлен слайдер кастомизации скругления элементов интерфейса (параметр ui_rounding в настройках).
Светлая тема: Разработана светлая тема оформления Light Pearl.
Версия 0.5.0(11.05.2026)
Ресемплер: Внедрен алгоритм ресемплирования (StreamResampler) с поддержкой линейной интерполяции, кубического сплайна Эрмита и оконного 16-точечного Sinc-фильтра с окном Ланцоша для реалтайм-сглаживания.
Дизеринг: Разработан блок дизеринга (Ditherer) с алгоритмами Triangular (TPDF), Shaped (фильтрация ошибок) и NS5 (Noise Shaping 5-го порядка) для вывода звука в 16- и 24-битном режимах.
DSD-модуляция: Реализован симулятор 5-порядочного Sigma-Delta модулятора (SDM) для преобразования PCM-потока в DSD.
32-bit Float архитектура: Сигнальный тракт полностью переведен на высокоточную 32-bit Float архитектуру.
Автосогласование параметров: Реализовано автоматическое согласование частоты дискретизации (Sample Rate Negotiation) и размера аппаратного буфера с аудиокартой.
Экран настроек: Разработан новый экран настроек («Settings UI») со сложной боковой иерархической структурой категорий и интерактивным блоком технической документации («Documentation Box»), выводящим детальное описание каждого выбранного параметра.
Монитор потока: Внедрен системный монитор потока аудиодвижка (Info Monitor), показывающий текущий API, частоту, задержку буфера, режим дизеринга и лимитера в реальном времени.
Версия 0.4.0(10.05.2026)
Прилипание окна (Aero Snap): Разработан механизм, благодаря которому при перетаскивании кастомного окна плеера близко к границам экрана оно автоматически примагничивается к краям рабочего стола.
Рекурсивный перенос плейлистов: Добавлена функция рекурсивного переноса плейлистов между категориями (ChangePlaylistCategory). При смене категории у родительского плейлиста все вложенные дочерние структуры также автоматически переносятся в новую категорию в базе данных.
Контроль дубликатов: Улучшены проверки безопасности при импорте файлов перетаскиванием для исключения дублирования путей в БД.
Исправление ошибок воспроизведения: Исправлен баг интерфейса, из-за которого нажатие на кнопку Play/Pause при определенных условиях могло быть ложно интерпретировано как сигнал к полной остановке воспроизведения (StopPlayback).
Версия 0.3.0(07.05.2026)
Вертикальное меню: Редактор БД переведен на вертикальную схему меню: вкладки перенесены в боковой сайдбар. Текст вкладок рендерится вертикально благодаря новому режиму Mode 3u в шейдере, позволяющему накладывать сгенерированную текстуру текста на повернутые полигоны.
Рендеринг обложек: Интегрирован алгоритм ресайза изображений Lanczos3 (image_proc.rs), позволивший реализовать поддержку обложек плейлистов (хранятся в виде PNG/JPG/WEBP прямо в BLOB-поле базы данных).
Предпросмотр обложек: Добавлена отрисовка обложек в плеере, а также мини-предпросмотр обложки во всплывающем окне при наведении курсора на плейлист в редакторе.
Drag-and-Drop: Реализован механизм перетаскивания файлов из проводника ОС напрямую в окно плеера. При перетаскивании программа асинхронно считывает метаданные, добавляет записи в глобальную базу треков и привязывает их к активному плейлисту.
Сводка импорта: Добавлено всплывающее информационное окно со сводкой импорта (DnD Summary), показывающее количество успешно добавленных и пропущенных файлов.
Фильтрация плейлистов: В Редакторе БД добавлен выпадающий список для фильтрации плейлистов по категориям.
Фильтрация отсутствующих: Добавлен быстрый фильтр треков по статусу «Отсутствует на диске».
Версия 0.2.0(05.05.2026)
Расширение метаданных: В базу данных (tracks) добавлены новые поля: год выпуска (release_date), исполнитель (artist) и оригинальный заголовок (tag_title).
Автоматический парсинг тегов: Реализован фоновый парсинг метаданных и тегов (исполнитель, название, год) при добавлении аудиофайлов через Symphonia.
Редактирование тегов: Добавлена возможность просмотра и детального редактирования тегов и дополнительной информации о треках непосредственно в плеере через выпадающее подменю свойств трека.
Система локализации: Реализована полноценная система локализации. Созданы внешние файлы ресурсов локализации для русского (ru-RU.loc) и английского (en-US.loc) языков.
Сохранение сессии: Плеер автоматически записывает в settings.json и восстанавливает при запуске последний открытый плейлист, выбранный трек и точную позицию воспроизведения.
Редактор БД: Интерфейс разделен на три вкладки («Категории», «Плейлисты», «Треки») вместо перегруженного общего экрана.
Валидация файлов: Разработан инструмент поиска и сканирования физически отсутствующих файлов на диске с маркировкой записей в БД тегом [Отсутствует].
Файловая структура: Внедрен переключатель отображения файловой структуры: треки в базе можно просматривать плоским списком либо в виде дерева папок.
Сортировка: Добавлены фильтры для сортировки треков по алфавиту и дате выпуска.
Переназначение путей: Добавлена возможность переназначения пути к файлу для записей в БД.
Версия 0.1.0(03.05.2026)
Базовая архитектура и хранение данных: Разработана библиотека core_db для работы с базой данных music.db на SQLite (используется драйвер rusqlite с бандлингом).
Реляторная схема БД: Реализована схема данных, включающая таблицы: categories (группировка плейлистов с сортировкой порядка), playlists (иерархические древовидные связи parent_id, каскадное удаление и JSON-настройки), tracks (метаданные аудиозаписей, относительные пути и длительность) и playlist_tracks (назначение треков в плейлисты с настраиваемым порядком track_order).
Рекурсивные запросы: Реализован рекурсивный CTE-запрос для автоматического получения всех треков из выбранного плейлиста и всех его дочерних подплейлистов.
Аудиовывод: Реализован кроссплатформенный аудиовывод на CPAL с использованием асинхронного кольцевого буфера ringbuf без блокировок.
Декодирование аудио: Интегрирован декодер symphonia для чтения популярных форматов аудио: MP3, FLAC, WAV, OGG, OPUS, M4A.
Многопоточный тракт: Создан многопоточный сигнальный тракт: основной аудиопоток декодируется в фоновом потоке, а микширование фоновых звуков (Ambient-каналы) происходит в отдельном выделенном потоке.
Эквалайзер: Реализован 12-полосный параметрический эквалайзер на каскаде биквадратных пиковых фильтров (частоты от 16 Гц до 16 кГц).
Soundgoodizer: Внедрен процессор динамической обработки Soundgoodizer: многополосный кроссовер на базе фильтров Линквица-Райли 4-го порядка (разделение на Low/Mid/High на частотах 250 Гц и 4000 Гц) с независимыми компрессорами и нелинейной сатурацией в четырех режимах (A, B, C, D).
Мягкий клиппинг: Добавлен алгоритм мягкого ограничения амплитуды (Soft Clip) через гиперболический тангенс (tanh) на выходе микшера.
Аппаратный рендер: Разработан аппаратный рендер интерфейса на базе WGPU (v25) и оконного фреймворка winit. Текст отрисовывается через библиотеку glyphon.
Эффекты интерфейса: Написан кастомный графический шейдер (shader.wgsl), поддерживающий скругление углов примитивов и эффект размытия заднего плана (Glassmorphism) на основе псевдослучайного шума (interleaved gradient noise) и многопроходной выборки текстуры бэкбуфера.
Кастомное окно: Создан кастомный оконный интерфейс без системных рамок с возможностью перетаскивания за верхнюю панель, кнопками сворачивания и закрытия.
Интеграция с системой: Добавлена поддержка иконки в трее (tray-icon) и контекстного меню (muda).
Экраны приложения: Созданы два экрана: «Плеер» (воспроизведение, список треков с интерактивным волновым спектром для перемотки) и «Редактор БД» (инструменты наполнения базы данных).