# ✨ Принимать видео и брать из него звуковую дорожку

- **Тип:** feature
- **Категория:** Очередь — Приём видео и отказ неизвестному формату ставятся на замеренный перечень.
- **Зачем:** Запись семейного архива приходит видеофайлом, а приём смотрит на аудио: человеку приходится доставать дорожку самому.

Видеофайл принимается и из него берётся звуковая дорожка, а формат, который
принять нельзя, отклоняется на приёме понятным текстом, а не отказом на
конвертации через минуту.

Берётся после `audio-format-coverage-measure`: чем отклонять неизвестное, пока
неизвестно, что конвейер берёт.

## Затрагивает

- приём обоими входами: перечень допустимых типов содержимого и расширений;
- адаптер метаданных — распознавание дорожек в контейнере;
- команда конвертера: выбор звуковой дорожки из видео;
- метка формата в метрике — перечень известных форматов расширяется
  ([ADR](../../docs/adr/ADR-2026-08-11-known-format-label.md));
- `docs/passport.md` — граница «что принимаем» сдвигается на видео;
- `openspec/specs/intake/` — требование о принимаемых форматах.

## Критерии приёмки

- Видеофайл с одной звуковой дорожкой доходит до текста. Оракул — тест приёма и
  конвертации на своём коротком видео из временного каталога.
- Видео без звуковой дорожки отклоняется на приёме понятным текстом и задачи не
  заводит. Оракул — тест: файл без звука, ответ с причиной, в очереди пусто.
- Формат вне замеренного перечня отклоняется на приёме, а не висит в конвейере.
  Оракул — тест на файле неизвестного типа: отказ приходит сразу.
- Расширение в журнале и метка в метрике остаются в перечне известных форматов.
  Оракул — тест: на видео с новым контейнером в журнал уходит расширение из
  перечня, а не сырое расширение файла, и метка метрики берётся из того же
  перечня.

## Рамки

Видео с несколькими звуковыми дорожками берём первую, выбор дорожки человеком за
задачей не стоит. Потолок длины остаётся тем, что назначат замеры
`speechkit-limits` и `intake-limits-measure`.
