Hi, The current screendump command can only save to disk very large PPM files.
The following patches add support for screendump in a UNIX socket, following the syntax used for migration URI: "unix:/path/to/socket". The last 3 patches add support for dumping in PNG format. This can reduce the size of the image by a great factor (x10 is not unusual), and is also a more convenient format than PPM. Currently, it dumps in PNG by checking if the path ends with ".png", we may want to have a seperate option for that instead, or use this syntax only if the path begins with "unix:" (or any foo:) for example. Next, I would like to add support for a scaling factor too (a typical use case is to show a small thumbnail of the desktop). Specifying only the requested "width" or "height" should be supported. Should we rely on pixman to do this work? Finally, those functions should not be blocking. With a bit of guidance, I could work on a follow-up patch adding support for it, but for now there are related work still in discussion (screendump-async etc.) and I thought it was best to avoid. regards Marc-André Lureau (7): ppm_save: use QEMUFile Allow a qemu_fopen_socket() to be opened for writing Close socket when closing QEMUFile Allow saving screendump to a UNIX socket configure: split PNG support from vnc_png feature Isolate color conversion from PPM handling Add PNG screendump Makefile.target | 2 +- configure | 42 +++++++++--- hw/vga.c | 197 +++++++++++++++++++++++++++++++++++++++++++++++++----- migration-tcp.c | 11 ++-- migration-unix.c | 11 ++-- qemu-file.h | 3 +- savevm.c | 37 +++++++++- 7 files changed, 260 insertions(+), 43 deletions(-) -- 1.7.7.6