3

Я хочу объединить две команды ffmpeg в одну команду ffmpeg. Я хочу применить винтажный эффект и водяной знак на видео.

Пожалуйста, помогите мне в создании одной команды ffmpeg.

1 ответ1

11

Это очень просто. Если у вас есть один фильтр, работающий с одним видео потоком:

ffmpeg -i input -filter:v "scale=-1:480" output

... и вы хотите добавить второй фильтр, тогда все, что вам нужно сделать, это добавить его через запятую:

ffmpeg -i input -filter:v "scale=-1:480, fps=fps=30" output

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


Если, с другой стороны, у вас есть сложный фильтрующий граф (то есть тот, который использует несколько цепочек и несколько входов / выходов), вы должны направить выход цепочки фильтров на вход следующей цепочки фильтров, разделить цепочки точкой с запятой (;), а затем отобразить Общий выход фильтра в выходной файл:

ffmpeg -i input1 -i input2 -filter_complex "[0:v][1:v] overlay [ol]; \
[ol] scale=-1:480 [outv]" -map "[outv]" output

Конечно, вы можете использовать столько цепей и фильтров, сколько захотите. Прочитайте документацию filtergraph для получения дополнительной информации. Существует множество примеров того, как комбинировать фильтры.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .