Aufnahme | Wiedergabe Konfigurationssprache

# Aufnahme

Zur Aufnahme verbindet sich das xposextool-Programm zu einem oder mehreren XmetaX- oder XposeXrecord-Proxys, weist jeden Proxy an, welche Art von Daten und welche X Window Clients von welchen Screens aufzuzeichnen sind, empfängt die aufgezeichneten Daten von den Proxys und speichert sie in einer oder mehreren Aufnahmedateien.

Die Anweisung

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

startet die Aufnahme sofort ohne die grafische Benutzeroberfläche anzuzeigen.

Ist noGui angegeben, erscheint das Dialogfeld nie, im Falle einer Abbruchbedingung (Beendigung) beendet sich das Programm. Anderenfalls wird die grafische Benutzeroberfläche angezeigt (Aufnahme). Der Parameter onSignal konfiguriert die Steuerung durch Signale (Steuerung durch Signale). Der Parameter ownColormap veranlaßt xposextool, zur Darstellung der Benutzeroberfläche eine eigene Colormap zu verwenden. Der Parameter traceState läßt das xposextool-Programm Statusänderungen auf dem Standard-Ausgabe-Strom ausgeben (Ausgabe von Statusänderungen).

Die Anweisung

    recordValues recordSettings

leitet Sub-Anweisungen ein, die die Aufnahmeparameter spezifizieren.

## Quelle

### Screens

Die Sub-Anweisung

        display Display-Bezeichnung
        fromDisplay|fromDisplays Display-Bezeichnung...

gibt die Client-Verbindung Client-Verbindungen (X Window Client-Verbindung) des der XmetaX- oder XposeXrecord-Proxys an, dessen deren X Window Clients aufzuzeichnen sind. Enthält die Display-Bezeichnung eine Screen-Nummer, wird nur der spezifizierte Screen aufgezeichnet, sonst werden alle Screens des X Window Proxys aufgezeichnet. Voreingestellt ist der Wert der Umgebungsvariable $DISPLAY.

Die Sub-Anweisung leitet Sub-Sub-Anweisungen ein, die Aufnahmeparameter für ein bestimmtes Display oder einen bestimmten Screen spezifizieren.

### Verbindung

Die Sub-Sub-Anweisung

        connectTimeout Zeitspanne

bestimmt die Zeitspanne (Zeitpunkte und Zeiträume), innerhalb der das xposextool-Programm versucht, eine Verbindung zu dem XmetaX- oder XposeXrecord-Proxy aufzubauen. Konnte die Verbindung innerhalb der Zeitspanne (voreingestellt: 20 Sekunden) nicht aufgebaut werden, werden die entsprechenden Screens nicht aufgezeichnet.

Die Sub-Sub-Anweisung

        offlineTimeout Zeitspanne

bestimmt die Zeitspanne (Zeitpunkte und Zeiträume), innerhalb der der XmetaX- oder XposeXrecord-Proxy auf X11-Anweisungen reagieren muß, bevor er als ausgefallen betrachtet wird. Der voreingestellte Wert beträgt 20 Sekunden.

Die Sub-Sub-Anweisung

        continueWhenOffline on|off

bestimmt, ob die Aufnahme fortgesetzt werden soll wenn einer der XmetaX- oder XposeXrecord-Proxys ausfällt oder nicht (voreingestellt).

### Kompression

Die Sub-Sub-Anweisung

        transmission {uncompressed|fastCompression|mediumCompression|strongCompression}

konfiguriert die Art der Kompression, die für die Kommunikation zwischen dem XmetaX- oder XposeXrecord-Proxy und dem xposextool-Programm verwendet wird. Die verschiedenen Parameter erlauben es, einen Kompromiss zwischen Kompressionsqualität und Ressourcennutzung zu finden (nach Voreinstellung wird die Kommunikation nicht komprimiert).

### Multimedia

Die Sub-Sub-Anweisung

            multimedia

leitet Sub-Sub-Sub-Anweisungen ein, die einzelne Multimedia-Operationen spezifizieren.

Die Sub-Sub-Sub-Anweisung

                record "Multimedia-Spezifikation"

definiert die Multimedia-Operation, die bei der Aufnahme Audio-, Video- oder binäre Datenströme aufnehmen soll. Mit der Voreinstellung "" wird nichts aufgezeichnet.

## Umfang und Eigenschaften der Aufzeichnung

