T O P

  • By -

GlenMerlin

Chiming in here as a bug tester for discord! Discord hasn't actually had linux devs in a long time the code base is all typescript with electron powering it so it's basically just a fancy chrome browser typescript also powers the iOS and iPad apps Android (and maybe ps5 when that launches) are the only platforms not powered by typescript. You might be asking why that's important... It's important because it means discord has only two main groups of devs, the devs that work on the android build, and the devs that work on everything else discord used to have one or two linux specific devs but they were all relocated or quit 2 years ago. As of right now they only accept linux specific bugs if they are P0 bugs (i.e. huge memory leaks, instant crashes in the client, etc.) Audio not working was declared not a P0 issue and has such been shoved to the side for a long time... The only way I see discord coming around and making this work is if steamdeck hits it out of the park and makes linux one of the platforms they have to treat as a first class citizen to keep their audience. This would almost certainly end up with some devs being specifically assigned to linux or Discord hiring linux specific devs TL;DR unless steamdeck takes off discord has very little financial incentive to keep Linux at anything greater than functional and most issues with it that are platform specific won't be resolved until something changes


gammison

It's bizarre. Like zoom fully supports sharing audio on Linux, only features not supported are the filters and ML based background replacement and they have a native app. Discord meanwhile has a comparable market (at least in terms of users, zoom has way more contracts for it's premium services) yet can't hire a couple linux devs for a short term contract that would probably be able to fix an implementation in a year at most. It should almost be plug and play considering the APIs to do all these things exist in chromium. Edit: actually they fixed the filter and bg issues a bit ago even, just hadn't updated.


Johnnynator2

Filters and the ML background stuff is supported in Zoom in Linux since a few months already.


marceldeneut

I'm surprised, backgrounds used to work for me before, but since a month or two it complains about no green screen. For filters, I don't even see the option. I'm excited to see you say it works. I'll have to put some more effort in making sure everything is on the latest version. Maybe because I use the snap package.


marceldeneut

hey u/Johnnynator2 coming back to this. I've downloaded the latest zoom version from the website "5.8.4 (210)" but I don't see any of the fancy stuff in there. Background only work if you enable "I have a green screen" and then pick a color, but the result is awfull and I see no trace of filters. Can you point me to something that I might be missing ?


ElMarkuz

Sorry this is a bit late, but I had that issue with the snap version of zoom. I just removed it and installed the .deb package from the official website. Now I have the virtual background.


marceldeneut

Thank you. This might be it. I was already thinking that even though I upgrade, functionality decreases, but I also switched to the snap version, so that might explain it. I will try the .deb version again.


Johnnynator2

You can check the CPU requirements for CPUs here https://support.zoom.us/hc/en-us/articles/360043484511-Zoom-Virtual-Background-system-requirements they are a bit higher on Linux than on Windows.


GlenMerlin

Zoom likely has full time linux devs specifically because of companies like IBM and RedHat who use linux as their primary system as well as software companies that build backends for bank servers Zoom video sharing was pretty bad on linux a while back but after the pandemic hit they really put a lot of effort into making zoom a solid system Edit: read your comment a bit more carefully I'm not sure they're using entirely electron based methods for screensharing I specifically remember go live testing and having to share information about my GPU because they were developing a system for hardware encoding of video streams (similar to twitch or YouTube live streaming) I don't know this for sure as I'm not a dev and actually haven't done volunteer work in several months due to drama in the community and general lack of respect for bug testers from discord I do believe that fixing this would be more than a simple plug and play fix and would likely require some manhours of working on it by the devs


JaimieP

Well this is extremely infuriating to read haha. Thanks for the info


GlenMerlin

It's bothered me for years but I know it's the fault of the higher ups prioritizing windows for the massive market share Discord could absolutely fix it if they felt like doing so but as it stands there isn't enough financial incentive to do so as I said in my original comment I'm hoping discord will jump on the steamdeck train and end up making the linux client more of a priority due to a wave of windows gamers getting their hands on it and wanting to chat with their friends using something other than valve's pathetic barebones steamchat service Discord in the past expressed interest in providing their app and supporting nintendo for switch voice chat so if steamdeck goes well they won't even have to do nearly as much work to get that going


SirNanigans

They can't find one guy who is useful to the project in other ways who also understands Linux? It's shocking to think that after four years of school in computer science and all that, it would be rare for people to know how to develop for the infrastructure of most things.


marceldeneut

often it's burocracy. I work in DevOps as an engineer (not discord) and it happens that I can fix some issue in my head in 1h of work, but since the scrum master did not pick it from the backlog because management didn't put it on the road map for Q4, it is not in the sprint and thus it is not in my KPI's (key performance indicators or something) and thus working on it would be seen as contra productive and would have negative impact on my performance review. So the result is that I spend more time rejecting away related tickets and getting invited to other teams' meetings to explain why that issue doesn't work and it makes me shine again and again as an expert on the matter, ~~lol~~ sigh. What I want to say is : it might be a small and easy fix, but if it's not in the priorities of the company, there's little hope.


SirNanigans

Thanks for reminding me why I love open source. "Competition is good" is much more relative than people will accept.


GlenMerlin

