I know it would ruin the joke, but there should be some notice to turn up your volume. My speakers were muted, so I didn't realize I was missing anything until I saw the HN comments.
Definitely made me chuckle once I got the full experience.
It would be nice if there was a way to check the system audio volume via the web audio API. Then you could display a notice only if the volume is too low or too high. Alas, no such functionality currently exists without browser plugins.
I would agree that it would be nice to have an option to check if sound is not muted, but not to actually check the volume.
One of the worst user experiences I have experienced in the recent years is those notifications telling me that my volume is too loud. But such assumption most of the time is totally wrong as it is hardware dependent. Especially when you use additional speakers or headphones with their own volume regulators. On windows 8.1, every time you make your volume higher than 40%, you will be interrupted with notification about high volume causing hearing loss, similar tactics is used in android.
So in my opinion checking system volume to determine whether the sound is too low or too high is completely wrong approach.
it's hardware dependent, but I was ruining my hearing until I realized that in fact I don't need to turn up the volume from those notifications. Ears can work much like eyes do in the dark/quiet and adapt.
I wonder what the potential output volume range for unpowered headphones is for the volume set at, say, 40% in windows.
Well 40% is enough volume for properly hearing what comes out of the headphones speakers. But I'm talking about using headphones with their own volume adjustment or external speakers. If you try to watch a movie on most laptops using their native speakers, you will definitely not going to hear a dialogue at 40%. You will want to make it play louder, but once you try to adjust it you'll be interrupted by this notification.
I understand that people might need to realize that loud volume can damage their hearing, but I'm advocating that arbitrary checking of the system volume is not a proper way to do it.
I have some cheap unpowered Sennheiser headphones, and 20% in Windows is plenty loud enough for gaming. At full volume I can have them sitting on my desk and still hear everything clearly :D
Percent of volume says nothing about the line level, which is hardware specific. Since audio jacks were invented before we had industry standards bodies, there is no specification that hardware manufacturers have to meet. Many provide around 1Vpp, or -10dbV, at max volume, but it's going to vary from device to device. The impedance of the headphones are going to affect the SPL as well, and none of it is likely calibrated to any high degree of certainty unless you're buying professional equipment.
As others have stated, that's not necessarily going to do the trick, either. I'll make a huge leap here and guess that you're a primarily laptop user. Don't forget about desktop users.
I use an external amplifier connected through a front-panel IO port. Both the front panel and my amplifier have volume knobs. I don't use the system try to control my levels. I know I'm an odd case, but surely there many people out there with basic integrated speaker setups with volume knobs.
The simplest solution would be to visually indicate to your user as early as possible that your page uses audio. If it is designed to be particularly loud or quiet, you can mention that, too.
I don't know why there's so much empty space at the bottom but I did notice my phone allowed me to continue playing the song if I dragged up from the bottom. It's four full minutes of sweet, relaxing elevator music.
> This document extends the Web platform with the ability to direct audio output to non-default devices, when authorization is given. Authorization is necessary because playing audio out of a non-default device may be unexpected behavior to the user, and may cause a nuisance. For example, suppose a user is in a library or other quiet public place where she is using a laptop with system audio directed to a USB headset. Her expectation is that the laptop’s audio is private and she will not disturb others. If any Web application can direct audio output through arbitrary output devices, a mischievous website may play loud audio out of the laptop’s external speakers without the user’s consent.
> To prevent these kinds of nuisance scenarios, the user agent must acquire the user’s consent to access non-default audio output devices. This would prevent the library example outlined earlier, because the application would not be authorized to play out audio from the system speakers.
> The default audio output device is always authorized.
My thought exactly when the music started playing. But I think this could better be implemented in the browser/ via an extension. You can't trust users to follow a convention all the time.
In some browsers (e.g. Chrome), clicking the elevator and leaving the tab to make it inactive would play the tune indefinitely (the chime plays only when the tab is activated again). If you enjoyed the tune, well, you've got something to do now.
This is the reason I'm not using AdBlock etc. The risk of ruining legit sites is too big and the problem is you seldom realise it was actually dysfunctional due to AdBlock.
Lol. Can't there be buttons 1..18 for the different levels, and if multiples are picked, sound on each one, doors opening (short time to read the paragraph), then another comes.
That was hilarious. I have hacked something like this a while ago (autoscrilling from bottom to top), but without the elevator-references, and the music...
Hm, I must have gotten a js error because I didn't see an elevator button, and until I checked HN comments, I had assumed this was a social experiment/joke to see how far people scroll to find nothing. I tried it couple times, too..
This was a lot of fun. I don't care that it isn't hyper-practical, or a jQuery plugin may or may not exist. We aren't that serious about ourselves, are we?
While I dislike websites playing sudden sounds as much as the next guy, it should serve as a reminder to keep your computer muted at all times or have a pair of headphones plugged in when you share office space.
If I ever go postal in the open plan office here, then it's going to be over random noise (skype sounds being the worst culprit) escaping someone's unmuted laptop.
I don't see why you would create a javascript lib for such a simple task, perhaps a jQuery plugin would have been sufficient. Oh wait, it already exists. Perhaps you were just bored?
Definitely made me chuckle once I got the full experience.