mixxxdj / mixxx

Mixxx is Free DJ software that gives you everything you need to perform live mixes.
http://mixxx.org
Other
4.45k stars 1.27k forks source link

compensate for uneven perceived loudness of frequencies in waveforms #10220

Open mixxxbot opened 2 years ago

mixxxbot commented 2 years ago

Reported by: Be-ing Date: 2020-11-17T20:50:56Z Status: New Importance: Low Launchpad Issue: lp1904624 Attachments: [Bildschirmfoto vom 2020-11-18 10-29-52.png](https://bugs.launchpad.net/bugs/1904624/+attachment/5435547/+files/Bildschirmfoto vom 2020-11-18 10-29-52.png)


Some tracks with lots of subbass frequencies can be confusing on Mixxx's waveforms because it seems like more bass should be heard for what is shown on screen.

https://mixxx.zulipchat.com/#narrow/stream/109695-_support/topic/Strange.20Waveform.20analysis.20.5BSOLVED.5D

mixxxbot commented 2 years ago

Commented by: ronso0 Date: 2020-11-17T21:35:05Z


aahm, that issue was resolved after the user switched to a proper PA. Same issue is when the track has subbass frequencies you wouldn't hear on regular speakers, only with subwoofers. recently I experienced some tracks with rather innocent waveforms that blow me head of when played on our club PA

mixxxbot commented 2 years ago

Commented by: uklotzde Date: 2020-11-17T21:54:56Z


No, the issue in the title is not solved. Adjusting the display according to the "perceived loudness" is still worth considering.

mixxxbot commented 2 years ago

Commented by: ronso0 Date: 2020-11-17T22:32:50Z


Sure. But that Zulip discussion was resolved. It was started by a user missing bass on his laptop speakers...

@be mentioned not bass but subbass which can be much more powerful on linear PAs. How would mixxx try to compensate that? The waveform shows a huge red tide to show there's subbass and 99% of the users would wonder why their speakers can't reproduce it.

mixxxbot commented 2 years ago

Commented by: Be-ing Date: 2020-11-17T22:54:41Z


Subbass requires much higher SPL to sound the same subjective loudness as other frequencies, even if you have a great subwoofer. The waveforms should account for this. https://en.wikipedia.org/wiki/Equal-loudness_contour

mixxxbot commented 2 years ago

Commented by: daschuer Date: 2020-11-18T08:19:02Z


We need to careful not to mix two topics. We have on one hand the loudness contour of a human ear. This can be summed up as: "You only hear the full dynamic of track at full loudness on a reasonable PA"

This is not the topic here!

Mixxx already has the Loudness effect, to compensate that during dinner time or warm up.

For waveform analysis we use a Bessel LP/BP/HP filter for calculating waveform at cross over frequencies of 600 and 4000 Hz. This has the issue that the LP and HP have open ends and are not limited to the Hi-Fi frequencies of 20 Hz bis 20 kHz

At high frequency, we have a natural limit due to the sample rate of 22 kHz that limits the data to the Hi-Fi Range. (We will suffer the same issue if one is using 192 kHz tracks, btw).

This is not the case at the low frequency, we are even able to put out a DC signal. All PA-amplifier have a High-Pass filter usually with a cut of at 20 Hz that protect the circuits from high energy low frequency signals that are likely self destroying.

Some sub-woofer pretend to go down to 16 Hz, but that is IMHO more like a marketing trick than reality and serious measurement of a flat free-air responds curve.

tl;dr
We may consider to add a high-pass filter at 20 Hz to our waveform analysis to filter that out. 
However I am in doubt that we have tracks that have frequencies below 20 Hz. If we assume that there are none, such a filter would be pointless. 

Before putting work into that we need a real live example, else we will fix a phantom.

mixxxbot commented 2 years ago

Commented by: daschuer Date: 2020-11-18T09:31:21Z


The track of question was Pig & Dan - Road Trip (Original Mix) https://music.youtube.com/watch?v=HVikjattA40

at 0:30.7 a Chirp Base down to 30 Hz starts with very small harmonics @ 15 Hz.

I have applied a sharp 20 Hz 24 dB High-pass to it which as zero visual effect.

mixxxbot commented 2 years ago

Commented by: daschuer Date: 2020-11-18T09:31:40Z Attachments: [Bildschirmfoto vom 2020-11-18 10-29-52.png](https://bugs.launchpad.net/mixxx/+bug/1904624/+attachment/5435547/+files/Bildschirmfoto vom 2020-11-18 10-29-52.png)

mixxxbot commented 2 years ago

Commented by: daschuer Date: 2020-11-18T09:37:23Z


The top one is the filtered. You can see the removal of the harmonic 15 Hz base from the waveform outlines after the beat maker. In the top version the base curve is more symmetric.

I don't think here is something we can "fix".

mixxxbot commented 2 years ago

Commented by: Be-ing Date: 2020-11-18T13:23:14Z


We need to careful not to mix two topics.

You have brought in two different topics to this discussion. Neither are the original topic.

Mixxx cannot know at what SPL its output is being played at without that being measured. So we'd have to make an arbitrary assumption of how loud it is being played. Even a fixed arbitrary assumed output level would be closer to how it is perceived than pretending that all frequencies are perceived as the same loudness.

mixxxbot commented 2 years ago

Commented by: daschuer Date: 2020-11-19T13:04:20Z


Yes, right and we do the waveform analysis without actually playing the track. In addition, the original issue is solved.

So I think this should become "won't fix"