Skip to content

🎬 OBS Studio Setup

Status: βœ… Configured & Ready | Last updated: 2026-04-05

OBS Studio configured for high-quality screen recording with professional audio from a Shure SM7B, display capture from an external LG monitor, and optional picture-in-picture webcam overlays with neon borders.


Quick Reference

Item Value
OBS Version 32.1.0 (x64, Prism emulation on ARM)
Device Surface Laptop 7th Edition (ARM64)
CPU Snapdragon X Elite 12-core @ 3.40 GHz
RAM 32 GB
GPU Qualcomm Adreno X1-85 (no HW encoder)
Microphone Shure SM7B (dynamic, XLR)
Preamp Cloudlifter CL-1 (inline, needs 48V)
Audio interface Focusrite Scarlett Solo 4th Gen (USB)
Docking station Razer Thunderbolt 4 Dock
Capture monitor LG HDR QHD β€” DISPLAY3 (2048Γ—1152)
Camera Surface built-in front camera
Recordings folder C:\OBS-Recordings
Plugin installed Stroke Glow Shadow v1.5.3
Circle mask C:\Users\ssutheesh\Documents\obs-circle-mask.png
Tall rect mask C:\Users\ssutheesh\Documents\obs-tall-rect-mask.png

Hardware Signal Chain

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ SM7B    │───▢│ Cloudlifter │───▢│ Scarlett Solo 4th Gen│───▢│ USB to Dock  β”‚
β”‚ (XLR)   β”‚    β”‚ (XLR)       β”‚    β”‚                      β”‚    β”‚              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β”‚  48V: ON             β”‚    β”‚ Razer TB4    β”‚
                                  β”‚  INST: OFF           β”‚    β”‚ Dock         β”‚
                                  β”‚  Gain: ~2 o'clock    β”‚    β”‚              β”‚
                                  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                                                                     β”‚
                                                              β”Œβ”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”
                                                              β”‚ Surface      β”‚
                                                              β”‚ Laptop 7     β”‚
                                                              β”‚ (Thunderbolt)β”‚
                                                              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Scarlett Solo 4th Gen β€” Physical Controls

   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
   β”‚  [Small Knob 1]  [Small Knob 2]β”‚
   β”‚   INPUT GAIN      INSTRUMENT   β”‚
   β”‚   (XLR/Mic) ←     (Guitar)     β”‚
   β”‚   ~2 o'clock      Don't touch  β”‚
   β”‚                                 β”‚
   β”‚  [48V] = ON    [INST] = OFF     β”‚
   β”‚                                 β”‚
   β”‚        [BIG KNOB]               β”‚
   β”‚        HEADPHONE VOLUME         β”‚
   β”‚        (not for recording)      β”‚
   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

48V Phantom Power

The 48V button MUST be ON β€” it powers the Cloudlifter, not the SM7B. Without it, the mic will appear silent!


