Source TV дает возможность неограниченному числу зрителей наблюдать за ходом матча на выделенном сервере Source. SourceTV зрители невидимы игрокам матча и не могут никак влиять на ход игры. Камера SourceTV можеть управляться как самим сервером так и непосредственно человеком, будучи ответственным за управлению ею. Вещание матча через SourceTV может передаваться с некоторым заранее заданным временным интервалом. Эта возможность страхует от вероятности того, что игроки могут воспользоваться SourceTV, чтобы получить какую-либо информацию об их оппонентах.
Организация SourceTV для вещания нескольким зрителям не требует никаких особых временных затрат и ресурсов сервера. Организация же вещания для тысяч зрителей может потребовать предварительной подготовки и серьезных требований к серверу.

1. Просмотр игры

Для просмотра матча через SourceTV откройте Steam, выберите раздел Servers для того, чтобы открыть браузер серверов. Выберите раздел Spectate, чтобы увидеть список доступных SourceTV серверов. Вы можете изменить критерии поиска серверов через Change filters. Подключиться к серверу можно кликнув по нему в списке серверов два раза мышкой.

Часто игровые лиги и чемпионаты заранее публикуют IP (вида IPort) адреса SourceTV, по этому вы всегда можете добавить адрес в закладку Favorites вместо того, чтобы искать его через поиск. Можно также подключиться к SourceTV используя консоль игры:

Например: connect 217.29.86.185:27021

Порт по умолчанию у SourceTV является 27020, но может быть изменен по усмотрению администратора. Но порт SourceTV всегда следует указывать, так как порт по-умолчанию игрового сервера - 27015.

В момент просмотра матча через SourceTV тип камеры и ее позиция определяются или самим сервером или человеком за это ответственным. Сами спектаторы не могут переключать камеру, как это было в HLTV, так как это во много раз увеличивает пропускную способность. В тоже время демо записи, заснятые через SourceTV позволяют спектаторам переключать камеру по их усмотрению.

2. Транслирование игры

SourceTV полностью интегрирован в Движок Source и больше не является отдельной программой, как это было раньше с HLTV. Чтобы начать вещание, сервер должен активировать SourceTV перед стартом карты командой tv_enable 1. После этого в игре можно будет увидеть SourceTV как отдельного бота, присутствующего в спектаторах. Сервер SourceTV "живет" также как и игровой серверный процесс и называется SourceTV master server. Процесс SourceTV master server накапливает и кэширует информацию, после чего отдает ее клиентам с указанной задержкой, дабы избежать попыток читерства со стороны команд. Авто выбор камеры - это специальный мод, который автоматически определяет интересные игровые моменты и старается их показать зрителям (такие как убийства или закладка бомбы). Может быть также назначен человек - оператор матча, который будет сам выбирать игровые моменты и показывать зрителям их, SourceTV будет транслировать игру через его экран. Спектаторы SourceTV чаще всего подключаются к стандартному порту SourceTV 27020. Порт SourceTV может также быть изменен консольной командой tv_port.

Подобная конфигурация удобна для маленьких матчей с малым количеством зрителей. Вся информация о зрителях и игроках обрабатывается игровым сервером. Большое количество зрителей тут же потребует большой нагрузки на процессор и пропускную способность канала. Следовательно логичным было бы решить проблему расхода мощности процессора и трафика распределив их между различными вспомогательными серверами, число которых можно увеличивать с растущим объемом зрителей. Этот способ осуществим подключением вспомогательных SourceTV к главному SourceTV транслятору, которые и будут выполнять роль распределителей зрителей. Такие сервера называются SourceTV прокси сервера, и каждый Прокси сервер может обрабатывать одновременно до 255 человек. Естественно сами Прокси сервера также могут подключаться к таким же прокси серверам и образовывать тем самым неограниченную сеть SourceTV серверов, транслирующую одну игру.

Чтобы настроить прокси сервер SourceTV необходимо запустить выделенный сервер Source с параметром tv_relay с указанием IP адреса другого SourceTV сервера.

srcds.exe -game cstrike -console +tv_relay 217.29.86.185:27021

Статус локального SourceTV всегда можно посмотреть командой tv_status
Total slot и количество зрителей является суммарной величиной всех возможных слотов и зрителей с учетом подключенных прокси серверов. Если прокси сервер теряет подключение к мастер серверу то можно попытаться быстро подключиться с помощью команды tv_retry. Чтобы остановить вещание и отключить всех зрителей следует набрать команду tv_stop.

3. Ручное управление камерой

Камера в большинстве случаев управляется сервером. Но если оператор войдет в игру и займет место спектатора, во время матча нажмет клавишу E (Use), то камера SourceTV автоматически переключится на ручное управление и будет транслировать матч "из глаз" оператора. Оператор может выбрать любой режим показа (от первого лица, от третьего лица, свободный полет и тд.). Переключить камеру обратно в режим авто управления можно нажав еще раз клавишу E.

Оператор должен обладать хорошим знанием матча, чтобы транслировать его зрителям.
Мертвый игрок, если зайдет в спектаторы, так же может стать оператором.

4. Запись игры

Мастер сервер SourceTV может осуществлять запись игры без какой-либо потери данных или сетевой задержки. Все события и предметы записываются в один файл, который может быть в последствие проигран как обычный демо файл (используйте команду demoui для проигрывания демо). Чтобы начать запись демо необходимо запустить SourceTV перед тем как карта будет загружена, после чего начать запись с помощью команды tv_record demoname. Запись демо прерведся при смене карты или принудительно с помощью команды tv_stoprecord. Чтобы автоматически заставить писать каждый матч как только SourceTV будет включен необходимо прописать tv_autorecord 1. Автоматически записанные демо-файлы будут сохраняться с именем даты и времени формата auto-YYYYMMDD-hhmm-map.dem. Клиенты SourceTV также могут записывать ход матча с SourceTV командой record, но при просмотре файлов они будут иметь формат обычного демо, то есть человек не сможет сменить вид камеры и переключиться с игрока на другого игрока в течение проигрывания демо.

