Skip to main content

spice-record

This is a simple utility for recording a SPICE sesion to MP4 video. It uses libvirt to connect to the VMs, SpiceClientGLib to access the graphics device, and FFmpeg to encode MP4 videos.

Usage

usage: spice-record [-h] [--vcodec VCODEC]
                    [--loglevel {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
                    [-r FRAMERATE] [-c LIBVIRT_URI] [-o FILENAME]
                    DOMAIN-NAME|ID|UUID

positional arguments:
  DOMAIN-NAME|ID|UUID   Machine to record

optional arguments:
  -h, --help            show this help message and exit
  --vcodec VCODEC       Set the output video codec (see "ffmpeg -encoders" for
                        choices)
  --loglevel {DEBUG,INFO,WARNING,ERROR,CRITICAL}
                        Set the logging level (default=WARNING)
  -r FRAMERATE, --framerate FRAMERATE
  -c LIBVIRT_URI, --connect LIBVIRT_URI
                        Connect to hypervisor (e.g. qemu:///system)
  -o FILENAME, --output FILENAME
                        Output filename (defaults to <domain-name>.mp4)

Requirements

  • Python 3
  • libvirt-python (not libvirt-glib)
  • spice-glib
  • pygobject3
  • ffmpeg

If virt-manager is installed on a modern distro (which has ported all of its Python apps to Python 3), then everything should already be installed, aside from ffmpeg.

Notes

Currently, the spice server only supports a single client connection. When another connection is opened, the current one is disconnected. Thus, this utility is limited in its usability as it cannot record a user interacting with the VM, and only an automatic ongoing process. There is however, an experimental feature to enable multiple concurrent connections to a single spice server.

Metadata

Release files for spicerecord 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for spicerecord 0.2.1
File Size Uploaded
spicerecord-0.2.1.tar.gz 11.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for spicerecord 0.2.1
File Interpreter ABI Platform
spicerecord-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 24.7 kB

Release files / spicerecord-0.2.1.tar.gz

Download URL spicerecord-0.2.1.tar.gz
Size 11.7 kB
Tags Source
SHA-256 checksum
How to use checksums
481893b77d97fdda3b2941c229527eb20bc90cf6fdd1f4689ba58d863ae60b78
BLAKE2b-256 checksum
How to use checksums
7aeb6c21b94efad0f0bc23f1f1a3a042f41f6e082ac94dce59bfc6461452b03a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.3

Release files / spicerecord-0.2.1-py3-none-any.whl

Download URL spicerecord-0.2.1-py3-none-any.whl
Size 13.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0f0b9c84108f9649cb29fb16a80fd2b4c8e72603762419a822a5c9019cea035d
BLAKE2b-256 checksum
How to use checksums
6f90cfac5aa04ac037b3594c638e9cb1f77a02ed01b92c1c41df52892709aa14
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.3

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page