Линк PCI Express общий для портов карты. Уменьшенная электрическая ширина снижает доступную полосу, но сама по себе ещё не означает ошибку текущего захвата. Пример сравнения нагрузки с пределом и действия оператора описаны ниже.
Карты захвата¶
Раздел Карты захвата отвечает на вопросы, которые до него выяснялись чтением конфигурации глазами и походом к серверу: какие карты стоят в машинах кластера, сколько у них портов, что на этих портах за сигнал, кто из стримов их уже занял и не перегрелась ли карта.

Что показано про карту¶
| Колонка | Значение |
|---|---|
| Нода | стример, в котором стоит карта. Раздел показывает весь кластер |
| Модель, Серийный номер | как их называет сама карта. Номер и есть ключ, которым карта адресуется в конфигурации стрима |
| Шина | адрес PCIe, а под ним — линк до карты: ширина и скорость |
| Прошивка | вариант прошивки: именно он задаёт раскладку портов |
| Температура, Вентиляторы | показания датчиков карты. Порогов и суждения «горячо» раздел не выносит — это дело системы наблюдения |
Линк PCI Express отмечается как ужатый, если карта стоит в слоте с меньшим числом линий, чем поддерживает сама. Линк общий для всех портов карты, поэтому он задаёт предел полосы сразу для всех. Ужатый линк не отключает порты, а уменьшает число потоков, которые карта успевает отдать. Один поток 2160p50 занимает около 1,1 ГБ/с: слот x4 Gen 3 пропускает около 3,5 ГБ/с, то есть три таких потока, слот x4 Gen 2 вдвое меньше, то есть один.
Вариант прошивки задаёт, сколько у карты каналов, какие из них входы, а какие выходы, и что на них: SDI или ASI. На снимке DTA-2178 в варианте «2x (12G-SDI+3G-SDI/ASI) with Genlock»: из восьми каналов входами работают порты 2 и 5, порты 1 и 6 выходы, остальные четыре внутренние выходы. Другой вариант прошивки расписал бы те же восемь разъёмов иначе, поэтому вывести направление порта из его номера нельзя. Полный список вариантов для каждой модели есть в документации DekTec.
Сменить вариант прошивки из интерфейса нельзя: это перепрошивка карты утилитой DekTec с выключением питания, и на время перепрошивки захват на всех портах карты останавливается.
Порты¶
Строка карты раскрывается в таблицу портов.