Die Sub-Sub-Anweisung

            globalType|globalTypes type|types {all|none|{[+|-]output}|{[+|-]visible}|{[+|-]pointerImages}|{[+|-]bell}
                |{[+|-]input}|{[+|-]buttonHits}|{[+|-]pointerMovements}|{[+|-]keyHits}}...

bestimmt eine Liste (Listen) von (Gruppen von) Datentypen, die für den oder die spezifizierten Client(s) aufgezeichnet werden sollen (voreingestellt sind output und input):

output steht für alle X11-Anweisungen mit sichtbaren oder hörbaren Auswirkungen:

visible umfasst alle Zeichenanweisungen und auf Fenster bezogene Anweisungen,

pointerImages steht für die Anweisungen, die das Bild des Mauszeigers ändern,

bell bezeichnet das Audiosignal.

input steht für sämtliche Eingabeereignisse:

buttonHits bezeichnet Mausklicks,

pointerMovements steht für die Bewegungen des Mauszeigers,

keyhits bezeichnet Tastatur-Eingaben.

all steht für den gesamten X11-Protokollverkehr; dies beinhaltet auch Anweisungen, die keine sichtbare Auswirkungen haben.

Die Sub-Sub-Anweisung

            client|clients {all|none
                |{[+|-]id Ressourcenummer}
                |{[+|-]name Fenstername}
                |{[+|-]button Nummer}}...

bestimmt eine Liste (Listen) der X Window Clients, die aufzuzeichnen sind. Einzelne Clients können auf verschiedene Arten spezifiziert werden:

Mit id wird die Nummer einer Ressource des Clients angegeben.

Mit name wird der Name eines seiner Fensters angegeben.

button bedeutet, daß der oder die Clients durch folgende Mausklicks mit wählbarer Tastennummer bestimmt werden.

Voreingestellt ist, daß alle aktuellen und zukünftigen Clients aufgenommen werden. Diese Sub-Anweisung leitet Sub-Sub-Anweisungen ein, die die aufgenommenen Daten weiter einschränken.

Die Sub-Sub-Anweisung

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

bestimmt eine Liste (Listen) der (Meta-)Screens, von denen der oder die spezifizierten Client(s) aufgezeichnet werden sollen. Voreingestellt sind sämtliche Screens.

Die Sub-Sub-Anweisung

            pointerMotionResolution Samples_pro_Sekunde

spezifiziert, wie oft pro Sekunde die Position des Mauszeigers ermittelt wird (voreingestellt ist der Wert 15).

Die Sub-Sub-Anweisung

            timestampResolution Anzahl_pro_Sekunde

spezifiziert die Auflösung der aufgezeichneten Zeitstempel (voreingestellt ist der Wert 100 entsprechend einer Auflösung von 10ms).

Die Sub-Sub-Anweisung

            showSnapshotPointerImage {on|off}

bestimmt, ob beim Schreiben eines Snapshots (Snapshots) ein "beschäftigt"-Mauszeigerbild gezeigt werden soll (voreingestellt) oder nicht.

## Ziel

### Aufnahmedateien

Die Sub-Anweisung

        to toFile|toFiles Dateiname|-

spezifiziert das Ziel der Aufnahme, - steht für den Standard-Ausgabe-Strom, ~ für das Heimatverzeichnis (voreingestellt: record.pose). Der Dateiname kann Musterelemente (Musterelemente) enthalten wie das voreingestellte Ziel ~/%Y-%m-%d_%H:%M:%S.pose, das einen ISO-ähnlichen Zeitstempel spezifziert.

Jede Aufnahmedatei beginnt mit einigen menschenlesbaren Zeilen an Meta-Daten, die mit einem der folgenden Kommandos extrahiert werden können:

    sed '/^$/q' file_name
    head -20 file_name

Wird nur ein Dateiname ohne Musterelemente (Musterelemente) angegeben, wird die Aufnahme bei Erreichen einer Abbruchbedingung (Beendigung) beendet, anderenfalls wird die Datei geschlossen und eine neue Datei mit einem Namen entsprechend dem Muster begonnen.

Die Sub-Anweisung

        takeNextFile {on|off}

bestimmt, ob nach dem Erreichen einer Abbruchbedingung (Beendigung) oder durch Signalsteuerung (Zur Laufzeit) jeweils eine neue Aufnahmedatei begonnen werden soll oder nicht (voreingestellt). Enthält die Zielspezifikation keine Musterelemente, wird die Aufnahmedatei überschrieben.

