[Solved] Real Time guitar play with HX Native

Since I spent one hour to figure this out, I’ll save you some time.

Usecase:
You want to play guitar and use HX Native as a multieffect processor.

Problem:
By default, latency is high, you can hear a big delay between the action you make on the guitar and the resulting sound. Even with no effect applied.

Solution:

You need to install ASIO drivers for your equipments. Because I wanted output to my ODAC, and there is no ASIO driver that I know of, I used asio4all.

Then you have to start Ardour in the startup window “audio/MIDI settings”, choose your input/output interfaces and open the control panel and set the buffer to the minimum.

I you going to play with Helix Native, I suggest you use 96KHz maximum because above that you may experience some problem for real time (I had and I have a i5 8600K overclocked to almost 5GHz).

Okay so now you create a track that should be connected directly to the hardware input, you create your plugin configuration (for example an instance of Helix Native) and then you modify the Master Bus so it connect to your output so you can hear what you play on the input.

Then there is the tuning. You can see a DSP: XX.X% on the top right of the window. As I understand, it represents the time slot allocation usage. If Ardour needs the samples to be processed in 6ms and your plugin chain process the samples in 3 ms, you are at 50%.

I have a gaming PC, at first I was surprised to have 100% usage (with sound interruption) while the processor was actually loaded at 8% (depends on the effect you chose). After some tweak I found it was the processor micro-sleep that was the problem.

:arrow_right: Go to the power alimentation panel (I invented the name because in fact I have the french version of Windows), to change the energy plan of your PC. You don’t need to set high performance, it will prevent clock change of the CPU and consume more power and generate more heat for nothing (and you don’t want to hear your CPU fan, right?). Go into the advanced setting and find the CPU settings. There is a minimum state. In the normal plan the minimum state is at 5%. Put it at some higher number, I used 30%.

In Ardour you’ll instantaneously see the DSP usage drop. Because there is no more time to wait for the CPU to wake up from micro sleep, you have more time to process the signal. The processing now takes place in real time with no interruption.

If you still have trouble, you can:

  • set a higher minimum
  • modify Ardour operating system priority
  • use a lower sample rate for your project

I hope this was helpful