Speakers sound quality

Speakers are the same between Realtek and Tempo.
If you want to apply an EQ that is reasonably flat I would suggest the following:

Frequency Filter Gain Q
6000 Hz Highshelf 4.85 Attenuation -20db/decade
5272 Hz Bandpass 3.83 2.636
2016 Hz Bandpass 4.85 0.672
1250 Hz Bandpass -3.49 4.167
600 Hz Bandpass -8.0 4
80 Hz Highpass 0 Attenuation -20db/decade

This will be flat but not super loud. There is a small notch around 5272Hz due to the front port structure.
If you wanted a minimal eq, but to boost the high end due to the notch you can play around with the Highshelf and the notch at 5272hz. This will improve the clarity.

The highpass at 80Hz is just to limit DC to the drivers.
The Notch at around 600Hz is around the Fo of the drivers, but you could leave this off if you just want your audio to be louder.

@Graham_Lane Cranking the Dynamic boost is going to compress the audio which will increase the THD, but to many people will sound “better”. I vaguely remember some audio experiments that showed that if you increase the volume slightly in AB testing, that people will usually think the louder version sounds better.

If you want to get even fancier you could enable a multi-band compressor/compander and have separate EQ for different bands.

Edit: dB->Hz

10 Likes

@Kieran_Levin Thanks for this. (BTW, I think you meant 80 Hz, not 80db.)

I am new to audio EQ, and am not sure how to translate this to EasyEffects, specifically “Bandpass” and Q. I assume Q is Quality, but don’t know how to set it to -20db/decade.

Could someone translate this to EasyEffects, and also provide a “louder” version. Thanks again.

1 Like

@Kieran_Levin should the filter at 6kHz not be a high-shelf-filter? because when you use a highpass filter at 6kHz there is no more sound below 6kHz, at least when I use it, my graph in EqualizerAPO shows that as well and it does make sense that a highpass only lets high frequency pass.
I ask because there are probalby other people that get confused and the filters you posted here, do a lot IMO, I wanted to measure it myself as I did with other laptops before, then I saw this and it was already more difference than I got with other laptops.
Saved me time and got a better result already. So I can only say thank you!!!

edit: for everyone that needs the config for EqualizerAPO:

Preamp: -7.3 dB
Filter: ON HS Fc 6000 Hz Gain 4.85 dB
Filter: ON PK Fc 5272 Hz Gain 3.83 dB Q 2.636
Filter: ON PK Fc 2016 Hz Gain 4.85 dB Q 0.672
Filter: ON PK Fc 1250 Hz Gain -3.49 dB Q 4.167
Filter: ON PK Fc 600 Hz Gain -8 dB Q 4
Filter: ON HP Fc 80 Hz

(these are the values from Kieran_Levin - hope the first filter is the correct one)

4 Likes

Just because I haven’t seen this mentioned in the thread yet- my DIY edition had weird “clipping” or “distortion” at high volumes. Turned out to be caused by the WiFi antenna cable hitting the right speaker and rattling (because the speakers move a nontrivial amount inside the case for bass!)

2 Likes

@Bingo you are correct, 6k should be a high shelf.

2 Likes

I put in the EQ into Easyeffects, and the sound quality is improved. But still, these are about the most unpleasant speakers I have had on any laptop. Framework really needs to up their game in this area.

+1 to this or perhaps a tuned preset that can be imported directly into EasyEffects?

1 Like

After reading this post, I am curious, could we put this as a default setting directly into the Framework firmware instead? So rather than installing software and tweaking it manually, users can get a much better audio experience out of the box.

5 Likes

Have anyone gotten their 12th Gen and compared the sound? Does the EQ settings apply?

2 Likes

Can you please screenshot? I will want to use it when I get mine, but I’ll probably not know what I’m doing. Thanks!

Hello!

I’ve really been enjoying the discussion here. I made EasyEffects presets for some of the configs presented in this thread:

You can simply import these into EasyEffects, and they should just work.

The names of the presets are the names of their creators on this thread. Please let me know if corrections are needed.

10 Likes

@ari Thank you for this link. I’m particularly happy with the lappy_mctopface preset.

For anyone who’s interested, I also found these presets. They’re not specific to the Framework, but someone might find them useful for either the internal speakers, or external speakers they might have connected:
EasyEffects Presets

4 Likes

I just want to say “Thank you” to everyone involved. I got the lappy_mctopface.json, loaded it into easy effects, created a “default” (empty) one, set the auto-loading of output presets based on the output device, and it’s all perfect now and I don’t even have to think about it.

The quality is much, much better then it was before. I mean - these are still laptop speakers, but they sound decently for what they are.

3 Likes

