File Meta Sink

Schreibt einen Datenstrom zusammen mit Stream-Tags, Abtastrate und Metadaten in eine Datei.

1. Beschreibung des Blocks

Der File Meta Sink-Block schreibt einen Datenstrom in eine Datei und speichert zusätzlich Metadaten (Abtastrate, Datentyp, Zeitstempel, Stream-Tags) entweder in einer separaten .hdr-Header-Datei oder direkt eingebettet in die Nutzdatendatei. Anders als der einfache Vector Sink bzw. File Sink bleiben damit auch Änderungen der Abtastrate zur Laufzeit sowie beliebige Stream-Tags nachvollziehbar rekonstruierbar.

File Meta Sink Block

2. Technischer Einsatz

Der File Meta Sink eignet sich überall dort, wo Aufnahmen später wieder exakt mit ihren Ursprungsparametern eingelesen werden müssen — z. B. um IQ-Aufzeichnungen von einem SDR-Empfänger für spätere Offline-Verarbeitung zu archivieren, oder um Stream-Tags (z. B. Paketgrenzen, Trigger-Marken) zusammen mit den Rohdaten zu sichern. Das zugehörige Gegenstück beim Einlesen ist der File Meta Source-Block, der Header und Tags automatisch wieder rekonstruiert.

3. Parameter und Dimensionierung

Parameter Typ/Einheit Bedeutung Dimensionierungshinweis
file Pfad Zieldatei für die Nutzdaten bei Detached: On wird zusätzlich eine .hdr-Datei angelegt
samp_rate Hz Abtastrate, die im Header hinterlegt wird muss der tatsächlichen Rate der eingehenden Daten entsprechen
Relative Rate Change float Faktor, um den sich die Rate ändert, falls sie zur Laufzeit über Tags aktualisiert wird i. d. R. 1, wenn die Rate konstant bleibt
Max Seg. Size Bytes Maximale Segmentgröße, bevor ein neuer Metadaten-Header geschrieben wird größere Werte reduzieren Overhead, kleinere erlauben feinere Segmentierung
Extra Dict. PMT-Dictionary Zusätzliche, frei definierbare Metadaten (z. B. Geräte-ID) optional, wird einmalig in den Header geschrieben
Detached Bool Header getrennt (.hdr-Datei) oder eingebettet in die Datendatei „Detached: On" erleichtert das Parsen der reinen Nutzdaten mit externen Tools
Unbuffered Bool Ob Daten sofort ungepuffert geschrieben werden „On" für latenzkritische Mitschnitte, kostet aber Performance

4. Ein- und Ausgänge

Ein-/Ausgang Typ
Eingang beliebiger Stream-Typ (Complex, Float, Int, Short, Byte)
Ausgang keiner (Senke)

5. Weitere wichtige Aspekte

Stream-Tags: Alle an den Eingangsstrom angehängten Tags (z. B. über einen Tag Share- oder Tags Strobe-Block erzeugt) werden mit im Metadaten-Header gespeichert und können beim Wiedereinlesen ausgewertet werden.

Verwandter Block: File Meta Source zum Einlesen der so erzeugten Dateien inklusive Header und Tags.

Video-Tutorial

Eine ausführliche Einführung in den File Meta Sink Block von Paul Otto (github.com/potto216):

GNURadio File Meta Sink Tutorial — Overview