From d126b89edce7c942feca1c010d263e1e3db50295 Mon Sep 17 00:00:00 2001 From: thororen1234 <78185467+thororen1234@users.noreply.github.com> Date: Thu, 5 Jun 2025 13:51:37 -0400 Subject: [PATCH] Fixes --- README.md | 3 +- .../streamingCodecDisabler/index.ts | 51 ++++++++++--------- 2 files changed, 30 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index f9f7103e..330c7b5d 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ You can join our [discord server](https://discord.gg/5Xh2W87egW) for commits, ch ### Extra included plugins
-183 additional plugins +184 additional plugins ### All Platforms @@ -160,6 +160,7 @@ You can join our [discord server](https://discord.gg/5Xh2W87egW) for commits, ch - StatusPresets by iamme - SteamStatusSync by niko - StickerBlocker by Samwich +- StreamingCodecDisabler by davidkra230 - TalkInReverse by Tolgchu - TeX by Kyuuhachi - TextToSpeech by Samwich diff --git a/src/equicordplugins/streamingCodecDisabler/index.ts b/src/equicordplugins/streamingCodecDisabler/index.ts index a34da296..47a38112 100644 --- a/src/equicordplugins/streamingCodecDisabler/index.ts +++ b/src/equicordplugins/streamingCodecDisabler/index.ts @@ -9,9 +9,9 @@ import { EquicordDevs } from "@utils/constants"; import definePlugin, { OptionType } from "@utils/types"; import { findStoreLazy } from "@webpack"; -let mediaEngine = findStoreLazy("MediaEngineStore"); +const mediaEngine = findStoreLazy("MediaEngineStore"); -let originalCodecStatuses: { +const originalCodecStatuses: { AV1: boolean, H265: boolean, H264: boolean; @@ -21,27 +21,30 @@ let originalCodecStatuses: { H264: true }; +const settings = definePluginSettings({ + disableAv1Codec: { + description: "Make Discord not consider using AV1 for streaming.", + type: OptionType.BOOLEAN, + default: false + }, + disableH265Codec: { + description: "Make Discord not consider using H265 for streaming.", + type: OptionType.BOOLEAN, + default: false + }, + disableH264Codec: { + description: "Make Discord not consider using H264 for streaming.", + type: OptionType.BOOLEAN, + default: false + }, +}); + export default definePlugin({ name: "StreamingCodecDisabler", - description: "Disable codecs for streaming of your choice! (for multi-gpu setups and forcing encoding on a non-primary (and less capable) gpu)", + description: "Disable codecs for streaming of your choice", authors: [EquicordDevs.davidkra230], - settings: definePluginSettings({ - disableAv1Codec: { - description: "Make Discord not consider using AV1 for streaming.", - type: OptionType.BOOLEAN, - default: false - }, - disableH265Codec: { - description: "Make Discord not consider using H265 for streaming.", - type: OptionType.BOOLEAN, - default: false - }, - disableH264Codec: { - description: "Make Discord not consider using H264 for streaming.", - type: OptionType.BOOLEAN, - default: false - }, - }), + settings, + patches: [ { find: "setVideoBroadcast(this.shouldConnectionBroadcastVideo", @@ -51,6 +54,7 @@ export default definePlugin({ }, } ], + async updateDisabledCodecs() { mediaEngine.setAv1Enabled(originalCodecStatuses.AV1 && !Settings.plugins.StreamingCodecDisabler.disableAv1Codec); mediaEngine.setH265Enabled(originalCodecStatuses.H265 && !Settings.plugins.StreamingCodecDisabler.disableH265Codec); @@ -58,16 +62,17 @@ export default definePlugin({ }, async start() { - mediaEngine = mediaEngine.getMediaEngine(); - let options = Object.keys(originalCodecStatuses); + const engine = mediaEngine.getMediaEngine(); + const options = Object.keys(originalCodecStatuses); // [{"codec":"","decode":false,"encode":false}] - let CodecCapabilities = JSON.parse(await new Promise((res) => mediaEngine.getCodecCapabilities(res))); + const CodecCapabilities = JSON.parse(await new Promise(res => engine.getCodecCapabilities(res))); CodecCapabilities.forEach((codec: { codec: string; encode: boolean; }) => { if (options.includes(codec.codec)) { originalCodecStatuses[codec.codec] = codec.encode; } }); }, + async stop() { mediaEngine.setAv1Enabled(originalCodecStatuses.AV1); mediaEngine.setH265Enabled(originalCodecStatuses.H265);