Como criar efeitos de distorção de fita de vídeo VHS com FFmpeg?

Como criar efeitos de distorção de fita de vídeo VHS com FFmpeg?

Tenho tentado criar um vídeo que parece ter sido distorcido por um reprodutor de fita de vídeo VHS. Um exemplo específico do efeito que procuro são os efeitos de distorção de fitavisto perto do final deste vídeo, mas a distorção geral da fita é o principal.

Não consigo descobrir uma maneira de fazer isso apenas com FFmpeg (e potencialmente filtros frei0r). Existe uma maneira de fazer isso ou estou preso? Estou apenas procurando distorção de vídeo, pois posso fazer distorção de áudio perfeitamente com minhas ferramentas atuais.

Coisas que tentei até agora:

  • Combinações estranhas de modos de mesclagem no Kdenlive.
  • O filtro chromashift no FFmpeg.
  • Converter o vídeo para YUV descompactado, mexer no arquivo usando o Audacity e depois converter novamente para MP4 (isso produziu resultados interessantes, mas não os que eu procurava).
  • Separar o vídeo em seus canais componentes, mexer nos níveis e na posição e depois recompô-lo.

Responder1

O efeito mais proeminente que vejo é um efeito de relevo.

Isso pode ser feito usando o filtro de convolução do ffmpeg da seguinte forma:

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

Peguei os coeficientes diretamente dos documentos emhttps://ffmpeg.org/ffmpeg-filters.html#convolution

Responder2

Você pode estar procurando o plugin frei0rdo FFmpeg.

Um exemplo para adicionar o parâmetro frei0r é -vf frei0r=pixeliz0r?....

Se você deseja examinar os vários efeitos em ação, demonstrações podem ser encontradas no artigo do blog
Experimentos com filtros FFmpeg e efeitos de plug-in Frei0r.

informação relacionada