Filter Boxblur hat nicht verbundenen Ausgang

Filter Boxblur hat nicht verbundenen Ausgang

Ich versuche, einen bestimmten Teil des Videos in Abhängigkeit von einem bestimmten Intervall zu verwischen, z. B. in 2-10 Sekunden diesen Teil und in 12-20 Sekunden einen anderen, aber ich bekomme das nicht hin. Hier ist der Befehl, den ich bisher ausführen kann

'ffmpeg -y -i with_out_sound.mp4 -filter_complex [0:v]crop=206:169:32:121,boxblur=10:enable='between(t,2,10)'[fg];[0:v]crop=206:169:62:100,boxblur=10:enable='between(t,12,20)'[fg1];[0:v[fg]overlay=32:121:enable='between(t,2,10)'[tmp];[0:v][tmp]overlay=62:100:enable='between(t,12,20)'[tmp2]-map [tmp2] with_blur.mp4'

Aber mit dem obigen Befehl erhalte ich einen FehlerFilter Boxblur hat nicht verbundenen Ausgang

Antwort1

Verwenden

ffmpeg -y -i with_out_sound.mp4 -filter_complex \
"[0:v]crop=206:169:32:121,boxblur=10:enable='between(t,2,10)'[fg]; \
 [0:v]crop=206:169:62:100,boxblur=10:enable='between(t,12,20)'[fg1]; \
 [0:v[fg]overlay=32:121:enable='between(t,2,10)'[tmp]; \
 [tmp][fg1]overlay=62:100:enable='between(t,12,20)'[tmp2]"
-map [tmp2] with_blur.mp4

Das Ergebnis der ersten Überlagerung sollte der Hintergrund für die zweite Überlagerung sein.

Der Fehler trat auf, weil fg1er nirgends verwendet wurde. Alle Filterausgaben sollten entweder 1) für die Kodierung zugeordnet, 2) von einem anderen Filter verwendet oder 3) an einen Sink gesendet werden.

verwandte Informationen