> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/german/function-blocks/input-output/outputs-exports/record-video.md).

# Record Video

Dieser Funktionsblock speichert eingehende Bildframes in einer Videodatei. Du kannst die Aufnahme mit einem booleschen Trigger starten/stoppen oder die eingebaute Spacebar-Auslösung verwenden. Es gibt mehrere Qualitätsmodi, einschließlich einer hochkomprimierenden Option, die ffmpeg verwendet, falls installiert.

## 📥 Eingänge <a href="#inputs" id="inputs"></a>

`Frame` Die Eingangsbilder (Frames), die aufgezeichnet werden sollen.

`Record` Boolescher Steuerwert zum Starten/Stoppen der Aufnahme (abhängig vom gewählten Auslösemodus verwendet).

`Folder Path` Der Ordner, in dem die aufgezeichneten Videos gespeichert werden.

`File Name (no extension)` Optionaler Dateiname-Basis. Wird dieses Feld leer gelassen, wird ein Zeitstempel verwendet.

## 📤 Ausgänge <a href="#outputs" id="outputs"></a>

Dieser Funktionsblock liefert keine Ausgänge.

## 🕹️ Steuerungen <a href="#controls" id="controls"></a>

`Video Quality` Wähle zwischen Qualitätsmodi:

* `Compressed` kleinere Dateien, schnell.
* `High Quality` weniger Kompression, bessere Bildqualität.
* `High-Compress(requires ffmpeg)` beste Kompression, erfordert aber ffmpeg auf dem System.

`Trigger Mode` Wähle, wie die Aufnahme gestartet/gestoppt wird:

* `Spacebar` Drücke die Leertaste zum Umschalten Start/Stop (erfordert ggf. Verfügbarkeit eines Keyboard-Hooks auf deinem OS).
* `Continuous` TRUE starten, FALSE stoppen.
* `Once` Ein ansteigendes TRUE startet die Aufnahme, ein weiteres TRUE stoppt und speichert.

`Recording` LED-Anzeige, die zeigt, ob gerade aufgenommen wird.

## 🎯 Hauptfunktionen <a href="#features" id="features"></a>

* Start/Stop der Aufnahme mit drei Auslösemodi (Spacebar, Continuous, Once).
* Mehrere Qualitätsmodi, einschließlich einer optionalen ffmpeg-basierten Hochkompression.
* Automatische Auswahl verfügbarer Video-Codecs und Container für bessere Portabilität.
* Verhindert Öffnen der Videodatei während der Aufnahme (um Datei-Konflikte zu vermeiden).
* Hintergrundkonvertierung für den High-Compress-Modus, sodass die Kompression die Echtzeitaufnahme nicht blockiert (erfordert ffmpeg).

## 📝 Verwendung <a href="#usage" id="usage"></a>

1. Versorge das Feld `Frame` mit Bildframes (z. B. von `Camera USB`, `Camera IP (ONVIF)` oder `Stream Reader`).
2. Lege den `Folder Path` fest, in dem die Videos gespeichert werden sollen.
3. Optional: Trage einen `File Name (no extension)` ein oder lasse das Feld leer, damit ein Zeitstempel verwendet wird.
4. Wähle die gewünschte `Video Quality`. Für kleinste Dateien und höchste Kompression wähle den High-Compress-Modus und stelle sicher, dass ffmpeg installiert ist.
5. Wähle den `Trigger Mode`:
   * Für schnelle Tastatursteuerung nutze `Spacebar` (funktioniert, wenn vom OS erlaubt).
   * Für programmatische Steuerung nutze `Continuous` oder `Once` und speise boolesche Werte in `Record` ein.
6. Starte die Aufnahme gemäß dem gewählten Auslösemodus. Die `Recording`-LED leuchtet während der Aufnahme.
7. Stoppe die Aufnahme und lasse den Block die Videodatei finalisieren. Wenn High-Compress gewählt wurde, kann die finale Kompression im Hintergrund laufen.

## 📊 Verhalten während der Ausführung <a href="#evaluation" id="evaluation"></a>

* Während der Aufnahme werden eingehende Frames aus `Frame` an die offene Videodatei angehängt.
* Beim Stoppen wird die Datei geschlossen. Falls der High-Compress-Modus gewählt wurde und ffmpeg vorhanden ist, kann eine optionale Hintergrundkonvertierung gestartet werden, um eine kleinere, hochkomprimierte Datei zu erzeugen.
* Wenn der Spacebar-Trigger nicht verfügbar ist (z. B. bei manchen Linux-Setups ohne Root-Rechte), warnt der Block und du kannst stattdessen die Modi `Continuous` oder `Once` verwenden.

## 💡 Tipps und Tricks <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Um von einer lokalen Kamera aufzuzeichnen, verbinde `Camera USB` oder `Camera USB External` mit dem Eingang `Frame`.
* Für Netzwerk-Kameras nutze `Camera IP (ONVIF)` oder `Stream Reader` als Quelle für ein stabileres Hintergrund-Frame-Fetching.
* Zeige Frames live an, indem du dieselbe Quelle parallel an den `Show Image`-Block sendest.
* Speichere einzelne Frames zur Inspektion parallel mit `Image Logger` oder `Image Write`, während der Block das Video aufzeichnet.
* Starte die Aufnahme automatisch, wenn etwas Wichtiges erscheint, indem du Erkennungsblöcke (z. B. `Object Detection` oder `Mask Detection`) mit einer Logik verbindest, die das `Record`-Eingangssignal steuert.
* Verwende `Keyboard/Barcode Reader`, wenn du komplexere Tastatur- oder externe Eingaben als Trigger über das `Record`-Eingangssignal brauchst.
* Wenn du niedrigen Speicherbedarf bei guter Qualität möchtest, wähle `High-Compress(requires ffmpeg)` und installiere ffmpeg im System-PATH.

## 🛠️ Fehlersuche <a href="#troubleshooting" id="troubleshooting"></a>

* Spacebar-Trigger funktioniert unter Linux nicht: Starte Studio mit erhöhten Rechten (oder verwende `Continuous`/`Once`).
* Kompression nicht verfügbar: Stelle sicher, dass ffmpeg installiert und im System-PATH zugänglich ist, um den High-Compress-Modus zu aktivieren. Fehlt ffmpeg, fällt der Block auf einen nicht-ffmpeg-Modus zurück und warnt dich.
* Datei in Verwendung während der Aufnahme: Die Videodatei kann während der Aufnahme nicht von anderen Anwendungen geöffnet werden. Warte, bis die Aufnahme beendet ist.
* Keine Frames gespeichert: Überprüfe, ob die Quelle am Feld `Frame` gültige Bilder liefert (Voransicht mit `Show Image` kann helfen).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.augelab.com/german/function-blocks/input-output/outputs-exports/record-video.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