Normalerweise wird nur eine Aufnahmedatei erzeugt. Allerdings weisen die verschiedenen Formen der Anweisung newFiles das xposextool-Programm an, mehrere Dateien zu schreiben, die einzeln oder sequentiell abgespielt werden können.

Die Sub-Anweisung

        newFiles {{exactlyAfter|earliestAfter|latestAfter} Zeitraum}...

bestimmt, daß die Aufnahme mit einer neuen Datei fortgesetzt werden soll, exakt dann, frühestens oder spätestens, wenn der spezifizierte Zeitraum (Zeitpunkte und Zeiträume) abgelaufen ist. Die earliestAfter- und latestAfter-Spezifikationen, die kombiniert werden können, um ein Zeitintervall zu definieren, erlauben es dem xposextool-Programm, den Dateiwechsel in "ruhigere Zeiten" zu verschieben. Der voreingestellte Wert von "0 ms" für alle Parameter verhindert den Dateiwechsel.

Die Sub-Anweisung

        newFiles {onTheQuarterHour|onTheHour|onTheDay}

läßt das xposextool-Programm exakt zum spezifizierten absoluten Zeitpunkt zu einer neuen Datei wechseln, also zum Beispiel um 00:00, 00:15, 00:30, 00:45, 01:00, ... für onTheQuarterHour oder jeden Tag um 00:00 für onTheDay.

Die Sub-Anweisung

        newFiles {{exactlyAfter|earliestAfter|latestAfter} Dateigröße}...

bestimmt, daß die Aufnahme mit einer neuen Datei fortgesetzt werden soll, exakt dann, frühestens oder spätestens, wenn die Größe der Aufnahmedatei die spezifizierte Dateigröße (Dateigrößen) erreicht hat. Die earliestAfter- und latestAfter-Spezifikationen, die kombiniert werden können, um ein Größenintervall zu definieren, erlauben es dem xposextool-Programm, den Dateiwechsel in "ruhigere Zeiten" zu verschieben. Der voreingestellte Wert von "0 bytes" für alle Parameter verhindert den Dateiwechsel.

Die Sub-Anweisung

        newFiles afterEvery Anzahl_der_Snapshots snapshots

läßt das xposextool-Programm zu einer neuen Datei wechseln, wenn die spezifizierte Anzahl von Snapshots (Snapshots) geschrieben sind. Allerdings wird der Snapshot, der den Dateiwechsel bewirkt, nicht an das Ende der alten Datei geschrieben, sondern er wird der beginnende Snapshot der neuen Datei. Da jede einzelne Aufnahmedatei mit einem Snapshot beginnt, ist die Anzahl_der_Snapshots vernünftigerweise mindestens 2, während der voreingestellte Wert von 0 den Dateiwechsel verhindert.

Die Sub-Anweisung

        neverOverwrite overwriteProtection {on|off}

bestimmt, ob eine bereits bestehende Aufnahmedatei überschrieben werden kann oder nicht (Voreinstellung).

Die Sub-Anweisung

        maxNumberOfFiles keepNumberOfFiles Anzahl_der_Dateien

bestimmt, daß zu jedem Zeitpunkt nur die spezifizierte Anzahl von Dateien gehalten werden sollen. Überschüssige, ältere, Dateien werden automatisch gelöscht. Der voreingestellte Wert von 0 bewirkt, daß keine Dateien gelöscht werden.

### Snapshots

Damit eine einzelne Aufnahmedatei auch ohne die vorhergehende abgespielt werden kann, beginnt jede Datei mit einem Snapshot, der alle für die Aufzeichnung relevanten Ressourcen und Daten des aufgezeichneten X Window Servers enthält. Um die schnelle Positionierung bei der Wiedergabe (Tastenkombinationen) zu ermöglichen, können bei der Aufnahme zusätzliche Snapshots in die Datei eingefügt werden.

Die Sub-Anweisungen

        minSnapshotIntervalSize Datenmenge[b|B]|{k|K}|{m|M}|{g|G}
        maxSnapshotIntervalSize Datenmenge[b|B]|{k|K}|{m|M}|{g|G}
        minSnapshotIntervalTime Zeitspanne
        maxSnapshotIntervalTime Zeitspanne

bestimmen den minimalen und den maximalen Abstand von Snapshots, und zwar als Datenmenge in der Aufnahmedatei in Bytes, Kilobytes, MegaBytes oder Gigabytes oder/und als Zeitspanne (Zeitpunkte und Zeiträume). Snapshots werden nur dann geschrieben, wenn gerade nicht aufgezeichnet wird, spätestens jedoch wenn eine der Maximum-Bedingungen wahr wird. Der voreingestellte Wert 0 für alle Parameter verhindert zusätzliche Snapshots.

