HQPlayer Embedded new feature - equal loudness curves

Hi @jussi_laako,

So I have been really excited to try the new loudness plugin, but it seems to have a number of serious bugs/issues. This is with HQP Desktop version 4.13.1 on Mac.

  1. The sound goes screwy the closer you get to the upper range bound. And at the range bound itself, a super loud pop and no sound whatsoever. eg. if I set the upper range bound to -10db as per attached “loudnessOnly” matrix, when i change volume it starts slightly popping at -13, -12, then louder at -11 and then a very loud one at -10 followed by complete silence, even though track is still moving forward. When i then move up to -9db another loud pop before music starts playing again. Same in the reverse direction. Music simply does not play right at the upper bound db level. So far the only solution I have is to set the upper range bound higher than whatever max volume I will use so I don’t cross this point and get the nasties.

  2. even under that circumstance, as one gets closer to the upper range the treble is getting affected and lowered. Even with treble corner set to 0db or 1db gain, there is an obvious large attenuation of the treble/high shelf compared to loudness disabled. I can hear this by switching in realtime between my attached test “loudnessOnly” and “nothing” matrix profiles in the HQP4Client app. The bass seems to attenuate as expected (I think). And further away from the upper bound I don’t notice this issue with the treble/high shelf.

  3. Starting playback with the “nothing” matrix with no loudness plugin enabled, and then switching to the “loudnessOnly” matrix with loudness enabled crashes HQP Desktop every single time. 100% reproducible.

I don’t know if I am doing something wrong but I have spent hours trying to simplify my experiments and can reproduce these issues at will. The matrix screen shots attached are just for testing purposes - in reality I was hoping to use 10db on low shelf and 0 - 5 on high shelf, along with IIR PEQ on each channel. I have also have those real-world, more complicated matrices but did not include them here in order to isolate the process/experiments.

Very frustrating. Has anyone else experienced similar issues??


I’ll check if I can reproduce the problems you describe.

1 Like

Thank you. I know you aren’t terribly enthusiastic about this new feature but it has a ton of value for some of us.

Yes, all the official features are naturally supposed to work correctly.

@jussi_laako Just to ensure you can replicate the simplest case, I started with a vanilla HQPD setup by removing my settings.xml file. And then restarted and simply enabled the default loudness process and enabled the matrix in upper left, as per attached. Directly played a file from disk to remove Roon from the equation. The default loudness settings have an upper range bound of -20db, and as I change volume using HQP dial from 20.1 → 20.0 → 19.9 I get loud pops and no sound at 20.0. Note that there is no issue when crossing over the lower range bound of -60

1 Like

I found and fixed the crash case. And made bunch of other fixes and improvements to the loudness control. Will be included in next release.

4 Likes

Thanks. Were you not able to replicate the behaviors when crossing the upper range bound?

1 Like

Hi @jussi_laako I have gone back to trying out the loudness control. The issues with loud pops when crossing the upper threshold have been fixed but I seem to be having a more fundamental problem - the bass loudness level seems to be applied at maximum amount no matter where I am within the volume range defined. Maybe I am missing something, but I was assuming that the gain of the low shelf would be applied in a linear fashion based on the current place within volume range.

Attached are three matrix pipeline examples. I tested them by switching back and forth in realtime with HQPClient.

  1. The TestLoudness15db pipeline has a volume range of 50db from -53 to -3, with a maximum gain of 15db. Thus at a volume level of -23, I would assume that the gain would be 40% of the 15db = 6db gain and would the same as the TestIIR6db pipeline. (with slope and frequency fixed at 0.5 and 150hz no matter what). But in fact there is a lot more bass gain than 6db - I am pretty sure it’s the full 15db.

  2. To test this in a different manner, I created another TestLoudness6db pipeline that had the maximum gain reduced from 15db to 6db. Sure enough, this loudness pipeline sounded the same as the TestIIR6db pipeline no matter what the volume was currently at.

Please let me know if I’ve got something wrong here … thanks. Note that I am not using any treble boost, with gain = 0db.



Not much off, but I have made some fixes for next release.

1 Like

Hi Jussi, any news, plans for improving the loudness function and maybe putting some basic template to the manual as a starting point (like the before discussed RME plots)
Would really be A nice standalone feature for HQPlayer (plus be a good contribution to hearing loss health prevention :wink: )

I think the current default is pretty sensible?

Which kind of improvement are you thinking about?