I bought one of these for streaming (here is my YouTube channel):
It’s a good webcam, but it turns out the webcam does not remember any of the video settings (the dialog below) — this includes brightness, sharpness, auto white balance, auto focus, gain, auto exposure, etc. If you unplug your webcam and plug it back in, all of these will get reset to default! Same thing if you ever reboot your computer.
This might not be a problem for everyone, but for a “pro streamer” which is apparently the target audience for this (as indicated in its product name), this is a HUGE problem! Most likely, you’d want to keep the auto focus permanently disabled, use a custom white balance, and adjust exposure and gain according to your lighting.
Logitech has indicated that this is indeed by design:
Thankfully, this webcam uses the Windows in-box webcam drivers (KS + USBVideo), which means you can use the standard API set to interact with it. Github user SuslikV has already done most of the work here: https://github.com/SuslikV/cfg-cam
You can follow these steps:
- Download a release of cfg-cam from here. I’m using 1.0.
- Extract WebCameraConfig.exe.
- Open a command prompt and navigate to where you extracted it.
- Open your webcam settings dialog and modify settings as you desire.
- Run:
WebCameraConfig.exe --savedev
It’ll save cam_sett.cfg to the current directory. It looked like this when my Logitech C922 was plugged in:
/ WebCameraConfig settings file Device #1 \\?\usb#vid_046d&pid_085c&mi_00#8&1cce1212&0&0000#{12121212-1212-1212-1212-00a012121212}\global C922 Pro Stream Webcam VideoProcAmp_BacklightCompensation=0 [Manual] VideoProcAmp_Brightness=128 [Manual] VideoProcAmp_Contrast=128 [Manual] VideoProcAmp_Gain=29 [Manual] VideoProcAmp_Saturation=128 [Manual] VideoProcAmp_Sharpness=128 [Manual] VideoProcAmp_WhiteBalance=4000 [Manual] CameraControl_Exposure=-4 [Manual] CameraControl_Focus=0 [Manual] CameraControl_Pan=0 [Manual] CameraControl_Tilt=0 [Manual] CameraControl_Zoom=100 [Manual] ---end of the device #1
- Edit cam_sett.cfg as needed. You might have more devices in the file (such as your capture card) — erase them if you want. Make sure to keep the formatting consistent — check the “Device #1” and “–end of the device #1” part.
- You’re done! Whenever you want to restore these settings, run WebCameraConfig.exe from command prompt. It’ll read the file you saved and apply the saved settings to your webcam.
- You might want to create a small batch script for automating this. Here is mine:
@echo off pushd %~dp0 .\WebCameraConfig.exe popd
I have it configured so that this script is called when I launch OBS. Maybe you’ll want to do that, maybe you want to run the script when Windows boots.
Caveats: some settings are not stored or restored – anything that isn’t listed in the file is not saved. For my purposes this wasn’t really a problem.
Thank you for this tutorial! It’s incredibly helpful and has saved me a lot of frustration with my Logitech C920 and OBS/Streamlabs. May I ask if you could go into more detail on Step #7?
For example: I made a batch script with your code and it unfortunately does nothing for me. I made sure the exe, cfg, and bat file were all in the same directory. Additionally, could you also go into more detail on how you made the batch script only run on OBS launch?
I too would like to know. OBS only supports lua and py scripts.
LIFESAVER!! ❤
Is there a way to toggle Low Light Compensation using this?
Is there a way to disable low light compensation?
Is there a way to disable Low Light Compensation?
In step 5, WebCameraConfig.exe –savedev should be WebCameraConfig.exe –savedev (double dash/hyphen).
Hmm when I run this .exe, it fails to generate a .cfg file. I wonder if it’s because my c922 is under imaging devices instead of cameras in the device manager? Not sure if that’s it or what, but I can’t get past step 3 unfortunately.
On Github the original author posted a tutorial that goes into every detail and requires no command prompt, but does include a single one line code saved in notepad that simplifies the process, and allows you to make a shortcut on desktop (or wherever you want) to apply the settings.