Visionen vs. Realität, Teil II: Anstossen externer Programme

In VCR.NET 3.1 wird es die Möglichkeit geben, bei bestimmten Vorgängen zusätzlich externe Programme aufzurufen (Aufzeichnung beginnt / endet) oder Vorgänge ganz durch externe Programme zu ersetzen (Übergang in den Schlafzustand). Diese Erweiterung ist erst einmal experimentell. Eine richtige Lösung könnte noch weiter gehen, wie ich gleich an einem Beispiel erläutern möchte (im Forum gibt es dazu eine kurze Diskussion an Hand eines anderen Beispiels). Für 3.1 wird es bei dem einfachen Mechanismus bleiben, der auf der (Beta) Homepage vom VCR.NET Recording Service beschrieben ist. Ich plane allerdings, dass zumindest der Schlafzustand mit dem Ende der externen Programme synchronisiert wird – es wäre ja echt ärgerlich, wenn man gerade ein Demux angestossen hat und VCR.NET in den Schlafzustand übergeht: das kann nicht Sinn der Sache sein.

Ich hätte es am liebsten (das entspricht nicht ganz der Wahrheit, dazu gleich), wenn nach einer Aufzeichnung direkt ein Demux (ProjectX / PVAStrumento) losläuft, da ich alle Aufzeichnungen nachbearbeite. Die Nutzung der aktuellen 3.1 Beta Erweiterung hat einige gravierende Nachteile. Da ist zum einen die Synchronisation mit dem Schlafzustand, das hoffe ich noch in den Griff zu bekommen.

Dann wäre da noch die Möglichkeit, dass sofort eine weitere Aufzeichnung startet. Durch den gleichzeitig lesenden und schreibenen Zugriff auf die Festplatte könnte die Aufzeichnung durch den parallelen Demux Vorgang gestört werden. Eine mögliche Implmentierung in einer zukünftigen VCR.NET Version könnte etwa das externe Programm als eine Art Pseudo-Aufzeichnung einplanen, wobei die Länge empirisch ermittelt wird (ProjectX : xx Sekunden pro 1 GByte Aufzeichnung). VCR.NET könnte dann erkennen, dass eine folgende Aufzeichnung eventuell behindert wird und die Nachbearbeitung nach hinten schieben. Bei Sonderaufzeichnungen (Programmzeitschrift / Sendersuchlauf) wäre dann keine Nachbearbeitung notwendig.

Schön wäre auch zumindest eine Konfiguration pro Aufzeichnung, ob eine bestimmte Nachbearbeitung ausgeführt werden soll oder nicht. Vielleicht möchte ich bei einer 24 Stunden Aufzeichnung von 3SAT Konzerten die Nachbearbeitung doch lieber nach und nach durchführen. Oder ich weiß, dass das Demux bestimmter Sender wegen der hohen Bitrate oder der Vielzahl der Tonspuren besonders lange dauert und möchte die geschätzte Laufzeit überschreiben und und und.

Aber im Kern ist die Vision: pro Aufzeichnung können (wie auch immer VCR.NET bekannt gemachte, aber sicher durch den Anwender erweiterbare) Nachbearbeitungen definiert werden – für alle gibt es auch einen Default an/aus. Die Laufzeit wird dann abhängig von den Parametern (ausser Größe dürfte da nicht viel sein) der Aufzeichnung geschätzt und entsprechend sofort oder verzögert ausgeführt (Pech, wenn die Schätzung zu knapp gehalten ist, das muss natürlich geeignet gemeldet werden). Lustig werden dann Mehrkanalaufzeichnungen et al…

Ach ja, wie versprochen meine wirkliche Demux Vision, die aber für die 3.1 ziemlich sicher nix mehr wird: VCR.NET fungiert als FTP Server und beim Starten der Aufzeichung wird ProjectX parallel auf der Aufzeichnungsdatei gestartet. VCR.NET gauckelt dabei eine sehr große Datei vor, so dass ProjectX zumindest die TS Analyse und den Video Demux während der Aufzeichnung erledigt (die Systembelastung sollte minimal sein, ich habe hier normalerweise 300+ Frames pro Sekunde Demux, als mindestens einen Faktor 10 schnelleren Demux als Aufzeichnung). Ist die Demux Platte dann noch eine andere als die Aufzeichnungsplatte, sind alle folgenden Schritte (Ton, Videotext) in der Laufzeit eigentlich egal, da sie folgende Aufzeichnungen nicht mehr belasten können. Kurz nach dem Ende der Aufzeichnung steht dann alles zum Schneiden und Brennen bereit!

So long

Jochen

Speichere in deinen Favoriten diesen permalink.

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.