Action Cam as a Zoom Webcam, as done by a bumbling beginner...

BobCc

New Member
I have a 4k30 sports/action cam that can also function as a 1080p30 USB webcam, which I'd like to occasionally use with Zoom on a Ryzen 4800H + nVidia 2060 Win10 laptop.

Unfortunately, from just 1 meter away my head and shoulders occupy only a small central portion of the 170 degree view, and I want to Zoom to show just my head and shoulders (not just to view only me, but also to eliminate the spherical distortion). There are multiple webcam utilities that will handle such situations: I selected OBS because it is Open Source, powerful, efficient, and will give me room to grow (much like choosing Gimp over Windows Paint).

My hope was my "simple" initial task could be quickly and easily handled by OBS. I've done lots of image processing in my engineering career, mainly for scientific, space and industrial uses, but none in the Windows context. And I'm clueless about streaming platforms and workflows, though that will change as I will be entering the live and recorded remote education market.

Windows Device Manager shows the action cam as a "UVC Camera" at 1080p30, and Zoom could use it. After installing and starting OBS version "26.1.1 (64-bit)", I followed the wizard prompts for "Virtual Camera only". Under Sources I added a Video Capture Device for the UVC Camera, changing nothing else in the configuration. I pressed "Start Virtual Camera", restarted Zoom, and verified Zoom could use the "OBS Virtual Camera" device.

I next fell down a rabbit hole trying to crop the view and reduce the output resolution to 720p. It seems there are multiple ways to approach this, and that some things can be done in multiple places within OBS. I got confused about what is best to do where within OBS and why (the workflow). For this task I chose not modify anything within Scene.

It was not at all obvious to me how best to do the crop/scale and any needed cleanup of the resulting video. Eventually, I learned most of the other work I needed to do could be done by adding Filters and Effects to the Video Capture Device, accessed by right-clicking on the Video Capture Device in the Sources area then selecting "Filters".

I first added the "Crop/Pad" effect. For me, this filter seemed needlessly difficult and unintuitive to use when only a small central portion of the video is wanted. In particular, the crop involves dragging corners OUTWARD (keeping the preview size constant), rather than INWARD to let me select the view I wanted. I found no way to do this on a 1080p monitor when the video was 1080p on input and output: The drag handles were not in view!

Things improved after I set the Virtual Camera output resolution to 720p (Lanczos), then right-clicked on the Preview and set Preview Scaling to Output. Things improved yet again when I connected my 4K TV to the laptop. But this path to functionality seems uselessly complex and resource-intensive for a basic crop operation.: I'd really like to do it all on my 1080p laptop screen.

I think the Crop/Pad effect could use some UI Love: Please consider adding scroll-wheel "zoom" support (for constant aspect ratio), in order to avoid the need for resolution and monitor changes just to do this operation. Alternatively, the Preview could gain a "Show All" mode to ensure all controls (such as drag handles) are always visible and accessible.

I now had the view I wanted for Zoom. It was no surprise the cropped video content was fuzzy and looked washed-out.

I added the Noise Suppression filter with the RNNoise method, and the Sharpen effect with Sharpness at 0.3 (the highest that avoided jaggies), but saw only minor overall improvement. I had hoped to find a simple "unsharp masking" operation (Gaussian blur + sharpening) within OBS, but if it is there I failed to locate it. A search revealed the StreamFX plugin provided the blur functionality. I added a Blur filter set to Area and size 3 followed by Sharpen at 0.64, which cleaned up the worst of the pixel noise.

The output video contrast was also low, as is expected due to the brightest and darkest parts of the action cam FoV being outside the crop area. I was surprised to find Gamma and Contrast adjustments to be located within the "Color Correction" plugin: To me these are luminance corrections, not color. Whatever.

Zoom is happy, and the video quality is satisfactory. Success!

Final configuration:
- Scenes: Single unmodified generic scene (called "Scene"), as created by the wizard.
- Sources: Single Video Capture Device for UVC Camera, with Noise Suppression Filter, and Effects (in order) Crop/Pad, Blur, Sharpen and Color Correction.
- Controls: Settings -> Video -> Output set to 720p.

Any thoughts on my above process? Am I horribly misusing OBS? What 'big clues' am I missing? Are there better ways for OBS to meet my "simple" use-case?
 
Top