I'm trying to stream a VR game to my friends on Discord, but when anyone streams (Screen Share) a game or any application on Discord, Discord only captures the audio coming from a window. And when I play a game such as BeatSaber when there's a lot of movement, they can hear me breathing heavily through my mic, which can disturb other users in the channel.
What I have at the moment is I'm using OBS to capture the OpenVR input (From SteamVR), and I also placed a webcam stream coming from the cameras on the VR headset in the top left corner of the screen, then I use the OBS Windows Projection feature to display the OBS view without actually going live or recording anything, which saves alot of system resources.
What I want to do is find a way that I can combine the audio stream coming from my VR headset, and the OBS projection, into one desktop Window with sound, and have that window be able to be screen shared in Discord, like any other game. That way, if people want to watch me play Beat Saber and breath heavily while doing so, then they can just watch the Screen Share, without them turning me down volume wise on Discord.
I'm very familar with VoiceMeeter, can I use that if requested. The only thing that might be of concern with combining the video and audio is that I might hear myself talking while I play the game, but I might be able to fix by just muting the window in Windows 10 audio settings, and hopefully after that the audio will still be able to be picked up by Discord.
If anyone has any suggestions, I would be be extremely grateful.
Best Answer
I've solved it! I looked around for something like this, and I found out that VLC media player can open capture devices with an audio device, and do it with low latency. What I did was:
DirectX (DirectDraw) video outputSee my edit belowI hope this was helpful for someone, or anyone coming across this in the future.
Edit 1: Setting the Video output back to Automatic seems to give me better results now (Window decorations not visibile in Discord, which is more desirable) so I'd say use that instead.
Edit 2 (IMPORTANT): I found that using VLC, the video was getting compressed, and it came out blurry for me. So what I've decided to do instead is create a Windowed Projection from OBS, then in the Advanced Audio Settings in OBS set your Audio Sources to --> Audio Monitoring --> Monitor and Output. I'm doing this so that Discord can pick up the audio from OBS, while still grabbing the video from the Windowed Projection. The problem is now is that you have feedback loop going now, which is not what you want. So in order to solve that (You need to be running Windows 10) we need to route the audio from the OBS Application from Windows Settings to an alternate not-used audio device. Luckily I have VirtualAudio Cable, so I can just route the audio to Cable-C-Input, but if you don't have that then you can use any unused audio device you want to prevent the feedback loop, such as the mentioned above Realtek Digital Ouput, but then again YMMV.