c494597a91
Make sure gnome-shell gets notified of errors that happen during screen recording using the screencastService, so that it can properly notify the user about the error and tear down its state, too. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2752>
101 lines
4.4 KiB
XML
101 lines
4.4 KiB
XML
<!DOCTYPE node PUBLIC
|
|
'-//freedesktop//DTD D-BUS Object Introspection 1.0//EN'
|
|
'http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd'>
|
|
<node>
|
|
|
|
<!--
|
|
org.gnome.Shell.Screencast:
|
|
@short_description: Screencast interface
|
|
|
|
The interface used to record screen contents.
|
|
-->
|
|
<interface name="org.gnome.Shell.Screencast">
|
|
<property name="ScreencastSupported" type="b" access="read"/>
|
|
|
|
<!--
|
|
Screencast:
|
|
@file_template: the template for the filename to use
|
|
@options: a dictionary of optional parameters
|
|
@success: whether the screencast was started successfully
|
|
@filename_used: the file where the screencast is being saved
|
|
|
|
Records a screencast of the whole screen and saves it
|
|
(by default) as webm video under a filename derived from
|
|
@file_template. The template is either a relative or absolute
|
|
filename which may contain some escape sequences - %d and %t
|
|
will be replaced by the start date and time of the recording.
|
|
If a relative name is used, the screencast will be saved in the
|
|
$XDG_VIDEOS_DIR if it exists, or the home directory otherwise.
|
|
The actual filename of the saved video is returned in @filename_used.
|
|
The set of optional parameters in @options currently consists of:
|
|
'draw-cursor'(b): whether the cursor should be included in the
|
|
recording (true)
|
|
'framerate'(i): the number of frames per second that should be
|
|
recorded if possible (30)
|
|
'pipeline'(s): the GStreamer pipeline used to encode recordings
|
|
in gst-launch format; if not specified, the
|
|
recorder will produce vp8 (webm) video (unset)
|
|
-->
|
|
<method name="Screencast">
|
|
<arg type="s" direction="in" name="file_template"/>
|
|
<arg type="a{sv}" direction="in" name="options"/>
|
|
<arg type="b" direction="out" name="success"/>
|
|
<arg type="s" direction="out" name="filename_used"/>
|
|
</method>
|
|
|
|
<!--
|
|
ScreencastArea:
|
|
@x: the X coordinate of the area to capture
|
|
@y: the Y coordinate of the area to capture
|
|
@width: the width of the area to capture
|
|
@height: the height of the area to capture
|
|
@file_template: the template for the filename to use
|
|
@options: a dictionary of optional parameters
|
|
@success: whether the screencast was started successfully
|
|
@filename_used: the file where the screencast is being saved
|
|
|
|
Records a screencast of the passed in area and saves it
|
|
(by default) as webm video under a filename derived from
|
|
@file_template. The template is either a relative or absolute
|
|
filename which may contain some escape sequences - %d and %t
|
|
will be replaced by the start date and time of the recording.
|
|
If a relative name is used, the screencast will be saved in the
|
|
$XDG_VIDEOS_DIR if it exists, or the home directory otherwise.
|
|
The actual filename of the saved video is returned in @filename_used.
|
|
The set of optional parameters in @options currently consists of:
|
|
'draw-cursor'(b): whether the cursor should be included in the
|
|
recording (true)
|
|
'framerate'(i): the number of frames per second that should be
|
|
recorded if possible (30)
|
|
'pipeline'(s): the GStreamer pipeline used to encode recordings
|
|
in gst-launch format; if not specified, the
|
|
recorder will produce vp8 (webm) video (unset)
|
|
-->
|
|
<method name="ScreencastArea">
|
|
<arg type="i" direction="in" name="x"/>
|
|
<arg type="i" direction="in" name="y"/>
|
|
<arg type="i" direction="in" name="width"/>
|
|
<arg type="i" direction="in" name="height"/>
|
|
<arg type="s" direction="in" name="file_template"/>
|
|
<arg type="a{sv}" direction="in" name="options"/>
|
|
<arg type="b" direction="out" name="success"/>
|
|
<arg type="s" direction="out" name="filename_used"/>
|
|
</method>
|
|
|
|
<!--
|
|
StopScreencast:
|
|
@success: whether stopping the recording was successful
|
|
|
|
Stop the recording started by either Screencast or ScreencastArea.
|
|
-->
|
|
<method name="StopScreencast">
|
|
<arg type="b" direction="out" name="success"/>
|
|
</method>
|
|
|
|
<signal name="Error">
|
|
<arg type="s" name="message"/>
|
|
</signal>
|
|
|
|
</interface>
|
|
</node>
|