7   Configuration xposextool


7.1 Operation
7.2 Configuration xposextool
      7.2.1 Start without graphical user interface
      7.2.2 Start with graphical user interface
      7.2.3 Control by signals
      7.2.4 Printing state changes
      7.2.5 Command syntax
      7.2.6 Comments
      7.2.7 Variables
      7.2.8 Arithmetic expressions
      7.2.9 Pattern elements
      7.2.10 Configuration file
      7.2.11 Dialog box
      7.2.12 Miscellaneous statements
      7.2.13 Recording
      7.2.14 Playback
      7.2.15 Direct copy


7.1   Operation

The POSE technology is used for exactly and totally recording and later or simultaneous playback of X11 sessions or individual applications, optionally together with audio, video, or arbitrary binary data streams. The recording may be converted to video formats, too.

The stand-alone product X-POSE-X-RECORD or the product X-META-X with the POSE option are used for recording. For playback and conversion the separate product X-POSE-X-PLAY is used. The program xposextool - included with all three products - is used for configuration and control of all functions.

The X-META-X or X-POSE-X-RECORD proxy analyses the whole protocol traffic between the X Window clients and the server. A special X Window client, the program xposextool can request the protocol data, receive them and, for instance, store them into a file.

7.2   Configuration xposextool

The program xposextool is used to configure and control all functions. Here we describe the whole functionality, although it is restricted depending on the individual product:

  • xposextool from the X-META-X product with the POSE option allows to configure and control the recording functionality (7.2.13 Recording) only. Playback (7.2.14 Playback), direct copy (7.2.15 Direct copy), and video conversion (9.2.3 Conversion) are not available.
  • The same is true for xposextool from the X-POSE-X-RECORD product.
  • xposextool from the X-POSE-X-PLAY product allows to configure and control all functions. However, for recording an additional proxy from one of the products X-META-X or X-POSE-X-RECORD is needed.

For additional recording, copying, storing or playback of audio, video or binary data streams you would need the appropriate MULTIMEDIA options for the X-META-X or X-POSE-X-RECORD proxy and for X-POSE-X-PLAY.

In the following sections the term screen denotes the screen of the X-META-X or X-POSE-X-RECORD proxy, i.e. a meta screen in X-META-X nomenclature.

7.2.1   Start without graphical user interface

The command line mode of the xposextool program allows to control operations through a script, which can be associated, for instance, to a window manager action:

$XPOSEXRECORD_HOME/bin/xposextool -noGui \
    configuration_statement... 

The integration with browsers or file managers is much easier using the short form

$XPOSEXRECORD_HOME/bin/xposextool file_name... 

which lets xposextool replay the specified recording file(s) using default parameters.

7.2.2   Start with graphical user interface

The command line specifies the X Window display on which the dialog boxes of the configuration tool should be displayed, unless the environment variable $DISPLAY is set appropriately:

$XPOSEXRECORD_HOME/bin/xposeaxtool \
    [-display display_name] \
    [-geometry position_and_dimensions] \
    [-ownColormap] \
    [configuration_statement...] 

The argument -ownColormap lets xposextool use its own colormap for its user interface.

If there are configuration statements on the command line, they are read and displayed by the xposextool program.

7.2.3   Control by signals

xposextool may be controlled by the calling program by means of signals.

7.2.3.1   Start phase

The beginning communication has to be configured by one of the statements start record onSignal (7.2.13 Recording), start play onSignal (7.2.14 Playback), start directCopy onSignal (7.2.15 Direct copy), or start convert onSignal (9.2.3 Conversion).

The following communication takes place:

  • xposextool sends the SIGUSR2 signal to the calling process as soon as it is initialized, positioned to the start time (7.2.14.4 Start, termination and speed) and ready for immediate start of the recording, playback, direct copy or conversion process.
  • The calling program sends the SIGUSR2 signal to xposextool to start the process.
7.2.3.2   While recording

While running the following signals are recognized:

  • The signal SIGUSR2 lets xposextool continue the recording with the next file of a sequence of recording files (7.2.13.2 Destination).
  • The process (with the exception of direct copying (7.2.15 Direct copy)) is suspended by sending the SIGUSR1 signal. xposextool goes into the pause state without displaying the graphical user interface.
  • The process is resumed by sending the SIGUSR1 signal again, possibly with a new recording file (7.2.13.2 Destination).
