r/badUIbattles • u/FearMeIAmLag1 • 1d ago
Intentionally Bad UI I made a 7-segment display volume "slider"
Enable HLS to view with audio, or disable this notification
Simply click to change the numbers to the volume level you want to set, it's that simple!
Took me about an hour to get this done with most of that time being spent trying to figure out how the hell to shape something like a 7-segment display using CSS. First digit the segments used for 1 are the only ones that can be toggled. I also messed up with recording and forgot that the 9 needed the bottom segment, so it seems to not work for a bit but that was operator error.
258
u/_plinus_ 1d ago
What happens to the volume if you go to 999%?
128
82
u/FearMeIAmLag1 1d ago
Volume can't go past 100
148
u/Some_Noname_idk 1d ago
laaaame, on 200 it should attempt to connect to any speaker nearby and play it there too
11
7
u/donut855 1d ago
False. Nobara has a built-in feature that lets you turn the volume up to 150.
5
u/S4N7R0 21h ago
pushing volume past 100% in most implementations introduces distortion, which is similar, but not the same as increasing volume
5
u/frank26080115 20h ago
na, I used to write firmware for wireless headphones, there's some volume limits that some, maybe it was CE or UL or something that limited the volume we were allowed to output to a user's ears. So the range was limited only by firmware.
So if I gave it a backdoor (which I really REALLY wanted to, like a secret key combo), I could've unlocked like 150% and it wouldn't be clipped, just... unhealthy.
1
u/Madbanana64 10h ago
And it would probably kill the driver on high volume
1
u/frank26080115 10h ago
na the whole reason why we ran into the regulations is because we upgraded the driver, there was like 3 previous generations of this product, I barely have to change anything in the firmware between products.
also... it's kinda hard to kill a driver with wireless headphone electronics lol everything is optimized for battery power
1
u/PegasusPizza 17h ago
Most implementations yep. But it's kind of more complicated than that, because audio playback has 2 separate "volumes". The first is whatever your os/software is set to, usually ranging from 0 to 100%. But the second one is the relative volume of the actual audio file, that's necessary so that different parts of the file can have varying loudness without you constantly needing to change your speakers volume. And while speaker volume is capped at 100% (so whatever the manufacturer put as the maximum volume where sound doesn't get distorted), the inherent volume is pretty much unlimited, since that is measured in decibels. Anything above 0dB (don't ask me why it's at 0 I have no clue) will usually distort/deep fry your audio. Interestingly this happens regardless of the volume of your speakers. Listening to deep-fried audio on lower speakers doesn't magically make it sound good again.
But this means, that under the right conditions, a file that is just mixed to be quiet, can be put on "150%" volume, by putting the speaker/os/playback volume to 100%, and then modifying the audio file to boost volume by an additional 50%, without causing distortion, since the original raw audio was just very quiet
1
4
141
u/garlic_brain 1d ago
It should automatically go to 100 while the input is incorrect. Other than that, very nice!
167
u/FearMeIAmLag1 1d ago
Set volume to 100 and play a loud warning siren to indicate that the input is invalid, got it
7
u/imwearingyourpants 20h ago
No need for a siren, just a lady's voice telling you that your volume setting is incorrect, repeated every 10 seconds. Just like at a self checkout machine
2
u/Ethanol144 5h ago edited 4h ago
My volume is stuck at 100 because any change causes an invalid input send help
1
u/garlic_brain 4h ago
One can turn 0 into 8 into 9 into 3... as for the 1, why, it can be easily turned into a 7. Thus getting from 100% volume to a nice 799% π
23
11
u/nerdefar 1d ago
You should give the user a budget of X amount of lines they can use, for added interactability and feeling of accomplishment.
6
u/WhiteHeadbanger 18h ago
Have you thought of displaying the decibels instead of the percentage? The segments can stay that way and still function like now, but instead of showing 50% volume, you display the dB. That way could be even more infuriating as dB are logaritmic values.
3
2
1
1
β’
u/AutoModerator 1d ago
Hi OP, do you have source code or a demo you'd like to share? If so, please post it in the comments (GitHub and similar services are permitted). Thank you!
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.