Иногда может понадобиться использовать SourceTV только для записи демо, но не для показа и вещания через него матча. Для того чтобы отключить вещание через SourceTV необходимо уменьшить количество возможных зрителей до нуля командой tv_maxclients 0. Чтобы включить автозапись SourceTV на вашем сервере, добавьте эти строчки в ваш autoexec.cfg:

tv_enable 1
tv_autorecord 1
tv_maxclients 0
Консольные команды:
tv_enable - активирует SourceTV на локальном сервере, SourceTV бот появится после смены карты.
tv_name - устанавливает отобржаемое в серверном браузере и таблице результатов имя сервера SourceTV.
tv_title текст - устанавливает заголовок данного сеанса, видимый наблюдателю SourceTV.
tv_maxclients - устанавливает максимальное число зрителей SourceTV, по умолчанию 128.
tv_stop - прекращает вещание игры через SourceTV.
tv_status - показывает информацию о SourceTV.
tv_clients - показывает список клиентов SourceTV на локальном сервере.
tv_msg текст - посылает текстовое сообщение всем клиентам SourceTV.
tv_retry - переподключает SourceTV прокси к последнему заданному адресу. (только для дополнительных прокси)
tv_autoretry - если разрешено, SourceTV прокси сами переподключаются после потери соединения.
tv_timeout секунды - устанавливает таймаут для SourceTV прокси в секундах.
tv_delay секунды - задержка вещания SourceTV в секундах.
tv_delaymapchange - задерживает смену карты до тех пор пока все оставшиеся данные игры не будут переданы зрителям.
tv_port порт - устанавливает порт вещания SourceTV, должен быть введен в параметрах запуска srds.exe.
tv_maxrate - устанавливает максимальную ширину канала, выделяемую клиенту SourceTV [bytes/second] (default 5000)
tv_snapshotrate - Sets world snapshots broadcasted per second by SourceTV (master only) - оставляю в оригинальном виде, т.к. не могу перевести точно. Что-то вроде "количество снимков мира, отправляемое в секунду".
tv_password пароль - устанавливает пароль для подключения к SourceTV.
tv_relaypassword пароль - пароль для подключения к дополнительным прокси SourceTV.
tv_relay IP - подключает дополнительный прокси к другому SourceTV серверу/прокси.
tv_record имя_файла - начинает запись демо (только для основного сервера SourceTV)
tv_stoprecord - прекращает запись демо (только для основного сервера SourceTV)
tv_autorecord - повзоляет автоматически писать демки каждый раз, формат имени демки будет: auto-YYYYMMDD-hhmm-map.dem.
tv_debug - показывает дополнительные сообщения для отладки.
tv_dispatchmode - Sets Source client dispatch mode for connecting clients: 0=never, 1=if appropriate, 2=always. Оставлено в оригинале.
tv_overrideroot - меняет адрес основного сервера SourceTV.
tv_relayvoice - если включено, позволяет вещать голосовой чат (только для основного сервера SourceTV).
tv_transmitall - по умолчанию включен режим авто-режиссера, для уменьшения требуемой для передачи ширины канала. Но если tv_transmitall включено, то все данные игры будут передаваться целиком и зритель может переключать режим обзора как он захочет - ширина канала передачи существенно возрастает - в 2-3 раза.
tv_chattimelimit n - очищает чат наблюдателей каждые n секунд.
tv_chatgroupsize n - разбивает чат зрителей на группы по n человек. Только зрители из той же группы что и вы могут видеть ваши сообщения. Разбиение на группы выключается установкой "tv_chatgroupsize 0". Разбиение на группы предотвращает флуд и сокращает требуемую ширину канала.
tv_chatgroup - позволяет зрителю выбрать группу чата(клиентская команда).
tv_nochat - запрещает чат зрителей.
tv_allow_static_shots - позволяет авто-режиссеру выбрать неподвижные ракурсы. (только для основного сервера SourceTV)
tv_allow_camera_man - позволяет наблюдателям на сервере ассоциироваться с камерой SourceTV. (только для основного сервера SourceTV)
Куда девается дэмка после запеси?

Ответ: "ваш путь к установленному клиенту"
C:\Program Files\Steam"\SteamApps\"имя вашей учётной записи"\counter-strike source\cstrike\
и будет иметь заданное вами при записи имя и расширение .dem

Если дэмку писал сервер , а не клиент то у сервера дэмка находится (стандарт)
C:\server\cstrike\
Пример настроек Source-TV
tv_enable 1
Включаем SourceTV на сервере

tv_autorecord 1
Включаем автоматическую запись демок

tv_debug 0
Выводить информацию SourceTV

tv_delay 10
Задержка вещания Source TV в секундах (сделано для того, чтобы предотвратить умышленный мониторинг)

tv_dispatchmode 1
Отправлять клиентов на дополнительные прокси 0=никогда, 1=выборочно, 2= всегда

tv_maxclients 10
Максимальное количество клиентов SourceTV

tv_maxrate 3500
Максимальная ширина канала для зрителя SourceTV

tv_name "TV"
Имя хоста SourceTV(пишите вместо SourceTV нужное название)

tv_overrideroot 0
Адрес SourceTV равен адресу сервера игры

tv_password ""
Пароль для для клиентов SourceTV(Если пароль к ТВ не нужен удаляем строку)

tv_port 27021
Порт SourceTV
Чтобы включить Source TV нужно прописать в autoexec.cfg (server/cstrike/cfg)