7.2.3.3   Termination

The SIGTERM signal stops xposextool gracefully.

7.2.4   Printing state changes

Printing state changes has to be configured by one of the statements start record traceState (7.2.13 Recording), start play traceState (7.2.14 Playback), start directCopy traceState (7.2.15 Direct copy), or start convert traceState (9.2.3 Conversion).

For each state change the program xposextool prints on the standard output stream stdout one of the following lines:

state=initializing process_id=process_id timestamp
state=recording timestamp
state=new_snapshot file=file_name snapshot_number=number timestamp
state=playing speed=speed timestamp
state=back timestamp
state=forward timestamp
state=paused timestamp
state=speed_changed speed=speed timestamp
state=screenshot to=file_name timestamp
state=finished timestamp
state=exited 

While recording the timestamp denotes the absolute recorded time in ISO format:

time_absolute="2005-06-29 23:59:59" 

During playback the timestamp displays also the time elapsed since the last snapshot (7.2.13.3 Snapshots) in milliseconds:

time_absolute="2005-06-29 23:59:59.999" time_relative=67690 

The speed is printed as fractional factor (7.2.14.4 Start, termination and speed), like:

speed="22/1" 

7.2.5   Command syntax

When starting, the xposextool program reads configuration statements from the command line or from configuration files (7.2.10 Configuration file). The statement syntax is identical for both sources. Thus, the command

$XPOSEXRECORD_HOME/bin/xposextool \
    recordValues display $DISPLAY \
    playValues to $DISPLAY \
    convertValues display $DISPLAY 

equals any of the following commands

$XPOSEXRECORD_HOME/bin/xposextool $XPOSEXRECORD_ETC/xposextool.conf
$XPOSEXRECORD_HOME/bin/xposextool - < $XPOSEXRECORD_ETC/xposextool.conf 

if the file $XPOSEXRECORD_ETC/xposextool.conf contains the following lines:

# $XPOSEXRECORD_ETC/xposextool.conf
recordValues
    display $DISPLAY
playValues
    to $DISPLAY
convertValues
    display $DISPLAY 

This example demonstrates the default configuration, which is effective if xposextool is called without any arguments:

$XPOSEXRECORD_HOME/bin/xposextool 

The same configuration is described by the following lines, which show almost all configuration statements and their default values:

miscValues
    logDestination stderr
    logTypes none
    hotKey gui Shift Control
recordValues
    display $DISPLAY
    to record.pose
    takeNextFile off
    neverOverwrite on
    compression off
    minSnapShotIntervalSize 0
    maxSnapShotIntervalSize 0
    minSnapShotIntervalTime 0
    maxSnapShotIntervalTime 0
    globalTypes input output bell
    clients all
        types all
        screens all
    pointerMotionResolution 15
    timestampResolution 100
    maxTime 0s
    maxFileSize 0b
    maxNumberOfFiles 0
    encryptedTransmission off
playValues
    from record.pose
    sortFiles off
    screens all
        to $DISPLAY
            displayMode fullscreen
            startHidden on
            onTop on
            clipX 0 clipY 0 clipWidth 0 clipHeight 0
            displayX 0 displayY 0 displayWidth 0 displayHeight 0
            serverFonts off
            pointerZoom 1
            gammaCorrection red 1.0 green 1.0 blue 1.0
            types none +bell +output +pointer
            osd on osdX 0 osdY -0
            inputSwitch off
    startTime begin
    stopTime end
    playMode wait
    speed 1 1 asynchronous
    screenshotTo screenshot%n.ppm
    hotKey suspend Control Space
    hotKey back Control Left
    hotKey forward Control Right
    hotKey halfSpeed Control KP_Subtract
    hotKey doubleSpeed Control KP_Add
    hotKey maxSpeed Control KP_Multiply
    hotKey screenshot Control S
convertValues
    from record.pose
    display $DISPLAY
    to record.mpg
    encoder FFMPEG
    format MPEG1
    imageQuality 60
    ringBellWhenFinished on
    screen 0
        clipX 0 clipY 0 clipWidth 0 clipHeight 0
        displayX 0 displayY 0 displayWidth 0 displayHeight 0
        pointerZoom 1
        gammaCorrection red 1.0 green 1.0 blue 1.0
    types all
    startTime begin
    stopTime end 

