Skip to main content

Overview

TCP Streamer on Windows provides native system audio capture through WASAPI loopback mode, eliminating the need for virtual audio cables in most scenarios. This guide covers installation, audio configuration, and Windows-specific optimizations.

Installation

Download & Install

1

Download the installer

Download the latest Windows installer from the Releases Page.Choose between:
  • .msi - Standard Windows installer (recommended)
  • .exe - Portable executable
2

Run the installer

Double-click the downloaded .msi file and follow the installation wizard.The application will be installed to:
C:\Program Files\TCP Streamer\
3

Launch the application

Find TCP Streamer in your Start Menu or double-click the desktop shortcut.

System Requirements

  • OS: Windows 10 or Windows 11
  • RAM: 100 MB minimum
  • Audio: WASAPI-compatible audio device
  • Network: Stable connection to TCP server

Audio Capture Methods

Windows includes native system audio capture through WASAPI loopback mode. This is the easiest method for capturing “what you hear” without additional software.
Important: You must have speakers or headphones plugged in for WASAPI loopback to capture audio. The loopback device mirrors the output device.

Enable WASAPI Loopback

1

Select your output device

In the Input Device dropdown, select your speakers or headphones.
2

Enable loopback mode

Check the “Enable Loopback (Windows)” checkbox.This tells the application to capture the audio output instead of input.
3

Verify audio capture

Play audio on your computer and watch the real-time volume indicator to confirm capture is working.

WASAPI Loopback Characteristics

  • Latency: Higher than virtual cables (4-12 seconds typical)
  • Buffer Requirements: Larger buffers needed for stability
  • CPU Usage: Very low
  • Quality: Perfect digital copy of system audio
  • Network Sensitivity: More sensitive to WiFi jitter than other methods

Virtual Audio Cable (Alternative)

For lower latency or more control, use virtual audio cable software: Popular Options:
1

Install virtual cable software

Download and install VB-Audio Cable or similar software.
2

Set as default output

In Windows Sound Settings:
  1. Right-click the speaker icon in taskbar
  2. Select Sound Settings
  3. Set the virtual cable as your default output device
3

Select in TCP Streamer

Choose the virtual cable device from the Input Device dropdown.Do not enable loopback mode when using virtual cables.

Configuration

Optimal Settings for WASAPI Loopback

WASAPI loopback requires larger buffers due to timing variability:
For stable wired connections:
  • Sample Rate: 48 kHz
  • Buffer Size: 1024 samples
  • Ring Buffer: 6000-8000ms
  • Adaptive Buffer: Enabled
    • Min: 4000ms
    • Max: 12000ms
  • Expected Latency: 4-6 seconds

Optimal Settings for Virtual Audio Cable

Virtual cables provide more predictable timing:
  • Sample Rate: 48 kHz
  • Buffer Size: 512 or 1024 samples
  • Ring Buffer: 2000-5000ms
  • Adaptive Buffer: Enabled (2000ms - 6000ms)
  • Expected Latency: 2-4 seconds

Network Presets

Use the Advanced tab network presets for quick configuration:
PresetRing BufferChunk SizeAdaptive RangeBest For
Ethernet2000ms5122-6sWired + Virtual Cable
WiFi4000ms10243-10sWiFi + Virtual Cable
WiFi (Poor)8000ms20485-15sWASAPI or poor WiFi
The application automatically selects appropriate default buffers when you enable WASAPI loopback mode (8000ms base).

Performance & Optimization

CPU Usage

TCP Streamer is extremely lightweight on Windows:
  • Idle: <1% CPU
  • Streaming (WASAPI): 1-3% CPU
  • Memory: 2-3 MB typical, up to 10 MB with large buffers

Reducing CPU Usage

If you experience high CPU usage:
  1. Increase buffer size to 2048 samples
  2. Lower sample rate to 44.1 kHz if 48 kHz is unnecessary
  3. Disable high priority thread in Advanced settings
  4. Close other audio applications that may compete for the audio device

Network Quality

Monitor the Network Quality indicator in the Statistics tab:
  • Excellent: <5ms jitter - Perfect streaming
  • Good: 5-15ms jitter - Stable, minimal buffer adjustments
  • Fair: 15-30ms jitter - Adaptive buffer actively managing
  • Poor: >30ms jitter - Consider wired connection or larger buffers

Troubleshooting

WASAPI Loopback Stuttering

Symptoms: Audio cuts out, stutters, or has periodic dropouts Solutions:
1

Enable adaptive buffer

Navigate to Audio Settings and enable Adaptive Buffer.Set:
  • Min: 5000ms
  • Max: 15000ms
2

Increase ring buffer

Manually set Ring Buffer to 10000ms or higher.
3

Use network preset

Apply the WiFi (Poor Signal) preset in the Advanced tab, even for wired connections.
4

Check CPU throttling

On laptops, disable CPU power saving:
  1. Control Panel → Power Options
  2. Select “High Performance” plan
  3. Ensure “Minimum processor state” is 100%
