
1 minute read
FURTHER CONSIDERATIONS
Figure 30. Overall Distortion Output MATLAB vs C++ Render for Test Sine 200��
FURTHER CONSIDERATIONS
Advertisement
This project has provided a practical overview of non-linear processing and plugin development in C++/JUCE and has introduced the workflow of prototyping in MATLAB and realising a final product in JUCE/C++.
There are several important considerations that have fallen outside of the scope of this project but are still interesting to consider for future work or as continuations of the current analysis. These are:
§ Aliasing
Aliasing isn’t something that has been discussed within the body of this project simply because it either hasn’t been something that has caused concerns in terms of audible artifacts, or it has added to the overall distortion profile . However, aliasing is an important consideration to make when designing distortion algorithms as the generation of harmonic distortion can often surpass the Nyquist frequency and reflect back over Nyquist as audible artifacts. The common approach to avoid aliasing in distortion effects is oversampling.
§ Gain Staging
For the purposes of this project gain staging has been explored for the clipping stage of the distortion plugin only. In further work gain staging could be beneficial at other points in the distortion algorithm i.e., between bit reduction and rectification. The input gain of a signal can change the effect of nonlinear processing considerably and increase the magnitudes of harmonic distortion, the creative effects of which have potential to be explored further.
§ Total Harmonic Distortion
Some further evaluation this project could benefit from is exploration of Total Harmonic Distortion and accompanying THD plots to support the existing harmonic distortion analysis. Total Harmonic Distortion analyses the relationship between the amplitude of the fundamental frequency of a distorted