This example also demonstrates that recording, playback, and conversion are very easy to configure - in spite of the great number of configuration options. This is the consequence of reasonable default values.

The following sections describe each configuration statement in detail. First, some general notes:

  • Words are separated by arbitrary white space characters. The line structure is irrelevant.
  • If a word contains white space characters, it has to be surrounded by double quote characters ". This special meaning of the double quote character is overridden by preceding it with a backslash character \.
  • Keywords are case-insensitive: the meanings of globalTypes and Globaltypes are identical.
  • Keywords are not reserved.
  • Most configuration statements consist of the name of a parameter and its new value. The name may be written with or without a directly following colon :.
  • Many statements are valid in the context of a convertValues (9.2.3 Conversion), miscValues (7.2.12 Miscellaneous statements), playValues (7.2.14 Playback), or recordValues (7.2.13 Recording) statement only. They are called sub-statements. There are also sub-sub-statements, and sub-sub-sub-statements corresponding to statement nesting. If one of these statements is used on a higher level, it specifies a default value for the lower level parameters.
  • In the case of multiple parameter definitions with the same name, only the last one is valid.

The following sections describe the configuration statements by a formal syntax using the following elements

  • keywords have special meanings.
  • variable_input depends on the configuration.
  • alternative_1|alternative_2: Alternatives are separated by a vertical bar.
  • [optional]: Optional parameters are surrounded by brackets.
  • parameter...: Repetition (one or more times) is denoted by the ellipsis.
  • {element}: Braces are used for grouping.:

Some of the configuration statements are described in chapters about individual product options of X-POSE-X-PLAY:

7.2.6   Comments

Comments start with a number symbol # and extend to the end of the line.

When reading and storing a configuration file the program collects all comments at the beginning of the file.

7.2.7   Variables

The environment variables are accessed like in a shell, for example:

playValues display $DISPLAY 

Variable assignments, however, follow a different syntax:

set variable_name value 

like in:

set POSEFILE $HOME/1.pose 

A variable name begins with a letter (including the underscore _) followed by letters or digits. Braces are used to separate the variable name in special situations:

set server1 remote:1.
playValues display ${server1}0 

7.2.8   Arithmetic expressions

Arithmetic expressions may contain the operators *, /, and % (modulus), + and - as well as variable references. They are surrounded by parentheses, for instance:

set width 1024
set zoomedWidth ($width / 2) 

7.2.9   Pattern elements

Some parameters may contain pattern elements which are substituted by current values at run-time.

The pattern elements are known from date(1) or strftime(3C) with the exception of the second (many substitutions depend on the selected locale):

Pattern element
Meaning
%%
same as %
%n
serial number of the file starting with 1
%a
abbreviated weekday name
%A
full weekday name
%b
abbreviated month name
%B
full month name
%c
locale's appropriate date and time representation
%C
century number [1,99]; single digits are preceded by 0
%d
day of month [1,31]; single digits are preceded by 0
%D
date as %m/%d/%y
%e
day of month [1,31]; single digits are preceded by a space
%h
abbreviated month name
%H
hour [0,23]; single digits are preceded by 0
%I
hour [1,12]; single digits are preceded by 0
%j
day number of year [1,366]; single digits are preceded by 0
%k
hour [0,23]; single digits are preceded by a blank
%l
hour [1,12]; single digits are preceded by a blank
%m
month number [1,12]; single digits are preceded by 0
%M
minute [00,59]
%p
locale's equivalent of either a.m. or p.m.
%r
appropriate time representation in 12-hour clock format with %p
%R
time as %H:%M
%S
seconds [00,61]
%t
insert a tab
%T
time as %H:%M:%S
%u
weekday as a decimal number [1,7], with 1 representing Sunday
%U
week number of year as a decimal number [00,53], with Sunday as the first day of week 1
%V
week number of the year as a decimal number [01,53], with Monday as the first day of the week
%w
weekday as a decimal number [0,6], with 0 representing Sunday
%W
week number of year as a decimal number [00,53], with Monday as the first day of week 1
%x
appropriate date representation
%X
appropriate time representation
%y
year within century [00,99]
%Y
year, including the century (for example 1993)
%Z
time zone name or abbreviation, or empty
%Ec
date and time representation in the alternate representation
%EC
name of the base year (period) in the alternate representation (for example 19)
%Ex
alternate date representation
%EX
alternate time representation
%Ey
offset from %EC (year only) in the alternate representation
%EY
full alternate year representation
%Od
day of the month using the alternate numeric symbols
%Oe
same as %Od
%OH
hour [0,23] using the alternate numeric symbols
%OI
hour [1,12] using the alternate numeric symbols
%Om
month using the alternate numeric symbols
%OM
minutes using the alternate numeric symbols
%OS
seconds using the alternate numeric symbols
%OU
week number of the year (Sunday as the first day of the week) using the alternate numeric symbols
%Ow
number of the weekday (0 for Sunday) using the alternate numeric symbols
%OW
week number of the year (Monday as the first day of the week) using the alternate numeric symbols
%Oy
year (offset from %C) in the alternate representation and using the alternate numeric symbols

