MY WEBCAM TEST GUIDE

How to Reduce Compression Blockiness in OBS Virtual Camera

Find where blocky artifacts in your OBS Virtual Camera feed come from, fix the camera source and OBS video settings, and check the result on a real call.

The short answer

OBS Virtual Camera does not compress video the way streaming or recording does. It passes the frames from your OBS canvas to other apps as a camera feed. The bitrate and encoder settings on the Output settings page apply to streaming and recording, so changing them will not improve the virtual camera. Blockiness, meaning visible square patches, smeared detail or stair-stepped edges, usually comes from one of two places. It can already be in your source, such as a webcam sending heavily compressed video, a low-quality media file or a browser source. More often, it is added by the video-call app, which compresses your feed again before sending it over the internet.

The most important first question is where you see the blocks. If they appear in the OBS preview, fix the source or the OBS settings. If OBS looks clean and the blocks only appear for other people on the call, the call app's compression and your connection are the main factors. You can reduce those factors, but you cannot fully control them.

Before you start

  • OBS installed, with your scene set up and Start Virtual Camera available in the Controls area.
  • The call app you actually use, so you can select OBS Virtual Camera as its camera.
  • A way to see your feed as other people receive it, such as a second device joined to a test call or a willing contact. Your own self-view in a call app usually shows your video before it is compressed for sending, so it can look clean while others see blocks.
  • Your webcam connected directly to the computer if possible, rather than through a shared hub.

Step 1: Find where the blocks appear

  • 1. Look at the OBS preview at full size. Right-click the preview and open a fullscreen or windowed projector so small artifacts are easier to see.
  • 2. Turn on the virtual camera and open it in an app that previews a camera locally without sending it anywhere, such as a camera test page in your browser or your call app's video settings preview.
  • 3. Join a test call and watch your feed from a second device or ask someone to describe what they see. Move a little and hold still, because compression artifacts often get worse with motion.
  • 4. Note the first stage where blockiness appears. That stage tells you which of the following steps matter most.
Where blocks first appear | Likely cause | Where to work
OBS preview | Camera format, low light, or a low-quality media or browser source | Step 2 and Step 4
Local camera preview only, not OBS | Resolution or aspect mismatch, or the receiving app scaling the feed | Step 3
Only the far end of a call | Call app compression and available bandwidth | Step 4 and Step 5

Step 2: Clean up the source in OBS

Many webcams can send video in more than one format. Some formats are compressed inside the camera, often MJPEG, which is a stream of JPEG images. Others, often YUY2 or NV12, are uncompressed. Compressed formats allow higher resolution and frame rate over USB, but some cameras compress aggressively, which causes blockiness before OBS ever sees the image. Uncompressed formats avoid that, but USB bandwidth may limit them to lower resolutions or frame rates.

  • 1. In OBS, double-click your webcam source (Video Capture Device) to open its properties.
  • 2. On Windows, set Resolution/FPS Type to Custom so you can pick the resolution, frame rate and video format directly. On macOS, turn off the preset option if you need manual choices. On Linux, the V4L2 source offers similar format and resolution choices. Option names vary by platform and OBS version.
  • 3. Try the camera's other available video formats at the resolution you need, and compare the preview after each change.
  • 4. Choose a resolution that matches your OBS canvas, such as 1280x720 or 1920x1080, so OBS does not have to upscale a small image.
  • 5. For media files or browser sources, use a better-quality original. OBS cannot remove blockiness that is already in the file or web page.
  • 6. Success check: the OBS preview shows smooth gradients on walls and skin, with no square patches when you move.

Which formats a camera offers, and which looks best, depends on the camera. No tested settings for specific models were available for this guide, so compare the options on your own hardware.

Step 3: Check the OBS video settings that feed the virtual camera

The virtual camera uses the output, or scaled, resolution and the frame rate from Settings, then Video. OBS greys out these settings while the virtual camera is running, so stop it first.

  • 1. Click Stop Virtual Camera.
  • 2. Open Settings, then Video. Set Base (Canvas) Resolution and Output (Scaled) Resolution to a standard 16:9 size the call app is likely to use, such as 1280x720 or 1920x1080. Keeping them equal avoids an extra scaling step. Unusual sizes or aspect ratios may be cropped or rescaled by the call app.
  • 3. If you use the virtual camera's options button next to Start Virtual Camera, check that it sends what you expect, such as the main program output rather than a single small source.
  • 4. Start the virtual camera again. In the call app, reselect OBS Virtual Camera if the picture does not update.
  • 5. Success check: a local camera preview of OBS Virtual Camera shows the same framing and sharpness as the OBS preview.

Step 4: Give the call app's encoder less to struggle with

Video compression has a limited budget of data per second. Image noise, fine detail and movement use up that budget, and when it runs out the encoder drops detail in blocks. Reducing what changes from frame to frame can lessen blockiness at the far end, even when your bandwidth stays the same.

  • Add light to your face. Dim scenes make the camera produce grainy noise that changes every frame and compresses poorly.
  • Choose a calmer physical background. A plain wall compresses more cleanly than busy shelves, patterned fabric or a window with moving scenery.
  • Be cautious with animated overlays, moving graphics or video loops in OBS scenes. They use up the budget the call app would otherwise spend on your face.
  • If you use a virtual background or blur, decide whether to do it in OBS or in the call app, not both. Edge flicker around a virtual effect adds motion the encoder must handle.

Step 5: Adjust the call app and connection

  • 1. Open the call app's video settings and confirm OBS Virtual Camera is selected.
  • 2. If the app offers an HD, high-quality or send-resolution option, turn it on. Many apps instead choose quality automatically based on bandwidth, meeting size and the viewer's layout.
  • 3. Improve your upload connection where possible. A wired connection, being closer to the router, or pausing large uploads, cloud syncing and other video streams on the same network can help.
  • 4. Close other apps that are using the camera or doing heavy video work, since an overloaded computer can lower the quality a call app sends.
  • 5. Success check: on a second device, your feed holds detail when you hold still and recovers quickly after you move.

What your test proves and what it does not

Seeing a clean image in OBS confirms that capture and your OBS scene are fine. Seeing a clean local preview confirms the virtual camera is delivering that image to other apps. Neither confirms call quality, because the call app compresses your video only after it is sent. A good result on a test call shows how your feed looked over that connection at that moment. Bandwidth, meeting size, the viewer's device and how large your video tile appears can all change what people see later.

Limits to expect

Some blockiness on a busy network or in a large meeting is the call app protecting the connection, and OBS settings cannot override it. The available evidence included no recommended bitrates, upload speeds or per-app quality thresholds, so this guide does not give numeric targets. If OBS and the local preview look clean but the far end stays blocky after the steps above, the remaining fixes are on the network side or in the call app's own quality options.