stringtranslate.com

JUGO

JUCE es un marco de trabajo de aplicaciones C++ multiplataforma de código abierto , utilizado para el desarrollo de aplicaciones de escritorio y móviles. JUCE se utiliza en particular por sus bibliotecas de GUI y complementos . Tiene licencia dual GPLv3 y una licencia comercial. [2]

El objetivo de JUCE es permitir que se escriba software de manera que el mismo código fuente se compile y ejecute de manera idéntica en plataformas Windows , macOS y Linux . Es compatible con varios entornos de desarrollo y compiladores.

Historia

JUCE es el resultado de una división del código C++ subyacente que fue desarrollado por Julian Storer para crear las capacidades gráficas y de audio de la estación de trabajo de audio digital Tracktion (ahora Waveform) . Se lanzó al público por primera vez en 2004. Está cubierto por una licencia GPL /comercial dual.

JUCE y Raw Material Software fueron adquiridos en noviembre de 2014 por el fabricante de hardware con sede en Londres ROLI por un monto no revelado. [3]

En abril de 2020 se anunció que ROLI había vendido JUCE a PACE Anti-Piracy Inc. [4]

Soporte oficial

JUCE está pensado para que pueda utilizarse exactamente de la misma manera en múltiples plataformas y compiladores. Raw Material Software ofrece la siguiente lista de plataformas y compiladores en los que se ha confirmado oficialmente su compatibilidad; otros pueden funcionar, pero no han sido probados oficialmente.

Plataformas compatibles

JUCE es compatible con las siguientes plataformas.

Compiladores compatibles

Se confirmó oficialmente que JUCE funciona correctamente con los siguientes compiladores.

Características

Al igual que muchos otros frameworks (por ejemplo, Qt , wxWidgets , GTK , etc.), JUCE contiene clases que proporcionan una gama de funciones que cubren elementos de interfaz de usuario, gráficos, audio, análisis de XML y JSON , redes , criptografía , subprocesamiento múltiple , un intérprete integrado que imita la sintaxis de ECMAScript y varias otras características de uso común. Los desarrolladores de aplicaciones que necesitan varias bibliotecas de terceros pueden, por lo tanto, consolidar y usar solo la biblioteca JUCE, o al menos reducir la cantidad de bibliotecas de terceros que usan. En esto, la inspiración original fue el JDK de Java , y JUCE estaba destinado a ser "algo similar para C++".

Una característica notable de JUCE en comparación con otros frameworks similares es su gran conjunto de funcionalidades de audio; esto se debe a que JUCE se desarrolló originalmente como un framework para Tracktion , un secuenciador de audio, antes de dividirse en un producto independiente. JUCE tiene soporte para dispositivos de audio (como CoreAudio , ASIO , ALSA , JACK , WASAPI , DirectSound ) y reproducción MIDI , sintetizadores polifónicos , lectores integrados para formatos de archivos de audio comunes (como WAV , AIFF , FLAC , MP3 y Vorbis ), así como envoltorios para construir varios tipos de complementos de audio, como efectos e instrumentos VST . Esto ha llevado a su uso generalizado en la comunidad de desarrollo de audio. [5]

JUCE viene con clases contenedoras para crear complementos de audio y navegador. Al crear un complemento de audio, se produce un único binario que admite varios formatos de complemento ( VST y VST3, RTAS , AAX, Audio Units ). Dado que todo el código específico de la plataforma y el formato está contenido en el contenedor, un usuario puede crear VST/VST3/RTAS/AAX/AU para Mac y Windows a partir de una única base de código. Desde JUCE7, también es posible la orientación y el alojamiento de complementos LV2 . [6] Anteriormente, esto se hacía con el uso de varias bifurcaciones. [7] [8]

Los complementos del navegador se manejan de manera similar: se produce un único binario que funciona como complemento NPAPI y ActiveX .

Herramientas

"Projucer" es una herramienta IDE para crear y administrar proyectos JUCE. Cuando se han especificado los archivos y las configuraciones para un proyecto JUCE, Projucer genera automáticamente una colección de archivos de proyecto de terceros para permitir que el proyecto se compile de forma nativa en cada plataforma de destino. Actualmente, puede generar proyectos Xcode , proyectos Visual Studio , Makefiles de Linux, compilaciones Ant de Android y proyectos CodeBlocks . Además de proporcionar una forma de administrar los archivos y las configuraciones de un proyecto, también tiene un editor de código, un editor de GUI integrado, asistentes para crear nuevos proyectos y archivos, y un motor de codificación en vivo útil para el diseño de la interfaz de usuario.

Historial de versiones

Véase también

Referencias

  1. ^ Tom Poole (15 de abril de 2024). «7.0.12». github.com . Consultado el 15 de mayo de 2024 .
  2. ^ Licencia JUCE, JUCE, 18 de abril de 2022 , consultado el 18 de abril de 2022
  3. ^ "El fabricante de hardware musical ROLI adquiere JUCE, un marco clave para la industria musical". TechCrunch. 18 de noviembre de 2014. Consultado el 19 de marzo de 2016 .
  4. ^ "JUCE anuncia adquisición por parte de PACE | JUCE". juce.com . Archivado desde el original el 2020-04-19 . Consultado el 2022-03-30 .
  5. ^ "Ecosistema". Archivado desde el original el 7 de agosto de 2013 . Consultado el 25 de abril de 2017 .
  6. ^ Notas de la versión de JUCE7: https://github.com/juce-framework/JUCE/releases/tag/7.0.0
  7. ^ Bifurcación DPF de falkTX: https://github.com/DISTRHO/juce
  8. ^ Bifurcación del proyecto lv2-porting-project de KottV https://github.com/lv2-porting-project/JUCE
  9. ^ "JUCE/ChangeList.txt en master · juce-framework/JUCE". GitHub . Consultado el 15 de septiembre de 2023 .

Enlaces externos