Состояние порта названо словом закрытого словаря, потому что за каждым словом стоит своё действие оператора:
| Состояние | Что означает | Что делать |
|---|---|---|
| не вход | вариант прошивки сделал порт выводом или портом другого типа | переложить кабель или перепрошить карту |
| свободен | порт ввода, не назначенный ни одному стриму | можно назначать |
| назначен стриму | порт ввода, названный в применённой конфигурации стримера | ничего; имя стрима стоит рядом ссылкой |
| держит зависший процесс | процесс захвата этого порта не завершился ни по закрытию стандартного ввода, ни по SIGKILL |
разбираться надо на хосте |
| держит посторонний процесс | по прошивке порт ввод, по нашей таблице свободен или наш, а захват отвечает «порт занят» | искать постороннего держателя |
| состояние незнакомо этой версии | стример новее панели и назвал состояние, слова для которого у панели нет | стрим не назначать — порт вполне может быть занят; обновить панель |
Общего слова «занят» в разделе нет: у каждого состояния своё действие, и оно названо в таблице.
Отдельно от состояния стоит направление. Пометка «вход невозможен» рядом с ним говорит не о том, чем порт занят сейчас, а о том, что вариант прошивки не сделал его входом. У обычного выхода пометки нет: прошивка может переключить его на вход. У внутреннего выхода пометка стоит всегда: прошивка отдала его соседнему порту. Изменить это можно только перепрошивкой, см. выше.
Два вида портов сигнала не принимают вовсе и разъёмом на планке не всегда представлены:
- генлок — опорный вход: по нему карта берёт опорный сигнал, а не сигнал для записи;
- виртуальный — разъёма нет вовсе, им карта показывает собственный свободный опорник, то есть состояние «ни к чему не привязана».
Колонка Тип показывает, на какой вид сигнала порт настроен сейчас: sd_sdi, hd_sdi, 3g_sdi или 12g_sdi. Это настройка, а не предел порта: свободный порт хранит последнее значение, и после подачи 12G-сигнала на порт с hd_sdi тип сменится сам.
Колонка Линия говорит, что карта видит на порту прямо сейчас:
- разрешение и частота — сигнал есть, и вот какой. Буква после частоты — уровень 3G-сигнала, A или B;
- «сигнала нет» — порт ввода, на котором карта ничего не видит;
- «неизвестно» — карта не сообщила состояние линии. У выходов, генлока и виртуального порта его не бывает, и отсутствия сигнала это не означает.
Если карта масштабирует сигнал сама (принимает 12G и отдаёт наверх 3G) или детектирует на линии не тот вид сигнала, на который настроен порт, это отмечено подсказкой рядом. Без такой пометки расхождение стандарта на линии с разрешением стрима читается как дефект, которого нет.
Порт и стрим связаны в обе стороны¶
Из строки порта ведёт ссылка в карточку стрима, который его занял. Обратная ссылка — «Показать в разделе карт» — стоит в секции входа стрима, рядом с полем серийного номера.
Оттуда же карта и порт выбираются: поля секции SDI (DekTec) берут значения из этого самого инвентаря. Подробности — в Приём SDI.
Назначение сверяется с прошивкой, но конфигурация от этого не отклоняется: она должна применяться и до установки карты, и на другом стримере. Стрим, назначенный на порт, который по последнему снимку не вход, получает этот факт в статистику входа. Именно так объясняется отказ «порт занят» без процесса-держателя.
Когда карт не видно¶
Раздел различает три разных «пусто», потому что действия у них разные:
- Карт нет. Опрос прошёл, карт в машине не оказалось. Такие стримеры в списке не показываются вовсе.
- Инвентарь неизвестен. Опрос не удался. Стример перечислен отдельной строкой с причиной и давностью последнего удавшегося опроса.
- Стример недоступен. С самим стримером нет связи. Тоже отдельная строка со своей причиной.
У неудавшегося опроса называется своя причина:
- опросчик не установлен — пакета
dektec-bridgeна хосте нет; - не уложился в таймаут — опрос не завершился в отведённое время;
- завершился с ошибкой — ненулевой код выхода;
- ответил неразбираемым — вывод прочитать не удалось;
- причина, незнакомая этой версии — стример назвал причину, слова для которой у панели нет.
Данные снимает dektec_probe — разовый вызов, не демон: стример запускает его раз в минуту, читает JSON с его вывода и даёт процессу завершиться. Опросчик не открывает портов вовсе, поэтому захвату он помешать не может. Ставится он пакетом dektec-bridge рядом с dektec_ingest; отсутствие пакета на хосте — штатное состояние, при котором раздел говорит «инвентарь неизвестен», а не показывает пустой парк.
Что уходит в мониторинг¶
В Prometheus едут три ряда: capture_card_info со статикой карты в лейблах, capture_card_temperature_celsius и capture_card_fan_rpm. Ключ соединения — серийный номер, а не адрес на шине: карту переставляют в другой слот, и история по bus/slot прервалась бы, хотя карта та же.
Температура и обороты уходят в мониторинг всегда, а не только при тревожных значениях: ряд, который появлялся бы только при перегреве, нельзя отличить от отсутствия данных.
У карты с пассивным охлаждением ряда оборотов нет вовсе. Это не ноль оборотов: «вентилятора нет» и «вентилятор остановился» — разные вещи, и путать их нельзя.
Портов рядами нет: их состояние между скрейпами не меняется и алертов не порождает, а состояние линии занятого порта уже едет со стороны стрима.
Как читать индикацию PCIe¶
В колонке Шина указаны адреса карты и вышестоящих PCIe-портов. Для каждого линка показаны текущая скорость и ширина, а в скобках — максимальные. 8 GT/s ×4 (max 8 GT/s ×8) означает четыре действующие линии Gen3 при поддержке восьми: размер разъёма на материнской плате сам по себе не определяет подключение.
Под ними показаны Видеозахват / предел PCIe, активные входы. Числа относятся к действующему захвату, а не ко всем настроенным стримам. GB/s — гигабайты в секунду, не гигабиты.
- Недостаточная пропускная способность PCIe — расчётная нагрузка действующих захватов уже превышает физический предел хотя бы одного линка. Красная пометка появляется у карты и её действующих входов.
- Физический предел PCIe не превышен — превышения по доступным данным нет. Это не гарантия исправного захвата или свободной полосы.
- Пропускная способность неизвестна — данных для текущего вывода недостаточно либо снимок устарел.
В карточке входа на странице стрима нехватка PCIe также показана красным индикатором и ссылкой Суммарная нагрузка / предел PCIe в раздел карт. Ошибка может отображаться, даже если кадры продолжают поступать. Надпись «назначен стриму» в таблице портов говорит о назначении, а не об исправности видео.
Нагрузка видео — нижняя граница (знак ≥); предел PCIe — верхняя (знак ≤). Расчёт учитывает размер передаваемого кадра, в том числе шаг строки, и частоту кадров. Это несжатое видео между картой и памятью, не битрейт H.264/H.265 на выходе. Полоса определяется текущим линком и ограничениями вышестоящих портов; на общем порту складывается известная нагрузка действующих захватов. Звук, служебный трафик PCIe и другие устройства уменьшают доступный запас.
Пример: четыре HDMI-входа¶
На демонстрационных скриншотах — DeckLink Quad HDMI Recorder с четырьмя действующими входами и линком Gen3 ×4. Это настоящий интерфейс на фиксированных снимках API, а не измерение текущего состояния рабочей установки.
Для Gen3 ×4 верхняя граница после учёта кодирования линии: 8 × 10⁹ × 4 × 128/130 ÷ 8 ≈ 3.938 GB/s. В примере карта передаёт ARGB, четыре байта на пиксель, без дополнительного выравнивания строк.
Четыре захвата 3840×2160, 30 кадров/с требуют не меньше 4 × 3840 × 2160 × 4 × 30 = 3 981 312 000 Б/с, то есть 3.981 GB/s. Это больше 3.938 GB/s: карта и четыре входа показывают ошибку.

