Как создать эффекты искажения видеокассеты VHS с помощью FFmpeg?

Как создать эффекты искажения видеокассеты VHS с помощью FFmpeg?

Я пытался создать видео, которое выглядит так, будто его исказил видеопроигрыватель VHS. Конкретный пример эффекта, который мне нужен, — это эффекты искажения лентывидно ближе к концу этого видео, но основное — это общие искажения ленты.

Я не могу придумать, как это сделать только с помощью FFmpeg (и, возможно, фильтров frei0r). Есть ли способ сделать это, или я застрял? Я просто ищу искажение видео, так как я могу прекрасно сделать искажение аудио с помощью моих текущих инструментов.

Что я уже попробовал сделать:

  • Странные комбинации режимов наложения в Kdenlive.
  • Фильтр chromashift в FFmpeg.
  • Конвертировал видео в несжатый YUV, поработал с файлом с помощью Audacity, а затем конвертировал обратно в MP4 (это дало интересные результаты, но не те, которые я искал).
  • Разделение видео на составляющие его каналы, изменение уровней и положения, а затем его перекомпоновка.

решение1

Самый заметный эффект, который я вижу, — это эффект тиснения.

Это можно сделать с помощью фильтра свертки ffmpeg следующим образом:

ffmpeg -i in -vf convolution="-2 -1 0 -1 1 1 0 1 2:-2 -1 0 -1 1 1 0 1 2:-2 -1 0 -1 1 1 0 1 2:-2 -1 0 -1 1 1 0 1 2" -c:a copy out

Я взял коэффициенты прямо из документовhttps://ffmpeg.org/ffmpeg-filters.html#свертка

решение2

Возможно, вы ищете плагин frei0rиз FFmpeg.

Пример добавления параметра frei0r -vf frei0r=pixeliz0r?...:

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

Связанный контент