map/video

1. Сводка
Извлекает видеодорожку из входящего пакета, чтобы её можно было обработать
цепочкой видеофильтров или кодером. Каждый процесс, затрагивающий видео,
начинается с map/video сразу после источника, потому что остальная
видеоцепочка не может подключиться к Package — ей нужен видеопоток.
2. Когда использовать
- Отделяете видео от многодорожечного источника для обработки фильтрами и кодером перед повторным мультиплексированием в поставку.
- Выбираете конкретную дорожку из многоракурсного, прокси- или камера-оригинального файла, несущего более одного видеопотока.
- Делите источник так, чтобы две параллельные цепочки (мастер полного разрешения, масштабированный прокси) работали с одним видео без повторного скачивания.
3. Входы
Package—core.Package. Исходный пакет, из которого извлекается видео. Обязателен.Совместимые узлы выше по потоку:
concat — сшивает несколько пакетов встык в один непрерывный пакет.
download — конечная точка источника, забирающая пакет по URL.
mp4 — мультиплексированный пакет MP4, поданный обратно в цепочку повторного маппинга.
analyze — передаёт прозондированный пакет дальше, чтобы одна цепочка и зондировала, и продолжала вниз по потоку.
decide — передаёт пакет, когда срабатывает его условие.
mdecide — передаёт пакет по той ветви, которая совпала.
delay — повторно выдаёт пакет после заданного ожидания.
mov — упаковывает потоки в контейнер QuickTime MOV.
mxf — упаковывает потоки в контейнер MXF.
ts — упаковывает потоки в транспортный поток MPEG-2 (
.ts).dv — записывает файл Digital Video (DV) в один шаг — кодек и контейнер в одном узле.
prores — записывает мезонинный файл Apple ProRes.
xdcam — записывает XDCAM-совместимый файл MXF OP1a.
dash — упаковывает закодированные аудио, видео и необязательные дорожки субтитров в манифест MPEG-DASH с сопутствующими файлами сегментов.
hls3 — упаковывает закодированные дорожки аудио и видео в плейлист HLS v3 с сегментами транспортного потока MPEG-2.
hls5 — упаковывает закодированные аудио, видео и необязательные дорожки субтитров в плейлист HLS v5 на основе фрагментированного MP4 (fMP4).
4. Выходы
Video—filtergraph.VideoTransform. Видеопоток, готовый для фильтра или кодера.Совместимые узлы ниже по потоку:
Все видеофильтры (
vf/crop,vf/dar,vf/deinterlace,vf/fieldorder,vf/format,vf/fps,vf/hwupload,vf/letterbox,vf/overlay) и дополнительные видеокодеры (x265,avcintra,ni264,qsv264) принимают тот же типfiltergraph.VideoTransform.copyи ccinject — также.
5. Параметры

Диалог «Настройки» — один столбец с двумя полями.
Node Label (
string, по умолчанию пусто)Произвольное имя, отображаемое на плитке узла на холсте.
- Что задаёт. Подпись над плиткой; на то, какая видеодорожка выбрана, не влияет.
- Когда менять. Задавайте, когда в одном графе несколько узлов
map/video— например, по одному на ракурс в многокамерном источнике или один для мастера полного разрешения и один для прокси-цепочки, — чтобы каждый выбор был узнаваем с одного взгляда.
Index (
string, необязательно)Выбирает, какую видеодорожку внутри пакета извлечь.
- Что задаёт. Нулевой индекс потока, выбранный из таблицы видеодорожек
источника. Оставленный пустым, узел передаёт основную видеодорожку. Задайте
0, чтобы взять первую видеодорожку явно,1— для второй и т. д. - Когда менять. Большинство источников несут одну видеодорожку, и значение по умолчанию верно. Фиксируйте индекс для многоракурсных или камера-оригинальных файлов, где поставка должна зафиксироваться на конкретной дорожке.
- Переменные. Не поддерживаются.
- Что задаёт. Нулевой индекс потока, выбранный из таблицы видеодорожек
источника. Оставленный пустым, узел передаёт основную видеодорожку. Задайте
6. Пример

Полный разбор — переменные, настройка каждого узла и ожидаемый результат — смотрите в H.264 HD.
7. Где используется
- H.264 HD — извлекает видеодорожку из исходного пакета, прогоняет её через цепочку format / fps / DAR / scale в x264 и передаёт закодированное видео мультиплексору MP4.
8. Антипаттерны
- Маппинг несуществующего индекса дорожки. У однодорожечного источника нет
Index = 1; воркер проваливает задачу с ошибкой выхода за диапазон. Проверяйте число дорожек шагомanalyzeраньше в процессе, когда пул источников разнороден. - Пропуск шага маппинга. Видеофильтры и кодеры не могут подключиться
напрямую к контакту
Package. Безmap/videoпроверка проваливается при сохранении процесса. Подключайте его первым шагом в каждой видеоцепочке. - Забытый маппинг обеих дорожек многоракурсного источника. Когда поставке
нужны два параллельных рендерия (например, мастер плюс прокси), требуется два
узла
map/video— по одному на цепочку — даже если оба берут одинIndex = 0. Совместное использование одного узла маппинга подаёт один и тот же поток в обе цепочки и не даёт процессу выполнять их параллельно.
9. Заметки
- Заголовок диалога — Map/Video Node Settings. Плитка на холсте показывает
иконку и подпись, заданную в Node Label, или идентификатор узла
(
map/video), когда подпись не задана.