Über den Tod des VCR.NET Recording Managers

Leise und einsam stribt der VCR.NET Recording Manager. Aber zumindest in einem Punkt bleibt er bestehen: das Symbol im Windows System Tray wird es weiterhin geben. Über dieses kann dann unter anderem die VCR.NET 3.0ff Web Anwendung im Browser aufgerufen werden – eventuell nur die Startseite, vielleicht aber wie heute auch ein Kontextmenü mit gezielten Sprüngen in die Anwendung etwa zum Anlegen eines neuen Auftrags über EPG (jetzt: Programmzeitschrift) oder der Liste der geplanten Aufzeichnungen. Ich beschreibe im Folgenden mal die Soll-Situation – ich habe hier noch gar nichts gemacht und hoffe, dass sich alles auch so realisieren läßt (wobei kritisch eigentlich nur das mit der Installation ist).

Der VCR.NET Connection Manager erhält eine eigene Installation – er wird aber automatisch bei einer Installation des VCR.NET Recording Service mit installiert. Erst einmal kann eine beliebige Anzahl von Rechnern mit dem VCR.NET Recording Service konfiguriert werden – jeweils mit Rechnername und dem TCP/IP Port der Web Anwendung. Für jeden so konfigurierten Rechner erscheint das bekannte Symbol im System Tray – es wird bei mehr als einem VCR.NET Server jeweils eine Nummer in das Icon eingeblendet. Im Kontextmenü (wo der Name des Rechners auch erscheint) kann dann gezielt auf die Web Anwendung dieses VCR.NET zugegriffen werden. Die Farbe des Symbols zeigt dann wie gewohnt den Zustand des einen Rechners an. Ich denke zwar nicht, dass viele mehr als einen VCR.NET Server im Netz haben, aber es reicht ja, wenn einer das hat – in diesem Fall bin ich das!

Läuft der Connection Manager auf dem selben Rechner wie der VCR.NET Recording Service, dann können auch die bekannten Überwachungfunktionalitäten aktiviert werden. Dazu gehört die Warnung vor einem Herunterfahren des Rechners und vor allem der Übergang in den Schlafzustand, wenn noch ein Anwender lokal angemeldet ist.

Das Ziel ist natürlich, dass Connection Manager und Web Anwendung zusammen den VCR.NET Recording Manager vollständig ersetzen. Für Anwender mit mehr als einem VCR.NET Recording Service Rechner soll die Überwachung von zwei Servern ermöglicht werden – das geht heute nur durch mühsames Umschalten zwischen der Konfiguration des Recording Managers. Insbesondere kann der Connection Manager separat installiert werden – heute geht es natürlich auch, aber zumindest ist dann immer der Windows Dienst mitinstalliert, was nicht wirklich sinnvoll ist.

Ich bin mal gespannt, ob das so funktioniert und nutzbar ist!

Jochen

Sprachverwirrung…

Auch wenn es grundsätzlich möglich ist so ist es doch nicht ganz trivial, eine ASP.NET 2.0 Web Anwendung mehrspraching zu pflegen. Insbesondere macht die Aktivierung der Mehrsprachigkeit (dabei werden statische Texte als Ressourcen ausgelagert, die dann in verschiedenen Varianten gepflegt werden können) erst Sinn, wenn die Seiten der Anwendung stabil sind. Wie in dem Artikel zur nächsten Version von VCR.NET beschrieben wird diese Stabilität für VCR.NET 3.0 definitiv noch nicht gegeben sein.

Die Web Anwendung und damit die zentrale Benutzerschnittstelle von VCR.NET 3.0 wird deutsch sein. Punkt. Frühestens mit der 3.1 wird es eine englische Oberfläche und damit zumindest potentiell die Unterstützung für weitere Sprachen geben. In diesem Zusammenhang kann man dann auch über die Personalisierung der Oberfläche über Themes nachdenken.

Ich hoffe, dass ich damit niemanden wirklich treffe. Meines eigenen Wissens nach sind die meisten VCR.NET Anwender der deutschen Sprache ausreichend mächtig.

Sorry schon mal an die Anderen!

Jochen

VCR.NET 3.0 – und wie geht es weiter?

Wie üblich (zumindest bei meinen Hobby-Projekten) haben größere Änderungen Nachwirkungen auf die weiteren Versionen. Im Falle von VCR.NET 3.0 wurden wieder einige Konzepte neu eingeführt, die erst einmal im Wesentlichen funktional implementiert sind. Für die nächste Version 3.1 ist schon einmal locker geplant, zumindest die wichtigsten Neuerungen weiter auszubauen.