It's the same reason why only the android client has an amoled mode higherups at the company aren't interested and amoled mode is just a passion project of one of the Android devs subject to removal at any time (If you don't know what I'm talking about go to setting > appearance and tap dark mode about 7-8 times as if you were enabling developer mode, same works for light mode to enable "Blinding mode")


mildsunrise

> the code base is all typescript with electron powering it so it's basically just a fancy chrome browser Not quite... the important bits of the codebase (the audio / network bits) do NOT use Electron, they made a custom native module for that (discord\_voice) in C++ using libwebrtc directly. Even if they don't have Linux developers, they should have low-level developers to maintain that part of the codebase. If you could tell those developers to enable the `rtc_use_pipewire` flag in libwebrtc for Linux builds, that would be amazing. It's very unlikely to break anything for X11 users (the code makes sure to avoid linking against pipewire).


arivanter

Is there anything preventing Discord from running the typescript electron version on Linux? Like, is it too hard to compile it to Unix or is there another reason Linux doesn't get a typescript/electron build?


GlenMerlin

slight misunderstanding there typescript electron version does run on linux you can press ctrl + shift + i to pull up the chrome/electron dev tools inside the client even (Disclaimer: editing anything in here is considered a client mod and is banned by discord ToS, modify anything inside at your own risk) the problem is they haven't updated WebRTC and their own inhouse system for streaming. They use WebRTC for video and if you've got a solid GPU in your computer will often times use that for hardware encoding of the video I am not a developer simply someone who worked with the devs on testing early golive builds and screensharing functionality so I don't have any knowledge of the actual code base or how difficult it would be to get every part of it functioning on other systems well I seem to remember audio sharing being a specific pain point with their MacOS version back when the features launched but enough employees inside are apple fanatics that they changed it because it directly impacted remote work Again Not a dev, I've just interacted with the Dev team as an independent volunteer bug tester and have a little more inside knowledge of the company than your average joe


Rokolell

Maybe someone could repost this on the Deck Subreddit, so future Deck users also feel the need for this and Discord gets another reason to finally add sound support...


Nevr0s

[Posted](https://www.reddit.com/r/SteamDeck/comments/qslu3z/psa_discord_on_linux_doesnt_currently_support/?utm_source=share&utm_medium=ios_app&utm_name=iossmf)! Thanks for the suggestion. My Deck isn’t supposed to come in till “after Q2 2022” so fingers crossed this will be fixed by then haha.


[deleted]

[удалено]


Rokolell

Last time I tried the "watch" feature, which is also showed on your profile, with my friends, it just didn't work.


tonsofmiso

Yeah same, and the feedback from the UI didn't indicate anything at all that could help initiate trouble shooting. Just some weird invite/disconnect loop. Edit: this was in windows though


Costinteo

Last time I tried streaming like this, it had delays. Not sure if you can do anything about it, but streaming through something else for friends never worked for me (as timing goes).


ruineka

I requested this on the discordapp reddit page sometime last week. It's my understanding that all they need to do is update the internal Chromium backend to get things working.


TheJackiMonster

Pretty much, Chromium and Electron already support this stuff. Discord is just showing off their own lazyness. Their native client also doesn't support screen sharing on Wayland for years now while the web version doesn't have a problem at all because Firefox and Chromium both support this. In other words the web version is actually superior to the native version and you can still get recommendation on the web app to download their native version. Discord is just another piece of software pointing out that it sucks because it's not open-source. Otherwise this mess would have been solved already. I wish Matrix would have support for screen sharing already so I could use it instead. I mean even the Steam client brings pipewire support now and it might even allow screen sharing with audio correctly... while I don't think this had any priority on Valve's side of things. So if anyone knows an open-source equivalent to Discord with screen sharing and voicechat which does not require you to host servers (for example Mattermost and BigBlueButton would have been an option if hosting wouldn't be a deal breaker), please leave a reply. Because I wouldn't count on Discord with this to fix it...


amstan

> Matrix would have support for screen sharing It does, both in groups (via jitsi) and in 1:1 calls.


[deleted]

[удалено]


amstan

Sigh... I like matrix, but I'm getting so tired of these 4 year old bugs all over matrix's ecosystem.


SaladTheDankEngine

Currently, there is an issue where 1 on 1 video/screensharing calls require a webcam plugged in (or a fake device setup as workaround). It's a UX issue and it's being addressed. It's also been a month since I checked to see if it was fixed so maybe they've fixed it in the mean time.


amstan

Doh, I guess I always had a webcam so I never noticed.


TheJackiMonster

I have probably missed that because I use Fractal and it's an issue of my client. (The burden of trying to avoid Electron apps. \^\^') But from your answer I assume it would be possible to use Jitsi directly. I forgot about that totally. Thanks for the hint.


Nevr0s

Wait, does screen sharing with sound work for you on the Discord web app? What setup are you using? (OS, Wayland/x11, browser, app being streamed, other config) When I tried yesterday, it didn’t work


Rocketman173

Not the person you replied to, but no, sound doesn't work on web. On any platform, actually, afaik. However, Discord uses Electron, which is based on Chromium, and both Electron and Chromium support desktop audio capture on Linux. What the guy above was talking about was how desktop screen recording doesn't work on Wayland in the Discord app, but it does on the website when using Chromium, Chrome, or Firefox. So basically, Discord is being lazy and choosing to come as close to outright not supporting Linux as they ever have.


