Pomocí Xvfb mohu spustit aplikaci a pořídit snímek obrazovky.
Zajímalo by mě, jak zachytit z existující (neaktivní) relace X.
Řekněme z tty nebo přes ssh.
Z toho, co jsem pochopil, okna nejsou namapována a neexistují kvůli zachování zdrojů. Existuje nějaký nástroj, který dokáže zmapovat existující okna, pracovní prostory atd. ve virtuálním správci oken a zachytí to?
Nebo lze použít libx11
a vytvořte snímek pomocí XShmCreateImage
nebo podobné?
Přijatá odpověď:
X tty můžeme „zapnout“ ručně z příkazového řádku, bez ctrl-alt-F(x).
Pokud je X na tty 7 a přihlásíte se do textového terminálu
chvt 7 ; DISPLAY=0.0 xwd -root > screendump.xwd ; chvt 1
Nicméně xhost + localhost musí být problém v xsession, jinak se xwd nemůže připojit k x serveru.
To vám umožní provést to z relace ssh.
PS:Teoreticky by s MTD mělo být možné snímat obrazovku z paměti grafické karty. Tedy bez předchozího „probuzení“ X session.