"...is not supported in this browser", fuck you Discord

Like A Duck@programming.dev to Technology@lemmy.world – 585 points –
132

Firefox doesn't implement the AudioData API, which is probably necessary for the waveform viewer and cropping tool Discord presents in the soundboard management UI.

Not everything is about Chrome DRM yall.

Yet another experimental API only supported by Chrome. Chrome has always been like this, implementing experimental API that hasn't been finalized yet. You might say they're innovating to support new technologies, but actually it's more like they're doing whatever they pleased, as demonstrated by their removal of jpeg xl support despite web communities plea not to do so (a new more efficient image compression, but not made by Google so screw it), pushing manifest V3 and ad topics, and recent push for web environment integrity API.

How can they not support jpg xl? It’s such a huge thing

I think Moz helped write and supports this. I even think it's (partially enabled in nightly?)

Not sure if these built in decoders are supported though. Seems a bit dangerous to expose native codecs directly from the web to be honest, since you'll end up with wildly varying support across browsers.

Firefox and Safari is also implementing experimental features often.

I remember ages ago websites were all focused on "works best on Internet Explorer" or "please use Netscape for the best experience"

We managed a good solid decade after that where browsers all somewhat caught up to each other and now we're going back that way again, with each website just YOLO implementing APIs that aren't fully supported (with no polyfils or fallbacks)

When you did that back in IE7/8/9, you missed out on rounded corners or drop shadows, now whole parts of apps won't work unless you're on chrome 🤯

Any reason FF hasn't implemented this?

