| Top |  |  |  |  | 
| SpiceGlScanout * | gl-scanout | Read | 
| guint | height | Read | 
| GArray * | monitors | Read | 
| guint | monitors-max | Read | 
| guint | width | Read | 
| struct | SpiceDisplayChannel | 
| struct | SpiceDisplayChannelClass | 
| struct | SpiceDisplayMonitorConfig | 
| struct | SpiceDisplayPrimary | 
| struct | SpiceGlScanout | 
A class that handles the rendering of the remote display and inform of its updates.
The creation of the main graphic buffer is signaled with “display-primary-create”.
The update of regions is notified by “display-invalidate” signals.
const SpiceGlScanout *
spice_display_get_gl_scanout (SpiceDisplayChannel *channel);
spice_display_get_gl_scanout has been deprecated since version 0.35 and should not be used in newly-written code.
use spice_display_channel_get_gl_scanout() instead.
Retrieves the GL scanout if available
Since: 0.31
const SpiceGlScanout *
spice_display_channel_get_gl_scanout (SpiceDisplayChannel *channel);
Retrieves the GL scanout if available
Since: 0.35
void
spice_display_gl_draw_done (SpiceDisplayChannel *channel);
spice_display_gl_draw_done has been deprecated since version 0.35 and should not be used in newly-written code.
use spice_display_channel_gl_draw_done() instead.
After a SpiceDisplayChannel::gl-draw is emitted, the client should
draw the current display with the current GL scanout, and must
release the GL resource with a call to spice_display_gl_draw_done()
(failing to do so for each gl-draw may result in a frozen display).
Since: 0.31
void
spice_display_channel_gl_draw_done (SpiceDisplayChannel *channel);
After a SpiceDisplayChannel::gl-draw is emitted, the client should
draw the current display with the current GL scanout, and must
release the GL resource with a call to spice_display_gl_draw_done()
(failing to do so for each gl-draw may result in a frozen display).
Since: 0.35
gboolean spice_display_get_primary (SpiceChannel *channel,guint32 surface_id,SpiceDisplayPrimary *primary);
spice_display_get_primary has been deprecated since version 0.35 and should not be used in newly-written code.
use spice_display_channel_get_primary() instead.
Retrieve primary display surface surface_id
.
gboolean spice_display_channel_get_primary (SpiceChannel *channel,guint32 surface_id,SpiceDisplayPrimary *primary);
Retrieve primary display surface surface_id
.
Since: 0.35
void spice_display_change_preferred_compression (SpiceChannel *channel,gint compression);
spice_display_change_preferred_compression has been deprecated since version 0.35 and should not be used in newly-written code.
use spice_display_channel_change_preferred_compression() instead.
Tells the spice server to change the preferred image compression
for the channel
.
Since: 0.31
void spice_display_channel_change_preferred_compression (SpiceChannel *channel,gint compression);
Tells the spice server to change the preferred image compression
for the channel
.
Since: 0.35
void spice_display_change_preferred_video_codec_type (SpiceChannel *channel,gint codec_type);
spice_display_change_preferred_video_codec_type has been deprecated since version 0.35 and should not be used in newly-written code.
use spice_display_channel_change_preferred_video_codec_type() instead.
Tells the spice server to change the preferred video codec type for
streaming in channel
. Application can set only one preferred video codec per
display channel.
Since: 0.34
void spice_display_channel_change_preferred_video_codec_type (SpiceChannel *channel,gint codec_type);
Tells the spice server to change the preferred video codec type for
streaming in channel
. Application can set only one preferred video codec per
display channel.
Since: 0.35
void
spice_gl_scanout_free (SpiceGlScanout *scanout);
Frees the scanout
.
Since: 0.31
struct SpiceDisplayChannel;
The SpiceDisplayChannel struct is opaque and should not be accessed directly.
struct SpiceDisplayChannelClass {
    SpiceChannelClass parent_class;
    /* signals */
    void (*display_primary_create)(SpiceChannel *channel, gint format,
                                   gint width, gint height, gint stride,
                                   gint shmid, gpointer data);
    void (*display_primary_destroy)(SpiceChannel *channel);
    void (*display_invalidate)(SpiceChannel *channel,
                               gint x, gint y, gint w, gint h);
    void (*display_mark)(SpiceChannel *channel,
                         gboolean mark);
};
Class structure for SpiceDisplayChannel.
| Signal class handler for the “display-primary-create” signal. | ||
| Signal class handler for the “display-primary-destroy” signal. | ||
| Signal class handler for the “display-invalidate” signal. | ||
| Signal class handler for the “display-mark” signal. | 
struct SpiceDisplayMonitorConfig {
    guint id;
    guint surface_id;
    guint x;
    guint y;
    guint width;
    guint height;
};
Holds a monitor configuration.
struct SpiceDisplayPrimary {
    enum SpiceSurfaceFmt format;
    gint width;
    gint height;
    gint stride;
    gint shmid;
    guint8 *data;
    gboolean marked;
};
Holds the information necessary to use the primary surface.
| primary buffer format | ||
| gint  | width of the primary | |
| gint  | height of the primary | |
| gint  | stride of the primary | |
| gint  | identifier of the shared memory segment associated with
the  | |
| guint8 * | pointer to primary buffer | |
| gboolean  | whether the display is marked ready | 
“gl-scanout” property“gl-scanout” SpiceGlScanout *
The last SpiceGlScanout received.
Flags: Read
Since: 0.31
“monitors-max” property“monitors-max” guint
The maximum number of monitors the server or guest supports. May change during client lifetime, for instance guest may reboot or dynamically adjust this.
Flags: Read
Allowed values: [1,256]
Default value: 1
Since: 0.13
“display-invalidate” signalvoid user_function (SpiceDisplayChannel *display, gint x, gint y, gint width, gint height, gpointer user_data)
The “display-invalidate” signal is emitted when the rectangular region x/y/w/h of the primary buffer is updated.
| display | the SpiceDisplayChannel that emitted the signal | |
| x | x position | |
| y | y position | |
| width | width | |
| height | height | |
| user_data | user data set when the signal handler was connected. | 
Flags: Run First
“display-mark” signalvoid user_function (SpiceDisplayChannel *display, gint mark, gpointer user_data)
The “display-mark” signal is emitted when
the RED_DISPLAY_MARK command is received, and the display
should be exposed.
| display | the SpiceDisplayChannel that emitted the signal | |
| mark | 
 | |
