github steveseguin/vdo.ninja v29.0
Improved podcast studio & Director mesh-debug view

9 hours ago

VDO.Ninja v29.0 Release Notes

Changes from v28.4 to v29.0


🎙️ Podcast Studio

A complete podcast production control room available via ?podcast or ?studio=podcast.

  • ISO Track Recording — Per-speaker WAV files for clean post-production
  • Cloud Sync — Stream chunks to Google Drive or Dropbox during sessions
  • Local Disk Recording — File System Access API support (Chromium)
  • Spectrogram Visualization — Real-time frequency analysis per track
  • Pro Audio Guest Links — Pre-configured stereo 256kbps with AEC/AGC/noise reduction disabled
  • Session Markers — Timestamped cue points with CSV export
  • Host Input Panel — Director microphone capture with mute controls
  • Talent Roster — Live view with audio level meters
  • Group Video Recording — One-click popup for combined scene capture

🌐 Meshcast2 Support

New &meshcast2 parameter enables the next-generation Meshcast relay service via app.meshcast.io. Features include:

  • Automatic fallback to anonymous relay if token is rejected
  • Improved error handling with user-friendly messages for quota limits and origin restrictions
  • WHIP/WHEP integration with authenticated accounts

💰 NinjaBacker Tipping Integration

Full tipping system integration with ninjabacker.com:

New Parameters:

  • &tipsid / &tip / &tips — Enable tipping and set performer ID
  • &receivetips / &tipping — Enable tip receiving
  • &tipserver — Custom tip server URL
  • &tipamounts — Comma-separated tip amount options (default: 5,10,25,50,100)
  • &tipcurrency — Currency code (default: USD)
  • &tipqrsize — QR code size on video overlays
  • &notipqr — Disable QR code display
  • &showtips / &supporttips — Show tip icons on videos

Features:

  • Two-way opt-in system (performer and viewer must both enable)
  • Stripe payment processing integration
  • Real-time SSE notifications for incoming tips
  • QR codes for quick mobile tipping
  • Tip overlays in OBS and scene links

🔗 Mesh Network Debug View

Interactive visualization for troubleshooting P2P connections in the director's room. Click the network icon next to room name.

  • SVG Graph — Nodes (guests) and edges (connections) with health indicators
  • Color Coding — Green (healthy), orange (degraded), red (failed), gray (isolated), purple (viewers/scenes)
  • Layout Modes — Circular, grid, force-directed (press button or cycle with keyboard)
  • Auto-Patch — One-click mix-minus relay for failed P2P connections
  • Unpatch Recovered — Remove patches when connections restore
  • Edge Details — Click connections to see stats and manual patch options
  • Problems Filter — Toggle to show only problematic connections
  • Keyboard ShortcutsR refresh, F filter toggle, Esc close

🎚️ Mixer & Layout Improvements

Auto-Channel Assignment

  • &autochannels / &autochannel — Automatically assign guests to audio channels
  • &autochannelmode — Control assignment strategy (round-robin, least-used)
  • &preferchannel / &pc — Preferred audio channel for a guest

Slot System Enhancements

  • &slotmode / &slotsmode — Enable slot assignment mode
  • &maxslots — Set maximum available slots
  • Slot Picker UI — Color-coded slot assignment from director view
  • Dynamic slot color palette with HSL generation

Layout Enhancements

  • &alignright / &rightalign — Align videos to right side of scene
  • Improved screenshare spotlight layouts (multiple styles based on participant count)
  • Column-based layout for right-aligned mode with automatic slot height calculation

🎛️ Director Features

Mix-Minus Support

  • &mixminus / &mm — Enable director mix-minus functionality
  • Per-guest custom audio mix dropdown ("Mix ▾" button)
  • Select which audio sources each guest hears
  • Director audio inclusion toggle

Channel Isolation

  • Ch 1 / Ch 2 buttons — Route guest to left/right audio channel
  • Isolate Channel — Send only specific mic channel to guest (requires &stereo=1)

Guest Queue Improvements

  • &holdwithvideo / &queue4 — Like &hold but director sees guest video while waiting
  • &approvepopup / &approvalpopup — Show popup notification when guests are held

📹 Recording & Streaming

Record Window Mode

  • &recordwindow / &rw — Capture current tab and record to disk
  • Optional bitrate parameter (e.g., &rw=6000)
  • Floating record button for scene windows
  • "Go Live" button for direct WHIP streaming

Cloudflare WHIP Support

  • &cftoken / &cft — Cloudflare Stream integration
  • &whippushtoken / &whipouttoken / &pushwhiptoken — Authentication tokens
  • Automatic WHIP URL generation per guest

🥽 WebXR & Sensor Data

AR Examples

  • examples/webxr-ar-sender.html — 6DoF AR video streaming with spatial tracking
  • examples/webxr-ar-receiver.html — AR stream display

Sensor Bridge

  • &webxrbridge / &externalsensors / &sensorsbridge — External sensor data input
  • &sensorfilter — Filter sensor types (pos, lin, ori, mag, gyro, acc)
  • &sensorsorigin — Allowed origin for sensor messages

🔧 New URL Parameters

Parameter Description
&meshcast2 Use next-gen Meshcast relay
&altlabel Override display label
&prefervideocodec Preferred video codec selection
&ipv6 IPv6 control (0=prefer IPv4, 1=dual-stack)
&preferipv4 / &ipv4 Disable IPv6 when IPv4 available
&ptzslider / &ptzcontrol Show PTZ control sliders
&ignorehighlight / &ih Ignore highlight/spotlight commands
&pull Alias for &view

🖥️ UI Improvements

  • Fullscreen Button — Optional fullscreen toggle on control bar
  • Picture-in-Picture Button — PiP toggle on control bar
  • PTZ Controls — Enhanced pan/tilt/zoom with reset autofocus
  • Remote Hangup/Reload — Context menu options for guests
  • Slot Color Picker — Visual slot assignment with color coding

🌍 Translations

  • Polish (pl.json) — New language support
  • Chinese Simplified (zh-CN.json) — Parenthesis fix

📄 Documentation & Other

  • Cloud Sync Guide (cloud.html) — Google Drive & Dropbox setup instructions
  • Dropbox Auth Page (dropbox-auth.html) — Token generation helper
  • Director Messenger (director-messenger.html) — Standalone messaging interface
  • OBS Dock Updates — Improved interface and Chinese locale
  • Manifest Updates — PWA improvements with new icons and favicons
  • Terms of Service — Updated with QoS provisions

🛠️ Technical Changes

  • ~30,000 lines changed in lib.js
  • ~1,300 lines changed in main.js
  • New modular core recording system (core/recording/)
  • Audio metering worklet (core/audio/meter.worklet.js)
  • Event bus architecture (core/events/)
  • Legacy session bridge for backward compatibility

Full Changelog: v28.4...v29.0

Don't miss a new vdo.ninja release

NewReleases is sending notifications on new releases.