Zuerst einmal verschwindet der VCR.NET Recording Manager fast (dazu später mehr) vollständig und wird durch eine Web Anwendung ersetzt, die in einem Browser läuft – getestet erst einmal nur mit dem Internet Explorer 7. Das ist soweit auch fertiggestellt und funktioniert in vielen Bereichen auch wesentlich performanter als über die alte .NET (Windows) Anwendung. Natürlich ändert sich die Bedienung und an einigen Stellen wird es ungewohnt und hakelig. Hier ist das primäre Ziel von VCR.NET 3.1 eine Oberfläche zu schaffen, die sowohl ein Neueinsteiger schnell erlernen als auch ein Experte effizient nutzen kann. Dazu kommt noch die optische Aufbereitung – im Moment ist alles praktisch nur Text und ein bißchen graphischer Pepp mit Symbolen und Hintergrundgraphiken macht die Nutzung der Web Anwendung sicher angenehmer.

Durch den Einsatz von DVB.NET Geräteprofilen kann der VCR.NET Recording Service nun mehrere DVB Karten gleichzeitig nutzen. In der 3.0 wird allerdings der Anwender entscheiden müssen, welche Aufzeichnungen über welche Karten abgearbeitet werden sollen. Ich stelle mir vor, dass die 3.1 hier eine erste Unterstützung für eine automatische Wahl bieten kann. Ganz trivial ist das aber nicht, es sei denn, man hat zwei völlig gleichwertige Karten. Einfach könnte man sich noch vorstellen, dass zwei gleichwertige Karten jeweils mit und ohne CI/CAM vorhanden sind und PayTV Aufzeichnungen immer an die Karte mit Entschlüsselung geleitet werden. Bei inhomogener Hardware ist das allerdings schon kniffeliger – zumindest was Konfiguration und Algorithmen angeht. Hat jemand zum Beispiel eine DVB-S und eine DVB-T Karte, so will er vielleicht bevorzugt Aufzeichnungen über DVB-S vornehmen und die DVB-T Hardware sozusagen als Backup nutzen. Was aber, wenn an einer solchen Backup Situation sichergestellt werden soll, dass der Kinofilm in Erstaustrahlung im ZDF auf Grund der besseren Qualität über DVB-S aufzuzeichnen ist?

Mehrere Geräteprofile

Noch nicht so recht von Erfolg gekrönt sind meine Versuch, über das VLC 0.8.6 ActiveX Control TimeShift und Live Betrachtung von Aufzeichnungen zu integrieren. Es geht, aber… Neben technischen Problemen wie der Instabilität des Controls (vermutlich starte und beende ich es noch nicht so ganz richtig) gibt es auch logistische Probleme. So sind in der 3.0 beide Modi an laufende Aufzeichnungen gebunden. Betrachte ich etwas über TimeShift eine Aufzeichnung, so endet diese erst einmal an dem Punkt, an dem das TimeShift gestartet wurde. Normalerweise setzt die Anzeige dann mit einem kurzen Ruckler wieder auf, allerdings nicht, wenn die Aufzeichnung bereits beendet ist. Daher ist TimeShift über VCR.NET 3.0 erst einmal mehr ein Preview als eine echt nutzbare Funktionalität.

Laufende Aufzeichnung

Bis später

Jochen

Mühsam ernährt sich das Eichhörnchen…

… aber zumindest irgendwo Licht am Ende des Tunnels!

Nun gut, wie sicher jeder, der die Entwicklung von VCR.NET 3.0 verfolgt, bemerkt hat, gab es keine Version Ende 2006. Präzise: ich habe heute gerade eine Vorabversion bei mir hier installiert und die ersten Tests mit dem gleichzeitigen Ansteuern von zwei Karten gemacht (um ehrlich zu sein: die erste Installation war vorgestern, heute war die erste, die es auch tut). Meine Liste bis zur Freigabe geht nun schon auf einen Zettel und es sind nur noch zwei eckelige Punkte darauf (plus Dokumentation aktualisieren).

Ich versuche, in den nächsten Tagen immer mal ein paar kurze Artikel zu den aktuellen Problemen zu schreiben. Im Moment sieht die Installation (trotz noch eingeschränkter) Funktionalität mit dem Thin (Web) Client ganz gut aus [ich meine nicht die Optik des Web Clients – da bitte ich doch, die Hoffnungen etwas zu dämpfen: 3.0 wird sich auf die Funktionen beschränken]. Was wirklich noch hakt ist das Anschauen laufender Aufzeichnungen mit dem VLC 0.8.6 ActiveX Control. Lokal geht es so lala (abgesehen davon, dass der Browser des öfteren abstürzt), im LAN ging es gar nicht (kann aber an meinem alten 10 MBit/s Netz oder irgendwelchen Firewall Geschichten liegen). Sobald die 3.0 stabiler ist, werde ich da mal einige Tester ansprechen…

