johnboiles / obs-mac-virtualcam

ARCHIVED! This plugin is officially a part of OBS as of version 26.1. See note below for info on upgrading. 🎉🎉🎉Creates a virtual webcam device from the output of OBS. Especially useful for streaming smooth, composited video into Zoom, Hangouts, Jitsi etc. Like CatxFish/obs-virtualcam but for macOS.
GNU General Public License v2.0
4.07k stars 161 forks source link

OBS Virtual Cam sometimes disabling built-in camera #251

Open louneskmt opened 3 years ago

louneskmt commented 3 years ago

Describe the issue The OBS virtual camera seems to have replaced the default built-in camera. Indeed, when I want to use the normal camera (so OBS is not running), softwares (like Firefox) chooses the virtual one by default, and the attached image shows up instead. And some apps doesn't let the user choose which camera to use, or its hard to find. Would the best be to install the virtual camera only when needed? Or, how can I set the system-wide default camera?

To Reproduce Steps to reproduce the behavior:

  1. Stop OBS
  2. Use the camera with an app

Screenshots

Desktop:

sefsh commented 3 years ago

I'm experiencing this too: only having OBSVC as the choice of camera. This can usually be worked around by first accepting OBSCV as video source, then changing the video source in the web app settings. I have the same issue with source limitation for audio as well.

gxalpha commented 3 years ago

Every software should have a way of setting a different camera. This is not related to the plugin.

Firefox should let you choose on start: https://support.mozilla.org/en-US/kb/how-manage-your-camera-and-microphone-permissions Regarding Safari, the virtualcam shouldn't even work.

Uninstalling the virtualcam, while possible, needs you to completely delete it and reinstall it every time.

@yusf what do you mean with audio? This plugin doesn't even provide an audio output.

tokyorachel commented 3 years ago

This plugin was very helpful to me when it was first released and I appreciate the hard work that went into it, but I was also experiencing this problem. I the further found that uninstalling this made the issue much worse. (Uninstall with caution @louneskmt.)

I started noticing that any app that required use of my camera (Firefox, Zoom, Skype, Facetime) would sometimes only give me the option of selecting the OBS Virtual camera. I then uninstalled the Virtual Camera per the instructions in the Readme as I don't really need it anymore. Now NO camera can be selected in any of these apps.

It's certainly not an issue that's limited to Firefox as @gxalpha implies, and I don't entirely understand the haste in dismissing these reports. If there's more we can do to provide data to help debug the issue, I'm certainly happy to see what else I can provide.

I have restarted my computer, tried clearing the SMC, and still nothing. It's true it might not be the plugin creating issues, but right now it looks pretty conclusively to me like something in the plugin has interfered with recognition of with the built-in camera. My camera worked with the OBS Virtual Camera so I know the camera itself is not broken. However once I uninstalled the plugin, my camera has basically become bricked.

I am running HighSierra 10.13.6. I am going to attempt restoring the plugin to see if I at least get my camera back, but I would very much like to safely remove it from my computer at this point in time.

Zoom shows an empty camera select dropdown:

zoom

Facetime also stopped recognizing the built-in camera.

facetime
gxalpha commented 3 years ago

@tokyorachel

It's certainly not an issue that's limited to Firefox as @gxalpha implies, and I don't entirely understand the haste in dismissing these reports.

Many reports here aren't that well researched or don't explain the problem, and given that

I had to assume that this probably wasn't caused by this plugin.

Your report on the other hand is more detailed, I can understand what you did, and it contains attempts at fixing the problem. That makes me believe that it has something to do with the plugin.

You say you used it from when it was released, did it also cause the problem back then? Also, how far into the past would that be? That would give some information at wether it also was caused by the DAL plugin.

Could you try checking if the cameras (Virtualcam as well as FaceTime Camera) maybe appear in Cameo? I'd guess that if they are still loaded, they should be visible there, from my experience that tool is the most forgiving when it comes to what is shown. Also while we're at it, could you check if the plugin was completely removed? To check this, go to Finder -> Go to -> Go to folder -> Enter /Library/CoreMediaIO/Plug-Ins/DAL and look for a obs-mac-virtualcam.plugin

I have restarted my computer, tried clearing the SMC, and still nothing. It's true it might not be the plugin creating issues, but right now it looks pretty conclusively to me like something in the plugin has interfered with recognition of with the built-in camera.

