CSTV (SourceTV)
Professional broadcasting and demo recording for your CS2 server.
Pro Feature
CSTV is available exclusively on Pro servers.
What is CSTV?
CSTV enables live broadcasting of matches with a short delay, allowing spectators to watch games without participating. This is the same technology used in professional Counter-Strike tournaments for observer streams. Broadcasts can be automatically recorded for replay.
Most server owners enable CSTV for one of two reasons:
- Demo recording. Every match is saved as a
.demfile you can download and review afterwards. - Spectating. People can watch a live match from inside CS2 without taking a player slot.
Enabling CSTV
CSTV is switched on from the panel. You do not need to run any console commands to get it working.
Step 1: Open Your Server Settings
- Go to fshost.me/pro/servers
- Click Edit on your server
- Find the CSTV section
Step 2: Enable and Save
Turn CSTV on, then save. The panel shows the assigned CSTV port, which you need in order to connect as a spectator. Write it down.
Step 3: Restart the Server
CSTV starts with the server process, so the change applies on the next restart. Restart from the panel.
That Is the Whole Setup
Once CSTV is enabled and the server has restarted, demo recording works on its own. The commands in the next section are optional adjustments, not required steps.
Configuration
The panel handles the settings that matter for a normal setup. Use the commands below only when you want to change the defaults, for example to rename the broadcast or add a broadcast delay.
Basic Settings
| Command | Description |
|---|---|
tv_name "name" | Set broadcaster name shown in server browser |
tv_record "filename" | Start recording a demo |
tv_stoprecord | Stop current demo recording |
Example Configuration
// CSTV Settings
tv_enable 1
tv_name "FSHOST Match Server"
tv_delay 0 // 0 second delay
tv_maxclients 10 // Max spectatorsConnecting to CSTV
As a Spectator
Via Console:
connect SERVER_IP:CSTV_PORTExample:
connect 123.45.67.89:27020Finding Your Port
Your CSTV port is displayed in the Pro Panel when CSTV is enabled. It's typically your server port + 5 (e.g., if the server is on port 27015, CSTV is on 27020).
Spectator Commands
Once connected to CSTV:
spec_mode // Cycle spectator modes
spec_next // Next player
spec_prev // Previous player
spec_player NAME // Spectate specific playerDemo Recording
Recording Demos
Manual Recording:
tv_record match_de_dust2_team1_vs_team2
tv_stoprecordDemo Playback
Enable voice chat in demos:
tv_listen_voice_indices -1
tv_listen_voice_indices_h -1Play demo:
playdemo yourdemo.demDemo File Location
Demos are saved to your server's demos directory:
/game/csgo/demos/yourdemo.demAdvanced Spectating
Camera Positions
Save current spectator position:
spec_posRequires sv_cheats 1
Teleport to coordinates:
spec_goto x y z pitch yawExample:
spec_goto 1234.5 -678.9 100.0 0 90Demo Management
Accessing Demos
- Connect to your server via FTP
- Navigate to
/game/csgo/demos - Download
.demfiles
Playing Downloaded Demos
Windows Installation Path:
C:\Program Files (x86)\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\Steps:
- Open Steam
- Right-click Counter-Strike 2
- Select Properties → Installed Files → Browse
- Navigate to
game/csgo/folder - Place your
.demfile here - Launch CS2 and use console:
playdemo filename
Troubleshooting
Demo file won't play
Error Message:
[Demo] Requesting playback of 'demo.dem'
CDemoFile::Open: couldn't open file demo.dem for readingSolution:
- Delete the corrupted file
- Re-download from your server
- Verify file is in the correct directory:
.../game/csgo/ - Ensure file has
.demextension
No voice chat in demo
Enable voice indices before playback:
tv_listen_voice_indices -1
tv_listen_voice_indices_h -1
playdemo yourdemo.demCannot connect to CSTV
Verify:
- CSTV is enabled in the panel
- Using correct port (server port + 5)
- Server is running
- No firewall blocking connection
CSTV + Discord Integration
For automatic demo uploads to Discord, see the DiscordDemoURL Plugin documentation.