Термин
Keyframe
Неформальное название I- или IDR-кадра – кадра, с которого можно начать воспроизведение.
Keyframe – повседневное название для I-кадра: кадра, сохраняемого как цельная картинка, а не как маленькое изменение относительно соседних. Слово «keyframe» пришло из анимационной традиции (ключевые рисунки, между которыми аниматоры интерполируют) и было переиспользовано для видео. В стриминговом контексте keyframes – точки, с которых зритель может начать просмотр, проматать или переключить rendition качества.
Причина, по которой у keyframes есть собственное обиходное имя – они самая часто видимая единица структуры видео для пользователей и продуктовых команд. Когда seek-бар плеера показывает крошечные превью-миниатюры, они обычно извлекаются на позициях keyframe. Когда пользователь промотает видео, плеер прыгает к ближайшему keyframe и стартует оттуда. Когда вы просите FFmpeg «разрежь это видео каждые 2 секунды для HLS» – вы просите выровнять границы сегментов по keyframes.
Для продуктовой команды две практические вещи. Первое: «keyframe interval» – единственная настройка, контролирующая, как часто появляются I-кадры, обычно в секундах или числе кадров. 2 секунды – повседневный дефолт VOD для стриминга. 1 секунда или меньше – для low-latency live. 5+ секунд – только если seek и переключение rendition не приоритет. Второе: «keyframe» в разговоре неоднозначен между обычным I-кадром и более строгим `idr` (Instantaneous Decoder Refresh). Для adaptive streaming почти всегда нужны именно IDR-keyframes, а не любой I-кадр – для чистых границ сегментов.
Считаете параметры для своего продукта?
Поможем собрать энкодер-леддер и посчитать стоимость доставки – до старта разработки.