Skip to content
Snippets Groups Projects
Vivek Kasireddy's avatar
Vivek Kasireddy authored
We first try to detect if an Intel GPU is available (by looking into
udev's database) and then probe Gstreamer's registry cache to see
if there is h/w based decoder (element) available for the incoming
video codec format. If both these conditions are satisfied (i.e,
Intel Media SDK Gstreamer plugin (libgstmsdk.so) and associated
libraries are properly installed), we then create a simple decode
pipeline using appropriate h/w based decoder and post-processor
elements instead of relying on playbin -- which may not be able to
auto-select these elements.

For example, if the incoming codec format is h264, we then create
a pipeline using msdkh264dec and vaapipostproc elements instead of
avdec_h264 and videoconvert.

Cc: Frediano Ziglio <freddy77@gmail.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Dongwon Kim <dongwon.kim@intel.com>
Signed-off-by: default avatarVivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: default avatarHazwan Arif Mazlan <hazwan.arif.mazlan@intel.com>
Signed-off-by: default avatarJin Chung Teng <jin.chung.teng@intel.com>
Acked-by: default avatarFrediano Ziglio <freddy77@gmail.com>
a5ff1b14
History

spice-gtk

A Gtk client and libraries for SPICE remote desktop servers.

Please report bugs at: spice-devel@lists.freedesktop.org

Project content

  • libspice-client-glib-2.0

    Provides glib objects for spice protocol decoding and surface rendering.

    • SpiceSession (see spice-session.h).
    • SpiceChannel (see spice-channel.h).
    • SpiceAudio (see spice-audio.h).
    • Various Spice<Type>Channel (see channel-<type>.h).
  • libspice-client-gtk-3.0

    provides gtk widget to show spice display and accept user input.

    • SpiceDisplay (see spice-widget.h)
  • spicy

    a gtk test client. The recommended client for end user is virt-viewer

  • spicy-screenshot

    Command line tool, connects to spice server and writes out a screen shot.

  • spicy-stats

    Command line tool, connects to spice server and writes out a summary of connection details, amount of bytes transferred...

  • SpiceClientGlib and SpiceClientGtk GObject-introspection modules.

Build dependencies:

  • On Fedora use:
dnf builddep spice-gtk
  • or install:
meson ninja gtk3-devel spice-protocol openssl-devel pulseaudio-libs-devel pixman-devel
gobject-introspection-devel libjpeg-turbo-devel zlib-devel cyrus-sasl-devel gtk-doc
gettext-devel vala vala-tools python3 python3-pyparsing

The GStreamer backend needs:

gstreamer1-devel gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-bad-free