| user_data | user data set when the signal handler was connected. | 
Flags: Run First
“display-primary-create” signalvoid user_function (SpiceDisplayChannel *display, gint format, gint width, gint height, gint stride, gint shmid, gpointer imgdata, gpointer user_data)
The “display-primary-create” signal provides main display buffer data.
| display | the SpiceDisplayChannel that emitted the signal | |
| format | 
 | |
| width | width resolution | |
| height | height resolution | |
| stride | the buffer stride ("width" padding) | |
| shmid | identifier of the shared memory segment associated with
the  | |
| imgdata | pointer to surface buffer | |
| user_data | user data set when the signal handler was connected. | 
Flags: Run First
“display-primary-destroy” signalvoid user_function (SpiceDisplayChannel *display, gpointer user_data)
The “display-primary-destroy” signal is emitted when the primary surface is freed and should not be accessed anymore.
| display | the SpiceDisplayChannel that emitted the signal | |
| user_data | user data set when the signal handler was connected. | 
Flags: Run First
“gl-draw” signalvoid user_function (SpiceDisplayChannel *display, guint x, guint y, guint width, guint height, gpointer user_data)
The “draw” signal is emitted when the
rectangular region x/y/w/h of the GL scanout is updated and
must be drawn. When the draw is finished, you must call
spice_display_gl_draw_done() in order to release the GL
resources.
| display | the SpiceDisplayChannel that emitted the signal | |
| x | x position | |
| y | y position | |
| width | width | |
| height | height | |
| user_data | user data set when the signal handler was connected. | 
Since: 0.31
“gst-video-overlay” signalgboolean user_function (SpiceDisplayChannel *display, GstPipeline *pipeline, gpointer user_data)
The “gst-video-overlay” signal is emitted when pipeline is ready and can be passed to widget to register GStreamer overlay interface and other GStreamer callbacks.
| display | the SpiceDisplayChannel that emitted the signal | |
| pipeline | pointer to GStreamer's pipeline | |
| user_data | user data set when the signal handler was connected. | 
Since: 0.36
“streaming-mode” signalgpointer user_function (SpiceDisplayChannel *display, gboolean streaming_mode, gpointer user_data)
Return: handle for the display window if possible
The “streaming-mode” signal is emitted when spice server is working in streaming mode.
SpiceDisplayChannel::streaming-mode has been deprecated since version 0.36 and should not be used in newly-written code.
use “gst-video-overlay” instead
| display | the SpiceDisplayChannel that emitted the signal | |
| streaming_mode | 
 | |
| user_data | user data set when the signal handler was connected. | 
Since: 0.35