Top | ![]() |
![]() |
![]() |
![]() |
const SpiceGlScanout * | spice_display_get_gl_scanout () |
const SpiceGlScanout * | spice_display_channel_get_gl_scanout () |
void | spice_display_gl_draw_done () |
void | spice_display_channel_gl_draw_done () |
gboolean | spice_display_get_primary () |
gboolean | spice_display_channel_get_primary () |
void | spice_display_change_preferred_compression () |
void | spice_display_channel_change_preferred_compression () |
void | spice_display_change_preferred_video_codec_type () |
void | spice_display_channel_change_preferred_video_codec_type () |
gboolean | spice_display_channel_change_preferred_video_codec_types () |
void | spice_gl_scanout_free () |
SpiceGlScanout * | gl-scanout | Read |
guint | height | Read |
GArray * | monitors | Read |
guint | monitors-max | Read |
guint | width | Read |
void | display-invalidate | Run First |
void | display-mark | Run First |
void | display-primary-create | Run First |
void | display-primary-destroy | Run First |
void | gl-draw | |
gboolean | gst-video-overlay | |
gpointer | streaming-mode |
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
.
[method]
gboolean spice_display_channel_get_primary (SpiceChannel *channel
,guint32 surface_id
,SpiceDisplayPrimary *primary
);
Retrieve primary display surface surface_id
.
[method]
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
.
[method]
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
.
[method]
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.
[method]
Since: 0.34
void spice_display_channel_change_preferred_video_codec_type (SpiceChannel *channel
,gint codec_type
);
spice_display_channel_change_preferred_video_codec_type
has been deprecated since version 0.38 and should not be used in newly-written code.
use spice_display_channel_change_preferred_video_codec_types()
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.
[method]
Since: 0.35
gboolean spice_display_channel_change_preferred_video_codec_types (SpiceChannel *channel
,const gint *codecs
,gsize ncodecs
,GError **err
);
Tells the spice server the ordered preferred video codec types to
use for streaming in channel
.
[method]
channel |
[type SpiceDisplayChannel] | |
codecs |
an array of |
[array length=ncodecs] |
ncodecs |
the number of codec types in the |
|
err |
GError describing the reason why the change failed |
Since: 0.38
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.
“gl-scanout”
property“gl-scanout” SpiceGlScanout *
The last SpiceGlScanout received.
Owner: SpiceDisplayChannel
Flags: Read
Since: 0.31
“height”
property “height” guint
The primary surface height.
Owner: SpiceDisplayChannel
Flags: Read
Default value: 0
“monitors”
property “monitors” GArray *
Current monitors configuration.
[type GArray(SpiceDisplayMonitorConfig)]
Owner: SpiceDisplayChannel
Flags: Read
Since: 0.13
“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.
Owner: SpiceDisplayChannel
Flags: Read
Allowed values: [1,256]
Default value: 1
Since: 0.13
“display-invalidate”
signalvoid user_function (SpiceDisplayChannel *display, int x, int y, int width, int 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, int 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, int format, int width, int height, int stride, int 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 “gl-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. If the pipeline pointer is NULL, the drawing area of the native renderer is set visible.
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