Because Firefox is like a democracy, they prioritize work based on number of votes on issues/feature requests. The AudioEncoder API has literally just one vote, and the overall WebCodecs API that it's a part of only has five votes. This shows that there's very little demand for it, meaning very few sites actually use this (that or the vast majority of Firefox users don't use/need this feature). Why bother focusing your efforts on implementing something that most users don't care about? The higher priority things that most Firefox users care about is stuff like performance, and Mozilla have been making some good progress too on that front.

The thing isn't only about votes. Both APIs are top priority but there are blocked and depends on other stuff that also needs to be fixed or implemented.

AudioEncoder (bug 1749046) doesn't really have any dependencies or blockers, as far as I can tell. If there are, then you (or whoever has access) should update Bugzilla and add the dependency there.

Honestly, I found bugzilla hard to read, so I am not sure but it looks like the WebCodecs API needs to be implemented first. And that one has a bunch of other stuff, I think.

This is an experimental API that hasn't been finalized yet. Firefox devs has limited engineering resource and simply can't keep up with Chrome's push to implement experimental/proposal API. Safari also hasn't implemented this yet because they also usually wait until the API finalized, which can take quite a while.

dont show firefox users any modern web feature

Hope you'll continue to lick the Google even after Chrome implements DRM.

This isn't a chrome is bad issue, this is a discord is bad issue. They shouldn't be relying on an experimental feature.

It appears the Reddit users that don't read further than the title have arrived on Lemmy.

Shocking news: people are people everywhere, not just on 'rival' platforms.

Care to elaborate? I can't make sense of your response

For some god damn reason he's trying to turn this into a 'reddit bad' discussion.

Yeah unfortunately it looks like they are here too, oh well at least it's money out of spez's hands

Thank fucking people like you. The average Lemmy user just knows everything.

I have seen so many Lemmy users think they are better than Reddit users. Truth is, you are all fucking ass holes you are just different kinds of ass holes.

None of us agree with Google's choices but for fucks sake not everything is because Google chose it.

Sometimes it's just in the damn browser. Like fuck off.

I use Chrome and Firefox and have two different online personas with both.

If you clicked the link. It says experimental technology. It's not mozilla's fault Chrome is adding features that are not standard. Sites like Discord for utilizing non standard API's.

is the other one less touchy?

And their desktop client technically is a browser without omnibar.

Electron is not just a browser. It's more like a native app framework that just happens to use HTML and CSS to render UIs. You can do anything the OS lets you do, not just what a browser environment would let you do.

Electron is an unholy fusion of Chromium and Node.JS. Nothing more, nothing less. It doesn't 'just happen' to use HTML and CSS. It's literally just a browser with most of the default browser UI being hidden. Something like React Native would better fit your definition.

I'm on my lunch break from working on a React Native codebase, and I wouldn't say RN fits that definition at all... but I think we're just getting lost in semantics.

My point was just that a web app running inside a browser has to abide by the rules and limitations set by the browser, whereas Electron flips that relationship -- your app sets the rules and limitations of what can be done, and the web rendering process abides by whatever environment you create. You can do anything the OS permits. Even from inside a web context, if you want. You don't need a browser-managed sandbox to mediate your interactions with the OS.

It's not literally just a browser. It's literally just a web engine with a full set of OS calls hooked in. It is not a browser in the same way GNOME is not an OS. A browser comes with a whole lot more than a web engine, so calling it "a browser" is wrong both technically and colloquially.

Electron is a framework for building desktop applications using JavaScript, HTML, and CSS. By embedding Chromium and Node.js into its binary, Electron allows you to maintain one JavaScript codebase and create cross-platform apps that work on Windows, macOS, and Linux — no native development experience required.

Electron docs

Electron is so much more than "just a web engine with a full set of OS xalls hooked in". Ultralight and Sciter are frameworks that actually just happen to use HTML, CSS and JavaScript for UI development. They aren't fully-fledged web browsers without a search box, they are tailor-made for app development.

Yea, that was less ideal word choice by me. The point is that part is ONLY an html/css engine, not a sandbox and web api implementation plus tons of extras and plugins like a browser.

Very, VERY different animals, even if it used the exact same rendering engines as a browser.

But probably Chromium right? They probably didn't make all Discord functions work for Firefox as that would require some extra work probably.

I’m a little baffled by this one. File upload isn’t exactly some new HTML5.1 feature or anything. There’s no good reason they can’t have this handled properly.

I bet if you switch user agents it works just fine.

2 more...
2 more...

I ditched Discord a few weeks ago. I moved to Matrix!

Not to be discouraging, but i managed to quit discord for a few months, but i returned again, turns out many projects, even open source, use discord for discussion only

Matrix is great, reminds me of a more secure discord. At least this one can be bothered to even try implementing end to end encryption

I also quit Discord 2 weeks ago when my account was disabled for alleged self-botting the second time. Self-botting means using a script to automate your user account. I never did that.

codes a desktop OS specific program coded in C just to spite you

To be honest I absolutely hate everything being a browser app.

There's really no reason to be mad at them in this particular instance. Their client is Chromium-based (Electron) so they will optimize their new features for that engine first. There's probably less than 5% users who Discord from browser, let alone Firefox, and I think I'm being generous with that number. Additionally, some things are harder to implement (or even impossible) in native web rather than Electron, that has all the NodeJS integrations.

There's probably less than 5% users who Discord from browser, let alone Firefox

There are dozens of us! Dozens!

File upload is not a chromium feature, it's a super old basic feature. It's just their pittiness and upcoming drm implications. I bet if you set your user-agent to chrome it woould work just fine.

Firefox doesn’t implement the AudioData API, which is probably necessary for the waveform viewer and cropping tool Discord presents in the soundboard management UI.

Not everything is about Chrome DRM yall.

Edited to add screenshot of spoofing user-agent on Firefox and getting an error:

https://midwest.social/pictrs/image/4edb0d24-0c2a-4610-b7b2-eed07a3c7d24.png

Here’s what happens when you spoof a Chrome user-agent.

https://midwest.social/pictrs/image/d3b96401-956b-4eab-bc5c-64b0743feae4.png

-kibiz0r@midwest.social

This dialog doesn't do just file upload, after you upload you can cut the sound file into a 4-second clip, inside the client. My bet is that it might technically be possible to do it in Firefox, but not with the same exact code as with chromium, and thus they decided they don't care.

You're probably right. A modern browser that supports webassembly can do literally anything, implementing the missing AudioData functionality should be possible with enough development effort, but it's not important enough for them to make this particular feature works on Firefox.

I haven't used soundboard yet, but I'm pretty sure it isn't "just" an HTML5 file upload. Perhaps it's as you said, they run checks on the file being uploaded. Maybe it will work, maybe it will crash in some use cases because they don't have a polyfill for some specific API they use. So instead of dealing with user complaints about crashes they just disabled the feature.
I'm also not sure why you're upset with Discord for implementing DRM for uploaded files. If they don't, they will get sued by the companies enforcing that DRM, so hate on those companies instead.

"Press THIS button if you want to enter anyway".

I think I need to fill a patent for this idea, since it's brand new, fresh and nobody has ever heard about it...

As other comments have pointed out, Firefox doesn't necessarily support the necessary APIs that Discord is using for this. I have the same issue where neither Firefox don't support the in-browser MIDI API, so I need to have Chrom(ium) for a webapp that lets me configure some MIDI hardware that the manufacturer provides zero computer interface for.

I'd like to use Firefox for everything, but there will always be some edge cases like this as long as there are APIs or other features that it doesn't yet support. Of course not to say that securely implementing every new API is trivial, but that's just how it is right now

There is FOSS wrapper for discord called webcord, if you have to use discord but want a bit more privacy.

3rd party apps tend to trigger discords sussy user detection and force you to add phone number

Webcord is hardly a 3rd party app. It's essentially just a specialized web browser for the discord site.

To blacklist your number and ban you?

To monetize you sideways.

(I'm saying this because once upon a time I had cloned discord on my phone by installing the same apk with a letter changed (com.discore) and it thought I was using a 3rd party app or something. They asked for a number, gave me access to my account for about 5mins (good thing I thought of backing up my account and my friend IDs) and banned me. They didn't mention why, just some default message about spam. I did it again since I didn't know what I did wrong, another number down the drain. I haven't checked if they are still blacklisted.)

Eventually I can see discord discontinuing their web client to push you users into installing their spyware.

They already have Windows on your machine. What more can they get from you with Discord?

I am a Linux master race user. I don't use Windows.

I bet you don't install discords spyware on your Linux box. Or maybe you do and you're whole pontification is moot.

Discord is such an obvious "stay the fuck away from" product.

With the same critical mass of users that most proprietary social media have, unfortunately. You'll be lucky to find certain communities on Matrix at all.

Yep. Those companies make it easy to join so they capture big user bases and become the defacto standard. I had a bad feeling about discord from the beginning. Glad I managed to stay away. But I'm old and not really interested in most "communities" online, so it's an easy decision for me. With instant messengers on the other hand...

I said 'fuck you" to Slack for similar reasons. Going to same the same to Discord now.

Because firefox doesn't support it? Don't see why it's their fault

They implemented a feature that is only available in Chromium and not part of the web standards yet. It's no different than websites that would only work on IE 20 years ago because of some proprietary Microsoft thing.

Except it's not proprietary, and presumably there's no other way to do it in the browser, so did discord really have a choice other than not implementing said feature?

On top of that, their desktop app uses essentially the same website in an internal browser, so unless they handicap themselves by not implementing anything firefox can't support, I still don't see how it's their fault

I wish I could say fuck you to slack. Unfortunately, my office relies on it.

I tried to use lyft on my computer yesterday to download a receipt for my expense report, it didn't let me, kept telling me to download the Android app...

Everyone wants to force you to download their app now so they can collect your data, shove notifications down your throat, and push ads.

In the age of the internet, your attention is the most valuable thing a business can have and it costs them virtually nothing to harass you into giving it to them because people have no spine and won't hold it against them.

Looks like they're prepping you for browser drm lol. Go decentralized and get off discord.

People use discord in the browser? Damn boi

Never use an app for what should be a web site.

It works better for me as an app. I don't like my browsers to be cluttered like that. But if it fits your usecase

That's why I like Chrome's (and various Chromium browsers') ability to app-ify sites. Will create a .app in MacOS, .desktop in Linux, etc. Launches as what looks like an independent app with its own dock/launcher icon. Utilizes most of their PWA stuff.

Sadly, it looks like Chrome has hidden the option completely in the latest version unless you set a flag that will probably go away in a few releases. Edge makes it pretty clear.

I wish Firefox would bring the feature back. They deprecated it years ago and I use it heavily (only reason/time I use Chromium stuff on most of my machines)

I know it from Android and I was using it quite frequently as well. But in my opinion it's better as a website alternative, compared to being a complete replacement for apps. Things are less buggy and more smooth for me that way.

I fail to understand how opening a web site, which is all a browser does, can be defined as 'cluttered', but my use case is security while appears yours is to let corpos rummage through your files.

It's inconvenient and disorganized to have it as an extra tab (taking up tab space) or browser window (same symbols), also it runs smoother for me within the app.

but my use case is security while appears yours is to let corpos rummage through your files

I care about UX & seems like I'm not the only one at that. If I would care about privacy and security I wouldn't use discord, but matrix or sth.

It's spyware that watches what software you use and sends that info back to their servers.

Disabled telemetry in the settings, should be good right kappa

It works better only because they intentionally hamstring the browser so you'll do exactly that.

At least you can block some of the telemetry with uBlock or similar

Fair, but from a UX and technical perspective it's a pain in the ass to use it like that

At my old workplace I used it in the browser daily. Wasn’t really an issue at all.

Why would you want to block their telemetry?
It is not like they're using it to serve ads to you, and it should be better for everyone for developers to make decisions based on how users are actually using their app, no?

It's simple. Nothing that happens on my device is their data.

Any telemetry that isn't explicitly opt in with zero consequence for not doing so should be the kind of illegal that gets every asset your company owns seized immediately for non-compliance. All user data collection is spyware.

Invasions of privacy are bad per se, even if you don't use them to serve ads

"even if you don’t use them to serve ads", Which they do, just indirectly.

You kidding? That's literally a troijan horse.

Imagine you buy a new showerhead and it came with a hidden camera sending data to the seller. The camera is enabled by default, with toggle hidden and difficult to find.

This is what it is when you enable telemetry by default.

The desktop client logs and sends lists of currently running processes by default, and they also collect usage data (which channels you open, how long for, who you’re interacting with). In the settings, there’s literally an option for “Use data to customize my Discord experience”. And sure, they don’t show ads, but their third-party integrations do. Article with sources

In the end, processing and storing millions of texts, images, videos and files permanently, and hosting all those live voice and video calls, and making updates to the clients, will always cost more than what they get from Nitro and server boosting. Discord isn’t profitable; they have to make the deficit up to shareholders somehow.

Yes as I manly use it on phone

So for the once on a blue moon when I'll open discord on my PC, the browser is enough

It actually always worked better for me in my browser

That’s my experience on my machine running Ubuntu. The reason was that Discord ran in their snap sandbox, while my browser is not sandboxed. This leads to the sandboxes app not working together with xdg-desktop-portal, which means that screen sharing doesn’t work.

Dafuck haha. What computer do you have?

It's not a laptop. Not sure why that would matter though. The browser version works fine. If it didn't, that wouldn't be my pc's fault, it would be discord's.

I obviously meant any computer besides phones/tablets. Never heard of anyone that had less problems on the website, that's just why I was wondering..

Well, it's a home built machine. Like all computers it has random weird issues. Just was trying to say that sometimes the unexpected thing will work better. Because had I not experienced that with discord, I would've assumed the desktop app should be better.

Discord is a web app, there's no other way. You either use your main browser or the one they're bundling it with.

If it's just a WebApp, then why does one of the commenters have issues to run it without the browser?

See: https://feddit.de/comment/2192027

Edit: And I know that you're right technically, still there is a difference in how you run it when using a browser vs Webapp.

Theoretically, it may have additional features when it's bundled with Electron, but ultimately there's nothing wrong with running it in the browser.

Nah I know there's nothing wrong with it. I was just surprised so many people do it. But I guess we have a privacy-aware tech bubble here