7.2.10   Configuration file

The statement

source file_name|- 

or, even shorter

file_name|- 

is substituted by the contents of a configuration file. The file name - stands for the standard input stream. The file inclusions may be nested arbitrarily, but not cyclically.

The statement

stop 

terminates the interpretation of a configuration file before reaching the end of the input. The remaining contents are neither read in nor saved by the xposextool program.

7.2.11   Dialog box

When the program xposextool starts, it displays the dialog box, unless one of the statements start record (7.2.13 Recording), start play (7.2.14 Playback), start directCopy onSignal (7.2.15 Direct copy) or start convert (9.2.3 Conversion) forces an immediate action. During recording, playback or conversion the dialog box is not visible. However, it can be displayed at any time by pressing a hot key combination. The interrupted process may be resumed afterwards without any loss.

The dialog box is structured in several pages corresponding to the recordValues (7.2.13 Recording), playValues (7.2.14 Playback), convertValues (9.2.3 Conversion), and miscValues statements. At any time one page is displayed. Less important related parameters are grouped into individually expandable regions:

Minimized


The About page shows useful informations:

About


After clicking on a nonsensitive area, the dialog box may be moved by dragging the mouse.

The buttons in the lower left corner correspond to the individual start statements. In addition you may resume or stop an interrupted process or trigger a screenshot (7.2.14.5 Screenshot). The button on the right side terminates the program.

Command buttons


7.2.12   Miscellaneous statements

The statements

miscValues
miscellaneousValues 

introduce sub-statements, which specify general parameters.

7.2.12.1   Messages

The destination of error messages and warnings may be specified by the sub-statement

    logDestination -|stdout|stderr|syslog|file_name 

If file_name ends with .html or .htm, the messages are output in HTML format, else in plain text format. The default destination is the standard error output stream. Syntax error messages are printed there, too.

The sub-statement

    logTypes {[+|-]statistics|none}... 

configures additional output of statistical information as well as meta information (7.2.13.6 Miscellaneous sub-statements).

7.2.12.2   Dialog box

The sub-statement

    hotKey gui
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none] 

defines the hot key combination which causes the display of the dialog box. The default hot key combination is Shift Control.

The dialog box allows to specify all miscellaneous parameters and to load or save configuration files:

Miscellaneous values


7.2.13   Recording

The statement

start record [noGui] [onSignal] [ownColormap] [traceState] 

begins the recording immediately without displaying the dialog box. With noGui the dialog box does never appear, in the event of a termination condition (7.2.13.5 Termination) the program terminates. The parameter onSignal configures control by signals (7.2.3 Control by signals). The parameter ownColormap lets xposextool use its own colormap for its user interface. The parameter traceState lets the program xposextool print state changes on the standard output stream stdout (7.2.4 Printing state changes).

The statement

recordValues 

introduces sub-statements, which specify recording parameters.

7.2.13.1   Source

The sub-statement

    display display_name 

specifies the client connection (6.6 X Window client connection) of the X-META-X or X-POSE-X-RECORD proxy which displays the clients to be recorded. The value of the environment variable $DISPLAY is taken by default.