I agree. Unfortunately, rebooting seems to not always fix stuff with DAL, it behaves very weirdly and sometimes problems are just magically gone after a while (Though I'm mostly referring to #160 here). In case the problem resolves itself after a while (honestly though I don't believe it does) it would be nice if you reported back.

I am running HighSierra 10.13.6. I am going to attempt restoring the plugin to see if I at least get my camera back, but I would very much like to safely remove it from my computer at this point in time.

Did that work? Also, did OBS see the FaceTime camera before? Or how exactly did you get your picture into OBS in the past?

But unfortunately since I can't reproduce this (on macOS 11.0.1), I'm personally in the dark, so these questions are just wild guesses.

louneskmt commented 3 years ago

Hi @gxalpha!

  • later the fact I didn't get any replies

Sorry for the late reply, I was quite busy this week.

Every software should have a way of setting a different camera. This is not related to the plugin.

Firefox should let you choose on start: https://support.mozilla.org/en-US/kb/how-manage-your-camera-and-microphone-permissions

  • the first report giving two examples that don't really make sense because nobody got Safari to work, Firefox seems to have this setting

Regarding what you told me, Firefox does let the user choose the camera, but the built-in one is not available anymore after the plugin installation:

Screenshot 2020-12-13 at 12 50 23

Sorry for not having said that explicitly.

I also noticed afterwards that Zoom or Discord detect the built-in FaceTime camera, but it's not the default one (you need to the settings to manually set Facetime as active camera).

Screenshot 2020-12-13 at 12 54 39

What I'm saying is: does the plugin set its virtual cam as the system-wide default cam? Because after the plugin installation, the virtual cam was set as default on all my softwares, which is quite annoying as I use it not very often.

I the further found that uninstalling this made the issue much worse. (Uninstall with caution @louneskmt.)

I was thinking about uninstalling it but you scared me a little haha @tokyorachel

Thanks for your reply.

gxalpha commented 3 years ago

@louneskmt Ok this is getting more and more weird

does the plugin set its virtual cam as the system-wide default cam?

I am not completely sure, for me it didn't - But that might be macOS behaving differently for different people on differnt hardware

Regarding what you told me, Firefox does let the user choose the camera, but the built-in one is not available anymore after the plugin installation

This looks like the problem @tokyorachel has - what is weird is that some apps do show it to you, including zoom which didn't work for them 🤔

This will have to get looked into further

tokyorachel commented 3 years ago

Just a quick follow up to my post above @gxalpha: I'm afraid I am not sure at what point the built-in camera had begun disappearing from my selection options. I am not using video conferencing on this laptop as much as I was earlier this year. It looks like the plugin version is 1.1.0 if that helps at all.

I can also confirm that I had completely removed the obs-mac-virtualcam.plugin from the DAL folder. In fact, it seems I might have been overzealous in what I removed from the DAL folder. On the plus side, completely wiping and restoring the contents of the DAL folder means that I can now see both camera options again (the OBS Virtual Camera and and the built-in camera). So depending on how brave you feel, that might still be a fix for you @louneskmt.

cameras
johnboiles commented 3 years ago

This is baffling. It shouldn't be possible for the virtual camera to affect the functionality of the built-in webcam, especially when the plugin has been deleted, but who knows, computers are weird. Let's dig deeper

does the plugin set its virtual cam as the system-wide default cam?

I'm not sure there is even such a thing on macOS as a system-wide default cam. I haven't seen any API or capability like that. I think each host app can pick whichever camera it wants to use by default. If anyone finds any docs about this please post them.

@tokyorachel @louneskmt the screenshots are helpful, thank you. Can y'all share a bit more about what hardware y'all are on? Which Macs do y'all have?

Anyone trying to debug this issue should do the following:

johnboiles commented 3 years ago

I experienced something like this when upgrading from the plugin in this repo to OBS 26.1 w/ Big Sure. My cameras disappeared in some apps. Probably depends how the apps are architected to read from cameras.

Seemed like the old plugin was cached (Google: dylib caching in BigSur) until I explicitly deleted it and re-installed it:

sudo rm -rf /Library/CoreMediaIO/Plug-Ins/DAL/obs-mac-virtualcam.plugin
sudo rm -rf /Library/Application\ Support/obs-studio/plugins/obs-mac-virtualcam

Then I re-installed the plugin in OBS 26.1 (Tools -> Start Virtual Camera, then type password). Then I restarted any host software (Chrome, Zoom, etc). And I was able to get everything running again without rebooting.