Monitor Layout (Updated 2026-04-09)

                         DISPLAY4 β€” MSI MP161 E2 (15.3")
                         1920Γ—1080 (Landscape, 16:9)
                         βœ… YouTube ready
                         β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                         β”‚    MSI OVERHEAD SCREEN    β”‚
                         β”‚      (above laptop)       β”‚
                         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

 DISPLAY2                    DISPLAY1                      DISPLAY3
 LG HDR QHD (31.5")          Surface Laptop (15.1")         LG HDR QHD (31.5")
 1440Γ—2560 (Portrait, 9:16)  1664Γ—1109 (3:2)                1920Γ—1080 (Landscape, 16:9)
 ⚠️ Vertical                 ⚠️ 3:2 aspect                  βœ… YouTube ready
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚          β”‚              β”‚                    β”‚          β”‚                      β”‚
β”‚   LG     β”‚              β”‚   LAPTOP SCREEN    β”‚          β”‚  LG EXTENDED         β”‚
β”‚ PORTRAIT β”‚              β”‚     (Primary)      β”‚          β”‚  LANDSCAPE SCREEN    β”‚
β”‚          β”‚              β”‚                    β”‚          β”‚                      β”‚
β”‚          β”‚              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜          β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”‚          β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

YouTube Recording Compatibility

Display Resolution Aspect YouTube Notes
DISPLAY3 β€” LG Landscape 1920Γ—1080 16:9 βœ… Perfect Native 1080p, no conversion
DISPLAY4 β€” MSI Overhead 1920Γ—1080 16:9 βœ… Perfect Native 1080p, no conversion
DISPLAY1 β€” Surface Laptop 1664Γ—1109 3:2 ⚠️ OK Small black bars on sides (pillarbox)
DISPLAY2 β€” LG Portrait 1440Γ—2560 9:16 ⚠️ Vertical Large black bars β€” better for YouTube Shorts

Switch displays in one scene

Current approach: single Display Capture source β€” double-click to change the display dropdown. If switching mid-recording becomes awkward, create separate scenes per display for instant hotkey switching.


OBS Settings Configured

Video Tab

Setting Value Reason
Base (Canvas) Resolution 1920Γ—1080 YouTube standard 16:9
Output (Scaled) Resolution 1920Γ—1080 No extra scaling needed
Downscale Filter N/A (greyed out β€” same res) No downscaling happening
Common FPS Values 30 Ideal for screen recording tutorials, saves CPU on ARM

Why 30fps?

For tutorials and screen recordings, 30fps is the standard. 60fps doubles CPU load and file size with minimal visual benefit for static/slow content. YouTube handles 30fps perfectly. Switch to 60 only for fast-motion content.

Output Tab β€” Recording (Advanced Mode)

Setting Value Reason
Type Standard
Recording Path C:\OBS-Recordings Dedicated folder on SSD
Recording Format MKV Crash-safe β€” never lose footage
Audio Track Track 1 βœ…
Encoder x264 Only option on ARM (no HW encoder)
Rate Control CRF Best quality-per-bit for recording
CRF Value 18 Excellent quality (lower = better, 15–23 range)
CPU Usage Preset veryfast Optimised for ARM emulation overhead
Profile high Best compression efficiency
Keyframe Interval 2 YouTube standard
Rescale Output Unchecked Handled in Video tab

Output Tab β€” Audio

Setting Value
Track 1 Audio Bitrate 320 kbps
Audio Encoder FFmpeg AAC (default)

Audio Tab (Global)

Setting Value Reason
Sample Rate 48 kHz Broadcast standard, matches Scarlett Solo
Channels Stereo
Desktop Audio Disabled Added per-scene for control
Desktop Audio 2 Disabled
Mic/Auxiliary Audio Disabled SM7B added as dedicated source
Mic/Auxiliary Audio 2 Disabled

Why disable global audio?

Adding audio as scene sources (not global) gives per-scene control. You can have mic-only scenes, screen+mic scenes, etc.

Advanced Tab

Setting Value
Color Format NV12
Color Space Rec. 709
Color Range Limited
Automatically Remux to MP4 βœ… Checked

Auto-Remux

Records as crash-safe MKV, then instantly converts to YouTube-ready MP4 when you stop recording. Best of both worlds!


Audio Source & Filters

Source Setup

Setting Value
Source type Audio Input Capture
Source name SM7B - Scarlett Solo
Device Microphone (Scarlett Solo USB)
Mono βœ… Checked (in Advanced Audio Properties)

Mono is critical

The Scarlett Solo sends audio to the left channel only. Without Mono checked, viewers hear you in one ear!

Audio Filter Chain

Filters applied in this exact order (order matters!):

flowchart LR
    A["πŸŽ™οΈ Raw SM7B\nSignal"] --> B["1. Noise\nSuppression\n(RNNoise)"]
    B --> C["2. Noise\nGate"]
    C --> D["3. Compressor"]
    D --> E["4. EQ\n(ReaEQ VST)"]
    E --> F["5. Limiter"]
    F --> G["🎧 Clean\nPro Audio"]

Filter 1: Noise Suppression

Setting Value
Method RNNoise

AI-powered removal of background hum, fan noise, and keyboard sounds.

Filter 2: Noise Gate

Setting Value
Close Threshold -40 dB
Open Threshold -35 dB
Attack Time 6 ms
Hold Time 150 ms
Release Time 100 ms

Silences the mic when you're not speaking. Adjust thresholds to your room.

Filter 3: Compressor

Setting Value
Ratio 4:1
Threshold -18 dB
Attack 3 ms
Release 100 ms
Output Gain 4 dB
Sidechain Source (None)

Evens out volume β€” quiet parts get louder, loud parts get controlled.

Filter 4: EQ β€” Voice Shaping (ReaEQ VST)

Band Type Frequency Gain Bandwidth Purpose
1 High Pass 80 Hz β€” β€” Remove rumble, desk vibration, HVAC hum
2 Band (Bell) 200 Hz -2.0 dB 1.2 Cut muddiness β€” cleaner voice
3 Band (Bell) 3500 Hz +2.5 dB 1.0 Presence boost β€” voice cuts through
4 High Shelf 10000 Hz +1.0 dB β€” Add "air" β€” subtle sparkle and openness

Professional voice shaping using ReaEQ (free Cockos VST). Added between Compressor and Limiter.

        Voice EQ Curve for SM7B

  +3dB ─────────────────────────╱──── Air ───
  +2dB ─────────────────╱──────╱
  +1dB ────────────────╱ Presence
   0dB ═══════╀═══════╧═══════════════════════
  -1dB ──────╱
  -2dB ─────╱ Mud cut
  -3dB ────╱
       β•³
  cut  β”‚
       80Hz  200Hz  1kHz  3kHz  5kHz  10kHz

Filter 5: Limiter

Setting Value
Threshold -1.5 dB
Release Time 60 ms

Hard ceiling β€” prevents any audio from clipping. Your safety net.

Target Audio Levels

Scenario Level
Normal speech peaks -20 dB to -6 dB (green/yellow)
Loud moments Never hit 0 dB (red)
Silence Nothing (noise gate working)

Scenes

Four scenes configured for different recording needs:

graph TB
    subgraph "Scene 1: Screen Recording"
        S1D[πŸ–₯️ LG Monitor<br>Display Capture]
        S1A[πŸŽ™οΈ SM7B Audio]
    end

    subgraph "Scene 2: Talking Head Full"
        S2C[πŸ“Ή Surface Camera<br>Full Screen + Cropped]
        S2A[πŸŽ™οΈ SM7B Audio]
    end

    subgraph "Scene 3: Screen + Circle PiP"
        S3D[πŸ–₯️ LG Monitor]
        S3C[πŸ“Ή Camera β­•<br>Circle Mask + Stroke]
        S3A[πŸŽ™οΈ SM7B Audio]
    end

    subgraph "Scene 4: Screen + Tall PiP"
        S4D[πŸ–₯️ LG Monitor]
        S4C[πŸ“Ή Camera πŸ”²<br>Tall Rect Mask + Stroke]
        S4A[πŸŽ™οΈ SM7B Audio]
    end

Scene 1: Screen Recording

Source Type Details
LG Monitor Display Capture DISPLAY3 (2048Γ—1152 β†’ fit to 1920Γ—1080 canvas)
SM7B - Scarlett Solo Audio Input Capture Mono, all 4 filters applied

Your main use case β€” clean screen capture with pro audio.

Scene 2: Talking Head Full

Source Type Details
Surface Camera Video Capture Device 1920Γ—1080, 30fps, cropped/zoomed for tighter framing
SM7B - Scarlett Solo Audio Input Capture Added as existing source

Full-screen webcam for intro/outro segments or standalone recordings.

Scene 3: Screen + Circle PiP

Source Type Details
LG Monitor Display Capture (existing) Full screen capture
Surface Camera Video Capture Device (existing) Resized small, bottom-right
SM7B - Scarlett Solo Audio Input Capture (existing)

Camera filters (in order):

  1. Image Mask/Blend β€” Alpha Mask β†’ obs-circle-mask.png
  2. Stroke (from Stroke Glow Shadow plugin) β€” neon colour border

Screen recording with a circular webcam overlay and neon border.

Scene 4: Screen + Tall PiP

Source Type Details
LG Monitor Display Capture (existing) Full screen capture
Surface Camera Video Capture Device (existing) Resized as tall portrait rectangle
SM7B - Scarlett Solo Audio Input Capture (existing)

Camera filters (in order):

  1. Image Mask/Blend β€” Alpha Mask β†’ obs-tall-rect-mask.png
  2. Stroke (from Stroke Glow Shadow plugin) β€” neon colour border

Screen recording with a tall rectangular webcam overlay and neon border.


PiP Border & Mask Assets

All mask/border files stored in C:\Users\ssutheesh\Documents\:

File Purpose
obs-circle-mask.png Circle shape mask for camera
obs-circle-border-cyan.png 🟒 Neon cyan circle ring (standalone)
obs-circle-border-magenta.png 🟣 Neon magenta circle ring (standalone)
obs-circle-border-white.png βšͺ White circle ring (standalone)
obs-tall-rect-mask.png Tall rounded rectangle mask for camera
obs-tall-rect-border-cyan.png 🟒 Neon cyan rectangle border (standalone)
obs-tall-rect-border-magenta.png 🟣 Neon magenta rectangle border (standalone)
obs-tall-rect-border-white.png βšͺ White rectangle border (standalone)

Stroke plugin vs standalone border images

The Stroke Glow Shadow plugin is the preferred method β€” it applies the border directly as a filter, so it follows the camera when you move/resize. The standalone border PNGs are a fallback if the plugin stops working.


Plugin: Stroke Glow Shadow

Item Value
Name obs-stroke-glow-shadow
Version 1.5.3
Source GitHub
Install location C:\Program Files\obs-studio\obs-plugins\64bit\obs-stroke-glow-shadow.dll

How to Use

  1. Right-click any source β†’ Filters
  2. Apply Image Mask/Blend first (circle or rectangle)
  3. Then add Stroke filter:
  4. Stroke Size: 8–10 px
  5. Stroke Colour: Pick any (neon cyan, magenta, white, etc.)
  6. Position: Outer
  7. The stroke detects mask edges and outlines the shape automatically

Filter order matters

Mask must come before Stroke in the filter list. The Stroke filter detects the alpha channel edges created by the mask.


Software Installed

Software Version Purpose
OBS Studio 32.1.0 (x64) Screen recording & scenes
Focusrite Control 2 Latest Scarlett Solo configuration, firmware, sample rate
Razer Synapse 4 2.4.0.868 Thunderbolt 4 Dock management & firmware
obs-stroke-glow-shadow 1.5.3 Neon borders on PiP camera
ReaPlugs (ReaEQ) 2.36 Professional parametric EQ for voice shaping

ARM-Specific Performance Notes

Surface Laptop 7 (ARM) Limitations

  • No hardware encoder β€” NVENC/AMF/QuickSync unavailable. Uses x264 (CPU encoding).
  • OBS runs as x64 under Prism emulation β€” adds some CPU overhead.
  • Some OBS plugins may not work (must be x64-compatible).
  • Always plug in power when recording β€” battery mode throttles CPU.

Performance Tips

Tip Why
Always plug in power Battery mode throttles CPU dramatically
Close unnecessary apps Every app competes for ARM CPU cycles
Use 30fps for screen recording 60fps doubles encoding load with little benefit for tutorials
Monitor OBS Stats (View β†’ Stats) Watch for dropped frames and encoding lag
Don't add browser sources They use significant CPU on ARM
Start with "veryfast" x264 preset If smooth, try "faster" for better quality

OBS Stats to Watch

Go to View β†’ Stats during recording:

Metric Healthy Value
Frames missed (rendering lag) 0
Frames skipped (encoding lag) 0
CPU Usage Below 70%
Memory Below 4 GB

If Dropped Frames Occur

  1. Change CPU preset from "veryfast" to "superfast"
  2. Reduce FPS from 30 to 24 (still cinematic)
  3. Reduce canvas/output resolution to 1280Γ—720
  4. Close background apps

Scene Transitions

Setting Value
Default Transition Fade
Duration 300 ms

Smooth, professional fade between all scenes. Avoid swipe/slide β€” they look amateur for educational content.

Per-Scene Override

Right-click any scene β†’ "Transition Override" to set a different transition for specific scene switches. E.g., 500ms fade when switching to Talking Head for a slightly more dramatic entrance.


Recording Workflow

Quick Start

  1. βœ… Plug in power
  2. βœ… Check Scarlett Solo: 48V ON, Gain ~2 o'clock
  3. Open OBS β†’ select your scene
  4. Check audio meter β€” speak to verify levels
  5. Start Recording (F9)
  6. Record your content
  7. Stop Recording (F10)
  8. File auto-saves as MKV β†’ auto-remuxed to MP4 in C:\OBS-Recordings
Action Hotkey
Start Recording F9
Stop Recording F10
Pause Recording F11
Scene: Screen Recording Ctrl+1
Scene: Talking Head Full Ctrl+2
Scene: Screen + Circle PiP Ctrl+3
Scene: Screen + Tall PiP Ctrl+4

Post-Recording Checklist

  • [ ] File appeared in C:\OBS-Recordings as MP4
  • [ ] Audio is in both ears (mono working)
  • [ ] No background hum (noise suppression working)
  • [ ] Consistent volume (compressor working)
  • [ ] No clipping (limiter working)
  • [ ] Video is sharp and correct resolution

Troubleshooting

Problem Solution
Audio only in left ear Check Mono in Advanced Audio Properties
Mic too quiet Increase Scarlett gain β†’ verify Cloudlifter connected β†’ add Gain filter
Mic clipping/distorted Lower Scarlett gain β†’ check Limiter filter is active
Background noise Adjust Noise Gate thresholds β†’ ensure Noise Suppression is first filter
Dropped frames Change x264 preset to "superfast" β†’ reduce FPS β†’ close other apps
Display Capture shows black Try different Capture Method (Automatic vs Windows 10)
Camera not detected Windows Settings β†’ Privacy β†’ Camera β†’ allow OBS
Recording file corrupted Should not happen with MKV. If using MP4, switch to MKV
Stroke plugin not showing Restart OBS after plugin install
Border not visible on PiP Ensure Mask filter is BEFORE Stroke filter β†’ increase stroke size

Future Improvements

  • [ ] ARM64 Native OBS β€” When stable ARM64 build releases, switch for ~20% better CPU efficiency. Check: OBS ARM FAQ
  • [ ] Separate audio tracks β€” Record mic on Track 1 and desktop audio on Track 2 for flexible editing
  • [ ] Mac setup β€” Configure OBS on MacBook Pro (will have Apple VideoToolbox HW encoding)
  • [ ] Hotkeys or Stream Deck β€” Configure F9/F10/F11 and Ctrl+1-4, or get Elgato Stream Deck Plus for physical controls
  • [ ] Webcam colour correction β€” Brightness/contrast/saturation filter on Surface Camera
  • [ ] Desktop audio capture β€” Add Application Audio Capture source for system sounds
  • [ ] Acoustic treatment β€” Foam panels behind monitors to reduce room echo
  • [ ] Performance power plan β€” Create dedicated "OBS Recording" power plan with max CPU
  • [ ] VDO.Ninja interview scene β€” Switch from Teams capture to VDO.Ninja once GPU driver is updated (see Interview section below)
  • [ ] Interview scene (Teams capture) β€” Set up Window Capture + Application Audio Capture for Teams/Zoom interviews

Remote Interviews

Option A: VDO.Ninja + OBS (Preferred β€” Waiting on GPU Driver Fix)

VDO.Ninja is a free, browser-based tool that lets guests join via a link with their camera, mic, and screen share. Their feeds come into OBS as Browser Sources. No software install needed for guests.

Status: βœ… Working! Requires specific launch order (see workflow below).

How It Works

   YOU (Host/Director)                 GUEST (Remote)
   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
   β”‚ OBS      │◄──── WebRTC P2P ──────►│ Browser  β”‚
   β”‚          β”‚      (HD video)        β”‚ (Chrome) β”‚
   β”‚ Records  β”‚                        β”‚ No app   β”‚
   β”‚ everything│◄──── Screen Share ────│ install! β”‚
   β”‚ locally  β”‚                        β”‚          β”‚
   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Critical: Launch Order Matters!

Open VDO.Ninja FIRST, grab the camera, THEN open OBS. OBS locks the Surface Camera exclusively β€” if OBS opens first, VDO.Ninja can't access the camera.

Interview Startup Workflow

Step 1: CLOSE OBS (if open)
Step 2: Open VDO.Ninja director β†’ select Surface Camera Front β†’ join room
Step 3: Send guest link β†’ wait for guest to join
Step 4: Open OBS β†’ switch to Interview scene
Step 5: Start Recording (F9)

Audio Routing (Critical!)

YOUR recording voice: SM7B β†’ Scarlett Solo β†’ OBS (Audio Input Capture) ← PRO quality
GUEST voice to you:   Guest mic β†’ VDO.Ninja β†’ OBS (Browser Source)    ← via WebRTC
YOUR voice to guest:  Surface mic β†’ VDO.Ninja β†’ Guest's speakers      ← just for conversation

Audio Device Assignment

  • OBS uses: Microphone (Scarlett Solo USB) β€” your SM7B for high-quality recording
  • VDO.Ninja uses: Microphone Array Qualcomm Aqstic ACX Static Endpoints β€” Surface built-in mic for guest to hear you
  • Do NOT select the "Communications" mic variant β€” it applies phone-call processing that sounds tinny
  • Do NOT let VDO.Ninja use the Scarlett Solo β€” it will block OBS from accessing the SM7B

Room Created

Item Value
Room name aguidetocloud
Guest invite link https://vdo.ninja/?room=aguidetocloud&broadcast
Group scene link https://vdo.ninja/?scene&room=aguidetocloud&codec=h264
Director performs βœ… Yes
Guests see director βœ… Yes
Video codec H264
SSO Off

VDO.Ninja Setup in OBS

  1. Create scene "Interview"
  2. Add Browser Source:
  3. URL: https://vdo.ninja/?scene&room=aguidetocloud&codec=h264
  4. Width: 1920, Height: 1080
  5. βœ… Control audio via OBS
  6. βœ… Use custom frame rate β†’ 30 FPS
  7. βœ… Shutdown source when not visible
  8. βœ… Refresh browser when scene becomes active
  9. Add Audio Input Capture β†’ existing SM7B - Scarlett Solo
  10. Guest joins via invite link β†’ their camera + screen share appear in OBS

If SM7B meter isn't moving

VDO.Ninja may have grabbed the Scarlett Solo on startup. Fix: in VDO.Ninja, switch mic to Surface built-in. Then in OBS, go to SM7B source β†’ Properties β†’ reselect "Microphone (Scarlett Solo USB)".

Guest Flow

Guest receives link β†’ Opens in Chrome β†’ Allows camera/mic
  β†’ Clicks "Share Screen" (optional) β†’ Both feeds appear in OBS

Known Issue (ARM) β€” Solved!

Camera conflict: OBS locks the Surface Camera exclusively. Solution: open VDO.Ninja BEFORE OBS and grab the camera first.

  • ~~Deactivate camera in ALL OBS scenes before using VDO.Ninja director~~
  • ~~OBS Virtual Camera also conflicts on ARM~~
  • βœ… Working workflow: VDO.Ninja first β†’ camera selected β†’ then open OBS

Option B: Teams/Zoom + OBS Capture (Working Now)

Simpler approach β€” use Teams/Zoom for the call, and OBS captures the window:

Step 1: INTERVIEW via Teams/Zoom (normal call)
Step 2: OBS captures the Teams/Zoom window + SM7B audio

Setup in OBS

  1. Create scene "Interview"
  2. Add Window Capture β†’ select Microsoft Teams (or Zoom)
  3. Add Audio Input Capture β†’ existing SM7B - Scarlett Solo
  4. Add Application Audio Capture (Beta) β†’ select Teams (captures guest's voice)
  5. Right-click Window Capture β†’ Transform β†’ Fit to Screen

Comparison

Feature VDO.Ninja Teams/Zoom Capture
Guest experience Browser link β€” no install Normal Teams/Zoom call
Video quality HD direct feed per guest Compressed by Teams/Zoom
Layout control Full β€” separate sources per guest Limited to app's layout
Separate audio tracks βœ… Each guest separate ❌ Mixed (unless Application Audio Capture)
Screen share Separate OBS source Inside the call window
Reliability on ARM ⚠️ Camera issues (GPU driver) βœ… Works now
Complexity Medium Easy

Setup History

Interview Setup Research (2026-04-06)

  • Created VDO.Ninja room "aguidetocloud" with director-as-performer, H264 codec
  • βœ… VDO.Ninja working! Discovered launch order: VDO.Ninja first β†’ grab camera β†’ then open OBS
  • Audio routing solved: SM7B via OBS for recording, Surface built-in mic via VDO.Ninja for guest conversation
  • Documented both interview approaches: VDO.Ninja (preferred, working) and Teams capture (backup)

Enhancements Round 1 (2026-04-05)

  • Installed ReaPlugs VST (ReaEQ) for professional 4-band parametric EQ voice shaping
  • Added EQ filter to audio chain: HPF 80Hz, -2dB at 200Hz, +2.5dB at 3.5kHz, +1dB shelf at 10kHz
  • Configured Fade scene transition at 300ms
  • Researched Elgato Stream Deck options β†’ added Stream Deck Plus idea

Initial Setup (2026-04-05)

  • Installed OBS Studio 32.1.0 (was already installed)
  • Configured all settings: Video, Output, Audio, Advanced
  • Created 4 scenes: Screen Recording, Talking Head, Circle PiP, Tall PiP
  • Set up SM7B audio with 4-filter chain (Noise Suppression β†’ Gate β†’ Compressor β†’ Limiter)
  • Installed Stroke Glow Shadow plugin for neon PiP borders
  • Created circle and tall rectangle mask/border PNG assets
  • Installed Focusrite Control 2 for Scarlett Solo management
  • Installed Razer Synapse 4 for Thunderbolt Dock management
  • Created C:\OBS-Recordings folder