7.2.13.2   Destination

The sub-statement

    to file_name|file_with_pattern_elements|- 

specifies the destination of the recorded data, - stands for the standard output stream stdout, ~ for the home directory (default: record.pose).

If the statement contains only a file name without pattern elements (7.2.9 Pattern elements), the recording is terminated as soon as a termination condition (7.2.13.5 Termination) is reached, otherwise the file is closed and a new file, named according to the file name pattern, is started. The files may be replayed individually or in sequence.

The sub-statement

    takeNextFile {on|off} 

determines, whether a new recording file should be opened after reaching a termination condition (7.2.13.5 Termination) or by signal control (7.2.3.2 While recording), or not (by default). If the destination specification does not contain any pattern elements, the recording file is overwritten.

However, the sub-statement

    neverOverwrite {on|off} 

determines, whether an existing recording file may be overwritten or not (default).

The sub-statement

    compression {on|off} 

determines, whether the recorded data should be compressed by the program gzip or not (the default). The compression program may be configured by the environment variable $XPOSEX_COMPRESS in the xposextool shell script (2.2 Installation directories).

7.2.13.3   Snapshots

So that a single recorded file can be replayed without the preceding file, each file starts with a snapshot containing all relevant resources and data of the recorded X Window server. For fast positioning during playback (7.2.14.6 Miscellaneous sub-statements) additional snapshots may be inserted during recording. The sub-statements

    minSnapshotIntervalSize data_length[b|B]|{k|K}|{m|M}|{g|G}
    maxSnapshotIntervalSize data_length[b|B]|{k|K}|{m|M}|{g|G}
    minSnapshotIntervalTime period_of_time[s|S]|{m|M}|{h|H}|{d|D}
    maxSnapshotIntervalTime period_of_time[s|S]|{m|M}|{h|H}|{d|D} 

specify the minimum and maximum distances of snapshots, as data_length in Bytes, Kilobytes, Megabytes or Gigabytes or/and as period_of_time in seconds, minutes, hours or days. Snapshots are generated only if there is no recording activity, however, at latest before one of the maximum conditions becomes true. The default value 0 for all parameters disables additional snapshots

7.2.13.4   Scope and sort of the recording

The sub-statement

    client|clients {all|none
        |{[+|-]id resource_id}
        |{[+|-]name window_name}
        |{[+|-]button number}}... 

specifies the set of X Window clients which are recorded. Individual clients may be denoted in several ways:

  • With id the id of one of the clients resources is specified.
  • With name the name of one of its windows is specified.
  • button means that the client(s) are denoted by succeeding mouse clicks using the specified button.

Individual clients are included (+) in or excluded (-) from the set of recorded clients. By default, all current and future clients are recorded. This sub-statement includes sub-sub-statements, which further restrict the recording.

The sub-sub-statement

        screen|screens {all|none|{[+|-]screen_number}}... 

denotes the set of (meta) screens, on which the specified clients are recorded. By default, the clients are recorded on all screens.

The sub-sub-statement

        type|types {all|none|{[+|-]output}|{[+|-]bell}}... 

denotes the types of data to be recorded for the specified client(s) (by default, all types of data are recorded):

  • output stands for all X11 requests with visible effects. Besides the drawing requests this also includes window manipulating requests.
  • bell denotes the audible bell signal.

The sub-statement

    globalType|globalTypes {all|none|{[+|-]output}|{[+|-]bell}
        |{[+|-]input}}... 

specifies the types of data to be recorded for all clients (by default, output, bell, and input are recorded):

  • output stands for all X11 requests with visible effects. Besides the drawing requests this also includes window manipulating requests.
  • bell denotes the audible bell signal.
  • input stands for all input events: button and key clicks as well as pointer movements.
  • all stands for the complete X11 protocol traffic, including requests without any visible effects.

The sub-statement

    pointerMotionResolution samples_per_second 

specifies the sampling rate of for pointer movements (15 times per second by default).

The sub-statement

    timestampResolution number_per_second 

specifies the resolution of recorded timestamps (100 timestamps per second by default, corresponding to a resolution of 10ms).

7.2.13.5   Termination

The sub-statement

    maxTime period_of_time[s|S]|{m|M}|{h|H}|{d|D} 

