ff264 / srt hub Открыть бот

Калькулятор · без регистрации

Задержка SRT: сколько ставить и как вписать в OBS

Замерьте свой канал прямо здесь — получите задержку и готовую строку для OBS, vMix и ffmpeg. И главное, на чём спотыкаются все: в OBS 500 мс записывается как 500000.

Посчитать задержку

Откройте страницу на том компьютере и в той сети, откуда пойдёт поток — замер показывает именно ваш канал. VPN на время замера лучше выключить.

1 · Время круга по сети (RTT)
или вручную: мс
Пара секунд — померим оба сервера и выберем ближний.
2 · Какой канал на площадке
3 · Сервер
Ставьте
—мс

Главная ловушка: микросекунды

Одно и то же значение в разных программах пишется по-разному. Перенесли число из vMix в OBS как есть — получили буфер в тысячу раз меньше нужного.

ПрограммаЕдиница500 мс пишется как
OBS Studioмикросекундыlatency=500000
ffmpeg, ffplayмикросекундыlatency=500000
vMixмиллисекундыполе Latency: 500
srt-live-transmitмиллисекундыlatency=500
VLCмиллисекундынастройка «SRT latency»: 500
Larix Broadcasterмиллисекунды500
Аппаратные энкодерымиллисекунды500

Если в OBS написать latency=500, получится полмиллисекунды. SRT не ругается — он молча работает почти без буфера, и картинка начинает сыпаться при первых же потерях. Снаружи это выглядит как «плохой интернет», хотя дело в одном нуле.

Почему буфер считают от RTT

SRT не ждёт, пока кадр развалится. Каждый пакет он придерживает на время latency, и если какой-то пакет потерялся — успевает попросить его заново. Один такой переспрос стоит один круг по сети: приёмник заметил дыру, сообщил отправителю, тот прислал пакет ещё раз.

Отсюда правило: буфер должен вмещать несколько кругов. Если он короче — потерянный пакет не успевает вернуться, и SRT выбрасывает его ради того, чтобы не отстать от эфира. Чем больше потерь в канале, тем больше переспросов подряд нужно уметь пережить:

Потери в каналеБуферТипичный канал
до 1%3 × RTTкабель, оптика, проводной интернет площадки
до 3%4 × RTTWi-Fi, общая сеть площадки
до 7%6 × RTTмобильный 4G/5G
до 10%8 × RTTнестабильный мобильный, роуминг, спутник

Ниже 120 мс не опускаемся даже при соседнем городе: это значение SRT по умолчанию, а кодер отдаёт кадры неравномерно — пачками на ключевых кадрах. И ещё одна хорошая новость: согласовывать стороны не нужно. При соединении SRT сравнивает задержку отправителя и приёмника и берёт большую — достаточно выставить своё значение у себя.

Проверить результат за минуту

Подключитесь с выбранной задержкой к нашему эталонному сигналу — он бесплатный и работает круглосуточно. Готовая строка с вашей задержкой — в блоке «Проверить на эталоне» выше.

Таймкод в кадреМосковское время. Разница с вашими часами — сквозная задержка всего тракта.
Счётчик кадровРастёт без пропусков. Скачок номера — потерянные кадры: буфера не хватает.
Бегунок внизуПроходит ширину кадра за секунду. Рывки — дрожание сети.

Если что-то не так

Сыпется квадратами,
щёлкает звук
Буфера не хватает на потери. Сначала проверьте единицы (в OBS — шесть знаков, 500000), потом поднимите задержку на шаг: возьмите тип канала на строку ниже.
Задержка больше,
чем выставлено
К latency добавляются буферы кодера и декодера и длина GOP — обычно ещё 0,3–1 с. Проверьте, нет ли лишнего нуля: 5000000 в OBS — это уже пять секунд.
Не подключаетсяРежим mode=caller, порт входа или выхода из карточки потока, passphrase совпадает до символа (10–79 знаков). Без пароля на потоке параметр passphrase не пишите вовсе.
Эталон рвётся
через 10 минут
Это правило эталонного сигнала, а не канала: сессии сбрасываются по общему окну. Переподключайтесь сразу.