From 9db81954215783457c74136374ba7e928ecf9a6e Mon Sep 17 00:00:00 2001 From: steveseguin Date: Sun, 25 May 2025 11:39:09 -0400 Subject: [PATCH] delete --- .gitignore | 2 + .../audio-parameters/and-bufferaudio.md | 74 --------------- .../and-outboundsamplerate.md | 58 ------------ .../audio-parameters/and-preferaudiocodec.md | 49 ---------- .../and-controlbarspace.md | 69 -------------- .../camera-parameters/and-focus.md | 51 ---------- .../and-scenelinkcodec.md | 59 ------------ .../and-chunkedbuffer.md | 84 ----------------- .../and-splitrecording.md | 56 ----------- .../and-insertablestreams.md | 77 --------------- .../settings-parameters/and-blackoutmode.md | 65 ------------- .../settings-parameters/and-debug.md | 77 --------------- .../settings-parameters/and-morescenes.md | 48 ---------- .../and-nofullscreenbutton.md | 48 ---------- .../turn-and-stun-parameters/and-lanonly.md | 64 ------------- .../turn-and-stun-parameters/and-privacy.md | 70 -------------- .../and-leaveorientationflag.md | 68 -------------- source-settings/and-accelerometer.md | 93 ------------------- 18 files changed, 2 insertions(+), 1110 deletions(-) delete mode 100644 advanced-settings/audio-parameters/and-bufferaudio.md delete mode 100644 advanced-settings/audio-parameters/and-outboundsamplerate.md delete mode 100644 advanced-settings/audio-parameters/and-preferaudiocodec.md delete mode 100644 advanced-settings/buttons-and-control-bar-parameters/and-controlbarspace.md delete mode 100644 advanced-settings/camera-parameters/and-focus.md delete mode 100644 advanced-settings/mixer-scene-parameters/and-scenelinkcodec.md delete mode 100644 advanced-settings/newly-added-parameters/and-chunkedbuffer.md delete mode 100644 advanced-settings/recording-parameters/and-splitrecording.md delete mode 100644 advanced-settings/security-parameters/and-insertablestreams.md delete mode 100644 advanced-settings/settings-parameters/and-blackoutmode.md delete mode 100644 advanced-settings/settings-parameters/and-debug.md delete mode 100644 advanced-settings/settings-parameters/and-morescenes.md delete mode 100644 advanced-settings/settings-parameters/and-nofullscreenbutton.md delete mode 100644 advanced-settings/turn-and-stun-parameters/and-lanonly.md delete mode 100644 advanced-settings/turn-and-stun-parameters/and-privacy.md delete mode 100644 advanced-settings/video-parameters/and-leaveorientationflag.md delete mode 100644 source-settings/and-accelerometer.md diff --git a/.gitignore b/.gitignore index a6f9a62..f04a1fe 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ node_modules/ package-lock.json turn-credentials.php .vscode/ +.claude +.claude/ \ No newline at end of file diff --git a/advanced-settings/audio-parameters/and-bufferaudio.md b/advanced-settings/audio-parameters/and-bufferaudio.md deleted file mode 100644 index 583b0a3..0000000 --- a/advanced-settings/audio-parameters/and-bufferaudio.md +++ /dev/null @@ -1,74 +0,0 @@ -# &bufferaudio - -**Also known as:** `&audiobuffer` - -#### **Description** - -Sets a minimum audio buffer duration in milliseconds for incoming audio streams to improve playback stability. - -#### **Viewer-Side Option** - -This parameter controls the audio buffering for received streams, helping to smooth out network jitter. - -#### **Usage** - -* **`&bufferaudio=100`** - Sets 100ms audio buffer -* **`&bufferaudio=250`** - Sets 250ms audio buffer -* **`&bufferaudio=0`** - Minimal buffering (lowest latency) -* **`&audiobuffer=200`** - Alias usage - -#### **Examples** - -``` -https://vdo.ninja/?view=streamID&bufferaudio=150 -https://vdo.ninja/?scene=1&room=roomname&bufferaudio=200 -https://vdo.ninja/?director&room=roomname&audiobuffer=100 -``` - -#### **Details** - -* Value in milliseconds (ms) -* Higher values increase stability but add latency -* Lower values reduce latency but may cause glitches -* Helps with poor network conditions -* Only affects received audio, not sent audio - -#### **Recommended Values** - -* **0-50ms**: Ultra-low latency, stable networks only -* **100-200ms**: Good balance for most situations -* **250-500ms**: Poor network conditions -* **500ms+**: Very unstable connections - -#### **Trade-offs** - -**Low Buffer (0-50ms):** -- ✅ Minimal latency -- ❌ May glitch on poor networks -- ❌ Sensitive to jitter - -**High Buffer (200ms+):** -- ✅ Smooth playback -- ✅ Handles network issues -- ❌ Noticeable delay - -#### **Use Cases** - -* Music performances requiring sync -* Interviews over unstable connections -* International calls with high latency -* Mobile connections with variable quality - -#### **Notes** - -* Independent from video buffering -* Applies to all incoming audio streams -* May affect lip-sync at high values -* Consider network conditions when setting - -#### **Related Parameters** - -* [`&buffer`](../view-parameters/buffer.md) - Video buffer control -* [`&buffer2`](../video-parameters/and-buffer2.md) - Alternative buffer method -* [`&audiolatency`](../newly-added-parameters/and-audiolatency.md) - Audio latency control -* [`&sync`](../view-parameters/sync.md) - Audio/video synchronization \ No newline at end of file diff --git a/advanced-settings/audio-parameters/and-outboundsamplerate.md b/advanced-settings/audio-parameters/and-outboundsamplerate.md deleted file mode 100644 index fbe6c9f..0000000 --- a/advanced-settings/audio-parameters/and-outboundsamplerate.md +++ /dev/null @@ -1,58 +0,0 @@ -# &outboundsamplerate - -**Also known as:** `&obsr` - -#### **Description** - -Sets the sample rate for outbound audio processing in the web audio pipeline. - -#### **Sender-Side Option** - -This parameter controls the sample rate used for audio resampling before transmission. - -#### **Usage** - -* **`&outboundsamplerate=48000`** - Sets sample rate to 48kHz (default in v24+) -* **`&outboundsamplerate=44100`** - Sets sample rate to 44.1kHz -* **`&outboundsamplerate=0`** - Disables resampling -* **`&obsr=48000`** - Short alias for the parameter - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&outboundsamplerate=48000 -https://vdo.ninja/?push=streamID&obsr=44100 -https://vdo.ninja/?push=streamID&outboundsamplerate=0 -``` - -#### **Details** - -* In VDO.Ninja v24+, audio is automatically resampled to 48kHz for web audio processing -* This parameter allows override of the default resampling behavior -* Audio is encoded to 48kHz by Opus regardless of this setting -* Mainly useful for debugging or testing audio issues - -#### **Platform Behavior** - -* **Chrome/Chromium:** Resampling enabled by default (can be disabled) -* **Firefox/Safari:** No default resampling (can be force-enabled) -* **Mobile browsers:** No default resampling (can be force-enabled) - -#### **Important Notes** - -* High sample rates can crash the web audio pipeline -* Avoid sample rates above 48kHz -* Setting to 0 or omitting value disables resampling -* Using `&noap` disables the entire web audio pipeline - -#### **Technical Background** - -* Resampling ensures consistent audio processing across different input devices -* Helps prevent audio glitches with certain hardware configurations -* Final transmission uses Opus codec at 48kHz regardless - -#### **Related Parameters** - -* [`&samplerate`](../view-parameters/and-samplerate.md) - Sets playback sample rate (viewer-side) -* [`&noaudioprocessing`](../../general-settings/noaudioprocessing.md) - Disables audio processing -* [`&audiocodec`](minptime-1.md) - Selects audio codec \ No newline at end of file diff --git a/advanced-settings/audio-parameters/and-preferaudiocodec.md b/advanced-settings/audio-parameters/and-preferaudiocodec.md deleted file mode 100644 index 91ba5e7..0000000 --- a/advanced-settings/audio-parameters/and-preferaudiocodec.md +++ /dev/null @@ -1,49 +0,0 @@ -# &preferaudiocodec - -#### **Description** - -Sets the preferred audio codec for outgoing streams, allowing the sender to specify which audio codec they prefer to use. - -#### **Sender-Side Option** - -This parameter influences which audio codec is negotiated during the WebRTC connection setup. - -#### **Usage** - -* **`&preferaudiocodec=opus`** - Prefer Opus codec (default for most browsers) -* **`&preferaudiocodec=red`** - Prefer RED (redundancy encoding) for packet loss resilience -* **`&preferaudiocodec=g722`** - Prefer G.722 codec - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&preferaudiocodec=opus -https://vdo.ninja/?push=streamID&preferaudiocodec=red -https://vdo.ninja/?push=streamID&whipout=whipserver&preferaudiocodec=g722 -``` - -#### **Details** - -* The parameter sets a preference, but the final codec is negotiated between peers -* Both sender and receiver must support the codec for it to be used -* Primarily intended for debugging or WHIP publishing scenarios -* Codec names are case-insensitive (converted to lowercase) - -#### **Available Codecs** - -* **opus** - Default, high-quality codec with good compression -* **red** - Redundancy encoding, better for poor network conditions -* **g722** - Traditional telephony codec, wider compatibility - -#### **Notes** - -* Not all browsers support all codecs -* Using RED codec may limit bitrate to 216 kbps -* This is an advanced parameter mainly for debugging or specific use cases -* WHIP servers may require specific codecs - -#### **Related Parameters** - -* [`&audiocodec`](../audio-parameters/minptime-1.md) - Forces a specific audio codec (viewer-side) -* [`&audiobitrate`](../view-parameters/audiobitrate.md) - Sets the audio bitrate -* [`&whipout`](../whip-parameters/and-whipout.md) - Publishes via WHIP protocol \ No newline at end of file diff --git a/advanced-settings/buttons-and-control-bar-parameters/and-controlbarspace.md b/advanced-settings/buttons-and-control-bar-parameters/and-controlbarspace.md deleted file mode 100644 index e745a37..0000000 --- a/advanced-settings/buttons-and-control-bar-parameters/and-controlbarspace.md +++ /dev/null @@ -1,69 +0,0 @@ -# &controlbarspace - -**Also known as:** `&nocontrolbarspace` (to disable) - -#### **Description** - -Reserves dedicated space for the control bar to prevent video content from being obscured when controls appear. - -#### **General Option** - -This parameter ensures the control bar has its own space rather than overlaying on top of video content. - -#### **Usage** - -* **`&controlbarspace`** - Reserves space for control bar -* **`&nocontrolbarspace`** - Disables reserved space (overlay mode) - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&controlbarspace -https://vdo.ninja/?view=streamID&controlbarspace -https://vdo.ninja/?room=roomname&nocontrolbarspace -``` - -#### **Visual Behavior** - -**With `&controlbarspace`:** -- Video content is sized to leave room for controls -- Controls don't cover any video content -- Consistent layout whether controls are visible or hidden - -**Without (or with `&nocontrolbarspace`):** -- Controls overlay on top of video -- Full video area when controls are hidden -- May obscure bottom portion when controls appear - -#### **Details** - -* Affects layout calculations for video sizing -* Useful for professional presentations -* Prevents important content from being hidden -* Trade-off between screen space and visibility - -#### **Interaction with Other Parameters** - -* Disabled by default when using [`&autohide`](../newly-added-parameters/and-autohide.md) -* Works with all control bar configurations -* Affects both sender and viewer interfaces - -#### **Use Cases** - -* Professional broadcasts -* Educational content where controls are frequently used -* Presentations with important bottom content -* Kiosk displays with permanent controls - -#### **Notes** - -* Consider your content layout when choosing -* More important for content with subtitles or lower thirds -* Can affect overall video size calculations - -#### **Related Parameters** - -* [`&autohide`](../newly-added-parameters/and-autohide.md) - Auto-hides controls -* [`&nocontrols`](and-nocontrols.md) - Removes all controls -* [`&controlbar`](README.md) - Control bar options -* [`&hidemenu`](../design-parameters/and-hidemenu.md) - Hides menu elements \ No newline at end of file diff --git a/advanced-settings/camera-parameters/and-focus.md b/advanced-settings/camera-parameters/and-focus.md deleted file mode 100644 index 9639116..0000000 --- a/advanced-settings/camera-parameters/and-focus.md +++ /dev/null @@ -1,51 +0,0 @@ -# &focus - -#### **Description** - -Manually sets the camera focus distance for devices that support manual focus control. - -#### **Sender-Side Option** - -This parameter overrides auto-focus and sets a specific focal distance for the camera. - -#### **Usage** - -* **`&focus=100`** - Sets focus distance to 100 units -* **`&focus=0`** - Sets focus to closest distance (macro) -* **`&focus=1000`** - Sets focus to far distance - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&focus=100 -https://vdo.ninja/?push=streamID&focus=500 -``` - -#### **Details** - -* Only works on devices/browsers that support manual focus control -* Most effective on mobile devices (smartphones/tablets) -* Desktop webcams rarely support manual focus via browser APIs -* Value represents arbitrary focus distance units (not standardized) -* Disables auto-focus when set - -#### **Device Support** - -* **Supported:** Most modern smartphones (iOS/Android) -* **Limited Support:** Some tablets -* **Rarely Supported:** Desktop webcams -* **Not Supported:** Virtual cameras, screen shares - -#### **Notes** - -* Useful for fixed-focus scenarios (e.g., document cameras, product demos) -* Can prevent focus hunting during streams -* May need experimentation to find optimal value for your setup -* Focus capability depends on browser MediaStream API support - -#### **Related Parameters** - -* [`&autogain`](../audio-parameters/autogain.md) - Controls automatic gain (audio equivalent) -* [`&brightness`](and-brightness.md) - Adjusts camera brightness -* [`&contrast`](and-contrast.md) - Adjusts camera contrast -* [`&zoom`](../video-parameters/and-zoom.md) - Controls camera zoom level \ No newline at end of file diff --git a/advanced-settings/mixer-scene-parameters/and-scenelinkcodec.md b/advanced-settings/mixer-scene-parameters/and-scenelinkcodec.md deleted file mode 100644 index ab0eed3..0000000 --- a/advanced-settings/mixer-scene-parameters/and-scenelinkcodec.md +++ /dev/null @@ -1,59 +0,0 @@ -# &scenelinkcodec - -#### **Description** - -Appends a codec parameter to scene invite links generated by the director, allowing codec preference to be set for all guests joining through those links. - -#### **Director-Side Option** - -This parameter is primarily designed for iframe API usage to control codec selection for scene participants. - -#### **Usage** - -* **`&scenelinkcodec=h264`** - Adds `&codec=h264` to scene links -* **`&scenelinkcodec=vp8`** - Adds `&codec=vp8` to scene links -* **`&scenelinkcodec=vp9`** - Adds `&codec=vp9` to scene links -* **`&scenelinkcodec=av1`** - Adds `&codec=av1` to scene links - -#### **Examples** - -``` -https://vdo.ninja/?room=roomname&director&scenelinkcodec=h264 -https://vdo.ninja/?room=roomname&director&scenelinkcodec=vp9 -``` - -#### **Details** - -* Automatically appends `&codec=` parameter to generated scene links -* Affects all scene invite links created by the director -* Codec name is automatically converted to lowercase -* Intended primarily for iframe API implementations -* Does not affect existing connections, only new invites - -#### **Technical Implementation** - -When set, the parameter: -1. Stores the codec preference as `&codec=value` -2. Appends this to any scene invite URLs generated -3. Ensures consistent codec usage across all scene participants - -#### **Use Cases** - -* Forcing specific codec for compatibility reasons -* Ensuring consistent codec across all participants -* Automated scene management via iframe API -* Testing different codecs across sessions - -#### **Notes** - -* This is a niche parameter mainly for advanced/API usage -* The specified codec must be supported by participants' browsers -* Final codec negotiation still depends on browser capabilities -* Consider bandwidth and CPU implications of codec choice - -#### **Related Parameters** - -* [`&codec`](../view-parameters/codec.md) - Sets codec for individual connections -* [`&scene`](../view-parameters/scene.md) - Specifies scene to view -* [`&director`](../../viewers-settings/director.md) - Enables director mode -* [`&preferaudiocodec`](../audio-parameters/and-preferaudiocodec.md) - Sets preferred audio codec \ No newline at end of file diff --git a/advanced-settings/newly-added-parameters/and-chunkedbuffer.md b/advanced-settings/newly-added-parameters/and-chunkedbuffer.md deleted file mode 100644 index 068edfe..0000000 --- a/advanced-settings/newly-added-parameters/and-chunkedbuffer.md +++ /dev/null @@ -1,84 +0,0 @@ -# &chunkedbuffer - -**Also known as:** `&sendingbuffer` - -#### **Description** - -Sets the buffer size in milliseconds for chunked media transmission mode, controlling latency vs reliability trade-off. - -#### **Sender-Side Option** - -This parameter configures the buffering behavior when using chunked transmission mode for improved reliability. - -#### **Usage** - -* **`&chunkedbuffer=5000`** - 5 second buffer (default) -* **`&chunkedbuffer=2000`** - 2 second buffer (lower latency) -* **`&chunkedbuffer=10000`** - 10 second buffer (more reliable) -* **`&sendingbuffer=3000`** - Alias usage - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&chunked&chunkedbuffer=3000 -https://vdo.ninja/?push=streamID&chunked&sendingbuffer=5000 -https://vdo.ninja/?room=roomname&chunked&chunkedbuffer=2000 -``` - -#### **Details** - -* Only applies when using [`&chunked`](and-chunked.md) mode -* Value in milliseconds (default: 5000ms) -* Controls how much data is buffered before sending -* Higher values improve reliability on poor connections -* Lower values reduce latency but may cause issues - -#### **Buffer Size Guidelines** - -* **1000-2000ms**: Low latency, good networks -* **3000-5000ms**: Balanced (default range) -* **5000-10000ms**: Poor networks, high reliability -* **10000ms+**: Extreme conditions - -#### **How It Works** - -1. Media is encoded into chunks -2. Chunks are buffered for specified duration -3. Buffer allows for retransmission if needed -4. Larger buffer = more retry opportunities - -#### **Trade-offs** - -**Small Buffer (1-2 seconds):** -- ✅ Lower latency -- ✅ More real-time -- ❌ Less reliable on poor networks -- ❌ May drop frames - -**Large Buffer (5-10 seconds):** -- ✅ Very reliable -- ✅ Handles packet loss well -- ❌ Higher latency -- ❌ Less real-time interaction - -#### **Use Cases** - -* Streaming over cellular networks -* International broadcasts -* Unreliable internet connections -* Recording important content -* One-way broadcasts (higher buffer acceptable) - -#### **Notes** - -* Requires [`&chunked`](and-chunked.md) to be enabled -* Affects sender-side behavior only -* Memory usage increases with buffer size -* Consider your use case when setting - -#### **Related Parameters** - -* [`&chunked`](and-chunked.md) - Enables chunked transmission mode -* [`&buffer`](../view-parameters/buffer.md) - Viewer-side buffer control -* [`&nochunk`](../settings-parameters/and-nochunked.md) - Disables chunked mode -* [`&retransmit`](../settings-parameters/and-retransmit.md) - Relay chunked streams \ No newline at end of file diff --git a/advanced-settings/recording-parameters/and-splitrecording.md b/advanced-settings/recording-parameters/and-splitrecording.md deleted file mode 100644 index 12714b0..0000000 --- a/advanced-settings/recording-parameters/and-splitrecording.md +++ /dev/null @@ -1,56 +0,0 @@ -# &splitrecording - -#### **Description** - -Enables automatic splitting of browser-based recordings into multiple file segments to prevent data loss and enable incremental saving. - -#### **Sender-Side Option** - -When recording locally in the browser (using [`&record`](and-record.md)), this parameter splits the recording into multiple files at specified intervals. - -#### **Usage** - -* **`&splitrecording`** - Splits recordings every 5 minutes (default) -* **`&splitrecording=10`** - Splits recordings every 10 minutes -* **`&splitrecording=1`** - Splits recordings every 1 minute - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&record&splitrecording -https://vdo.ninja/?push=streamID&record&splitrecording=15 -``` - -#### **Details** - -* Each file segment is approximately 30MB at 720p for 5 minutes of recording -* Files are saved with numbered suffixes (e.g., `recording.webm`, `recording.webm_1`, `recording.webm_2`) -* Only the first file contains the media header information -* Segments must be concatenated to create a playable video file -* If battery reaches 2% on mobile/laptop, recording automatically saves and starts a new segment - -#### **File Concatenation** - -To combine the segments into a single playable file: - -**Windows Command Prompt:** -```bash -copy /b recording.webm + recording.webm_1 + recording.webm_2 output.webm -``` - -**FFmpeg (cross-platform):** -```bash -ffmpeg -i "concat:recording.webm|recording.webm_1|recording.webm_2" -c copy output.webm -``` - -#### **Notes** - -* Helps prevent complete data loss if the browser crashes -* Enables cloud upload of recording chunks while still recording -* Minimum value is 1 minute -* Feature requires Chrome/Chromium-based browsers for battery detection - -#### **Related Parameters** - -* [`&record`](and-record.md) - Enables local recording -* [`&autorecord`](and-autorecord.md) - Automatically starts recording \ No newline at end of file diff --git a/advanced-settings/security-parameters/and-insertablestreams.md b/advanced-settings/security-parameters/and-insertablestreams.md deleted file mode 100644 index 89d7934..0000000 --- a/advanced-settings/security-parameters/and-insertablestreams.md +++ /dev/null @@ -1,77 +0,0 @@ -# &insertablestreams - -**Also known as:** `&is` - -#### **Description** - -Enables insertable streams for custom media processing, allowing manipulation of encoded media frames before transmission or playback. - -#### **General Option** - -This parameter activates the insertable streams API, enabling advanced media processing capabilities. - -#### **Usage** - -* **`&insertablestreams`** - Enable insertable streams -* **`&insertablestreams=custom`** - Enable with custom identifier -* **`&is`** - Short alias - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&insertablestreams -https://vdo.ninja/?view=streamID&is -https://vdo.ninja/?room=roomname&insertablestreams=myprocessor -``` - -#### **Technical Details** - -* Enables WebRTC Insertable Streams API -* Allows frame-level media manipulation -* Can process both audio and video -* Used for custom encryption, effects, or analysis -* Required for certain advanced features - -#### **Common Uses** - -1. **Custom Encryption**: Implement end-to-end encryption -2. **Media Effects**: Apply custom video/audio processing -3. **Analytics**: Analyze media frames in real-time -4. **Watermarking**: Add watermarks to video streams -5. **Transcoding**: Custom codec implementations - -#### **How It Works** - -1. Intercepts encoded media frames -2. Allows JavaScript processing -3. Can modify or analyze frames -4. Re-inserts processed frames -5. Transparent to WebRTC pipeline - -#### **Browser Support** - -* **Chrome/Edge**: Full support (v86+) -* **Firefox**: Experimental support -* **Safari**: Limited support -* **Mobile**: Varies by platform - -#### **Performance Considerations** - -* Adds processing overhead -* May increase CPU usage -* Can impact latency -* Memory usage depends on processing - -#### **Security Notes** - -* Allows deep media access -* Use with trusted code only -* Can break E2EE if misused -* Verify processing integrity - -#### **Related Parameters** - -* [`&e2ee`](../setup-parameters/and-e2ee.md) - End-to-end encryption -* [`&password`](../setup-parameters/and-password.md) - Encryption password -* [`&secure`](../../source-settings/secure.md) - Security mode -* [`&privacy`](../turn-and-stun-parameters/and-privacy.md) - Privacy enhancements \ No newline at end of file diff --git a/advanced-settings/settings-parameters/and-blackoutmode.md b/advanced-settings/settings-parameters/and-blackoutmode.md deleted file mode 100644 index 49b29ea..0000000 --- a/advanced-settings/settings-parameters/and-blackoutmode.md +++ /dev/null @@ -1,65 +0,0 @@ -# &blackoutmode - -**Also known as:** `&blackout`, `&bo`, `&bom` - -#### **Description** - -Enables blackout mode, which hides all videos and mutes all audio for privacy or emergency situations. - -#### **General Option** - -This parameter activates or shows the blackout mode button, allowing quick privacy control during streams. - -#### **Usage** - -* **`&blackoutmode`** - Shows the blackout button -* **`&blackoutmode=1`** - Shows button and activates blackout immediately -* **`&blackout`** - Alias for blackoutmode -* **`&bo`** - Short alias -* **`&bom`** - Short alias - -#### **Examples** - -``` -https://vdo.ninja/?room=roomname&blackoutmode -https://vdo.ninja/?push=streamID&blackoutmode=1 -https://vdo.ninja/?director&room=roomname&bo -``` - -#### **Visual Example** - -When activated: -- All video feeds become black -- All audio is muted -- A clear indicator shows blackout is active -- Can be toggled on/off with the button - -#### **Details** - -* Shows a prominent blackout button in the interface -* When activated, immediately blacks out all video -* Mutes all audio inputs and outputs -* Useful for emergency privacy situations -* State can be toggled by clicking the button - -#### **Use Cases** - -* Emergency privacy protection -* Quick mute during unexpected interruptions -* Studio blackouts between takes -* Privacy during sensitive discussions -* Technical issue masking - -#### **Notes** - -* Affects both incoming and outgoing streams -* Blackout state is local (not synchronized across participants) -* Quick toggle for immediate privacy -* Visual indicator prevents accidental activation - -#### **Related Parameters** - -* [`&mute`](../../source-settings/and-mute.md) - Mutes audio only -* [`&videomute`](../../source-settings/and-videomute.md) - Mutes video only -* [`&privacy`](../../turn-and-stun-parameters/and-privacy.md) - Enhanced privacy mode -* [`&hidemenu`](../design-parameters/and-hidemenu.md) - Hides interface elements \ No newline at end of file diff --git a/advanced-settings/settings-parameters/and-debug.md b/advanced-settings/settings-parameters/and-debug.md deleted file mode 100644 index a3490ed..0000000 --- a/advanced-settings/settings-parameters/and-debug.md +++ /dev/null @@ -1,77 +0,0 @@ -# &debug - -#### **Description** - -Enables verbose debug logging to browser console and optionally streams logs to a WebSocket server. - -#### **General Option** - -This parameter activates detailed logging for troubleshooting connection issues and debugging problems. - -#### **Usage** - -* **`&debug`** - Enable debug logging to console and auto-save on exit -* **`&debug=ws://server.com:port`** - Stream logs to WebSocket server -* **`&debug=wss://secure-server.com`** - Stream logs to secure WebSocket - -#### **Examples** - -``` -https://vdo.ninja/?room=roomname&debug -https://vdo.ninja/?push=streamID&debug -https://vdo.ninja/?view=streamID&debug=ws://localhost:8080 -``` - -#### **Details** - -* Outputs verbose logs to browser's developer console -* Attempts to auto-save logs to disk when page closes -* Can stream logs in real-time to WebSocket endpoint -* Auto-save may not work in OBS browser sources -* Logs include connection states, errors, and performance data - -#### **Log Contents** - -* WebRTC connection states -* ICE candidate information -* Media track events -* Error messages -* Performance metrics -* Network quality data -* API calls and responses - -#### **WebSocket Streaming** - -When using `&debug=websocketserver`: -* Logs stream in real-time -* Requires custom WebSocket server -* Useful for remote debugging -* Can monitor multiple sessions - -#### **Accessing Logs** - -1. **Browser Console**: Press F12 → Console tab -2. **Auto-saved File**: Downloads on page close (Chrome only) -3. **WebSocket Stream**: Real-time on your server - -#### **Use Cases** - -* Troubleshooting connection failures -* Analyzing performance issues -* Remote support and debugging -* Development and testing -* Network diagnostics - -#### **Notes** - -* Generates significant console output -* May impact performance slightly -* Sensitive information may be logged -* Best used temporarily for troubleshooting -* Log files can become large quickly - -#### **Related Parameters** - -* [`&stats`](../../general-settings/and-stats.md) - Shows connection statistics overlay -* [`&showconnections`](and-showconnections.md) - Displays connection info -* [`&getdetailedstate`](../../guides/api-commands/getdetailedstate.md) - API for connection state \ No newline at end of file diff --git a/advanced-settings/settings-parameters/and-morescenes.md b/advanced-settings/settings-parameters/and-morescenes.md deleted file mode 100644 index 104d9fc..0000000 --- a/advanced-settings/settings-parameters/and-morescenes.md +++ /dev/null @@ -1,48 +0,0 @@ -# &morescenes - -#### **Description** - -Adds additional numbered scene buttons beyond the default 8 scenes in the director's control room. - -#### **Director-Side Option** - -This parameter extends the number of scene selection buttons available to the director. - -#### **Usage** - -* **`&morescenes=12`** - Shows 12 scene buttons (1-12) -* **`&morescenes=16`** - Shows 16 scene buttons (1-16) -* **`&morescenes=20`** - Shows 20 scene buttons (1-20) - -#### **Examples** - -``` -https://vdo.ninja/?room=roomname&director&morescenes=12 -https://vdo.ninja/?room=roomname&director&morescenes=16 -``` - -#### **Details** - -* Default without parameter: 8 scene buttons -* Minimum value: 9 (values below 9 are set to 8) -* Maximum practical limit depends on screen size and UI layout -* Scene buttons appear in the director's control interface -* Each scene can have different guests/layouts assigned - -#### **Visual Example** - -When `&morescenes=12` is used, the director will see: - -![Scene buttons 1-12 in the director interface](<../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1).png>) - -#### **Notes** - -* Useful for productions with many different scene configurations -* Additional scenes can be accessed via keyboard shortcuts -* Scene configurations are saved per room - -#### **Related Parameters** - -* [`&scene`](../../advanced-settings/view-parameters/scene.md) - Specifies which scene to view -* [`&director`](../../viewers-settings/director.md) - Enables director mode -* [`&layouts`](../director-parameters/and-layouts.md) - Pre-configures scene layouts \ No newline at end of file diff --git a/advanced-settings/settings-parameters/and-nofullscreenbutton.md b/advanced-settings/settings-parameters/and-nofullscreenbutton.md deleted file mode 100644 index 5715be7..0000000 --- a/advanced-settings/settings-parameters/and-nofullscreenbutton.md +++ /dev/null @@ -1,48 +0,0 @@ -# &nofullscreenbutton - -**Also known as:** `&nofsb` - -#### **Description** - -Hides the full-window button that appears in the top-right corner of videos in group rooms. - -#### **General Option** - -This parameter removes the small expand/full-window button that typically appears when hovering over videos. - -#### **Usage** - -* **`&nofullscreenbutton`** - Hides the full-window button -* **`&nofsb`** - Short alias for the parameter - -#### **Examples** - -``` -https://vdo.ninja/?room=roomname&nofullscreenbutton -https://vdo.ninja/?view=streamID&nofsb -https://vdo.ninja/?scene=1&room=roomname&nofullscreenbutton -``` - -#### **Visual Example** - -Without the parameter: The button appears on hover -With the parameter: No button appears - -#### **Details** - -* Only affects the corner button, not other fullscreen methods -* Users can still double-click videos to go full-window -* F11 and other fullscreen shortcuts still work -* Useful for kiosk modes or simplified interfaces - -#### **Notes** - -* Helps create cleaner interfaces for public displays -* Reduces accidental clicks in touchscreen environments -* Does not affect the fullscreen button in the control bar (if enabled with [`&fullscreenbutton`](and-fullscreenbutton.md)) - -#### **Related Parameters** - -* [`&fullscreenbutton`](and-fullscreenbutton.md) - Adds F11 fullscreen button to control bar -* [`&nocontrols`](and-nocontrols.md) - Hides all control buttons -* [`&hidemenu`](../design-parameters/and-hidemenu.md) - Hides the menu button \ No newline at end of file diff --git a/advanced-settings/turn-and-stun-parameters/and-lanonly.md b/advanced-settings/turn-and-stun-parameters/and-lanonly.md deleted file mode 100644 index 5880ae8..0000000 --- a/advanced-settings/turn-and-stun-parameters/and-lanonly.md +++ /dev/null @@ -1,64 +0,0 @@ -# &lanonly - -#### **Description** - -Restricts peer-to-peer connections to devices on the same local area network (LAN), blocking all external connections. - -#### **General Option** - -This parameter attempts to ensure that all WebRTC connections are established only between devices on the same local network. - -#### **Usage** - -* **`&lanonly`** - Enable LAN-only mode - -#### **Examples** - -``` -https://vdo.ninja/?room=localroom&lanonly -https://vdo.ninja/?push=streamID&lanonly -https://vdo.ninja/?view=streamID&lanonly -``` - -#### **Details** - -* Blocks all public IP addresses for both incoming and outgoing connections -* Disables TURN/STUN servers to prevent external relay -* Still requires internet connection for initial handshake and website access -* Failed external connections will retry but won't establish -* Only allows RFC1918 private IP ranges (192.168.x.x, 10.x.x.x, 172.16-31.x.x) - -#### **Technical Implementation** - -* Filters ICE candidates to exclude public IPs -* Removes TURN server configuration -* Modifies SDP to prevent external connection attempts -* May not work with WHEP/WHIP protocols - -#### **Use Cases** - -* Corporate networks requiring internal-only streaming -* Security-conscious deployments -* Testing local network performance -* Avoiding internet bandwidth usage for local streams - -#### **Limitations** - -* VDO.Ninja server (handshake) still requires internet -* Cannot connect to devices outside your LAN -* May not work with complex network configurations (VLANs, etc.) -* No fallback to TURN if direct connection fails - -#### **Notes** - -* For fully offline operation, consider self-hosting VDO.Ninja -* Devices must be on the same subnet for connection -* Useful for reducing latency in local productions -* May help with privacy concerns about external IP exposure - -#### **Related Parameters** - -* [`&relay`](../../general-settings/and-relay.md) - Forces TURN relay (opposite behavior) -* [`&privacy`](../turn-and-stun-parameters/README.md) - Enhanced privacy mode -* [`&icefilter`](../../general-settings/and-icefilter.md) - Custom ICE candidate filtering -* [`&tcp`](../../general-settings/and-tcp.md) - Forces TCP connections \ No newline at end of file diff --git a/advanced-settings/turn-and-stun-parameters/and-privacy.md b/advanced-settings/turn-and-stun-parameters/and-privacy.md deleted file mode 100644 index 7248c04..0000000 --- a/advanced-settings/turn-and-stun-parameters/and-privacy.md +++ /dev/null @@ -1,70 +0,0 @@ -# &privacy - -#### **Description** - -Enhanced privacy mode that forces TURN relay usage and adds additional privacy protections. - -#### **General Option** - -This parameter enables stricter privacy settings beyond just using TURN relay, including blocking potentially privacy-compromising features. - -#### **Usage** - -* **`&privacy`** - Enable enhanced privacy mode - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&privacy -https://vdo.ninja/?room=roomname&privacy -https://vdo.ninja/?view=streamID&privacy -``` - -#### **Details** - -* Forces all connections through TURN relay servers (hides IP addresses) -* Prompts for confirmation before loading iframes (except trusted sites) -* More restrictive than [`&relay`](../../general-settings/and-relay.md) alone -* Shows warnings even in OBS when iframes try to load -* Trusted sites (YouTube, Twitch, Vimeo) bypass iframe warnings - -#### **Privacy Features** - -1. **IP Address Protection**: Routes through TURN servers -2. **Iframe Blocking**: Prevents automatic loading of embedded content -3. **Enhanced Warnings**: Shows privacy notices for potential risks -4. **No Direct P2P**: Prevents direct peer connections - -#### **Visual Example** - -When an iframe tries to load with `&privacy`: - -![Privacy warning dialog](<../../.gitbook/assets/image (232).png>) - -#### **Use Cases** - -* Streaming with hidden IP addresses -* Corporate environments with strict privacy requirements -* Public streams where location privacy is important -* Preventing tracking through embedded content - -#### **Limitations** - -* May increase latency due to relay usage -* Some features may be restricted -* Higher bandwidth usage on TURN servers -* Not all embedded content will work - -#### **Notes** - -* More restrictive than [`&relay`](../../general-settings/and-relay.md) -* Combines multiple privacy features -* Good for high-security scenarios -* May impact performance - -#### **Related Parameters** - -* [`&relay`](../../general-settings/and-relay.md) - Forces TURN relay (less restrictive) -* [`&nowebsite`](../../source-settings/nowebsite.md) - Completely disables iframe loading -* [`&lanonly`](and-lanonly.md) - Restricts to local network only -* [`&icefilter`](../../general-settings/and-icefilter.md) - Custom ICE filtering \ No newline at end of file diff --git a/advanced-settings/video-parameters/and-leaveorientationflag.md b/advanced-settings/video-parameters/and-leaveorientationflag.md deleted file mode 100644 index fae2c94..0000000 --- a/advanced-settings/video-parameters/and-leaveorientationflag.md +++ /dev/null @@ -1,68 +0,0 @@ -# &leaveorientationflag - -#### **Description** - -Preserves the video orientation metadata in the WebRTC stream, preventing automatic orientation corrections. - -#### **Sender-Side Option** - -This parameter prevents VDO.Ninja from removing the 3GPP video orientation extension from the SDP. - -#### **Usage** - -* **`&leaveorientationflag`** - Preserves orientation metadata - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&leaveorientationflag -https://vdo.ninja/?room=roomname&leaveorientationflag -``` - -#### **Technical Details** - -* Preserves `a=extmap:3 urn:3gpp:video-orientation` in SDP -* By default, VDO.Ninja removes this flag -* Affects how video rotation is handled -* Important for certain mobile streaming scenarios - -#### **What It Does** - -When enabled: -- Raw orientation data is passed through -- Receiving applications handle rotation -- No automatic orientation correction -- Preserves original mobile device orientation - -When disabled (default): -- VDO.Ninja handles orientation -- Automatic rotation for mobile sources -- Consistent orientation across platforms - -#### **Use Cases** - -* Custom applications that handle rotation -* Debugging orientation issues -* Preserving raw mobile video streams -* Integration with systems expecting orientation data - -#### **Platform Considerations** - -* **Mobile devices**: May affect portrait/landscape handling -* **Desktop**: Usually no visible effect -* **OBS**: May impact how mobile sources are displayed -* **Custom receivers**: Can read orientation metadata - -#### **Notes** - -* Advanced parameter for specific use cases -* Most users should use default behavior -* Can affect mobile video display -* Test thoroughly when enabling - -#### **Related Parameters** - -* [`&forcelandscape`](../mobile-parameters/and-forcelandscape.md) - Forces landscape orientation -* [`&forceportrait`](../mobile-parameters/and-forceportrait.md) - Forces portrait orientation -* [`&rotate`](../design-parameters/and-rotate.md) - Rotates video display -* [`&leavevideorotation`](README.md) - Related rotation handling \ No newline at end of file diff --git a/source-settings/and-accelerometer.md b/source-settings/and-accelerometer.md deleted file mode 100644 index 89379db..0000000 --- a/source-settings/and-accelerometer.md +++ /dev/null @@ -1,93 +0,0 @@ -# &accelerometer - -**Also known as:** `&sensors`, `&sensor`, `&gyro`, `&gyros` - -#### **Description** - -Enables device motion and orientation sensor data transmission, allowing real-time sharing of accelerometer, gyroscope, and other sensor information. - -#### **Sender-Side Option** - -This parameter activates sensor data collection and transmission from devices that support motion sensors. - -#### **Usage** - -* **`&accelerometer`** - Enable at default rate (30 Hz) -* **`&accelerometer=60`** - Enable at 60 Hz update rate -* **`&sensor=10`** - Enable at 10 Hz update rate -* **`&gyro=30`** - Alias usage - -#### **Examples** - -``` -https://vdo.ninja/?push=streamID&accelerometer -https://vdo.ninja/?push=streamID&sensor=60 -https://vdo.ninja/?room=roomname&gyro=30 -``` - -#### **Sensor Data Included** - -* **Accelerometer**: Linear acceleration (x, y, z) -* **Gyroscope**: Rotational velocity -* **Orientation**: Device orientation in space -* **Magnetometer**: Compass heading (if available) -* **Linear Acceleration**: Acceleration without gravity -* **Absolute Orientation**: Quaternion orientation - -#### **Update Rates** - -* **Default**: 30 Hz (30 updates per second) -* **Minimum**: 1 Hz -* **Maximum**: 60 Hz (device dependent) -* **Recommended**: 10-30 Hz for most applications - -#### **Device Support** - -* **Smartphones**: Full support (iOS/Android) -* **Tablets**: Full support -* **Laptops**: Limited (some have accelerometers) -* **Desktop**: Usually no sensors - -#### **Browser Requirements** - -* Requires HTTPS connection -* User permission required -* Not all browsers support all sensors - -#### **Data Format** - -Sensor data is transmitted as structured data containing: -- Timestamp -- Sensor type -- X, Y, Z values -- Additional sensor-specific data - -#### **Use Cases** - -* Motion-controlled applications -* VR/AR experiences -* Game controllers -* Motion analysis -* Remote device monitoring -* Interactive presentations - -#### **Performance Notes** - -* Higher rates increase bandwidth usage -* Can impact battery life on mobile -* May affect device performance -* Consider network latency - -#### **Privacy Considerations** - -* Requires explicit user permission -* Can reveal device movement patterns -* May be disabled by privacy settings -* Use responsibly - -#### **Related Parameters** - -* [`&sensorfilter`](../settings-parameters/and-sensorfilter.md) - Filter specific sensors -* [`&remote`](../general-settings/remote.md) - Remote control features -* [`&ptz`](ptz.md) - Pan-tilt-zoom control -* [`&api`](../general-settings/api.md) - API for sensor data access \ No newline at end of file