record_max_frames

Директива `record_max_frames` ограничивает максимальное количество кадров, записываемых во время прямой трансляции в модуле NGINX RTMP.

Синтаксисrecord_max_frames number;
По умолчаниюnone
Контекст
Аргументы1

Описание

Директива record_max_frames используется в модуле NGINX RTMP для управления числом кадров, которые могут быть записаны из прямой трансляции. Задавая эту директиву, пользователи могут указать порог, определяющий, сколько кадров сохранять, что полезно для контроля потребления ресурсов на сервере. Когда достигается максимальное количество кадров, более старые кадры могут удаляться, чтобы освободить место для новых, что предотвращает бесконтрольный рост записи и экономит память и дисковое пространство.

Параметр для record_max_frames — это положительное целое число, задающее этот верхний предел. Например, если установить значение 1000, сервер будет хранить максимум 1000 кадров в буфере, прежде чем начать перезаписывать самые старые кадры в последовательности. Это особенно важно в ситуациях, когда ожидается прямая трансляция и более приоритетно сохранение последних материалов, чем архивирование всего переданного содержимого.

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

Пример конфига

application live {
    live on;
    record all;
    record_path /tmp/av;
    record_max_frames 1000;
}

Установка record_max_frames на слишком высокое значение может привести к увеличению потребления памяти и потенциальным проблемам с производительностью.

Если record_max_frames не задан, сервер не будет ограничивать количество фреймов, что может привести к неограниченному использованию ресурсов.

← Ко всем директивам