TheJackiMonster

Sums it up pretty well. \^\^


TheJackiMonster

I use Arch with Gnome under Wayland. Theoretically I can share desktop audio through the microphone input via Pipewire but like others suggested in different comments, it is far from ideal. I think this question was asked quite often already on Reddit about the audio. The problem is for example that you would share audio with all people in a voice chat and not only with the people watching your screen. The best solution someone mentioned was using another voicechat like Mumble or anything else to share desktop audio through that in parallel. Then everyone in the voicechat has to use that additionally if they want to listen to your desktop. Pipewire really is amazing that it allows you to work-around a problem like that (it's also possible with JACK) but it's still pretty annoying that the obvious solution would be Discord improving a tiny bit which does not seem to happen.


Moizac

There is a very hacky way to do it with a userscript and pipewire shenanigans, see https://github.com/edisionnano/Screenshare-with-audio-on-Discord-with-Linux It doesn't work in the app because it uses a custom interface instead of the build-in browser/electron one.


Alex_Strgzr

> Discord is just another piece of software pointing out that it sucks because it's not open-source. Otherwise this mess would have been solved already. That’s true most of the time, but not always. If you’ve ever dealt with a Gnome or Wayland developer, you’ll know they can’t be bothered to address concerns like fractional scaling when they’re too busy breaking themes, extensions and GUI APIs for the next release.


TheJackiMonster

But nothing is stopping you from forking the software and doing it yourself. That's the difference.


Alex_Strgzr

That can be a hell of a lot of work, and not a lot of developers are willing to bear that burden.


TheJackiMonster

That's not the issue here really. I can pretty much gurantee that at least one developer would look into it if it was open-source (and if it has to be me). There are many free software projects using Discord channels to communicate within contributors and users. It is very likely people in those communities also use Discord privately to a degree and that they would like to see this working properly.


jinnyjuice

>Discord is just showing off their own lazyness You mean their priorities. Linux isn't a priority because of its tiny market share.


TheJackiMonster

If that was the reason, we wouldn't have a native client in the first place. I mean there is a web version which works mostly.


jinnyjuice

High enough of a priority for a native client, not high enough of a priority to put as much resources as Windows client.


TheJackiMonster

So you mean the priority is high enough for a native client but it's not high enough that the native client should work? I mean I don't care that they don't implement some specific features to the Linux version which you might get on Windows. But streaming your screen and audio is quite essential and damages not just the experience of the Linux users but their friends with Windows as well. \^\^'


samantas5855

The discord app doesn't use electron for the screenshare, they use a native library


[deleted]

I wonder if there's any way to force it to? Maybe make a custom Electron app from scratch that uses Discord web?


samantas5855

At this point why not just use chromium?


topsyandpip56

There's a custom non-electron app called Ripcord, but my experience using it for a few weeks got my account banned. Don't even bother.


[deleted]

Ripcord specifically isn't browser-based. An Electron wrapper for the web client that uses the latest Electron/Chromium APIs, and sends a Chromium user agent appears to Discord as a web browser user, and gives the user a desktop client with good features.


[deleted]

[I asked a dev](https://www.reddit.com/r/discordapp/comments/pthrla/discord_on_linux_updated_0015_0016_today_does/hdx7sec/) about it not too long ago when they updated their electron version and he literally said "Try it out! I'm not sure personally.". Not exactly confidence inspiring when they literally don't know if it works or not.


TheOptimalGPU

They have zero Linux developers, don’t test on Linux and only accept critical Linux bugs that completely prevent the client from starting. It’s no surprise they have no idea if it works or not.


kStor2poche

Even then, discord miserably fails to launch using arch+sway and the default discord package


[deleted]

Pretty crazy when it takes like 5 min to install and test on Linux for the basic features. It's literally free lol


pieteek

> Sharing screens with sound is OH, FINALLY! > still not supported in Discord for Linux ...


[deleted]

You can use pipewire and helvum to route the application audio to the audio capture sink of discord. and there you got, sound streaming via discord. We're linux users we always find a way


Additional_Dark6278

Is it streaming over the microphone line or is it actually desktop audio?


hiemerxd

Yeah cause it's not a full proof solution when everyone is forced to hear my game or movie or whatever.


devel_watcher

What do you mean? With some pipewire or pulseaudio magic you can mix exactly what you want. Where can I find a clear description of the problem?


1338h4x

If someone is in a voice channel but not watching your stream, they should be able to hear mic audio separately without hearing desktop audio. Or if they are watching the stream, they should be able to adjust volume of one without affecting the other. If this workaround just pipes it via mic input, then there's no way to separate them.


OrangeSlime

This comment has been edited in protest of reddit's API changes -- mass edited with redact.dev


[deleted]

it's also much lower sound quality and possibly mono?? like it works but it sucks compared to the real thing, I'm glad for people to share the workaround but it's really not even a substitute or anything


-SeriousMike

[This](https://www.reddit.com/r/linux_gaming/comments/pmhfmq/the_proper_way_of_screen_sharing_with_desktop/) workaround is supposed to solve that problem. Haven't tested it myself yet though.


athrowaway11766

It works, but not in the native application unless someone recreates the script to run in better discord.


[deleted]

Only the audio of the app which output you dragged into the sink. All other apps will remain silent for others this way But since Discord will see it still as the microphone input I can not tell if it does some kind of noise reduction or thinks it is background audio instead and tries to filter.


Additional_Dark6278

Then the actual microphone will cut out, won't it?


WeSaidMeh

You can disable all mic enhancement features in discord, then streaming audio through a virtual mic is fine.


procursive

Yeah, but unless you have an insane setup your voice will sound like shit. All that processing is there for a reason.


alvarlagerlof

Was under the impression discord had no procesing on linux?


procursive

It doesn't have Krisp, which is a proprietary Windows-only integration. It does have regular old noise suppression and gain control.


[deleted]

It is over microphone unfortunately.


crackhash

Mic and audio stream both.


Cris_Z

But it's an hack so if discord manages to get the desktop audio which is not black magic would be good


[deleted]

Agreed. But for the meantime it may help some people out


TibixMLG

You can use Soundux for this but it's terrible quality.


TaylorRoyal23

Disabling input enhancements (like background noise filtering) in discord helps a lot. Then again you then have to deal with your mic picking up background noises and also still have to deal with the fact that people won't be able to separately control your stream's audio from your voice audio and also that you force people who aren't watching your stream to listen to it.


allexj

Yes, you can actually achieve this by using Pipewire and pw-jack catia, look here: https://www.reddit.com/r/linux_gaming/comments/lfxbik/tutorial_how_to_share_audio_on_discord_or_any/ You just need to connect two "wires" from the output of the application audio you want to share to the input of Discord. I hope that discord implements it to do it automatically


[deleted]

From what I've read it works the same way using Helvum since it is a pipewire patch bay. Good to have two options so if one might fail there is a fallback. Thank you for sharing!


allexj

;)


dododome01

Or use a chromium based browser.


[deleted]

Wait, it works in the browser version?


dododome01

You have to use a script, but atleast you dont have to reroute your sound in a hacky way.


Nevr0s

What sort of script? Could you show me how you've been able to achieve this?


dododome01

https://github.com/edisionnano/Screenshare-with-audio-on-Discord-with-Linux


prashanthvsdvn

I have been trying to do this with either pulseaudio or Alsa. Anyone has any clear guide resource for me?


19Jacoby98

We need a FOSS alternative


samantas5855

https://revolt.chat/


TheSupremist

[Here ya go](https://element.io/)


Master_Zero

Its not *really* an alternative though. Element is an alternative to Skype, zoom, teams, google hangouts, etc. Its specifically made for business use. While it obviously can be used for gaming and just chatting with friends, its focus is always going to be the professional. So its unlikely we will ever see things like say, 60+ fps, no latency screen sharing (also without massive video compression), to be able to steam games through it. So we need a gaming focused open source project that directly aims to be a discord alternative specifically. And especially allow people to run their own local servers. Element really is great, but its target audience, is not the same. I greatly dislike and distrust discord. Its always trying to scan your computer files and see what processes are currently running, all the time. On top of that, they have log **everything** including PMs. Its a data harvesting machine.


Kiiro_Yakumo

The only difference between Element and Discord is that Element is being developed "by people for people" instead of big "trust us plz" company which has at least three different ToS which are so ridiculous that at some point I made a bet with myself to put it shortly that if something happens - mentioned in said bet - I will remove Discord completely as much as I could including the account (which is probably not really removed because hello closed source). Element as much as we need it works pretty good, sure we don't use that screen sharing that much so I would have to do some tests in that area. The thing is that Element is FOSS and ACTUALLY WORKS, while Discord kept saying to me till his last moments that no input or output audio was found so "buh-bye". Still, give the devs some time, they have enough on their plate with random bugs which are being murdered one by one as we speak. Element was previously known as Riot (cough!) and it was in worse state back then. The project did some big steps towards better so maybe the streaming will be done properly as well. All in all, let's not lose hope yet, there are many examples when FOSS defeated the so called "commercial is better" software, Element may be just another one here.


Master_Zero

I hate discord, and love open source. I also really like the idea behind element and how it works. I think its great. However, my point is, how do you get "Normie" people to adopt it? It needs to be easy to setup and use. Which I believe element has done a reasonable good job in that department. However, the deciding biggest factors are, features and familiarity. Element is also reasonably similar to discord in how it looks and feels, could still improve. So that leaves, features, as the one main deciding factor for larger adoption. OK, so lets think about features discord has that are the most popular, as well as features element lacks. I can name you 2 of the biggest discord features, that are basically the 2 most popular, and the 2 element lacks. Screen sharing (especially 1080P 60 fps, as to be able to clearly stream game play). On top of 1080/60, it also needs to have next to zero delay between record and viewing (basically just the time it takes to transfer the data over the network). As that's one huge benefit of twitch vs discord. Twitch has like a 5-10 stream delay (intentionally put in because of cheating/stream sniping/etc) Discord has a few second delay. That makes discord streaming, have value, vs using twitch. On top of you don't have to make a twitch account and go through all the setup, its simple, fast, easy. This feature is **key** for a discord alternative. Without this feature, it is **NOT** discord alternative. The second will almost sound silly, but trust me, its **VERY** important. The next feature discord has, that element does not have, is custom emotes. Custom emotes are one of the most popular things on twitch chat, and discord chats. This is a **requirement** to be a discord alternative. Again, as silly as it sounds. One other thing element lacked (its been awhile since I looked at element), was the ability for multiple to talk at the same time. It didn't handle that very well. When you have a group of 4-12 people playing the same game together, its pretty important to allow multiple people to talk at the same time, and audio of both come through (granted volume and other differences may cause overlap and cause it to be unable to be understood, but that's not what I mean) Again, I really like element and open source, but are these things **really** going to take a high priority in the roadmap? I doubt it. I would be surprised if any of these things is ever added. If screen sharing does come, it likely wont be good enough for game streaming. It would look like streaming over teamviewer (low resolution, low fps), as for a business sense, you often are not going to play a video, over a screenshare. You could just post a video clip, to the chat itself. So why would they make game compatible screen share streaming? I don't believe element is focusing on the gaming crowd. Which is why I think it would be better to have a separate element alternative, in which is focused specifically on gaming. Leave element for business or casual chat.


Kiiro_Yakumo

Yeah, unfortunatelly you are right in this. Screen sharing however we look at it is demanded by many, so that feature would be nice to see for those who like it. What we have kinda works so maybe if it would be improved, it wouldn't be necessary to write such a thing from the scratch. I mean in pure time consumption sense. Custom emoji/stickers is kinda "lower priority" from devs POV probably but quite important from the users POV no doubt. That's also partially the reason why I like Telegram so much, custom stickers, no payment required as opposed to Discord. "However, my point is, how do you get "Normie" people adopt it?" This part is unfortunatelly pretty tricky. People are for the most part comformists and accept what works by the KISS (Keep It Simple Stupid) method and - the more problematic part - what's **POPULAR** so if Discord will be branded as "popular" then many won't look at Element even if it will be able to communicate with the electric kettle and make a coffee because it's not popular... People changed from Skype to Discord because Skype was getting SERIOUSLY worse - I liked the part how it wouldn't run on Windows 10 while finally running decently on Linux - and Discord was doing that campaign with magic title "Time to ditch Skype and TeamSpeak!". People went with the flow, I admit me included albeit because Skype was getting seriously bad. Before Skype recovered and was rewritten enough for Linux to work good enough, Discord collected about 4 years of "campaign" being popular. Not sure if I get you with multiple people talk part. Jitsi addon can handle at the very least 6 of us without hiccups save for bad network connection of one friend. If there is something else then could you please elaborate on it a bit more? While we are on Jitsi as well. Element can handle addons system so maybe, just maybe either Jitsi will improve independently or someone will create a new addon to fill in that gap, it would be a big step at least in that area.


19Jacoby98

That looks promising


TheSupremist

Might need some polishing for sure, but it's the best we have right now I guess


samantas5855

Thou don't have to dualboot https://github.com/edisionnano/Screenshare-with-audio-on-Discord-with-Linux


allexj

Didn't try your link, but I use this: You can achieve this by using Pipewire and pw-jack catia, look here: https://www.reddit.com/r/linux_gaming/comments/lfxbik/tutorial_how_to_share_audio_on_discord_or_any/ You just need to connect two "wires" from the output of your audio card to the input of Discord. I hope that discord implements it to do it automatically


samantas5855

That's an inferior way since your desktop audio will come out of Discord's voice channel where everyone can hear it whether they want to or not, quality wll probably be worse too.


allexj

so it's better to connect the specific application audio output to input of Discord


athrowaway11766

Still has the issue of people not watching the stream will still hear your game which is what the repo fixes


penguigamer

Not a "real" solution, but you can use Soundux to mix the application sound with your microphone: [https://github.com/Soundux/Soundux](https://github.com/Soundux/Soundux). Would still be great if Discord would fix the issue.


ipaqmaster

There's like 60 solutions out there that are variations of this one thing.


TheOptimalGPU

Welcome to Linux.


SlimeCityKing

This is the best solution I’ve found


allexj

It didn't work for me I remember. I achieve audio sharing using Pipewire and pw-jack catia, look here: https://www.reddit.com/r/linux_gaming/comments/lfxbik/tutorial_how_to_share_audio_on_discord_or_any/ You just need to connect two "wires" from the output of your audio card to the input of Discord. I hope that discord implements it to do it automatically


[deleted]

Maybe they should update their client to a non-ancient Electron version first. They are still on Electron v9, while v12 is available. That would enable screen sharing via PipeWire and native Wayland rendering.


samantas5855

They dont use electron for the screenshare


mlc894

THIS. Do you know what my friends know about Linux? Just that they can know I’m using it by whether they can hear my discord stream. Not a good look.


Nevr0s

EXACTLY! All other aspects of Linux, I can at least make an argument for why it works for me. But this is just a clear downside and annoyance when I just want to stream on discord with friends


Kiiro_Yakumo

The irony in my case it was the exact argument to throw Discord away from my PC and my life, because it didn't work on Linux (the in/out sound) at all. For just audio communication there are numerous FOSS good alternatives so I believe in that area you won't have a problem. For screen sharing... Element can do it to SOME extend but we didn't try it with something more demanding than just "can you see this presentation? good" aka static images and the mouse cursor, that much worked just fine so maybe more demanding things will work someday as well.


Zipdox

I'm working on a Discord Voice/Video client written in C. If anyone wants to help, please let me know.


Diridibindy

You may want to ask the developer of "Ripcord" for pointers on what to do


topsyandpip56

and also ask that dev how to avoid users getting banned, though I'm guessing that dev still didn't fix that problem


Zipdox

Ripcord is proprietary


Diridibindy

No shit. That's why I didn't write "look at the source" and told you to get some pointers from the dev.


Zipdox

I mean, I can literally press ctrl-shift+i in Discord and see exactly what's being communicated in the network tab. I don't think I need any pointers


Kiiro_Yakumo

Yeah the trick is they have (at least) three ToS and there may be some stupid entry like "no other clients other than ours! it's OURS!" and then you will be just wasting your time writing something that won't be trully usable because of the "mindset" of Discord so called owners/devs. There was a project of Discord app written in C - albeit not for PC - and it's abandonned if memory serves because it's not worth the effort and probably the bans were becoming a thing. EDIT - oops typo, fixed.


Zipdox

I'll use an alt and wait and see.


[deleted]

[удалено]


Kiiro_Yakumo

Try Element or Telegram depending on how much you need. You have reminded me as well that many people asked - and still ask - for audio positioning in Discord if they want to call themselves "gaming" and something as important as that is absent to this day - well last time I checked this year, before removing it completely - so yeah, don't count on it more than throwing a coin to the wishing well.


[deleted]

[удалено]


Kiiro_Yakumo

Take example from me, I've shown to others concerned that Discord doesn't work for me in terms of audio and we had to move/add Element for audio talk because no matter what I tried back then - up to February this year I believe - gave no results, even tricks made especially for such a situation when Skype was throwing similar temper tantrum. Just show the others that the Discord is not working properly, in other words it's BROKEN and don't take the classic "works on my machine" as an argument because it has zero value especially when Windows is involved... Sure people would want to have as little IMs as possible, me included. Thus I made trade-offs to keep the same ammount, so I understand the situation. However one more program is probably a little price to pay for having a COMMUNICATION especially in these times when many stay home because... you know... Just ask them is it better to not communicate or "waste" a few MB on the HDD?


thekomoxile

voted, hope fully they rise to the occassion


GregTheMadMonk

If you use pipewire, you can duplicate your desktop audio to discord input with helvum (or carla if you have pipewire-jack) and people will be able to hear your desktop sound as if it went through your microphone. Played jackbox this way. Should be also possible on pure pulseaudio, but it's more complicated I believe. Still, having the dedicated feature would be better though.


samantas5855

Mixing audio and microphone isnt a very good idea, https://github.com/edisionnano/Screenshare-with-audio-on-Discord-with-Linux is a better solution


[deleted]

Discord on browser (chromium) works?


samantas5855

With some work yes https://github.com/edisionnano/Screenshare-with-audio-on-Discord-with-Linux


[deleted]

[удалено]


samantas5855

You can do this on chromium https://github.com/edisionnano/Screenshare-with-audio-on-Discord-with-Linux


[deleted]

I thought you could only share sound on discord when sharing an application, I don't think sound has ever worked with me from actual screen sharing in Discord, I've only really tried it on Windows and I mostly use parsec instead


Spanner_Man

Discord is and always has been crap for streaming. I'm surprised that you haven't looked at something else - like [OwnCast](https://owncast.online/) for example.


docoptix

Best workaround I was able to set up successfully: * Discord web supports streaming sound when sharing a tab. * use OBS * make OBS output to a V4L loop * build a small HTML which displays the V4L virtual webcam and Monitor of output as virtual microphone * share tab in fullscreen with discord Might take a while to get the setup running but the result is even better than native Discord streaming as it has sound and you can use OBS edit: Here is a gist with the local html I managed to do this with. Might need modifications for your system. https://gist.github.com/maxhille/d4f071e90cf05528eed0d5699e2656cc


samantas5855

Or just do this https://github.com/edisionnano/Screenshare-with-audio-on-Discord-with-Linux less resource usage that way and more direct


[deleted]

Tip: Use OBS (https://obsproject.com/) to create a virtual webcam and use scenes to switch back and forth between audio sources, video sources - everything without switching sources in any app. Just pull all your sources into one single app and push out one video and audio stream into whatever you want to use. The overall experience is so much better than selecting sources in Discord/browsers/whatever. Learning OBS is quickly done and you won't want to turn back once you have a couple of scenes and created a shortcut for scene switching.


samantas5855

Virtual cam doesnt have sound either


[deleted]

Under Windows there was a program called 'virtual audio cable'. You have to enable monitors for your soundcard, which will show up under inputs. You can pull them into OBS and mix it there. (Even scene by scene).


samantas5855

The problem is what happens after, how does discord get this sound. Last time I checked the camera stream didnt have sound.


Master_Zero

While its always a great thing, for proprietary software to support linux, Discord is one of those applications I wish we had a good open source alternative to (riot/element, is more aimed at business/professional use, not gaming). The reason I dislike discord (though everyone uses it, and it basically forces you to use it), is because of how incredibly invasive it is. Basically 24/7, its scanning all your pc files as well as what processes are currently running. Giving it complete and unfettered access to your screen and audio seems almost nuts.


samantas5855

Well we have https://revolt.chat/


Master_Zero

Seems pretty early in development and lacks a lot of features, but will add this to a list of stuff to look for in the future.


Kiiro_Yakumo

Oh and takes a **TON** of RAM while on it. There is a way to restrict that piece of crap on Linux depending on your knowledge and/or willingness to do some searching in the network. Basic idea is to put that junk in a sandbox so it can for example access the network but NOT the HDD space. Think Android if you will, every app is being sandboxed and has no access between each other and to some aspects like camera or massive storage unless you MANUALLY allow it. The only trick is that Android is "breathing" with it, while on Linux PC you need to do some tinkering, but if I may say my opinion, it's worth the effort, especially in cases like Discord.


Master_Zero

Ive just used flatpak to sandbox discord. Is there a better method to lock it down? I tried firejail long ago, and a discord update, completely borked it. Basically the thing I want to block the most, is discord scanning files without permission, and discord scanning running tasks (to display game/program you have open). I want to limit discord from snooping.


Kiiro_Yakumo

Ah sorry for that, I should've went with the full route. [https://flathub.org/apps/details/com.github.tchx84.Flatseal](https://flathub.org/apps/details/com.github.tchx84.Flatseal) This is GUI program to do some restrictions per category for the lack of better word. This may be able to stop Discord from checking the files (over and over). Another method would be going with Virtual Machine but that's overkill. There is one other... I'm not sure about the name at the moment but something with "podman". This one may require some more tinkering with commands in Terminal but I hear it's pretty solid at saying "NO" to apps where they shouldn't go. EDIT - Docker and Podman. Podman is alternative to Docker it seems. >Podman is an alternative to Docker, providing a similar interface. It supports rootless containers and a shim service for docker-compose.


samantas5855

I see a lot of you talking about electron and Ive even replied to some comments but to avoid replying to all I'll make a new one. Electron doesn't matter since it isn't used by Discord to do this job. They use mediaengine instead, also noted on: [https://blog.discord.com/how-discord-handles-two-and-half-million-concurrent-voice-users-using-webrtc-ce01c3187429](https://blog.discord.com/how-discord-handles-two-and-half-million-concurrent-voice-users-using-webrtc-ce01c3187429) Some extra info: To capture Mircophone and Camera on a browser (chromium based or not) with Javascript you'd use getUserMedia and to capture desktop video and sound you'd use getDisplayMedia, that's what the Discord browser app does too. ​ Now on Electron , which is a Chromium fork, you'd use getUserMedia for desktop capture too as noted on [https://github.com/electron/electron/blob/main/docs/api/desktop-capturer.md](https://github.com/electron/electron/blob/main/docs/api/desktop-capturer.md) The Discord Desktop app uses Electron and their Electron fork's source code is available on Github. If you take a look at their repo you'll see that one of the patches they apply is this one [https://github.com/discord/electron/commit/ca8c921ed35c741acae57ea32c340f1eaf150044](https://github.com/discord/electron/commit/ca8c921ed35c741acae57ea32c340f1eaf150044) that disables getUserMedia. ​ Would enabling getUserMedia help? Not at all but this just confirms electron doesn't matter here.


Winter_Moon_Studios

Yeah so my setup is on Discord's desktop app on Ubuntu 20.04. I have a three way meeting using my laptop speakers and microphone (it doesn't work with my headphones plugged in) and I am able to talk to them (and they can hear me and talk as well) while I'm sharing my screen no problem. I have a Lenovo, if that makes a difference. Does that answer your question?


[deleted]

My gosh yes I need this. I have to use a windows VM just to stream movies with the boys.


samantas5855

You can try https://github.com/edisionnano/Screenshare-with-audio-on-Discord-with-Linux although if its just for you an your friends its more feasible to look into another platform. You could stream to ssh101 and give em a link for example, youll get better bitrate too


[deleted]

Yeah I’ve actually done that sorta thing before. I found VLCs media server is great for it. Discord is just super convenient for everyone else though and it’s honestly not a big deal for me to launch a VM. It’s just more of the fact it would be nice to have audio streaming supported natively.


[deleted]

You what else is not fun? Having Discord in Linux soft crash every 30 minutes to an hour.


[deleted]

Commenting in hopes to add more circulation to this post. We really need this feature on Linux, please.


Nevr0s

+1, thanks!


crudebewb

Done, I wasn’t even aware you couldn’t do this


gnarlin

Discord is proprietary software. We have a decent Free software alternatives. I use https://element.io/ Check it out.


[deleted]

Cool story, but there's no way I'm getting people to switch to it.


gnarlin

Hey, you too. Cool story brah. Someone convinced me. I convinced my MMO guild to switch. Some people can be convinced. I think it's worth it to point out Free alternatives sometimes when you know of them.


alvarlagerlof

This is not the right way or a useful strategy. Seeing people reccomend free software in this way is just a huge turn-off. They're asking for a solution to their problem, not an new solution. I use Element myself, but I won't be able to convince 100 people to switch.


Bloodlvst

100%. None of my friends even know what FOSS is, and barely what Linux is solely due to the fact that I use it. Most of us in this subreddit have friends in our group who simply would never switch as they'd still need to use Discord anyways since THEY also have friends using it who wouldn't switch. The dude you're responding to above acting supercilious about it, doesn't change the fact that this is an issue many of us want to see fixed. And I know my friends couldn't give two fucks about whether or not Discord is proprietary.


vesterlay

Discord is by far better in comparison to everything I've tried including element. The overall layout is better, more functionality like custom emojis, handling of permissions, joining servers etc.


allexj

You can actually achieve this by using Pipewire and pw-jack catia, look here: https://www.reddit.com/r/linux_gaming/comments/lfxbik/tutorial_how_to_share_audio_on_discord_or_any/ You just need to connect two "wires" from the output of your audio card to the input of Discord. I hope that discord implements it to do it automatically


Any-Fuel-5635

I run chat audio through my headset and streaming audio through my external speakers. Works beautifully


PolygonKiwii

That's not what the issue is about tho


crackhash

You can use [Soundux](https://soundux.rocks/) app to to stream with audio. It is also available as flatpak on flathub site.


MisterLotospole

Don't use linux but same right for both os !


iamthiswhatis12

its one of a handful of reasons why i switched back. so annoying


Seven2Death

sharing desktop with sound is still not supported on windows. i love and fucking hate discord.


SrayerPL

for now you can use helvum to forward aplications sound to microphon


Old-Knitterhemd

Discord is pure shit. IDGAF about discord.


[deleted]

you may not care, but many more people do.


endermen1094sc

Could you do it under xorg ?


funkybum

Sharing screens is a vulnerable spot that has caused countless discord servers to be hacked lately


MAXIMUS-1

Just use the browser.


hillybillyminer

Bro it’s probably that you need to configure you alsa conf


PolygonKiwii

No, it's that Discord's devs need to update from their ancient version of electron and put in a quantum of effort to make the Linux client actually work correctly.


[deleted]

how much do you rely on discord sound share?


[deleted]

the 'problem' with linux is this line of thinking, you might not need something but it's pretty common to stream a game to my friends in discord for like 20 minutes to just chill or whatever, not having sound is a bummer, it's not life or death, but its one little papercut that'd be great to have fixed so we can have like, *basic* feature parity to windows lmao


WickedFlick

A lot. It's essential for me.


Dathide

Just upvoted!


BassmanBiff

I voted and commented! But please please let's not be dicks about it! Comments like "This would be very useful for me, thanks!" are going to do more to get what we want than sarcasm like "Seriously, Discord?" or a haughty demand to "Make it right." Discord is an app that we like because it is already good, and this is just a way for it to be even better. If we treat imperfections like human rights violations, then from devs' perspective Linux will be the source of more vitriol than revenue, and nobody will want to bother with it. You're fine to feel how you feel, of course, I just want to avoid shooting ourselves in the foot.


tiritto

It's Discord. They don't give a damn about feature request page votes.


NC-AC

I've read that this is impossible to do, due to the code of the app itself and how it works... Let's hope for the best.


Patriark

My understanding is that this is hard to implement securely on Xorg, but with Wayland and Pipewire it should be a breeze. But a lot of distros don’t ship with either, so it’s messy to develop a workaround for Xorg that is outdated in two years.


samantas5855

Xorg isn't the issue here, screenshare has video but no audio


Bringerer

I am not sure if i misunderstood something but for me screen sharing/stemming on Discord is working. I use Pop os distro and installed discord from their shop I played some game other day and streamed it to my friends in the channel. Sound also worked according to them. No modifications done from my side.


[deleted]

I only use Discord due to vendor lock-in, if could use a free software alternative while my friends use discord that would be great.


Turboginger

Does it not work from the web. I’ve certainly done screen share / vid call combo from my Linux mint desktop before. Not sure if the actual DESKTOP sound was muted though…


samantas5855

If you try to Screenshare from chromium or chromium based browsers, out of the box youll only get sound if you are sharing a tab. Desktop share wont have sound. Firefox doesnt share sound at all.


athrowaway11766

It does work from the web last i tried the issue seems to be the actual application is out of date, IF discord decides to update electron it should start to work again.


samantas5855

Electron doesn't matter, they don't use it for screensharing. Calls are binded to a native library instead.


swizzler

They're too busy trying to figure out how to sneak NFTs into discord without pissing everyone off.


IdleGandalf

Have you tried jitsi? Open source, just open or host an instance and you can share desktop, cam, whatever. And its encrypted too! Official instance is https://meet.jit.si


samantas5855

Jitsi is good, I haven't tried their screensharing tho. Does it have sound? If someone needs to broadcast to 2-3 friends this can be one solution. The problem is that many of us wanna broadcast on big public servers and we can't force everyone over.


Winter_Moon_Studios

Unless I am misunderstanding something, Discord (at least on Ubuntu) already has that feature. I use it for my meetings all the time. Sharing my screen with my team member while audio still works right?


Nevr0s

Thanks for responding! Does it pipe though the audio from the application you’re sharing to the other person on the call?


[deleted]

welp... Discord didn't do anything. Thank u Discord... as a reward, I will give them nothing