JUCE

Бесплатно
Открытый исходный код
Windows
macOS
Linux
Android
iOS

Сайт: juce.com

JUCE — кроссплатформенный фреймворк на C++, предназначенный для разработки приложений с графическим интерфейсом, аудиообработки и плагинов. Он предоставляет набор библиотек и абстракций для работы с GUI, аудиопотоками в реальном времени, MIDI, форматами файлов и сетевыми возможностями, что позволяет создавать настольные и мобильные приложения, а также плагины форматов VST, AU, AAX и других. Архитектура фреймворка ориентирована на переносимость кода между Windows, macOS, Linux, iOS и Android, при этом уделено внимание низкой латентности аудиопути и детерминированному поведению в реальном времени.

Разработка и поддержка фреймворка обеспечивают набор модулей с четко выделенными зонами ответственности: графика и компоненты интерфейса, аудио и обработка сигналов, работа с MIDI, сериализация и управление ресурсами. JUCE включает средства для генерации проектов под разные сборочные системы и интеграции с IDE, а также утилиты для тестирования и профилирования аудио-кода. Вокруг фреймворка сформировалось сообщество разработчиков и экосистема шаблонов и расширений, применяемых в музыкальном софте, инструментах для звукозаписи и других мультимедийных приложениях.

  • Кроссплатформенность: единый API для Windows, macOS, Linux, iOS и Android.
  • GUI: набор виджетов, система компоновки, кастомная отрисовка и поддержка тем оформления.
  • Аудио в реальном времени: управление аудиопотоками, низкая латентность, поддержка многопоточности и реального времени.
  • Плагины: создание плагинов форматов VST, AU, AAX и других с общим кодом.
  • MIDI: приём, отправка и обработка MIDI-сообщений, синхронизация и работа с событиями.
  • Аудиообработка: DSP-инструменты, фильтры, шины эффектов, механизмы для реализации аудиоалгоритмов.
  • Файлы и форматы: работа с аудиофайлами, сериализация настроек, загрузка ресурсов и управление файловой системой.
  • Инструменты сборки: генерация проектов для популярных IDE и систем сборки, скрипты и шаблоны.
  • Тестирование и отладка: средства для юнит-тестирования, профайлинга и мониторинга аудиопотоков.
  • Лицензирование и распространение: коммерческие и открытые варианты лицензий, позволяющие выбор модели распространения для разработчиков.
Подробнее