LG Tone Infinim HBS-910 Bluetooth Headphones

In This earlier posting, I had written that my LG Tonepro HBS-750 Bluetooth Headphones had permanently failed. Today, I received the HBS-910 headphones that are meant to replace those. And as I’ve written before, it is important to me, to benefit from the high-quality sound, that both sets of headphones offer.

I’m breaking in the new ones, as I’m writing this.

There exists a design-philosophy today, according to which music-playback is supposed to boost the bass and attenuate the highest frequencies – the ones higher than 10kHz – so that the listener will get the subjective impression that the sound is ‘louder’, and so that the listener will reduce the actual signal-level, to preserve their hearing better than it was done a few decades ago.

1. The lowest-frequency (default) setting on the equalizer of the headphones does both of those things.
2. The next setting stops boosting the bass.
3. The third setting, stops attenuating the treble.

Overall, I get the impression that the highest frequencies which the HBS-910 can reproduce, extend higher, than what the HBS-750 was able to reproduce.

An Observation about the Discrete Fourier Transforms

Discrete Fourier Transforms, including the Cosine Transforms, tend to have as many elements in the frequency-domain, as the sampling interval had in the time-domain.

Thus, if a sampling interval had 1024 samples, there will be as many frequency-coefficients, numbered from 0 to 1023 inclusively. One way in which these transforms differ from the FFT, is in the possibility of having a number of elements either way, that are not a power of 2. It is possible to have a discrete transform with 11 time-domain samples, that translate into as many frequency-coefficients, numbered from 0 to 10 inclusively.

If it was truly the project to compute an FFT that has one coefficient per octave, then we would include the Nyquist Frequency, which is usually not done. And in that case, we would also ask ourselves, whether the component at F=0 is best computed as the summation over the longest interval, where it would usually be computed, or whether it makes more sense then, just to fold the shortest interval, which consists of 2 samples, one more time, to arrive at 1 sample, the value of which corresponds to F=0 .

Now, if our discrete transform had the frequency-coefficients


G(n) = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}




Then the fact could be exploited that these transforms tend to act as their own inverse. Therefore I can know, that the same set of samples in the time-domain, would constitute a DC signal, which would therefore have the frequency-coefficients


F(n) = {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}




If this was taken to be a convolution again, because the discrete transforms are their own inverse, it would correspond to the function


F(n) · S(m) == S(m)




We would assume that multiplication begins with element (0) and not with element (10). So I have a hint, that maybe I am on the right track. But, because the DCT has an inverse which is not exactly the same, the inverse being the IDCT, the next question I would need to investigate, is whether indeed I should be using the DCT and not the IDCT, to turn an intended set of frequency-coefficients, into a working convolution. And to answer that question, the simple thought does not suffice.

The main advantage with the DCT would be, that we will never need to deal with complex values.

Dirk

Playing Games With Numbering

There is an art-form which seems to exist, in the design of graphical equalizers, to choose channel-frequencies that are approximately spaced one octave apart, yet which will produce numbers that ‘look clean’ in decimal. For example, a sequence of frequencies is possible that goes 150 Hz, 300 Hz, 600 Hz, 1.2 kHz, 2.4 kHz, 5 kHz, 10 kHz, 20 kHz, resulting in an 8-band equalizer. Notably, in this example, 2.4 kHz will be treated as if it was 2.5 kHz as well, so that the next-higher band, at 5 kHz, will seem to be an exact octave higher.

This will not work as well, with a 20-band equalizer.

Dirk

(Edit 03/26/2017 : )

Also, the difference between 2.4 and 2.5 is less than 1/20. Anything further-off will produce a hot-spot. So below 150 Hz, we might be ill-advised to put 80 instead of 75, because they would be too close by more than 1/20. I would actually suggest, 76 – 38 – 20 . Mind you, that 20 Hz suggestion would be off by 1/19, but who hears those frequencies so accurately anyway?

If a software-equalizer possesses GUI controls that correspond to approximate octaves, or repeated 1-2-5 sequences, it is entirely likely to be implemented as a set of bandpass filters acting in parallel. However, the simplistic bandpass filters I was contemplating, would also have required that the signal be multiplied by a factor of 4, to achieve unit gain where their low-pass and high-pass cutoff frequencies join, as I described in this posting.

(Edit 03/23/2017:

Actually, the parameters which define each digital filter, are non-trivial to compute, but nevertheless computable when the translation into the digital domain has been carried out correctly. And so a type of equalizer can be achieved, based on derived bandpass-filters, on the basis that each bandpass-filter has been tuned correctly.

If the filters cross over at their -6db point, then one octave lower or higher, one filter will reach its -3db point, while the other will reach its -12db point. So instead of -12db, this combination would yield -15db.

The fact that the signal which has wandered into one adjacent band is at -3db with respect to the center of that band, does not lead to a simple summation, because there is also a phase-shift between the frequency-components that wander across.

I suppose that the user should be aware, that in such a case, the gain of the adjacent bands has not dropped to zero, at the peak of the current band, so that perhaps the signal will simplify, if the corner-frequencies have been corrected. This way, a continuous curve will result from discrete settings.

Now, if the intention is to design a digital bandpass filter with greater than 6 db /Octave falloff curves, the simplistic approach would be just to put two of the previous stages in series – into a pipeline resulting in second-order filters.

Also, the only way then to preserve the accuracy of the input samples, is to convert them into floating-point format first, for use in processing, after which they can be exported to a practical audio-format again. )

(Edit 03/25/2017 :

The way simplistic high-pass filters work, they phase-shift the signal close to +90⁰ far down along the part of the frequency-response-curve, which represents their roll-off. And simplistic low-pass filters will phase-shift the signal close to -90⁰ under corresponding conditions.

OTOH, Either type of filter is supposed to phase-shift their signal ±45⁰, at their -3db point.

What this means is that if the output from several band-pass filters is taken in parallel – i.e. summed – then the center-frequency of one band will be along the roll-off part of the curve of each adjacent band, which combined with the -3db point from either its high-pass or its low-pass component. But then if the output of this one central band is set to zero, the output from the adjacent bands will be 90⁰ apart from each other. )

(Edit 03/29/2017 :

A further conclusion of this analysis would seem to be, that even to implement an equalizer with 1 slider /Octave properly, requires that each bandpass-filter be a second-order filter instead. That way, when the signals wander across to the center-frequency of the slider for the next octave, they will be at -6db relative to the output of that slider, and 180⁰ phase-shifted with respect to each other. Then, setting the center slider to its minimum position will cause the adjacent ones to form a working Notch Filter, and will thus allow any one band to be adjusted arbitrarily low.

And, halfway between the slider-center-frequencies, the gain of each will again be -3db, resulting in a phase-shift of ±90 with respect to the other one, and achieving flat frequency-response, when all sliders are in the same position.

The problem becomes, that if a 20-band equalizer is attempted, because the 1 /Octave example already required second-order bandpass-filters, the higher one will require 4th-order filters by same token, which would be a headache to program… )