Just tried out EasyEffects in Pipewire in Arch Linux for the first time. Using the lappy_mctopface.json preset from the github link above. Why oh why did I wait so long to try this? Speakers did not gain any new capabilities, but a lot of their “bad behavior” and “imbalance” is cleaned up in the frequencies they can actually produce…

Any news on the 80 db speaker upgrade? Framework | Speaker Kit

I assume these are the better speakers from the Chromebook edition, but being backported to the rest of the Framework chassis units already out there? Any ETA?

4 Likes

For the Laptop spaces, manufacturers actually optimise the firmware for power efficiency/audio EQ etc, so I guess Framework is probably new in this. Hoping they can maybe integrate this as part of defaults.

I am eagerly waiting for this too.

For anyone who’s interested, I added the “Loudness” effect to the “lappy_mctopface” Preset, keeping the effect’s default settings:
Screenshot from 2022-10-16 21-06-54

The effect increases the speakers’ output volume without any perceived distortion (at least to my ears). For me, these combined settings dramatically improve the overall sound quality and max output of the stock framework speakers.

Still looking forward to purchasing the 80db speakers when they’re available.

2 Likes

I tried to improve the sound by doing the following:

.) Took the frequencys from @Kieran_Levin to get a “flat” base
.) Compared the sound to my Neumann KH80 in my studio
.) Played around to get as close as possible. Which is not very close, of course…

But the speakers sound better now, at least to me.
Would anybody be so kind and try my preset?

Thanks!

8 Likes

@Philonmetal Very nice preset! Thank you for contributing this! I consider your preset and @Lappy_McTopface’s, provided by @ari in his presets repo, my two top contenders for regular use. I added the Loudness effect to your preset, and am very happy with the result. I believe adding that effect squeezes the most output possible from the framework speakers.

3 Likes

Can you reload file to other hosting? I can’t download it.

When im home again, i will upload the file to another hosting site.
In the meantime you can copy this into a blank .json file:

Edit: Google Drive Link

FrameworkStudio.json
{
    "output": {
        "blocklist": [],
        "equalizer": {
            "balance": 0.0,
            "bypass": false,
            "input-gain": 0.0,
            "left": {
                "band0": {
                    "frequency": 100.0,
                    "gain": 0.0,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 1.0,
                    "slope": "x4",
                    "solo": false,
                    "type": "Hi-pass"
                },
                "band1": {
                    "frequency": 150.0,
                    "gain": 4.02,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 3.0,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band2": {
                    "frequency": 600.0,
                    "gain": -5.07,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.000000000000008,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band3": {
                    "frequency": 1200.0,
                    "gain": -3.49,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.17,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band4": {
                    "frequency": 2000.0,
                    "gain": 1.43,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.0,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band5": {
                    "frequency": 5300.0,
                    "gain": 3.84,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 2.64,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band6": {
                    "frequency": 6000.0,
                    "gain": 4.02,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.36,
                    "slope": "x1",C
                    "solo": false,
                    "type": "Hi-shelf"
                },
                "band7": {
                    "frequency": 7500.0,
                    "gain": -2.09,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 3.0,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band8": {
                    "frequency": 8000.0,
                    "gain": 2.01,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.36,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band9": {
                    "frequency": 900.0,
                    "gain": -4.12,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 5.909999999999967,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                }
            },
            "mode": "IIR",
            "num-bands": 10,
            "output-gain": -1.5,
            "pitch-left": 0.0,
            "pitch-right": 0.0,
            "right": {
                "band0": {
                    "frequency": 100.0,
                    "gain": 0.0,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 1.0,
                    "slope": "x4",
                    "solo": false,
                    "type": "Hi-pass"
                },
                "band1": {
                    "frequency": 150.0,
                    "gain": 4.02,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 3.0,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band2": {
                    "frequency": 600.0,
                    "gain": -5.07,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.000000000000008,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band3": {
                    "frequency": 1200.0,
                    "gain": -3.49,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.17,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band4": {
                    "frequency": 2000.0,
                    "gain": 1.43,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.0,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band5": {
                    "frequency": 5300.0,
                    "gain": 3.84,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 2.64,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band6": {
                    "frequency": 6000.0,
                    "gain": 4.02,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.36,
                    "slope": "x1",
                    "solo": false,
                    "type": "Hi-shelf"
                },
                "band7": {
                    "frequency": 7500.0,
                    "gain": -2.09,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 3.0,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band8": {
                    "frequency": 8000.0,
                    "gain": 2.01,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 4.36,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                },
                "band9": {
                    "frequency": 900.0,
                    "gain": -4.12,
                    "mode": "RLC (BT)",
                    "mute": false,
                    "q": 5.909999999999967,
                    "slope": "x1",
                    "solo": false,
                    "type": "Bell"
                }
            },
            "split-channels": false
        },
        "plugins_order": [
            "equalizer"
        ]
    }
}
2 Likes