UnityCapture icon indicating copy to clipboard operation
UnityCapture copied to clipboard

OBS Freezing Constantly

Open guiglass opened this issue 1 year ago • 10 comments

Hi, after activating DirectShow then starting OBS when I click add Video Capture Device the OBS application freezes. This never used to happen so I think it's OBS related but maybe it's DirectShow or something else. Anyway can someone help me understand why it's no longer possible to use UnityCapture with OBS??

guiglass avatar Mar 05 '23 09:03 guiglass

Hi, after activating DirectShow then starting OBS when I click add Video Capture Device the OBS application freezes. This never used to happen so I think it's OBS related but maybe it's DirectShow or something else. Anyway can someone help me understand why it's no longer possible to use UnityCapture with OBS??

It has been solved, in my updated Fork Radium-bit/UnityCapture

Radium-bit avatar Mar 10 '23 08:03 Radium-bit

This sounds great, I did test the patch and it works. Unfortunitely OBS plans to block the UnityCapture .dlls

So I think that fork will no longer work in OBS after the next update. They recommend to hack the .dll names or whatever. So maybe it would be wise to fix the .dll in your fork so they are not blacklisted by OBS?

guiglass avatar Mar 11 '23 15:03 guiglass

Uhh, I'm rarely able to help out here anymore because nowadays I'm so removed from any Unity development so I can't even test UnityCapture anymore. But if there's some code people are confident I should merge or me just rebuilding this project and putting up a new release without being able to test it myself I think I can do that. Sorry about being so disconnected but maybe we can avoid getting blocked or getting unblocked in the future...

schellingb avatar Mar 11 '23 15:03 schellingb

Hi, after activating DirectShow then starting OBS when I click add Video Capture Device the OBS application freezes. This never used to happen so I think it's OBS related but maybe it's DirectShow or something else. Anyway can someone help me understand why it's no longer possible to use UnityCapture with OBS??

It has been solved, in my updated Fork Radium-bit/UnityCapture

Thank you so much man. Can I ask out of interest what change you had to make to prevent OBS from crashing?

nickleijenhorst avatar Mar 18 '23 12:03 nickleijenhorst

Hi, after activating DirectShow then starting OBS when I click add Video Capture Device the OBS application freezes. This never used to happen so I think it's OBS related but maybe it's DirectShow or something else. Anyway can someone help me understand why it's no longer possible to use UnityCapture with OBS??

It has been solved, in my updated Fork Radium-bit/UnityCapture

Thank you so much man. Can I ask out of interest what change you had to make to prevent OBS from crashing?

Sorry, I am not engaged in the development of UnityCapture, sorry for not being able to help you too much

Radium-bit avatar Mar 21 '23 08:03 Radium-bit

This sounds great, I did test the patch and it works. Unfortunitely OBS plans to block the UnityCapture .dlls

So I think that fork will no longer work in OBS after the next update. They recommend to hack the .dll names or whatever. So maybe it would be wise to fix the .dll in your fork so they are not blacklisted by OBS?

Hi, OBS here. Just want to clarify, we don't consider a rename a "hack". The issue is that without a name change, a .dll file could, or could not, have the fix. There's no way to tell, and since anyone can build a new file without the fix at any time, we can't even use "after X date" as a filter. Since the majority of the files with that name out there do not have the fix, we are opting to block it, because the alternative is leaving users with effectively a crash condition. Files that have had their name changed are more likely to contain the fix, and changing the filename is trivial. We understand that it's possible to have a file with the same name, that does have the fix, but we have no way of validating or confirming that, so we're taking the safe route of recommending that people also change the name.

To summarize, we simply recommend that any forks that want to avoid the .dll block in OBS also change the name of the generated .dll file, and from our observation, most already have. That's all.

Fenrirthviti avatar Apr 11 '23 21:04 Fenrirthviti

@Fenrirthviti Thank you for posting here. I think OBS's action is fair. As the author of this project I would like to better resolve this though. I'm still not 100% sure but I think a218037 is what I need to incorporate, then I can change the DLL names and make a new release. I will try to get around to do that when I have a free evening. Hopefully this is correct and won't cause more trouble :-)

schellingb avatar Apr 12 '23 02:04 schellingb

There's a few different approaches to the same fix floating around, let me check internally and see if there was any strong opinion on the "best" fix, and I will get back to you.

Fenrirthviti avatar Apr 12 '23 03:04 Fenrirthviti

Confirmed that the correct fix is already merged: https://github.com/schellingb/UnityCapture/commit/2eabf0f

All that needs to be done is new release + rename, and things should be good to go here.

Fenrirthviti avatar Apr 13 '23 00:04 Fenrirthviti

We did it everyone! Thank you very much to @Fenrirthviti for confirming the fix!! Sorry for the slow response and thanks for the patience to everyone here and in #30. If someone can confirm the new DLLs (now named without the "bit" suffix) work fine in OBS I'd be very grateful. Cheers!

schellingb avatar Apr 14 '23 15:04 schellingb