Live data from Hacker News

Can *YOU* blow a PC speaker using only a Linux kernel driver?

nakedsecurity.sophos.com

11–20 of 48 posts

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#11

All I can say in my early Linux years is I tried to redirect /dev/cpu to my speakers (maybe something in /dev/snd), and it made one of the loudest sound my quite huge speakers could make. and volume wasn't so high.. I tried that because I was curious, since everything is a file, then surely cpu processing things to become a sound right ? :) (if you try this please make sure to get that into a pcm/wav file, and reduce…

lol I did this too eons ago. I don't think those speakers ever worked the same again after that.

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#12
post #3

Earlier quoted context omitted.

I wouldn't blame VLC. Here's the response from main VLC developer: https://news.ycombinator.com/item?id=7205875 I agree with them that when using the official API for whatever-X, you can't be blamed when X fails. Whatever X is, it should be built to cover all uses of its official interface. In the case of VLC, that X is the Dell sound hardware, which can't handle certain uses because of a power incompatibility betwee…

I always get a little nervous when really messed up audio gets sent through my semi-expensive speakers... "are they designed for this? did I just ruin them by playing a game with a buggy audio mixer?"

The audio mixer is dependent on the speakers, not the other way around. The speakers should be able to handle anything the mixer is able to throw at it. If they aren't, that's fault on the speakers' part.

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#13

Why don't all speakers have some circuitry that blocks any signal that could blow out the speakers? This has always seemed like an absurd state of affairs. It should not be possible to damage speakers by turning the volume too loud.

Because knowing exactly how much signal is too much is really hard.

When using the speaker, for some purposes you want absolutely max volume - that involves getting the physical parts of the speaker moving fast and far. Yet move them slightly too fast or too far or do that too often and it'll physically break. Odd effects like resonance mean two very similar looking signals can have widely different physical effects.

The ideal threshold might depend on numerous factors, like temperature and pressure, the age of the speaker, etc. Easy to do in software, impossible in hardware.

So why not just have more margin and make the line between 'loud enough' and 'breaking apart' wider? Well to do that your speaker would need to be physically larger, and space is very much in a premium in many devices.

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#14
Related: In the past Apple released a bad bootcamp sound driver for macbooks that caused windows to blow the laptop speakers. So technically you can blow some speakers with bad drivers

https://www.extremetech.com/computing/240309-apples-bootcamp... https://forums.macrumors.com/threads/15-2016-mbp-speaker-cra... https://www.reddit.com/r/apple/comments/5e1g37/warning_bootc...

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#15

Now I wonder if a piezo beeper would be more plausible or less plausible to blow?

piezo beepers typically have a resonance frequency where they are much louder.

Run it at that frequency for too long and the pizeoelectric coating delaminates from the metal disc of the speaker, leading to failure.

So, yes, you can probably blow them from software if you're willing to have it turned on for a few days continuously.

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#17
post #14

Related: In the past Apple released a bad bootcamp sound driver for macbooks that caused windows to blow the laptop speakers. So technically you can blow some speakers with bad drivers https://www.extremetech.com/computing/240309-apples-bootcamp... https://forums.macrumors.com/threads/15-2016-mbp-speaker-cra... https://www.reddit.com/r/apple/comments/5e1g37/warning_bootc...

The article seems to be about those tiny PC speakers which beep out BIOS codes, not those types of speakers used to output actual OS sounds and music

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#18
post #12

Earlier quoted context omitted.

I always get a little nervous when really messed up audio gets sent through my semi-expensive speakers... "are they designed for this? did I just ruin them by playing a game with a buggy audio mixer?"

The audio mixer is dependent on the speakers, not the other way around. The speakers should be able to handle anything the mixer is able to throw at it. If they aren't, that's fault on the speakers' part.

I think this is a grey area depending on your setup and listening preferences.

I have ~2kW of RMS amplification available to my floorstanding loudspeakers and subwoofer. There is a lot of DSP/EQ protection in between my HTPC and the mechanical drivers in the speakers.

Despite all of this, I have had incidents where the software glitches out and plays the un-decoded DTS/DD stream. If you have your volume set at or near reference when something like this happens, it can cause physical damage (to both your speakers and your ears).

(Audio) Engineering is all about balancing many complex factors. Mistakes happen and you can't address all of the edge cases without ruining the overall user experience. To say its the fault of the speaker is a little bit accusatory in my opinion. Can you ruin your car by taking certain actions? Certainly. Is this the car's fault? No.

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#19
post #3
post #2

Related, VLC Media Player destroyed Dell speakers thread https://www.dell.com/community/Laptops-General-Read-Only/VLC...

I wouldn't blame VLC. Here's the response from main VLC developer: https://news.ycombinator.com/item?id=7205875 I agree with them that when using the official API for whatever-X, you can't be blamed when X fails. Whatever X is, it should be built to cover all uses of its official interface. In the case of VLC, that X is the Dell sound hardware, which can't handle certain uses because of a power incompatibility betwee…

> That was clearly a bug on the X11 server side, too. A server should be built such that it's impossible for a client to crash it.

Not sure X11 itself was to blame for most crashes. GPU drivers tended to be hit or miss in the past and if I remember correctly even Microsoft had enough of that mess at some point and started to isolate them from its otherwise monolithic kernel, just so it could at least recover the session instead of blue screening.

Re: Can *YOU* blow a PC speaker using only a Linux kernel driver?

#20
One possible way to approach this would be to write a simple function generator (square wave) and sweep it across the audio spectrum, while also recording the speaker output level by way of a connected microphone. The resonant frequency of the speaker (or the microphone) should be observable as the peak amplitude seen by the mic. Once known, just set the generator to that frequency and blast away for a while.
Post reply on HN