AFAIK non è possibile acquisire una finestra specifica con ffmpeg, la voce x11grab nel manuale si riferisce solo alle schermate https://www.ffmpeg.org/ffmpeg-devices.html#x11grab e suggerisce che la regione specificata è statica ( se sposti la finestra ffmpeg non la segue):
Tuttavia GStreamer offre una maggiore flessibilità in questo caso:
gst-launch-1.0 ximagesrc xid=0x04000007 ! videoconvert ! autovideosink
Funziona con finestre sfocate e puoi anche spostarle ma NON funziona con finestre ridotte a icona.
Come forse saprai, puoi ottenere l'ID della finestra con wmctrl -l
.
Puoi vedere le opzioni supportate dagli elementi GStreamer usando gst-inspect-1.0
programma, ad esempio:
gst-inspect-1.0 ximagesrc