Benutzer-Werkzeuge

Webseiten-Werkzeuge


juce

Dies ist eine alte Version des Dokuments!


Inhaltsverzeichnis

JUCE (Jules’ Utility Class Extensions) ist ein plattformübergreifendes C++ Framework zur Entwicklung von Audioanwendungen, Plug-ins, grafischen Benutzeroberflächen (GUIs) und anderen Multimediaprogrammen. Es wurde ursprünglich von Jules Storer entwickelt und ist heute ein wichtiger Bestandteil der Musiktechnologie-Industrie.

Es bietet umfangreiche Unterstützung für:

  • VST, VST3, AU, AAX und LV2 Plug-in Formate
  • Echtzeit-Audioverarbeitung
  • MIDI-Verarbeitung
  • GUI-Komponenten
  • OpenGL-Unterstützung
  • Netzwerk- und Dateioperationen
  • Unit Testing
  • WebView (in bestimmten Plattformen)
  • Drag & Drop, Layoutsysteme, Skins, LookAndFeel

JUCE wird von zahlreichen bekannten Firmen und Projekten verwendet, darunter:

  • Ableton
  • Arturia
  • Native Instruments
  • KORG
  • Focusrite
  • iZotope
  • Tracktion Engine
  • Surge Synth Team (z. B. Surge XT)

Installation

Downloads auf der Website.

Selbst kompilieren

git clone https://github.com/juce-framework/JUCE.git
cd JUCE
mkdir build && cd build
cmake ..

Code

class MyAudioProcessor : public juce::AudioProcessor {
public:
    MyAudioProcessor() {}
    ~MyAudioProcessor() override {}
 
    void prepareToPlay(double sampleRate, int samplesPerBlock) override {}
    void releaseResources() override {}
 
    void processBlock(juce::AudioBuffer<float>& buffer, juce::MidiBuffer&) override {
        for (int channel = 0; channel < buffer.getNumChannels(); ++channel)
            buffer.clear(channel, 0, buffer.getNumSamples());
    }
 
    // Weitere notwendige Überschreibungen:
    juce::AudioProcessorEditor* createEditor() override { return nullptr; }
    bool hasEditor() const override { return false; }
    const juce::String getName() const override { return "MyPlugin"; }
 
    // Weitere Metadaten...
};
juce.1746461372.txt.gz · Zuletzt geändert: 2025/05/05 18:09 von jango