pull
Директива "pull" позволяет NGINX получать поток из указанного RTMP-источника.
Описание
Директива pull в модуле NGINX RTMP используется для настройки сервера так, чтобы он получал живой поток с внешнего RTMP-сервера. Это особенно полезно, когда требуется ретранслировать поток из другого источника через сервер NGINX для распространения. Директива принимает один или несколько аргументов, представляющих RTMP-URL источника, который может включать сегменты имени приложения и потока. Кроме того, в конфигурации можно указать несколько аргументов pull, чтобы одновременно получать несколько потоков.
Когда поток получается (pull), сервер NGINX устанавливает соединение с сервером-источником и начинает принимать данные потока. Каждая операция pull является независимой, что обеспечивает гибкость в настройке и управлении трансляциями. Эта возможность необходима в сценариях, где требуется централизация нескольких потоков из разных источников. Полученный поток затем можно транслировать подключенным клиентам или дополнительно обрабатывать по необходимости.
Важно учитывать, что операция pull зависит от условий сети, поэтому производительность может варьироваться в зависимости от задержки и пропускной способности между сервером NGINX и исходным RTMP-сервером. Кроме того, требуется соответствующее распределение ресурсов на сервере NGINX, чтобы обрабатывать входящий поток без потери пакетов или задержек.
Пример конфига
rtmp {
server {
listen 1935;
application live {
live on;
pull rtmp://external-source/app/stream;
}
}
}Будьте осторожны с сетевой задержкой: если исходный RTMP сервер медленный или нестабилен, это повлияет на качество получаемого потока.
Убедитесь, что сервер NGINX имеет достаточные ресурсы для обработки входящего потока, особенно при высокой нагрузке.
Неправильный формат RTMP URL приведет к сбоям при подключении к потоку.