FFMPEG filtro para boxblur y greyscale un video usando máscara alfa

¿Puede alguien mostrarme cómo mejorar el ejemplo que se encuentra aquí: FFmpeg – Aplicar desenfoque sobre la cara

Para hacer lo siguiente:

  1. Utilice una PNG de máscara alfa de entrada en lugar de una región rectangular declarada
  2. Tanto borrosa como en escala de grises la región enmascarada

Este es otro ejemplo – que muestra cómo usar un archivo de máscara alfa Recortar el área triangular con FFMPEG

Gracias

Aquí hay un método que utiliza alphaextract , alphaextract , hue , boxblur y overlay .

originalborrosomáscara

Entrada original, salida filtrada, imagen de máscara.

Ejemplo:

 ffmpeg -i input -loop 1 -i mask.png -filter_complex \ "[1:v]alphaextract[alf]; \ [0:v][alf]alphamerge,hue=s=0,boxblur=5[fg]; \ [0:v][fg]overlay[v]" -map "[v]" -map 0:a -c:a copy output 
  • La máscara debe tener el mismo tamaño que la entrada. Si no lo es, puede usar scale o scale2ref para cambiar el tamaño.

  • El audio se copia en secuencia para evitar la codificación innecesaria.