JUCE UI component for a MUltiple Stimulus Hidden Anchor (MUSHRA) style perceptual evaluation [1] in C++.
Randomises the order in which audio scenes (i.e. source materials) are presented, and the association between slider number and stimulus for each scene.
Consists of:
- MushraComponent: UI component that controls which stimulus is playing, and records the results at the end of session
- MushraProcessor: Maintains the scene order, which scene is currently loaded, and which stimulus is playing ,
- Clone repo.
- Open Projucer VST project.
- Drag cloned folder projucer file explorer
- Add cloned folder path to Exporters > Xcode > Debug/Release > Header Search Paths
- Include processor in AudioProcessor source:
#include <MushraProcessor.h>
- Include ui component in AudioProcessorEditor source:
#include <MushraComponent.h>
Treat the MushraComponent like any other JUCE UI component.
The constructor takes 3 parameters:
- The AudioProcessor
- number of sliders to display, equivalent to the number of stimuli under test.
- the directory in which to save the results
The AudioProcessor inherits from this class.
Takes two constructor parameters:
- Number of stimuli under test.
- Number of different audio scenes/source materials that the stimuli are derived from
The AudioProcessor decides what audio to play based on the properties:
int selectedStimulus
int currentScene
Which are controlled by changes to the MushraComponent.
[1] Method for the subjective assessment of intermediate quality level of audio systems (ITU-R BS.1534-3)
This software uses the JUCE C++ framework, which is under GPL license. More information: https://github.com/WeAreROLI/JUCE