Ein anderes Problem ist in DVB.NET beheimatet und wird mir auch noch einiges abverlangen: das Zusammenspiel DirectShow / BDA / Sendersuchlauf ist extrem mangelhaft und ich glaube im Moment, dass ich nicht alles schuld bin. Ich weiß zwar, was ich grundsätzlich machen müßte, aber das kostet Zeit und ich weiß nicht, ob es in C# / .NET überhaupt so geht (Performance vor allem). Bevor ein Sendersuchlauf mit der TechnoTrend S2-3200 bei mir im BDA Modus nicht sauber läuft, werde ich auch VCR.NET nicht freigeben.

Soweit zum Stand

Jochen

Timeshift, Livemode und Streaming

Ich habe einige Vorstudien betrieben und nach meinem Wunsch (bei dessen Realisierung natürlich auch die Zeit eine wichtige Rolle spielt) soll es die im Titel genannten Möglichkeiten zum Einblick in laufende Aufzeichnungen geben. Der Thin Client von VCR.NET 3.0 wird diese mit Hilfe des VLC 0.8.6ff ActiveX Controls anbieten (dazu habe ich noch keine Tests gemacht, aber im QR/VLC vom DVB.NET und im Zapping Client läuft es ja recht klaglos). Da der VCR.NET einen eigenen ASP.NET Web Server beinhaltet, der halt kein vollwertiger IIS oder Apache ist, werde ich da in der 3.0 einige Abstriche bezüglich der Konformität mit dem HTTP Protokoll machen, so dass erst einmal nur VLC eingesetzt werden kann.

Im Einzelnen: der Livemode (ich werde hier die Nomenklatur etwas ändern – es ist nicht der LIVE Modus gemeint, der in VCR.NET 2.7 für den Zapping Client verwendet wird) erlaubt es, bei einer laufenden Aufzeichnung den (die) aktuellen Datenstrom(ströme) zu betrachten. Dabei ist es nicht möglich, ältere Teile der Aufzeichnung anzuschauen – dazu kann ins Timeshift gewechselt werden. Vielleicht wird hier auch der Zapping Client integriert, der genau dieses ja tut nur halt zusätzlich noch die Umschaltung des Senders erlaubt. Allerdings ist das etwas trickreicher, da der Zapping Client keine Aufzeichnung in eine Datei vornimmt, ich will mich hier mal nicht zu weit aus dem Fenster lehnen. Eventuell bleibt der Zapping Client für die 3.0 wie er ist.

Beim Timeshift kann eine Aufzeichnung bis zum dem Zeitpunkt betrachtet werden, an dem das Timeshift gestartet wurde. In diesem Bereich erlaubt VLC (hoffentlich auch das ActiveX Control) ein freies Hin- und Herspringen in der Datei. Wird beim Abspielen das Ende des aufgezeichneten Bereichs erreicht, so soll (da muß ich noch Detailrercherchen machen) automatisch in den Livemodus gewechselt werden. Von diesem aus dann wieder zurück ins Timeshift, wenn gewünscht.

Das Streaming ist erst einmal völlig unabhängig davon. Jeder Teil einer Aufzeichnung kann wie bisher an einen Unicast oder Multicast TCP/IP Empfänger gesendet werden.

Livemode und Timeshift werden einfach als Seiten im Thin Client angeboten, etwa http://localhost:2909/VCR.NET/TimeShift/Stream0.ts oder ähnliches. Ist die gewünschte Aufzeichnung nicht verfügbar, so wird ein entsprechender Fehler gemeldet.

Die Nutzung von VLC bringt allerdings auch einen Wermutstropfen mit sich und ich weiß noch nicht so ganz wie ich das löse. Allerdings sei vorweg bemerkt, dass das vermutlich kaum einen Anwender stört. Zugriffe auf VCR.NET werden weiterhin eine (Windows integrated / NTLM) Autorisierung des Anwenders erfordern. VLC kann das nicht (höchstens Basic, aber wer versendet schon gerne sein Kennwort im Klartext). In der ersten Version von VCR.NET ist daher auf die Livemode und Timeshift Datenströme anonymer Zugriff möglich. Dies wird in der Konfiguration des VCR.NET deaktivierbar sein.

Jochen