[IVSHMEM Concept] - Spice Display uses looking glass for video stream

Hello,

Objective: Channel video stream to SPICE using IVSHMEM

I’ve seen alot of discussion on the input device side of things when it comes to looking glass and SPICE. However, there isnt much info about getting Spice to use the shared memory buffer (via IVSHMEM) to display a vm over the network instead of SPICE creating a Virtual GPU (QXL e.g.).

I am looking for that beautiful near bare-metal experience with looking glass to happen when i use SPICE remotely into my VM.

Thank You.
**DISCLAIMER

  • Please let me know if I am going about this the wrong way,
  • I am not a beginner when it comes to IT, nor would I consider myself an omniscient expert. Please feel free to correct me if I misstated/misunderstood something.
    TO OTHERS WHO WANT TO ACHIEVE THE SAME
  • I will update this once I have a solution.

Correct me if I’m wrong, but I don’t think that is possible. Looking glass relies on memory sharing between devices, and that requires one address space.

AFAIK(I’m not an expert regarding looking glass) the built-in spice server is for sharing mouse/keyboard only.

Neither would you want to, as looking glass is AFAIK always transferring complete, uncompressed frames. That would be some drastic bandwidth use, even just for 1080p60(1920*1080*4*60=497M Bytes per second).

Spice was really meant to work with the QXL GPU and in LANs/High-speed networks.
Spice is quite clever, it usually uses lossless delta-based video encoding, unless it heuristically identifies video content, then it switches to mjpeg-compressed frames.

Duly Noted, Thank you.

1 Like