Container modulators not working
-
The error message is a result of the over-verbosity of the new audio thread guard system, which monitors unwanted operations in the audio calculation, but sometimes it fires (mostly during initialisation of modules) without a serious reason. I tried to get rid of false positives, but some slip through. TLDR: shouldn't be the cause of the problem.
Weird that the audio file is silent - silly question: have you played something :)?
- Start the recording by selecting the menu item
- During the next seconds, hit random keys and make sound
- Get the HISE audio output as .wav file
If this doesn't work, can you load HISE into a sequencer on your Linux system, and export the glitch as audio file (or any other way of recording the HISE output if the inbuilt tool fails for whatever reason)? Also if you run the Debug build, does it fire a assertion when the glitch appears?
-
Also maybe I didn't follow your exact steps:
- Add a sine generator
- Add a LFO modulator
- Play notes -> glitch at the note release
Have I missed something?
-
@christoph-hart I did not play any notes, that explains that issue :) I shall make a new file.
Your steps are correct for creating the glitches. The other issue can be demonstrated just by adding an LFO to the master chain, it doesn't move at all and there is no display in the plot. I haven't checked the debug build, I will do that today.
-
Don't worry about the LFO in the master chain, this one I can replicate :)
-
@christoph-hart I've updated the files in dropbox now. No glitches on Windows. Going to test debug mode on Linux now. There was a jassert juce_file.ccp line 134 on Windows in debug mode.
-
Debug build on linux:
JUCE assertion failure in ModuleBrowser.cpp:158
- this just happens on initialisation
I get a lot of nasty noise in the debug build - I've added another 8 second audio file to the dropbox zip file demonstrating this - but no assertion messages related to this.With more careful listening I think the glitches are actually present even without the LFO. I'm not hearing them as strongly in my sampled instruments as I do with just the sine wave generator though.
I also tested the Windows build in a virtual machine on my Linux system and there was no glitches so this does seem to be a Linux issue.
-
Hmm, it seems as it sets every 8th sample, but the rest is silent, which correlates with the downsampling factor of the modulator system.
Can you change the downsampling factor and try again? It's a preprocessor macro in
hi_core/LibConfig.h
:#ifndef HISE_EVENT_RASTER #define HISE_EVENT_RASTER 8 #endif
Around Line 66. Change it to
#define HISE_EVENT_RASTER 1
, recompile and try again. If this solves the issue, we're still not sure what caused it, but on the right track :) -
BTW, the best way to debug issues in the modulator system is by creating a dummy wave file with a fixed value of 0dB and loading it in the Loop player:
(Make sure you turn your speakers down, it's "loud"!)
-
@christoph-hart That seems to have fixed it
-
Found it. It was indeed a code path that was just executed on Linux and contained low-level SSE optimizations that didn't work apparently :)
I've just pushed the change. Please check if it solves it - and make sure you roll back the manual change you did otherwise you won't be able to test it...
-
@christoph-hart Excellent, that did it! Thank you. One strange thing I found though, changing the volume of the sine wave generator (doesn't seem to affect samplers) changes its pitch...
Is the master chain modulator issue a simple fix?
-
Wasn't exactly hard :)
https://github.com/christophhart/HISE/commit/c585e45103ccaaaab9f2c28af26af58dc84a1009
-
@christoph-hart Yey, going to build now!