← усі проєкти

.NET 10 · CLI + MAUI

NetAudioConverter

Конвертер аудіо для формату SMP (Turtle Beach SampleVision, той, що пише SoX): CLI і MAUI-застосунок над спільним ядром. Декодування повністю managed — жодних зовнішніх бінарників у рантаймі.

.NET 10MAUI (iOS / macOS) CLIAudio DSP xUnit golden fixtures

Огляд

Джерела — MP3, WAV і SMP; цілі — SMP і WAV. Конвертація декодує вхід, зводить у моно, ресемплить до заданої частоти, переводить у 16-bit PCM і пише вихід. Результат перевірено байт-у-байт проти справжнього .smp, згенерованого SoX — не «схоже», а той самий файл.

Дефолти й валідація (ConversionDefaults, ConversionRequestValidator) живуть у ядрі, тож CLI і GUI застосовують одні й ті самі правила частоти, коментаря та імені.

Скріншоти

Десктопний застосунок

Можливості

Що вміє

Спільне ядро

CLI і MAUI-застосунок над одним NetAudioConverter.Core: читання/запис SMP та WAV, декодування MP3, ресемпл, PCM.

Чисто managed

Жодних зовнішніх бінарників у рантаймі — усе декодування й конвертація в самому .NET.

Перевірено байт-у-байт

Golden-фікстури: вихід звіряється з реальним SMP від SoX, а не з приблизним результатом.

Пакет файлів

Скільки завгодно входів за прогін; один невдалий файл не зупиняє решту, у кожного свій статус.

From → To пікери

Джерело MP3/WAV/SMP, ціль SMP/WAV; файли з невідповідним розширенням відсіюються при додаванні.

Apple-стиль

Два лейаути на одній сторінці — desktop/tablet у дві колонки й phone зі стікі-баром, світла й темна теми.

CLI

Приклад використання

dotnet run --project src/NetAudioConverter.Cli -- \
  convert in.mp3 out.smp --rate 44100 --name Kick --comment "demo"

dotnet run --project src/NetAudioConverter.Cli -- info out.smp

Exit-коди: 0 успіх, 1 помилка використання, 2 помилка конвертації.