terminates the recording after period_of_time in seconds, minutes, hours or days, or switches to a new file, depending on the destination containing pattern elements (7.2.13.2 Destination).

The sub-statement

    maxFileSize file_length[b|B]|{k|K}|{m|M}|{g|G} 

terminates the recording as soon as the file_length in Bytes, Kilobytes, Megabytes or Gigabytes is reached, or switches to a new file, depending on the destination containing pattern elements (7.2.13.2 Destination).

The sub-statement

    maxNumberOfFiles number_of_files 

determines that at any time only the specified number of files should be hold. The superfluous older files are removed automatically.

By default no termination conditions are defined.

7.2.13.6   Miscellaneous sub-statements

The sub-statements

    title text_with_pattern_elements
    subTitle text_with_pattern_elements
    description text_with_pattern_elements
    author text
    copyright text_with_pattern_elements 

specify meta informations which may be displayed during playback or direct copy in the window title, in the onscreen display (7.2.14.3 Scope and sort of the playback), or in the statistic output (7.2.12.1 Messages). Most of the meta informations may contain pattern elements (7.2.9 Pattern elements).

7.2.13.7   Dialog box

The dialog box allows to specify all recording parameters:

Recording values


7.2.14   Playback

Playback is allowed with the product X-POSE-X-PLAY only.

The statement

start play [noGui] [onSignal] [ownColormap] [traceState] 

begins the playback immediately without displaying the dialog box. With noGui the dialog box does never appear, in the event of a termination condition (7.2.14.4 Start, termination and speed) the program terminates. The parameter onSignal configures control by signals (7.2.3 Control by signals). The parameter ownColormap lets xposextool use its own colormap for its user interface.The parameter traceState lets the program xposextool print state changes on the standard output stream stdout (7.2.4 Printing state changes).

The statement

playValues 

introduces sub-statements, which specify playback parameters.

7.2.14.1   Source

The sub-statement

    from {file_name|-|file_name_pattern}... 

specifies the recording file(s) to be replayed, - stands for the standard input stream stdin, ~ for the home directory (default: record.pose).

The pattern elements of the file_name_pattern resemble the regular expressions of UNIX shells. These are not the patterns used for the recording parameters (7.2.9 Pattern elements). If there are multiple files, they are concatenated for playback.

The sub-statement

    sortFiles on|off 

determines whether the recording files should be sorted according to the real time and checked for consistency or not (by default).

You may also replay a file which is concurrently recorded. However, in most cases direct copy (7.2.15 Direct copy) is the preferred method.

The sub-statement

    screen|screens all|{[+]screen_number} 

determines the set of (meta) screens to be replayed. By default all screens are displayed. This sub-statement includes sub-sub-statements, which further specify the playback on a a particular display.

7.2.14.2   Destination

The sub-sub-statement

        to display_name 

defines the screen of an X Window server to be used for playback. The value of the environment variable $DISPLAY is taken by default.

The X Window server may differ from the server used during recording with regard to vendor and capabilities. However, it may happen, that the playback is impossible, for instance due to lack of color models (visuals). In order to make playback on different servers possible, the X-META-X and X-POSE-X-RECORD proxies allow to restrict such capabilities (6.11 Common resources and capabilities).

This sub-sub-statement may be configured multiple times and includes sub-sub-sub-statements, which further specify the playback of an individual screen.

7.2.14.3   Scope and sort of the playback

The sub-sub-sub-statement

            displayMode fullscreen|window|iconic 

further determines the playback destination:

  • With fullscreen the playback is displayed filling the whole screen(s). Unoccupied areas up to the screen border are black.
  • With window the playback is displayed in an X11 window, which may be positioned and minimized using the window manager.
  • icon is like window, but the window is showed as icon initially.

The sub-sub-sub-statement

            startHidden on|off 

determines whether the playback window should be hidden while positioning to the start time (7.2.14.4 Start, termination and speed) or not (default).

The sub-sub-sub-statement

            onTop on|off 

determines whether the playback window should be displayed unobscured on top of other windows (by default) or not.

            clipX horizontal_position_in_pixels
            clipY vertical_position_in_pixelns
            clipWidth width_in_pixels
            clipHeight height_in_pixels
            clipGeometry widthxheight
                [+horizontal_position+vertical_position] 

