Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

overhaul & improve Linux screenshare #489

Merged
merged 52 commits into from
Apr 17, 2024
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
05df122
added hardware accel flags
Mar 31, 2024
1e57235
removed useless flags
Apr 5, 2024
83b7dd0
removed discord's arbitrary limit to bitrate
Apr 7, 2024
4152338
removed unnecessary flags
Apr 7, 2024
03a1806
fixed patch to not rely on minified variable names
Apr 7, 2024
dcf18ad
hopefully this works im bad at regex
Apr 7, 2024
27321eb
made better
Apr 7, 2024
040a82c
updated files to match vencord upstream
Apr 7, 2024
c571637
fix to allow compile
Apr 7, 2024
f81f3df
fix a stupid issue that i couldnt even see
Apr 7, 2024
2994065
fixed a few issues, removed a bunch of flags, and the side effect is …
Apr 7, 2024
06247ae
merged patches
Apr 7, 2024
060c522
removed another unneeded flag
Apr 7, 2024
2e153c1
NOW i removed the flag
Apr 7, 2024
4fad164
fixed my idiocy
Apr 7, 2024
07c7e22
fixed things who even knows what i did anymore
Apr 8, 2024
f18051e
fixed colors
Apr 8, 2024
ae9b4b5
fixed stream resolution and framerate selection
Apr 8, 2024
d259c57
only enable hardware acceleration if the user enables it in settings
Apr 9, 2024
5833627
Merge branch 'main' into hardware-accel
catgirlcataclysm Apr 9, 2024
80c9b5a
changed wording
Apr 9, 2024
c9229d7
Merge branch 'hardware-accel' of https://github.com/kaitlynkittyy/Ves…
Apr 9, 2024
419bfd0
begin reworking screenshare modal to properly fit all elements
Apr 9, 2024
c9b1c65
updated some stuff and fixed window resizing breaking streams
Apr 9, 2024
5d3cf70
updated patch to reference new discord API
Apr 9, 2024
c49dc03
yeah
Apr 10, 2024
ac3d2cb
Fixed stream starting and viewing
PolisanTheEasyNick Apr 10, 2024
83d4164
Fixed res and fps changing.. one more time
PolisanTheEasyNick Apr 10, 2024
006f4e9
Fixed setting stream settings while changing window
PolisanTheEasyNick Apr 10, 2024
45e4e1b
fixed formatting
Apr 11, 2024
b9b3361
started styling the screenshare picker and added a change window butt…
Apr 11, 2024
c345332
Fixed changing stream quality description
PolisanTheEasyNick Apr 11, 2024
6bb5f8a
major changes to the UI/UX of the screenshare modal
Apr 11, 2024
976c000
Revert "major changes to the UI/UX of the screenshare modal"
Apr 11, 2024
2be6b60
Properly rewrote modal UI/UX (not complete)
Apr 11, 2024
b68e4d1
fixed patch to properly update encoder resolution
Apr 12, 2024
31907d9
added missing fields to constraints
Apr 12, 2024
8f62a2e
add more params for testing
Apr 12, 2024
d0ff619
Revert "add more params for testing"
Apr 12, 2024
a2dcb90
rebase off of latest commit
Apr 14, 2024
4ee431b
Merge branch 'main' into hardware-accel
catgirlcataclysm Apr 14, 2024
60ab3c3
added contenthint picker to new ui
Apr 14, 2024
a582eec
fixed hw accel flags
Apr 14, 2024
f1f1c9a
removed unnecessary logs
Apr 14, 2024
cb8601b
applied resolution bounds to try and constrain it to discord's suppor…
Apr 14, 2024
3fdc55a
Update ScreenSharePicker.tsx
catgirlcataclysm Apr 14, 2024
11f9970
Major screen share refactor
PolisanTheEasyNick Apr 16, 2024
1d5000e
impoved stream quality changing stability
PolisanTheEasyNick Apr 17, 2024
6c52350
removed then() after submit
PolisanTheEasyNick Apr 17, 2024
520b5d0
clean up code
Vendicated Apr 17, 2024
1763bbd
make right column card fill empty space
Vendicated Apr 17, 2024
0cfb1f6
Update screenShareFixes.ts
Vendicated Apr 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
"@typescript-eslint/parser": "^7.2.0",
"@vencord/types": "^0.1.2",
"dotenv": "^16.4.5",
"electron": "^29.1.1",
"electron": "29.1.6",
Vendicated marked this conversation as resolved.
Show resolved Hide resolved
"electron-builder": "^24.13.3",
"esbuild": "^0.20.1",
"eslint": "^8.57.0",
Expand Down
8 changes: 4 additions & 4 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 17 additions & 1 deletion src/main/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,23 @@ function init() {

// work around chrome 66 disabling autoplay by default
app.commandLine.appendSwitch("autoplay-policy", "no-user-gesture-required");

app.commandLine.appendSwitch(
"enable-features",
"UseOzonePlatform,VaapiVideoDecodeLinuxGL,VaapiVideoEncoder,WebRTCPipeWireCapturer,VaapiVideoDecoder"
catgirlcataclysm marked this conversation as resolved.
Show resolved Hide resolved
);
app.commandLine.appendSwitch("use-vulkan");
app.commandLine.appendSwitch("use-gl", "angle");
app.commandLine.appendSwitch("use-angle", "gl");
catgirlcataclysm marked this conversation as resolved.
Show resolved Hide resolved
app.commandLine.appendSwitch("ignore-gpu-blocklist");
catgirlcataclysm marked this conversation as resolved.
Show resolved Hide resolved
app.commandLine.appendSwitch("ozone-platform-hint", "wayland");
catgirlcataclysm marked this conversation as resolved.
Show resolved Hide resolved
// WinRetrieveSuggestionsOnlyOnDemand: Work around electron 13 bug w/ async spellchecking on Windows.
// HardwareMediaKeyHandling,MediaSessionService: Prevent Discord from registering as a media service.
//
// WidgetLayering (Vencord Added): Fix DevTools context menus https://github.com/electron/electron/issues/38790
app.commandLine.appendSwitch(
"disable-features",
"WinRetrieveSuggestionsOnlyOnDemand,HardwareMediaKeyHandling,MediaSessionService,WidgetLayering,UseChromeOSDirectVideoDecoder"
catgirlcataclysm marked this conversation as resolved.
Show resolved Hide resolved
);
catgirlcataclysm marked this conversation as resolved.
Show resolved Hide resolved
// WinRetrieveSuggestionsOnlyOnDemand: Work around electron 13 bug w/ async spellchecking on Windows.
// HardwareMediaKeyHandling,MediaSessionService: Prevent Discord from registering as a media service.
//
Expand Down
14 changes: 14 additions & 0 deletions src/renderer/components/ScreenSharePicker.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,20 @@
match: /this.localWant=/,
replace: "$self.patchStreamQuality(this);$&"
}
},
{
find: "x-google-max-bitrate",
replacement: {
match: /"x-google-max-bitrate=".concat\(\i\)/,

Check failure on line 66 in src/renderer/components/ScreenSharePicker.tsx

View workflow job for this annotation

GitHub Actions / test

Unnecessary escape character: \i
replace: '"x-google-max-bitrate=".concat("80_000")'
}
},
{
find: "x-google-max-bitrate",
catgirlcataclysm marked this conversation as resolved.
Show resolved Hide resolved
replacement: {
match: /;level-asymmetry-allowed=1/,
replace: ";b=AS:800000;level-asymmetry-allowed=1"
}
}
],
patchStreamQuality(opts: any) {
Expand Down
Loading