This patch is an improve to last one. There are still many work to be done. The main reason I'm posting is to discuss the Qemu API changes ("Define a new interface for Qemu to pass texture" patch). This code add dependency to EGL directly. The main idea is still extracting raw data and passing to the normal flow (display_channel_process_draw). Changes from last version: - this set supports all cards using a different protocol from Qemu that now can pass EGL information (display and context) and texture directly. This allows spice-server to choose dma buffers or just GL data; - the patch set is much neat. Multiple clients are still not supported (but actually is not a regression). Looks like the queue is reduced automatically by drawable code in spice-server so new frames replace old ones if network or streaming code is not fast enough. If you expect similar performance to the video I posted days ago you will be disappointed. These video were done with lot of tweak in the streaming code (both server and client). I decided to avoid patches for stream code as they are quite in a bad shape. Frediano Ziglio (12): Define a new interface for Qemu to pass texture Add libepoxy to dependency Implements spice_qxl_gl_init Save and allow to retrieve texture information in Qxl Import function to get dma buffer from a texture Add get_texture_raw_data to extract raw data from a texture Implements spice_qxl_gl_scanout_texture Check client is using unix sockets in dcc_gl_draw_item_new Do not disconnect client if not connected locally in dcc_gl_scanout_item_new Add get_dummy_drawable Handle remote 3d connections Fix a bug... why this happens ?? configure.ac | 4 ++ server/Makefile.am | 4 ++ server/dcc.c | 14 +++--- server/display-channel.c | 97 +++++++++++++++++++++++++++++++++++-- server/display-channel.h | 4 +- server/egl.c | 123 +++++++++++++++++++++++++++++++++++++++++++++++ server/egl.h | 29 +++++++++++ server/red-qxl.c | 110 ++++++++++++++++++++++++++++++++++++++++-- server/red-qxl.h | 11 +++++ server/red-worker.c | 6 ++- server/spice-qxl.h | 8 +++ server/spice-server.syms | 6 +++ server/tests/Makefile.am | 2 + 13 files changed, 399 insertions(+), 19 deletions(-) create mode 100644 server/egl.c create mode 100644 server/egl.h -- 2.7.4 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel