Hey Jaime,
On Mon, Apr 08, 2013 at 05:35:06PM +0200, Jaime Loureiro Acuña wrote:
My name is Jaime Loureiro and I work in the Network &
Applications area in
University of Vigo. I am writing to you hoping you can help me with some
libvirt graphics issues.
I was analysing the source code of the libvirt in order to find how to
access the display of each virtual machine. We are trying to generate a
video streaming from the graphics content, though it is not easy to find
what function is the most appropriate to do that. We tried to use the
screenshot feature, but the rate is to low to generate a smooth streaming.
I suposse the vnc server is reading the graphics output of each virtual
machine at a low level, however I cannot find the exact point where the
server is. Currently I am trying to understand the function
"virDomainOpenGraphics" in libvirt.c and, at a lower level, the function
"qemuProcessHandleGraphics" in qemu_process.c, but I 'm not sure if it is
possible to get what we need from them.
I would appreciate any help or clue you could provide regarding this issue.
The VNC (or SPICE) server code would live in the hypervisor (eg QEMU).
libvirt only provides you with all the needed info to connect to said
server (IP, port, password, ...), but it does not handle sending
the display data through VNC/SPICE, this is left to the hypervisor being
used.
Hope that helps,
Christophe