Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/0x07dc/none
Audio application and library management framework built on JUCE
https://github.com/0x07dc/none
Last synced: 3 months ago
JSON representation
Audio application and library management framework built on JUCE
- Host: GitHub
- URL: https://github.com/0x07dc/none
- Owner: 0x07dc
- License: other
- Created: 2021-08-27T20:41:20.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2021-09-02T17:41:23.000Z (about 3 years ago)
- Last Synced: 2024-04-23T04:53:18.641Z (7 months ago)
- Language: C++
- Size: 5.81 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.MD
- License: LICENSE
Awesome Lists containing this project
- awesome-juce - none
README
# None Audio Application Framework
## About
To provide a framework that provides a simple drop-in component system
and handles any non-creative work consistently.This framework is built on the JUCE audio plugin framework, which provides
all of the tools for making the actual audio plugin.While JUCE is a great framework, I found that there are some tasks
which are repetitive (such as state maintenance), and plenty things that could
go wrong in making a JUCE application. This framework is a solution
to a decoupled, organized, and uniform framework that will allow
even giant apps to be built, while maintaining maintainability and simplicity.## Current version - 0.0.0
This is super alpha and definitely not considered production yet, although it is already useful.## Documentation
The framework contains 4 main types of entities.- GUI Components
- Midi/Audio Processors
- States
- State ModifiersWith these four entities, any app should be constructable. The framework aims to
handle everything that is not specifically creating a GUI, running audio processes,
referring to states, and modifying states.The NoneApp folder contains a JUCE project that is built using this framework. It
is a simple FM modulator, and uses every component of the framework. It generates
a sine using a state that contains the frequency information. A state modifier
modulates the generator's state, by way of a GUI rotary slider component. This
results in a synthesizer with a controllable frequency modulator.The `juce_modules` folder contains the modules that this framework used in development.
### Step by step
1) To create a new app, just copy and rename the NoneApp. You'll need Projucer from JUCE to
open the project file.
2) You'll need to copy the folder `modules/none_app`. That's the starting project. You
will edit this module to configure the app. Consider renaming the namespace to your desire.
3) Include your module in the JUCE project, by adding a module in Projucer.
4) If you renamed your namespace, you'll need to change the app's variable
declaration in `PluginProcessor.h`.## Known bugs
- Automation is non-functional in Fl Studio. The parameter only updates on play.## License
This framework contains two different licenses. This repository contains JUCE module code
for convenience and as a way of preserving the framework's integrity.
A licence document is included in the `juce_modules` folder which details the JUCE license.Aside from JUCE, this library is licensed with the MIT license, making it very free.