После переключения всех четырёх источников на 1920×1080, 60 кадров/с нагрузка составляет 4 × 1920 × 1080 × 4 × 60 = 1 990 656 000 Б/с. Интерфейс округляет её до 1.991 GB/s. Красная пометка исчезает, появляется «Физический предел PCIe не превышен».

Сигнал и формат в этом примере заданы явно: для другого пиксельного формата, выравнивания строк или частоты эти числа неприменимы.
Как устранить нехватку полосы¶
- Откройте ссылку из карточки входа и проверьте действующий линк, число захватов и формат сигнала.
- Уменьшите разрешение или частоту действительного выходного сигнала источника либо остановите ненужные захваты на общей шине. Разрешение рабочего стола Windows может отличаться от «Режима активного сигнала»: уменьшение только рабочего стола не уменьшает HDMI-сигнал 4K.
- Если требуется прежний режим, переставьте карту в слот с достаточной электрической шириной и проверьте PCIe-порты выше карты. Перед перестановкой выключите сервер по инструкции производителя.
- Обновите страницу карт после обновления статистики, проверьте исчезновение ошибки и отдельно проверьте видео и ошибки входа стрима.
Уменьшение битрейта транскодера не снижает передачу несжатых кадров по PCIe. Красная пометка сама не меняет настройки источника и не останавливает захват.
Когда данных недостаточно¶
Неизвестная скорость или ширина линка, отсутствие формата действующего захвата и данные старого стримера не означают, что полосы хватает. При потере связи со стримером или неудачном опросе инвентарь может оставаться на экране, но прежняя красная пометка порта больше не выдаётся за текущую ошибку.

Восстановите связь или исправьте причину сбоя опроса, затем получите свежую статистику. Переустановка драйвера не является универсальным решением недостаточной электрической ширины PCIe.