A custom discord client that supports streaming with audio on Linux.
Go to file
Malte Jürgens 38bcc30ed4
display version number correctly
2022-07-28 18:13:18 +02:00
assets implement automatic versioning 2022-07-28 17:34:54 +02:00
scripts add install script 2022-07-16 22:32:01 +02:00
src implement automatic versioning 2022-07-28 17:34:54 +02:00
submodules fix submodule version 2022-07-26 16:50:36 +02:00
.gitignore Initial commit 2022-07-07 21:21:25 +02:00
.gitmodules use rohrkabel as submodule and update it to v1.2 2022-07-26 16:33:34 +02:00
CMakeLists.txt implement automatic versioning 2022-07-28 17:34:54 +02:00
LICENSE fix license 2022-07-18 21:07:10 +02:00
README.md update readme 2022-07-27 19:49:49 +02:00
resources.qrc Initial commit 2022-07-07 21:21:25 +02:00
version.cmake implement automatic versioning 2022-07-28 17:34:54 +02:00

README.md

discord-screenaudio

A very WIP custom discord client that supports streaming with audio on Linux, made possible by the great work of @edisionnano and the Rohrkabel library by @Curve.

Screenshot_20220718_194357

The purpose of this project is not to provide an alternative to the original Discord client. Rather, it should be used in addition to the original client in case you want to stream something, maybe used with a second account. For anything else, this client has way too many things that work less well than in the original client.

Known Issues

  • Only works with PipeWire
  • Only works on X11
  • Can only share primary screen (no other screens or specific applications) (see #1)

Installation

If you are using Arch, you can build and install from the AUR. If you aren't, you will have to build it yourself.

Building from Source

Requirements

  • Basic building tools
  • CMake
  • Qt5 and QtWebEngine
  • PipeWire (it currently doesn't work with PulseAudio)
  • Git

On Debian: apt install -y build-essential cmake qtbase5-dev qtwebengine5-dev pkg-config libpipewire-0.3-dev git

Building

First, clone the repository:

git clone https://github.com/maltejur/discord-screenaudio.git
cd discord-screenaudio

Then, to build the program, run this in the source directory:

cmake -B build
cmake --build build --config Release

And then to optionally install it, run:

sudo cmake --install build

How it works

This whole project is based on this repository, which very nicely explains how to stream audio in the web version of Discord. Basically: a virtual microphone is created which captures the application audio, and this microphone is then fed to the Discord stream by intercepting a API call of Discord.

License

Copyright (C) 2022 Malte Jürgens

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.