Organizers of the Audio Developers Conference (ADC) shared this session video from ADC ’17, featuring a technical look at how Moog engineers are building user interfaces.
The video captures a session led by Geert Bevin, Senior Software Engineer and
Amos Gaynes, Product Design Engineer on Designing and implementing embedded synthesizer UIs with JUCE.JUCE is a platform, based on C++, for building high-performance, cross-platform audio and music software.
In their presentation, Bevin and Gaynes are careful not to reveal anything about the upcoming Moog synthesizer hardware that they’re working on.
But they talk specifically about creating a user interface for a hardware synth; using shallow navigation in hardware UI’s; examples of devices, like NI’s Maschine, that combine knobs with rich graphical UI’s; and when to use dedicated hardware controls.
All of which suggests that Moog is working on a new synthesizer that will look very different than its predecessors.
JUCE has become an ideal platform to develop embedded UI applications. Moog engineering discusses C++ JUCE front-end application design on top of streamlined Linux distributions. This talk focuses on practical solutions with code examples, including: maintainable user-interface and user-experience design, code and application architecture, unit and functional testing, efficient message handling and dispatch, domain-specific interfaces, APIs promoting consistency and correctness, patch storage and retrieval, and application-specific scripting.