Your post encouraged me to try other settings and "Window capture (pipewire)" allows to select Zoom and it works for video capture.
I couldn't get that to work either. Still black. Good to hear it works for you.
...the OBS volume bar keeps moving in response to microphone. But my voice is not recorded.
If you've got a meter, then OBS is getting *something*. It's *probably* okay up to that point, but you'd need to hear it somehow to be sure.
Have you been here?:
The
Audio Monitoring section is a hokey way (IMO) to select 2 different destinations:
Output and
Monitor.
Output goes to the
Tracks selection here, and then those tracks are selected on the
Output page in the main
Settings. (For the Advanced Output Mode, anyway. I think the Simple mode is limited to Track 1 only, while you still have the selection above.)
Monitor goes directly to the
Monitoring Device on the
Audio page.
If OBS is feeding live speakers from the Monitoring Device selection, then you need to be aware of acoustic feedback. That's the same runaway squeal that you get in a live PA when you turn a mic up too much. Any time that you have a live mic and a live speaker in the same space, with the mic feeding the speaker, that can happen.
The way to avoid it is to keep the volume setting low enough (in that loop) that it doesn't (the mic can still be louder to something else), or off completely (the Output and Monitor settings above), or arrange the acoustics so that you lose enough through the air to effectively turn the volume down from speaker to mic. Those acoustics include not just padding the walls, but also placement of the mic(s) and speaker(s), directional patterns of each (The published number is for the highest frequencies only! Lower frequencies spread wider than that, which is usually where feedback happens.), furniture and people, etc.
One exception to that is when the mic and speakers are practically in the same place, like a speakerphone. In that case, they're connected well enough that a DSP algorithm ("echo cancellation") can figure out what the small remaining difference is, and subtract the (compensated) speaker signal from the mic signal. Beyond a speakerphone or other device that has the mic and speaker both in the same place, it becomes exponentially harder because the "wacky" room has more of an effect on what the algorithm has to deal with. In that case, you're back to the "live PA" mindset.
OBS does not do echo cancellation at all; that's the job of the "hockey puck mic" or whatever it is, to do that already, before it even gets to the computer. Which means that in order to work, you also have to use *that device* as the live speaker, which may or may not be ideal.
In a meeting that I run, I have a "hockey puck" as the main mic, but I don't use it for the speaker, which means that its echo cancellation can't work. I use the TV speakers instead, so that a remote person's voice comes from the same place as their face is. That means that I have to add my own version of echo suppression back in (not cancellation), to avoid them hearing a 1-second-delayed echo of themselves because the mic is picking up the TV. For that, I use OBS's Compressor filter on the mic input - actually two of them, set the same, because one by itself isn't aggressive enough - with the Sidechain set to the Meeting audio. Thus, when the meeting says something, the mic drops way down, to the point that they don't notice the echo. This also means that they can't hear the host trying to interrupt them, but so far that hasn't been a problem for us.
That doesn't feed back either, because each of the remote ends breaks the loop with echo cancellation that *does* work.