[FFmpeg-user] Change filters in running process without restarting it

Stefano Sabatini stefasab at gmail.com
Tue Feb 10 11:22:25 CET 2015


On date Monday 2015-02-09 13:19:12 +0300, Maxim Kozlov wrote:
> Hi all.
> 
> I have such command:
> ffmpeg -deinterlace -r 25 -f decklink -i DeckLink SDI (1)@9 -c:a copy -s
> 1920x1080 -r 25 -pix_fmt yuv422p -codec:v huffyuv -vf
> movie=logo_720x576_43.png[wm];[in][wm]overlay=1065:45[out] -f nut - | \
> ffmpeg -re -rtbufsize 2G -fflags +genpts -f nut -i - \
> -vcodec libx264 -pix_fmt yuv420p -profile:v baseline -aspect 16:9 -s
> 1280x720 -x264opts
> level=31:keyint=25:fps=25:ref=3:no-scenecut:vbv_maxrate=4096:vbv_bufsize=4096
> -preset:v medium -map 0:v -map 0:a -af aresample=44100 -acodec libvo_aacenc
> -ab 128k -ar 44100 -ac 2 -f tee [f=mpegts]udp://
> 192.168.0.6:10073?pkt_size=1316|[f=mpegts]udp://192.168.0.26:10073?pkt_size=1316
> \
> -vcodec libx264 -pix_fmt yuv420p -profile:v baseline -aspect 16:9 -s
> 640x360 -x264opts
> level=31:keyint=25:fps=25:ref=3:no-scenecut:vbv_maxrate=700:vbv_bufsize=700
> -preset:v fast -map 0:v -map 0:a -af aresample=22050 -acodec libvo_aacenc
> -ab 64k -ar 22050 -ac 1 -f tee [f=mpegts]udp://
> 192.168.0.6:10071?pkt_size=1316|[f=mpegts]udp://192.168.0.26:10071?pkt_size=1316
> \
> -vcodec libx264 -pix_fmt yuv420p -profile:v baseline -aspect 16:9 -s
> 480x270 -x264opts
> level=31:keyint=25:fps=25:ref=3:no-scenecut:vbv_maxrate=384:vbv_bufsize=384
> -preset:v fast -map 0:v -map 0:a -af aresample=22050 -acodec libvo_aacenc
> -ab 32k -ar 22050 -ac 1 -f tee [f=mpegts]udp://
> 192.168.0.6:10072?pkt_size=1316|[f=mpegts]udp://192.168.0.26:10072?pkt_size=1316
> 

> and i need to remove overlay filter without stoppping or restarting
> encoding process.
> Is it possible to change filters in running process without restarting it?

No, but you can send commands to it (using sendcmd or zmq) and disable
overlay (see the timeline section in the filters manual).


More information about the ffmpeg-user mailing list