Используйте фильтры zmq и azmq .В отличие от фильтра sendcmd, который использует предварительно записанные команды, (a) zmq позволяет произвольно отправлять команды фильтра.
Чтобы включить эти фильтры, вам необходимо установить библиотеку libzmq и заголовки и настроить ffmpeg
с помощью --enable-libzmq
.
Только фильтры, которые поддерживают команды, могут использоваться с этим фильтром.Обратитесь к выводу ffmpeg -filters
, чтобы просмотреть список фильтров, которые поддерживают команды.Кроме того, не все параметры фильтра считаются командами.Список поддерживаемых команд см. В документации каждого фильтра.
Примеры из документации
Рассмотрим следующий фильтр-фильтр, сгенерированный ffplay.В этом примере последний фильтр наложения имеет имя экземпляра.Все остальные фильтры будут иметь имена экземпляров по умолчанию.
ffplay -dumpgraph 1 -f lavfi "
color=s=100x100:c=red [l];
color=s=100x100:c=blue [r];
nullsrc=s=200x100, zmq [bg];
[bg][l] overlay [bg+l];
[bg+l][r] overlay@my=x=100 "
Чтобы изменить цвет левой стороны видео, можно использовать следующую команду:
echo Parsed_color_0 c yellow | tools/zmqsend
Чтобы изменить правосторона:
echo Parsed_color_1 c pink | tools/zmqsend
Чтобы изменить положение правой стороны:
echo overlay@my x 150 | tools/zmqsend