A better title for this would be "Asahi introduces advanced speaker DSP to Linux" as that is the real significance of this new development.<p>I imagine it will be incorporated into other distros soon as a result.
For DSP, we already can do that using something like Easy Effects[1][2].<p>Unfortunately, this isn't <i>shippable</i> for distros. The biggest issue is acquiring proper impulse-response data. In theory, it has to be tuned per-model, and turning basically requires pro-grade equipment and a recording studio. However, apparently many people assume Dolby is using the same profile for all laptops, so just copy-paste the same file here and there. Not really sure which is the real case.<p>Anyways, Asahi can ship DSP turned on by default because the distro is specific to Apple. That's how Apple boosts the quality of its hardware, and the same applies to a distro dedicated to it.<p>[1]: <a href="https://github.com/wwmm/easyeffects">https://github.com/wwmm/easyeffects</a><p>[2]: <a href="https://stackoverflow.com/questions/27122564/which-version-of-linux-has-support-for-dolby-advanced-audio-v2" rel="nofollow noreferrer">https://stackoverflow.com/questions/27122564/which-version-o...</a>
A demonstration of how important the speaker DSP is:<p><a href="https://social.treehouse.systems/@marcan/111230163766956867" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111230163766956867</a>
Sound on Linux is the one thing that seems to be more confusing 25 years later. I can remember scouring Usenet/mailing lists trying to research which soundblaster card to get for the best experience. When I compare that to wrapping my head around Pipewire+Pulseaudio+Jackd+*effects I feel like I know way less about sound on Linux now. I don't do any professional audio stuff I just want to listen to music on my Linux computers and occasionally play the sound throughout the house. Whenever I start to look into doing it "the right way" it is always overwhelming.
They also added webcam support and an installer for the M2!<p>If the status page is to be believed, it’s getting extremely close to daily driver status for me.
> These are all techniques that are in wide use in consumer microspeaker systems in tablets and phones, though sadly not common on laptops from most non-Apple brands.<p>Dell / Realtek / MaxxAudio (not sure who to attribute it to) offers such an implementation with mixed results. Some people go to great lengths to remove it and replace with something that offers a flat response -- personally, I didn't mind the alterations it introduced and the speakers "feel" quieter without it installed.
They really go the extra mile, and then another mile on top of it. I guess the only "main" feature remaining essentially all other laptops have is external screen support.
i want to buy a used apple m1 machine just to use asahi. (coming from a linux guy who has never owned an apple mac machine)<p>i have seen all the "tables showing compatibility" but how is it in real life? i should i buy a machine solely to daily drive asahi?
Seems really terrible engineering to design a laptop where malware can destroy the speakers.<p>I guess there's reason to wonder whether malware might also be able to set the whole machine on fire.
@marcan wrote a lot about the DSP work and why it's important / what it does. He also wrote about bugs across the linux audio stack.<p><a href="https://social.treehouse.systems/@marcan/111379933565349212" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111379933565349212</a><p><a href="https://social.treehouse.systems/@marcan/111369113203280839" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111369113203280839</a><p><a href="https://social.treehouse.systems/@marcan/111368139961624028" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111368139961624028</a><p><a href="https://social.treehouse.systems/@marcan/111363323102625920" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111363323102625920</a><p><a href="https://social.treehouse.systems/@marcan/111356347520217702" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111356347520217702</a><p><a href="https://social.treehouse.systems/@marcan/111351807108120657" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111351807108120657</a><p><a href="https://social.treehouse.systems/@marcan/111322854564301468" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111322854564301468</a><p><a href="https://social.treehouse.systems/@marcan/111312763506327704" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111312763506327704</a><p><a href="https://social.treehouse.systems/@marcan/111305404286878529" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111305404286878529</a><p><a href="https://social.treehouse.systems/@marcan/111275789631652315" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111275789631652315</a><p><a href="https://social.treehouse.systems/@marcan/111274712520670628" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111274712520670628</a><p><a href="https://social.treehouse.systems/@marcan/111274302586522319" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111274302586522319</a><p><a href="https://social.treehouse.systems/@marcan/111230163766956867" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111230163766956867</a><p><a href="https://social.treehouse.systems/@marcan/111230007884019185" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111230007884019185</a>
I hadn't heard of uclamp before, mentioned as a way to save power on the compute intensive DSP work. Found this tweet by Marcan that seems to indicate it's a way to pin the process to e-cores. <a href="https://social.treehouse.systems/@marcan/111363323102625920" rel="nofollow noreferrer">https://social.treehouse.systems/@marcan/111363323102625920</a>
Huh, is it really true this is the first? I figured this was just being done in hardware in some modern laptops instead of software. At least for basic stuff like EQ, if not compressor/etc. Otherwise, what's with all of the DSP stuff modern Intel laptops need on Linux, what with Sound Open Firmware and whatnot?<p>(And if not that, I am mildly surprised ChromeOS/Chromebooks don't do much of this either.)
For the sake of completeness, this problem is not at all endemic to Apple’s M hardware.<p>Some of the older Thinkpads — W510, T400, and T410, so beloved and praised by Linux enthusiasts, used to suffer from the same problem — their speakers could get destroyed after a few minutes of playing audio. Just wondering if Lenovo’s drivers for Windows 7 included similar safeguards.
Linux had speaker [0] support since longer than I can remember. Reading the headline I was expecting something about software using it to create less low quality output. But it seems it is about modifying the "modern" audio output to work around limitations of laptop speakers.<p>[0] <a href="https://en.m.wikipedia.org/wiki/PC_speaker" rel="nofollow noreferrer">https://en.m.wikipedia.org/wiki/PC_speaker</a>
> This allows the speakers to be driven to much higher peak levels than the worst-case safe volume level, greatly extending their dynamic range.<p>So <i>software devs</i> are going to drive the speakers past the <i>worst-case</i> safe volume level that was presumably set by <i>hardware engineers</i>? And they are going to do it with software running in a OS that isn't realtime safe?<p>Anyone else see a problem here?<p>Also-- does anyone know what Asahi is using to test the safety of what they're doing?
everything about asahi feels like it's an apple's product: everywhere you look - it is always "amazing"!<p>but so far no finally usable implementation exists even for m1 macbooks and they age quickly, and I doubt people will see anything usable in the end (yeah, you might get a fully working Linux on your old dusty m1 when you buy m7, happy?).<p>so far it is achievements for the sake of achievements
This seems to be a problem being solved at too low a level of abstraction. It should be able to use the same architecture for performing say a 7.1 to binaural headphone 2-channel output, all by only routing and processing signals. Perhaps this is how it's being solved, but having "speaker" so hardcoded in the project work may not be the case, or seemingly so.
This article is a bit bombastic and light on details: "modern audio laptop subsystem", "advanced DSP", "the first desktop Linux platform with integrated advanced speaker DSP", "driving Linux desktop audio forward a couple decades".... while as far as I can tell there are exactly 0 new things described.<p>> These [DSP profiles] are all techniques that are in wide use in consumer microspeaker systems in tablets and phones, though sadly not common on laptops from most non-Apple brands.<p>As anyone who has bought a laptop less than 10 years old can attest, practically _all_ laptops ship with "DSP effects for tiny speakers", to varying results. Microsoft has even standarized an API in Windows 10/11 so that you literally can shop for different implementors in the Windows store (e.g. Sonic, B&O, etc.).<p>> EasyEffects<p>Article itself mentions previous work on DSP effects...<p>> we also have the world's first (as far as we know) open source "smart amp" implementation.<p>Old Nokia devices shipped with xprot which is about a decade old. Speaker protection, DSP, noise cancelling, etc. back when pulseaudio was just renamed from polypaudio. <a href="https://blog.linuxplumbersconf.org/2009/slides/Jyri-Sarha-audio_miniconf_slides.pdf" rel="nofollow noreferrer">https://blog.linuxplumbersconf.org/2009/slides/Jyri-Sarha-au...</a>