Listen to audio on focused tab only, muting all others. To keep the audio on the background: pin tab or open a separate window
Medium article here:
Did I Just Fix Chrome’s Audio? 🔊
Aug 14 · 6 min read
Or — the biggest historical UX mistake that you’ve always heard, but probably never heard of.
You’ve probably been in that situation: you browse the web all chill and happy, having multiple tabs open — when suddenly your speakers yell at you, they spit on you with the highest volume the most random sounds. You turn down the volume to normal volume, and then realize that its probably coming from a rebellious chrome tab that decided to declare it’s independent at that moment, and shout it out loud. It could be an audio/video ad on a page that auto-refreshed itself, a youtube video that liberated itself… it could be anything.
Once upon a time web browsers conspired and made a decision: audio is a notorious free zone, any tab can play any audio at any time, regardless of your attention and totally ignoring your current active tab. The weird default behavior of letting each and every tab to play sounds regardless of other audio channels playing at the same time. How weird is that?
The problem becomes bigger when you actually consume more than one tab with audio: what are you supposed to do when you want to zap between two tabs running a video feed? Same like we used to zap between channels back in the good old simpler days of analog TV. Now imagine that those TVs were engineered with that same weird twist: you switch a channel and the audio of the last channel stays in the background. And all the ones from before. After fighting with it for a while, meaning muting the audio before changing each channel, for instance, everyone would’ve given up — and we’d never got to know that couch potato semi-meditative channel zapping experience.
The mistake became so obvious when I tried to watch more than one football match in parallel on the Champions League while watching a youtube live video event. There I was, having three video feeds on three different tabs, starting a big chaotic audio party of two different commentators plus all of the surrounding noises, and the live youtube feed. Switching video involved muting the previous tab, and unmuting the new tab. Not the best sports and web viewing experience to say the least.
What I expected was to be able to have one sacred audio channel that will always play what I see, and at any case always just one of them. Seriously, is there any human that can really listen to more than one audio channel? Sure, we can listen to music in the background — indeed a very common use case, but a very specific one — it doesn’t justify making it the default case. So how come that's the default case?
In computing there is a term “WYSIWYG” — “What You See Is What You Get”, I want to have “WYSIWYH” — “What You See Is What You Hear”. The default state should be that you can hear only the tab that you consume, unless you want it otherwise. The option to make an audio channel to stay in the background should be on demand, and not the current state where the on-demand action is muting other tabs, on a muting Whac-A-Mole frenzy.
Our basic ability is to process and listen and focus on one main pro-dominate audio channel. The visual equivalent of the current state of audio on browsers would be overlaying two different websites on top of each and trying to understand what you see. If that sounds stupid, then the same rules should apply to audio. More than that, you can perceive visuals side by side, window next to window, something you can’t really do with audio — the ears are just way more serial in their perception than the eyes, that can absorb much more parallel information. vision is way more superior in processing data to hear. Browsers, hence, were made by omnipotent multi-channeled uber-mensch, 10 eared aliens, not by humans.
But seriously, it is weird that it happened like that. Using our eyes and ears we can usually watch and listen to only one thing at a time, but we can see spatial objects way more parallel than we can hear. hearing is good in pinpointing directions of sounds — but that's not the case with audio coming altogether from computer speakers. And in 3 decades of web and browsers, there were endless revisions and changes in the experience, but it was mostly visual: i.e. web 2.0, responsive design, both reducing information overload on our eyes — but not no change made to the way audio is consumed.
It might have been a coincidence. It’s possible that this logic comes from different times when the web didn’t focus on video and audio, and even after it did, it wasn’t common to run more than one media stream with the jeopardy of chocking the bandwidth.
but in 2019 — who cares? let it stream! in today’s free to use the bandwidth you can run dozens of streams in parallel. You want to be able to jump between 5 video streams of football matches in the world cup, you want to open 8 youtube videos and just zap between them as if it is TV, you want to run 10 radio stations and have the Radio experience and data consumption you get in the car — on your browser, the place we pass a substantial time of our day. You want to open 3 news streams on a breaking news event, no reason to avoid doing that but the weird non-muting tab decision someone made way back.
I’ll have to add that on smartphones they sort of fixed it, but not really — you do hear just the app that you see most of the time, but the decision there was to pause/stop when you switch an app that uses audio (switching between a youtube video to Spotify and vice-versa pauses the previous one when you go back). Its a novel decision that can get its own respect, a decision that is probably fitting the mobile needs as a narrow focus application — but the computer is a different case, a much more flexible and parallel machine.
So on that sports viewing occasion, I decided to check on google how to create a chrome extension to solve this.
It turned out to be a very quick and easy job, just about 4 lines of code!
I call it AudioZapper.
(Well, originally I called the repo HumansCantFocusOnMoreThanOneAudioChannelDah!
less catchy 😉 …I’ll stick to AudioZapper from now on 😇)
What does the extension do?
-Plays only the current tab you’re focused on!
-And for the cases you do want the audio to run in the background:
*If you pin the tab, the audio stays in the background
*If you have two separate chrome windows (not tabs), each one of them is a different context that lets you hear it’s own focused tab — in parallel (between windows it’s the regular functionality)
I’m using it for a few months now, and my chrome experience became much better. Having that “zapping” experience between several running youtube videos has that nostalgic feeling of old TVs, and I adopted some new intriguing habits that I didn’t think of before — mainly running video and audio streams all day in the background, waiting for my focus.
I think I’m all set to the next sport season 😄