Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

JUCE - это кроссплатформенная среда приложений C ++ с частично открытым исходным кодом , используемая для разработки настольных и мобильных приложений. JUCE используется, в частности, для его графического интерфейса и библиотек плагинов .

Целью Джюс является предоставление программного обеспечения для записи таким образом, что тот же исходный код будет компилировать и запускать одинаково на Windows , , MacOS и Linux платформ. Он поддерживает различные среды разработки и компиляторы.

История [ править ]

Juce возник в результате разделения базового кода C ++, который был разработан Джулианом Сторером для создания графических и звуковых возможностей DAW Tracktion (теперь Waveform) . Впервые он был выпущен для широкой публики в 2004 году. На него распространяется двойная GPL / коммерческая лицензия.

JUCE и Raw Material Software были приобретены в ноябре 2014 года лондонским производителем оборудования ROLI за нераскрытую сумму. [2]

В апреле 2020 года было объявлено, что JUCE был продан ROLI аудиотехнологической компании PACE.

Официальная поддержка [ править ]

JUCE предназначен для использования одинаковым образом на нескольких платформах и компиляторах. Raw Material Software дает следующий список платформ и компиляторов, поддержка которых официально подтверждена; другие могут работать, но официально не тестировались.

Поддерживаемые платформы [ править ]

JUCE поддерживается на следующих платформах.

  • Windows Vista , 7 , 8 и 10
  • macOS версии 10.7 и новее
  • iOS версии 3 и новее
  • Ядро Linux версии 2.6 и новее
  • Android с использованием NDK-v5 и более поздних версий

Поддерживаемые компиляторы [ править ]

Официально подтверждено, что JUCE корректно работает со следующими компиляторами.

  • GCC версии 4.8 и новее
  • LLVM - LLVM Clang
  • Microsoft Visual Studio - Visual C ++ 2015 и новее

Особенности [ править ]

Как и многие другие фреймворки (например, Qt , wxWidgets , GTK и т. Д.), JUCE содержит классы, обеспечивающие ряд функций, которые охватывают элементы пользовательского интерфейса, графику, аудио, синтаксический анализ XML и JSON , работу в сети , криптографию , многопоточность и т. Д. интегрированный интерпретатор, имитирующий синтаксис ECMAScript , и различные другие часто используемые функции. Разработчики приложений, которым требуется несколько сторонних библиотек, могут, таким образом, иметь возможность консолидировать и использовать только библиотеку JUCE или, по крайней мере, уменьшить количество сторонних библиотек, которые они используют. Первоначальным источником вдохновения для этого послужил Java JDK., а JUCE задумывался как «нечто подобное для C ++».

Примечательной особенностью JUCE по сравнению с другими аналогичными фреймворками является большой набор звуковых функций; это потому, что JUCE изначально разрабатывался как фреймворк для Tracktion , звукового секвенсора, прежде чем был выделен в отдельный продукт. JUCE поддерживает аудиоустройства (такие как CoreAudio , ASIO , ALSA , JACK , WASAPI , DirectSound ) и воспроизведение MIDI , полифонические синтезаторы , встроенные считыватели для распространенных форматов аудиофайлов (таких как WAV , AIFF , FLAC , MP3 и Vorbis.), а также обертки для создания различных типов звуковых плагинов, таких как эффекты и инструменты VST . Это привело к его широкому использованию в сообществе разработчиков аудио. [3]

JUCE поставляется с классами-оболочками для создания плагинов для аудио и браузеров. При создании аудио-плагина создается один двоичный файл, который поддерживает несколько форматов плагинов ( VST и VST3, RTAS , AAX , Audio Units ). Поскольку весь код, зависящий от платформы и формата, содержится в оболочке, пользователь может создавать VST / VST3 / RTAS / AAX / AU для Mac и Windows из единой кодовой базы. Нацеливание на LV2 также возможно с использованием вилки. [4] [5] [6]

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


Инструменты [ править ]

Projucer - это инструмент IDE для создания и управления проектами JUCE. Когда файлы и настройки для проекта JUCE указаны, Projucer автоматически генерирует коллекцию сторонних файлов проекта, чтобы проект можно было скомпилировать на каждой целевой платформе. В настоящее время он может создавать проекты Xcode, проекты Visual Studio , файлы Makefile Linux , сборки Android Ant и проекты CodeBlocks . Помимо возможности управлять файлами и настройками проекта, он также имеет редактор кода, встроенный редактор графического интерфейса пользователя, мастера для создания новых проектов и файлов, а также движок живого кодирования, полезный для разработки пользовательского интерфейса.

См. Также [ править ]

  • Набор инструментов для виджетов
  • Список наборов инструментов для виджетов

Ссылки [ править ]

  1. ^ "6.0.7" . github.com . 2021-01-14 . Проверено 9 марта 2021 .
  2. ^ «Производитель музыкального оборудования ROLI приобретает JUCE, ключевую структуру музыкальной индустрии» . TechCrunch. 2014-11-18 . Проверено 19 марта 2016 .
  3. ^ «Экосистема» . Архивировано из оригинального 7 -го августа 2013 года . Проверено 25 апреля 2017 года .
  4. Форк ^ falkTX DPF: https://github.com/DISTRHO/juce/tree/juce6
  5. ^ Форк проекта lv2-porting-project от KottV https://github.com/lv2-porting-project/JUCE
  6. ^ Выпуск JUCE LV2: https://github.com/juce-framework/JUCE/issues/123

Внешние ссылки [ править ]

  • Официальный сайт