Webcam with OBS needs double launching

When I launch OBS and have a webcam added, it will not show up visually, but OBS still knows its there and even lists options specific to that webcam (not all cameras have the same properties in OBS).

In order to get it to show, I need to close OBS and open it again, then the camera is working. This happens with things like Cheese (Apps/Cheese - GNOME Wiki!) sometimes too, where Cheese will just crash or stall for a long time, but the second time I run it the camera shows up. Weirdly things like Discord or Teams don’t have this problem but I think this might be because they inherently try to connect multiple times before giving up.

Tested with different webcams and USB ports. Don’t think it’s hardware. I’ve ignored this for quite some time because I thought it would just go away after a few updates but it’s really adding up in frustration and time lost. Anyone have a clue why this is happening or what I can do to fix it?

specs:

Device-1: NVIDIA GA104 [GeForce RTX 3070] driver: nvidia v: 525.85.05
  Device-2: Elgato Systems GmbH Facecam type: USB
    driver: hid-generic,usbhid,uvcvideo
  Display: x11 server: X.Org v: 21.1.6 with: Xwayland v: 22.1.7 driver: N/A
    resolution: 1: 1080x1920~60Hz 2: 900x1440 3: 2560x1440
  API: OpenGL v: 4.6.0 NVIDIA 525.85.05 renderer: NVIDIA GeForce RTX
    3070/PCIe/SSE2