Die Sub-Anweisung

        insertSnapshots {{exactlyAfter|earliestAfter|latestAfter} Zeitraum}...

bestimmt, daß ein Snapshot geschrieben werden soll, exakt dann, frühestens oder spätestens, wenn der spezifizierte Zeitraum (Zeitpunkte und Zeiträume) abgelaufen ist. Die earliestAfter- und latestAfter-Spezifikationen, die kombiniert werden können, um ein Zeitintervall zu definieren, erlauben es dem xposextool-Programm, das Schreiben des Snapshots in "ruhigere Zeiten" zu verschieben. Nach Voreinstellung werden Snapshots earliestAfter "60 min" geschrieben.

Die Sub-Anweisung

        insertSnapshots {{exactlyAfter|earliestAfter|latestAfter} Dateigröße}...

bestimmt, daß ein Snapshot geschrieben werden soll, exakt dann, frühestens oder spätestens, wenn die Größe der Aufnahmedatei die spezifizierte Dateigröße (Dateigrößen) erreicht hat. Die earliestAfter- und latestAfter-Spezifikationen, die kombiniert werden können, um ein Größenintervall zu definieren, erlauben es dem xposextool-Programm, das Schreiben des Snapshots in "ruhigere Zeiten" zu verschieben. Der voreingestellte Wert von "0 bytes" für alle Parameter verhindert das Schreiben zusätzlicher Snapshots wegen Dateigröße.

### Kompression

Die Sub-Anweisung

        compression {on|off}

bestimmt, ob die Aufzeichnungsdaten mittels des Programms gzip komprimiert werden sollen oder nicht (Voreinstellung).

Die Sub-Anweisung

        encoding {uncompressed|fastCompression|mediumCompression|strongCompression}

konfiguriert die Art der Kompression, die beim Schreiben von Aufnahmedateien verwendet wird. Die verschiedenen Parameter erlauben es, einen Kompromiss zwischen Kompressionsqualität und Ressourcennutzung zu finden (nach Voreinstellung werden Aufnahmedateien nicht komprimiert).

### Meta-Daten

Die Sub-Anweisungen

        title Text_mit_Musterelementen
        subTitle Text_mit_Musterelementen
        description Text_mit_Musterelementen
        keywords Text_mit_Musterelementen
        author Text
        copyright Text_mit_Musterelementen

spezifizieren Meta-Informationen, die bei der Wiedergabe im Onscreen-Display (Anzeige) oder in der Statistikausgabe (Meldungen) angezeigt werden können. Die meisten Meta-Informationen können Musterelemente (Musterelemente) enthalten.

## Beendigung

Die Sub-Anweisung

        maxTime Zeitspanne

bricht die Aufnahme nach der Zeitspanne (Zeitpunkte und Zeiträume) ab oder beginnt eine neue Datei, je nachdem ob als Ziel nur ein Dateiname oder ein Dateinamenmuster angegeben wurde (Ziel).

Die Sub-Anweisung

        maxFileSize Dateilänge[b|B]|{k|K}|{m|M}|{g|G}

bricht die Aufnahme ab, sobald die Dateilänge in Bytes, Kilobytes, MegaBytes oder Gigabytes erreicht ist, oder beginnt eine neue Datei, je nachdem ob als Ziel nur ein Dateiname oder ein Dateinamenmuster angegeben wurde (Ziel).

Als Voreinstellung sind keine Abbruchbedingungen definiert.

Die Sub-Anweisung

        terminate [exactlyAfter] Zeitraum

bestimmt, daß die gesamte Aufnahme exakt dann beendet werden soll, wenn der spezifizierte Zeitraum (Zeitpunkte und Zeiträume) abgelaufen ist. Der voreingestellte Wert von "0 ms" bedeutet, daß die Aufnahme nicht aufgrund Zeit beendet wird.

Die Sub-Anweisung

        terminate [exactlyAfter] Dateigröße

bestimmt, daß die gesamte Aufnahme exakt dann beendet werden soll, wenn die Gesamtgröße aller Aufnahmedateien die spezifizierte Dateigröße (Dateigrößen) erreicht hat. Der voreingestellte Wert von "0 bytes" bedeutet, daß die Aufnahme nicht aufgrund Dateigröße abgebrochen wird.

Nach oben
Wiedergabe
Konfigurationssprache

Copyright © 2021 X-Software GmbH
info@x-software.com