specify a rectangular clipped area of the screen to be replayed. The default value of 0 for all scalar parameters and 0x0+0+0 for clipGeometry, respectively, denote the whole screen.

The sub-sub-sub-statements

            displayX horizontal_position_in_pixels
            displayY vertical_position_in_pixels
            displayWidth width_in_pixels
            displayHeight height_in_pixels
            displayGeometry widthxheight
                [+horizontal_position+vertical_position] 

specify the rectangular area, in which the playback is displayed. Thus, width and height can be scaled independently. The default value of 0 for all scalar parameters and 0x0+0+0 for displayGeometry, respectively, denote unscaled display.

Every recording file contains the fonts used during the recording in form of bitmaps. For the potentially zoomed playback these bitmaps are scaled accordingly, which may yield an unattractive text display. The sub-sub-sub-statement

            serverFonts on|off 

determines whether the most fitting fonts of the displaying X Window server or the bitmaps of the recording file (default) are used for text display.

The sub-sub-sub-statement

            pointerZoom zoom_factor 

defines a zoom factor for all pointer images of a screen. The smoothing algorithm works best with a power of two as factor. The default value is 1. Some X Window servers clip or even distort large cursor images.

The sub-sub-sub-statement

            gammaCorrection [red factor] [green factor] [blue factor] 

changes the base colors of the playback according to the gamma function. The default value 1.0 for all parameters means no modification at all.

The sub-sub-sub-statement

            type|types {all|none|{[+|-]output}
                |{[+|-]bell}|{[+|-]pointer}
                |{[+|-]buttonClick}|{[+|-]buttonFeedback}
                |{[+|-]keyClick}|{[+|-]input}}... 

determines the types of data to be replayed from the specified screen (by default output, bell, and pointer are replayed):

  • output stands for all X11 requests with visible effects. Besides the drawing requests this also includes window manipulating requests.
  • bell denotes the audible bell signal.
  • pointer means the movements and the shapes of the mouse pointer.
  • buttonClick stands for the audible feedback of the mouse buttons.
  • With buttonFeedback for each click with one of the first three mouse buttons the mouse pointer briefly shows a symbol for the button pressed.
  • keyClick stands for the audible feedback of the keyboard.
  • input denotes all input events with the exception of pointer movements.

If only input events are specified, they are sent to the running session, as if they are actually input. Otherwise a window is opened (7.2.14.2 Destination) to display the output.

The sub-sub-sub-statement

            title text 

specifies a title for the playback window. The title specified for recording (7.2.13.6 Miscellaneous sub-statements) is set by default.

The sub-sub-sub-statements

            osd on|off
            osdX [+|-]horizontal_position_in_pixels
            osdY [+|-]vertical_position_in_pixels 

configure whether the on screen display should be shown (default in fullscreen mode only) as well as the position of the display (default: right upper corner).

7.2.14.4   Start, termination and speed

The sub-statements

    startTime begin [+period_of_time]
    startTime end [-period_of_time]
    startTime "date time"
    startTime time 

determine the start time of the playback (default: begin for the beginning of the first file). The date is specified in one of the formats DD.MM.JJJJ, MM/DD/JJJJ, and JJJJ-MM-DD, period_of_time and time are specified in the format hh:mm:ss. From the preceding snapshot (7.2.13.3 Snapshots) to the start time the recorded data is replayed asynchronously with maximum speed.

The sub-statements

    stopTime begin [+period_of_time]
    stopTime start [+period_of_time]
    stopTime end [-period_of_time]
    stopTime "date time"
    stopTime time 

determine the end time of the playback (default: end for the end of the last file). The date is specified in one of the formats DD.MM.JJJJ, MM/DD/JJJJ, and JJJJ-MM-DD, period_of_time and time are specified in the format hh:mm:ss.

The sub-statement

    playMode once|wait|loop 

determines the action at the end of the playback:

  • once lets the program xposextool terminate.
  • wait lets the program xposextool display the dialog box for additional user interaction. This is the default value.
  • loop repeats the playback infinitely; only after pressing the hot key combination the dialog box is displayed (7.2.13.7 Dialog box).

