[Извинения, если название неясно;Мне было трудно разобраться с языком проблемной области.]
Я ищу либо приложение командной строки (например, FFMpeg), либо библиотеку для языка, подобного Go, который позволил бымне создать новый видеофайл из набора временных меток инструкций. Лучшая аналогия того, что я пытаюсь привести, - это то, что делают комментаторы НФЛ, когда рисуют на экране, описывая пьесу (см. Короткий видеоролик на YouTube: https://youtu.be/B1C25g0p3AQ - поведение, которое я пытаюсь описатьописание начинается примерно в 0:12)
- исходное видео может быть приостановлено или воспроизведено
- "маркер" или "фигуры", нарисованные поверх видео, обычно когда пауза, в определенныхраз
- сохранить результат как вновь закодированное видео (не требуется наложение или специальный просмотрщик)
Я хочу иметь возможность программировать то, что рисуется, и запускать процесс в безголовом облакесервер, поэтому я не ищу решение с графическим интерфейсом.
Я ищу пример следующего потока:
- приостановить видео в 12: 34.123
- нарисуйте красный кружок (заполненный) над видео в [345px, 876px] (координаты x и y) в 12: 38.412
- возобновите воспроизведение видео в 13: 03.512
- экспортируйтеконечный результат (исходное видео, пауза, рисование, возобновлениенаше видео) как новый H.264, так что конечный результат можно просмотреть в обычном видеоплеере (без специальной программы для прозрачного наложения и т. д.)
Я думаю,исходные видео будут кодироваться в формате H.264 - скорее всего, в контейнерах WebM или MP4 - но я, вероятно, могу предположить, что, если cli / lib не поддерживает это. Исходное видео будет содержать звук, который я хочу сохранить, и я хотел бы добавить дополнительную звуковую дорожку (комментарий), поэтому решение должно поддерживать это поведение.
В итоге:
- Существует ли такой CLI и / или библиотека для выполнения подобных задач?
- Если да, можете ли вы привести простой пример того, как использовать его для выполнения описанного выше потока?