vf/fieldorder

1. Сводка
Задаёт или переписывает флаг порядка полей на чересстрочном видеопотоке. Принудительно ставит сигнализацию top-field-first или bottom-field-first, чтобы кодер ниже по потоку и итоговый декодер сошлись на том, какое поле отрисовывается первым.
2. Когда использовать
- Готовите чересстрочный вещательный мезонин, где кодер требует явный флаг порядка полей.
- Исправляете неверный или отсутствующий флаг порядка полей, несомый ленточным захватом.
- Переключаете порядок полей между двумя чересстрочными форматами (например, DV 576i bff в MPEG-2 576i tff).
- Приводите порядок полей к профилю кодера (DV PAL — bff; XDCAM HD 1080i и AVC-Intra 100 — tff).
3. Входы
Video—filtergraph.VideoTransform. Чересстрочное видео, чей порядок полей нужно задать. Обязателен.Совместимые узлы выше по потоку:
- vf/crop — обрезает кадр до интересующей области.
- vf/dar — задаёт метаданные соотношения сторон при отображении.
- vf/deinterlace — убирает артефакты чересстрочности.
- vf/format — преобразует пиксельный формат или цветовые свойства.
- vf/fps — меняет частоту кадров на выходе.
- vf/hwupload — загружает кадры в GPU для аппаратной обработки.
- vf/letterbox — дополняет кадр до целевого растра.
- vf/overlay — накладывает графику на видео.
- vf/scale — масштабирует видео до заданных размеров.
- map/video — выбирает видеопоток для выхода.
4. Выходы
Video—filtergraph.VideoTransform. Те же пиксели, новый флаг порядка полей.Совместимые узлы ниже по потоку:
- vf/crop — обрезает кадр до интересующей области.
- vf/dar — задаёт метаданные соотношения сторон при отображении.
- vf/deinterlace — убирает артефакты чересстрочности.
- vf/format — преобразует пиксельный формат или цветовые свойства.
- vf/fps — меняет частоту кадров на выходе.
- vf/hwupload — загружает кадры в GPU для аппаратной обработки.
- vf/letterbox — дополняет кадр до целевого растра.
- vf/overlay — накладывает графику на видео.
- vf/scale — масштабирует видео до заданных размеров.
- avcintra — кодирует видео профилями AVC-Intra.
- dv — пишет выход как файл/контейнер DV.
- ni264 — использует аппаратно-ускоренное кодирование H.264.
- prores — кодирует видео в профили Apple ProRes.
- qsv264 — кодирует H.264 через Intel Quick Sync Video.
- x264 — программно кодирует видео H.264/AVC.
- x265 — программно кодирует видео H.265/HEVC.
- xdcam — кодирует XDCAM HD MXF для вещательной доставки.
5. Параметры

Форма «Настройки» — один столбец с одним полем.
Field Order (
enum, по умолчаниюtff)Флаг порядка полей, записываемый в поток.
- Что задаёт. Сигнализируется ли верхнее поле как отрисованное первым
(
tff) или нижнее (bff). Фильтр переписывает метаданные и переупорядочивает строки полей, чтобы выбранный порядок был корректен на выходе. - Когда менять. Выбирайте
tffдля вещания 1080i, AVC-Intra 100, XDCAM HD 1080i и ATSC; выбирайтеbffдля DV PAL 576i, MiniDV и большинства бытовых SD-форматов на ленте. Когда кодер сообщает о несовпадении порядка полей, это та настройка, которую нужно переключить. - Допустимые значения.
tff,bff. - Обязательно. да.
- Что задаёт. Сигнализируется ли верхнее поле как отрисованное первым
(
Соответствие JSON-ключей и названий полей
| JSON-ключ | Название поля |
|---|---|
order |
Field Order |
6. Пример

Полный разбор — переменные, настройка каждого узла и ожидаемый результат — смотрите в AVC-Intra MXF broadcast mezzanine.
7. Где используется
- AVC-Intra MXF broadcast mezzanine — задаёт порядок полей TFF перед кодером AVC-Intra на каждой ветви MXF.
- DVCPRO 576i SD master — принудительно ставит top-field-first на кадре 576i перед кодером DV.
8. Антипаттерны
Задание порядка полей на прогрессивном источнике. Разметка прогрессивного кадра как чересстрочного путает декодеры ниже по потоку. Используйте vf/fieldorder только на потоках, которые кодер будет считать чересстрочными.
Задание неверного порядка для целевого профиля. Поставка 1080i, помеченная
bff, воспроизводится с построчным дёрганьем на TFF-декодере. Сопоставляйте порядок со спецификацией принимающего объекта (DV PAL = bff, XDCAM HD / AVC-Intra = tff).Использование vf/fieldorder, когда нужен деинтерлейсинг. Если цель — прогрессивный выход, берите vf/deinterlace, а не vf/fieldorder. Последний оставляет поток чересстрочным; он лишь меняет, какое поле сигнализируется первым.