The sub-statements

    speed numerator/denominator [sync|synchronous|async|asynchronous]
    speed numerator denominator [sync|synchronous|async|asynchronous] 

specify the playback speed. Numerator and denominator determine the speed as fractional number in relation to the real time. The default values 1 and 1, respectively, mean playback in real time. The special value 0 for one of the parameters denotes playback at maximum speed.

The speed may be changed by pressing a hot key combination (7.2.14.6 Miscellaneous sub-statements), too.

If the synchronous playback is delayed, for example due to insufficient performance of the X Window server, an additional parameter determines, whether the speed should be increased temporarily to catch up with the real time (sync or synchronous, for instance to synchronize with an audio recording) or whether the speed should remain constant (async or asynchronous, default value).

7.2.14.5   Screenshot

Using the dialog box (7.2.12.2 Dialog box) or a hot key combination (7.2.14.6 Miscellaneous sub-statements) you may generate a file in PPM format containing screenshots of all displayed screens. The sub-statement

    screenshotTo file_name|file_name_pattern|- 

specifies the destination, - stands for the standard output stream stdout, ~ for the home directory. You may use pattern elements (7.2.9 Pattern elements) like in the default value screenshot%n.ppm.

7.2.14.6   Miscellaneous sub-statements

The sub-statements

    hotKey suspend
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none]
    hotKey back
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none]
    hotKey forward
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none]
    hotKey doubleSpeed
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none]
    hotKey maxSpeed
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none]
    hotKey halfSpeed
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none]
    hotKey hundredthSpeed
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none]
    hotKey thousandthSpeed
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none]
    hotKey screenshot
        {Shift|Lock|Control|Mod1|Mod2|Mod3|Mod4|Mod5|none}...
        [key|none] 

define the hot key combinations to control the playback without dialog box:

7.2.14.7   Dialog box

The dialog box allows to specify all playback parameters:

Play values


7.2.15   Direct copy

Direct copy is allowed with the product X-POSE-X-PLAY only.

The statement

start directCopy [noGui] [onSignal] [ownColormap] [traceState] 

begins the recording and the simultaneous playback on another X Window server immediately without displaying the dialog box. With noGui the dialog box does never appear, in the event of a termination condition the program terminates. The parameter onSignal configures control by signals (7.2.3 Control by signals). The parameter ownColormap lets xposextool use its own colormap for its user interface.The parameter traceState lets the program xposextool print state changes on the standard output stream stdout (7.2.4 Printing state changes).

The statements

recordValues 

and

playValues 

specify the parameters for recording (7.2.13 Recording) and playback (7.2.14 Playback). However, neither the recording parameters to, neverOverwrite, compression, minSnapshotIntervalSize, maxSnapshotIntervalSize, minSnapshotIntervalTime, maxSnapshotIntervalTime, timestampResolution, maxTime, maxFileSize, and maxNumberOfFiles nor the playback parameters from, startHidden, startTime, startOffset, length, playMode, and speed are used.

The option CONTROL of X-POSE-X-PLAY (10 X-POSE-X-PLAY Option CONTROL) allows to control the remote recorded X11 session using the local keyboard and pointer devices while direct copying.

One of the functionalities of the option MULTIMEDIA of X-POSE-X-PLAY (9 X-POSE-X-PLAY Option MULTIMEDIA) is the simultaneous and synchronous transfer of audio, video, or arbitrary binary data.

The option SECURE of X-POSE-X-PLAY (11 X-POSE-X-PLAY Option SECURE) encrypts both directions of the data stream between the recording proxy and the playing xposextool program.


-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch
X-POSE-X-RECORD
Manual
-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch
X-POSE-X-RECORD
Manual
-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch
X-POSE-X-RECORD
Manual
-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch
X-POSE-X-RECORD
Manual
-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch
X-POSE-X-RECORD
Manual
-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch
X-POSE-X-RECORD
Manual
-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch
X-POSE-X-RECORD
Manual
-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch
X-POSE-X-RECORD
Manual
-> Contents
-> Previous-> Home-> Next
-> Index
-> Deutsch

Copyright © 2006 X-Software GmbH
info@x-software.com
2006-06-12 18:17:21+1:00
-> Sitemap
-> X-Software