WASAPI loopback trades latency for reliability. If you need <4 second latency, use a virtual audio cable instead.

Audio Device Not Found

Problem: Your audio device doesn’t appear in the dropdown Solutions:
  1. Check device is enabled:
    • Right-click speaker icon → Sound Settings
    • Ensure the device is enabled and not disabled
  2. Restart the application after connecting new audio devices
  3. Check for exclusive mode conflicts:
    • Right-click speaker icon → Sound SettingsDevice Properties
    • Under Advanced, uncheck “Allow applications to take exclusive control”
  4. Update audio drivers from your device manufacturer

Connection Fails

Problem: “Failed to connect to TCP server” Solutions:
1

Verify server is running

Ensure your TCP server (e.g., Snapcast) is running and listening on the specified port.
2

Check Windows Firewall

Add an exception for TCP Streamer:
  1. Windows Security → Firewall & Network Protection
  2. Allow an app through firewall
  3. Add TCP Streamer
3

Test connectivity

Open Command Prompt and test the connection:
telnet [server-ip] [port]
If this fails, the issue is network-related, not TCP Streamer.
4

Try localhost

If the server is on the same machine, use:
  • IP: 127.0.0.1 or localhost

No Audio Streaming (Connected but Silent)

Problem: Connection established but server receives no audio Possible Causes:
  1. Silence detection is working correctly - No audio is playing
  2. Audio input is muted or volume too low
  3. Wrong device selected - Not capturing the correct audio source
  4. Loopback not enabled when using output device
Solutions:
  • Play audio on your computer while streaming
  • Check the real-time volume indicator moves when audio plays
  • Verify silence threshold isn’t set too high
  • Ensure “Enable Loopback” is checked if using speakers/headphones
  • Check Windows volume mixer (Win + G → Audio)

Permission Errors

Problem: “Access denied” when starting stream Solutions:
  1. Run as Administrator (right-click → Run as administrator)
  2. Check antivirus software isn’t blocking TCP Streamer
  3. Reinstall with administrator privileges

High Latency

Problem: 10+ seconds of delay between computer and server Expected Behavior:
  • WASAPI loopback typically has 4-12 seconds latency
  • This is a trade-off for stability and compatibility
To Reduce Latency:
  1. Use virtual audio cable instead of WASAPI loopback (2-4 seconds)
  2. Use wired network instead of WiFi
  3. Reduce ring buffer to minimum stable value
  4. Disable adaptive buffer if network is very stable

Automation

Auto-start on Windows Boot

Enable Auto-start on launch in TCP Streamer settings:
  1. Navigate to Automation tab
  2. Enable “Start on system boot”
  3. The application will launch minimized to system tray
Manual Method: Add TCP Streamer to Windows startup folder:
shell:startup
  1. Press Win + R
  2. Type shell:startup and press Enter
  3. Create a shortcut to TCP Streamer in this folder

Auto-stream Configuration

For fully automated operation:
  1. Enable Auto-start on launch - Start with Windows
  2. Enable Auto-stream - Begin streaming immediately
  3. Enable Auto-reconnect - Retry connection on failure
  4. Set silence detection - Stop when no audio for X seconds

Advanced Features

QoS (Quality of Service) Tagging

Improve network priority by setting DSCP/TOS values:
  1. Navigate to Advanced tab
  2. Select QoS preset:
    • VoIP (EF) - Highest priority
    • Low Delay - Expedited forwarding
    • Throughput - Bulk transfer
QoS requires router support and configuration to be effective.

High Priority Thread

Reduce network jitter by elevating thread priority:
  1. Navigate to Advanced tab
  2. Enable High Priority Thread
  3. This may require administrator privileges
When to use:
  • WiFi connections with variable latency
  • Systems with high background CPU usage
  • Professional audio applications
When not to use:
  • May cause audio glitches on low-end systems
  • Unnecessary on stable wired connections

Best Practices

For Multi-room Audio (Snapcast)

  1. Use WASAPI loopback for simplicity
  2. Accept 4-6 seconds of latency (not noticeable across rooms)
  3. Enable Auto-reconnect for reliability
  4. Set silence timeout to 300 seconds (5 minutes)
  5. Use WiFi (Poor) preset for maximum stability

For Low-latency Applications

  1. Use virtual audio cable (VB-Audio)
  2. Use wired Ethernet connection
  3. Apply Ethernet preset
  4. Set buffer size to 512 samples
  5. Disable silence detection for continuous stream

For Laptop/Mobile Setups

  1. Use WASAPI loopback (no extra software)
  2. Apply WiFi (Poor) preset
  3. Enable Adaptive Buffer (5s - 15s range)
  4. Disable High Priority Thread to save battery
  5. Enable Auto-reconnect for handling network switches

Additional Resources


Platform: Windows 10/11 Audio API: WASAPI Native Loopback: Yes Typical Latency: 4-12 seconds (loopback) | 2-4 seconds (virtual cable)

Build docs developers (and LLMs) love