obsproject / obs-studio

OBS Studio - Free and open source software for live streaming and screen recording
https://obsproject.com
GNU General Public License v2.0
58.89k stars 7.84k forks source link

Windowed Projector issues with Discord Streaming #10235

Open N-SPC700 opened 7 months ago

N-SPC700 commented 7 months ago

Operating System Info

Windows 10

Other OS

No response

OBS Studio Version

30.0.2

OBS Studio Version (Other)

No response

OBS Studio Log URL

https://obsproject.com/logs/4NBvXsLZIcykQYA9

OBS Studio Crash Log URL

No response

Expected Behavior

In older OBS versions (with the "old UI"), streaming the Windowed Projector on Discord simply streamed the window; nothing more or less.

Current Behavior

In actuality, the window simply pads itself out with the entire main window(?) albeit cropped, so there is a lot of major letterboxing and borders going on, making the actual "viewport" of the actual content desired to be shown super small, since the majority of it is padded out needlessly.

Steps to Reproduce

  1. Select input capture device source
  2. Use the "resize output" option to make it fill the entire screen
  3. Open a Windowed Projector window of any kind
  4. (optional) Use resize output option
  5. Start streaming the window over Discord to which the window is also excessively padded.

Anything else we should know?

Capture device: GV-USB2 Discord client is always kept up to date. I doubt the log report is very useful in this instance. I included it however, as it is mandatory for a bug report.

Here's some images of this in action; This first one is what the window looks like itself: image

Same window, streamed over Discord: image

Same window, but using an older OBS version that doesn't trigger this padding issue: image

Another thing to note is that Discord very rarely can stream the "New UI" windowed projector without issue, but once it latches onto the "padding" it will stay that way.

Fenrirthviti commented 7 months ago

I'm reasonably sure this isn't anything we can control, it was a change of capture method on Discord's side, not ours.

WizardCM commented 7 months ago

The "padding" you're seeing is the border around the canvas in the main window. Basically, Discord is picking up the main window rather than the projector.

N-SPC700 commented 7 months ago

I had a hunch this was a Discord issue. I never had the issue happen with the "Old UI", though, so I've always felt it was something on the end of OBS. I'm unsure of a workaround to this, yet, so it'd be nice to figure that out sometime.

Fenrirthviti commented 7 months ago

Presumably by the "Old UI" you're referring to the theme, which is just that, a theme. There were no meaningful code changes to OBS' UI with the new theme, and the old theme is still available in Settings -> General.

A more helpful point would be what version you first encountered the issue on, and if downgrading to an older version corrects the issue or not.

I still suspect that it's just a coincidence though, and it will affect pretty much all versions of OBS.

N-SPC700 commented 7 months ago

I used to use version 27.1.3, which is what I used for my tests here. I never had any issues with it and streaming the window to Discord. I deferred updates for quite a while, so only when I decided to update (and after having to also update my GPU drivers to work with the new version) did this problem occur.

I should note that the only "new" version I have tested is the latest one mentioned (30.0.2) and I have actually deliberately tried to get Discord to detect that one in the wrong manner, but never managed to.

Kobi-Blade commented 7 months ago

This is a known issue on Discord with NVIDIA GPUs, this is due to some incompatibilities between Discord and NVIDIA drivers.

Unfortunately, this is something that OBS cannot fix on their end, as it requires NVIDIA to update their drivers.

I suggest that you contact NVIDIA support and report this issue to them, as for possible solutions:

Fenrirthviti commented 7 months ago

@N-SPC700 Apologies, but your comment is a bit hard to understand what exactly was tested.

Can you confirm that you rolled back to 27.1.3, and the issue goes away entirely, but when upgrading back to 30.0.2, the issue returns? I understand that this might not have started until you upgraded, but that could have been a coincidence, and I want to ensure that you actually rolled back and confirmed the issue was gone on 27.1.3.

I have tested and I have the issue on both versions. It sometimes works, sometimes doesn't, because as mentioned it's likely a bug on either Discord or NVIDIA's side.