Wenn man denkt, man wäre fertig…

Eben mal noch schnell testen, ob der VCR.NET mit dem Schlafzustand (Hibernate, S4) und dem Aufwachen auch richtig umgehen kann und dann ist die Beta fertig. Sieht auf den ersten Blick gut aus, auf den zweiten aber nicht: nach dem Aufwachen findet die TechnoTrend S2-3200 keine Sender – leider ein bekanntes Problem der BDA Treiber. Das hat zwar nichts mit VCR.NET zu tun, kann ich aber so auch nicht herausgeben.

Dafür ist in DVB.NET 3.0 ein interessantes Zusatzfeature entstanden: für die BDA Hardware Abstraktion kann nun eine Einstellung ResetAfterWakeup gesetzt werden (für alle TechnoTrend Budget Karten inklusive der S2-3200 passiert das erst einmal automatisch). Diese führt dazu, dass in der neuen Methode WakeUp der Abstraktion der Tuner deaktiviert (Disable im Gerätemanager) und wieder aktiviert (Enable) wird. Der VCR.NET ruft diese Methode nun immer vor der ersten Aufzeichnung nach dem Aufwachen aus dem Schlafzustand auf und erreicht so auch mit der S2-3200 zuverlässige Aufzeichnungen.

Neue Option in der Profilverwaltung

Im Gegensatz zu früher (der VCR.NET hatte mal so eine ähnliche Funktionalität für die TechnoTrend Premium Line 2.19 Beta Treiber) passiert das aber nur, wenn der VCR.NET es braucht. Andere Anwendungen hätten nach dem Aufwachen weiterhin das Problem und können die Karte nicht nutzen. Ich denke, für VCR.NET 3.0 werde ich das nicht einbauen aber man kann sich relativ einfach vorstellen, dass in einer zukünftigen Version der VCR.NET diese Reaktivierung einfach für alle eingebundenen Geräteprofile direkt nach dem Aufwachen macht. Hier muss man nur etwas mit dem Timing aufpassen: früher war das einfach, da am VCR.NET nur eine Karte hing!

Jochen

Erste echte Beta in Sicht…

Ich habe gerade die Grundfunktionalitäten von VCR.NET 3.0 Recording Service und Manager (jetzt neu: VCR.NET Control Center) so weit fertig gestellt, dass praktisch alle relevante Funktionalität der Vorgängerversion enthalten ist (Ausnahmen: Betrachten laufender Aufzeichnungen hackelt noch sehr; NVOD Anzeige zur laufenden Aufzeichnung; Extensions im Recording Manager). Ich muss allerdings noch zwei Kernfunktionalitäten selbst testen (Hibernate und Aufwachen; Sendersuchlauf mit mehreren, abhängigen Geräteprofilen), dann wäre es so weit… Allerdings kann ich aufgrund der wesentlichen Veränderungen das Ganze nicht ohne eine aktualisierte Installationsbeschreibung herausgeben, darum wird es wohl doch noch Ende der Woche werden.

Bis dann

Jochen

Kompromisse überall?

Ich möchte hier kurz auf zwei der Kompromisse eingehen, die im Zusammenhang mit der Umstellung auf die Web Anwendung von VCR.NET 3.0 gemacht wurden.

Heute ist es im VCR.NET Recording Manager so, dass die Anzeige der geplanten Aufzeichnungen auf eine feste Anzahl beschränkt ist. Ein Blättern ist nicht möglich. Möchte man mehr sehen, als die Liste hergibt, so kann man zwar diese Anzahl erhöhen, wird aber bei der Abfrage eine erhebliche Mehrbelastung des Windows Dienstes feststellen. Die Ursache ist, dass recht pingelig ermittelt wird, welche Aufzeichnungen stattfinden. Bei überlappenden Aufzeichnungen muss immer die vorherige Aufzeichnung bekannt sein, damit der genaue Startpunkt und die damit resultierenden Konsequenzen für Mehrkanalaufzeichnungen korrekt berücksichtigt werden. Zu kompliziert? Ok, hier das Beispiel der Web Anwendung: diese erlaubt die Anzeige für ein festes Zeitintervall, sagen wir mal 7 Tage (das ist die Voreinstellung, die man verändern kann). Die erste Seite der Liste ist im Sinne des alten Recording Managers exakt. Man kann aber nun auch in die Zukunft schauen und sich den Plan der nächsten Woche anschauen. Dabei beginnt die Liste immer um 00:00 Mitternacht. Findet zu diesem Zeitpunkt keine Aufzeichnung statt, so ist die Anzeige exakt. Findet aber eine Aufzeichnung statt, die etwas früher beginnt – sagen wir mal um 23:00 – so wird diese als problematisch (beginnt zu spät) markiert. Eigentlich müßte in einem solchen Fall der Testzeitpunkt mindestens bis zum Beginn der Aufzeichnung zurück verschoben werden und die Auswertung erneut gemacht werden. Was aber, wenn zu diesem Zeitpunkt eine frühere Aufzeichnung noch läuft? Man sieht, dass ist etwas lästig in der Auswertung. Selbst wenn es technisch nicht oft vorkommen wird, der Algorithmus müßte alle Situationen abdecken. Der Kompromiß an dieser Stelle ist trivial: entsteht eine solche Situation, so schaut man sich einfach den Aufzeichnungsplan der Woche davor an – der letzte Eintrag gibt in allen praktisch relevanten Situationen die korrekten Aufzeichnungsdaten wieder [nicht praktisch relevant ist hier nur, dass über den gesamten Betrachtungszeitraum ununterbrochen Aufzeichnungen durchgeführt werden].

Ein ähnliches Problem ergibt sich bei der Programmzeitschrift (vormals EPG genannt). Hier kann in der Liste nun auch (vorwärts) geblättert werden. Dabei wird der Zeitpunkt des letzten Eintrags auf einer Anzeigeseite als Anfangspunkt für die nächste Seite genommen. Dabei erscheint genau dieser Eintrag erst einmal doppelt – das ist meiner Ansicht nach kein Problem. Es kann aber nun vorkommen, dass die erlaube Anzahl von Einträgen in der Liste (die vom Anwender festgelegt werden kann) nicht ausreicht, um alle Sendungen zu zeigen, die zu diesem Zeitpunkt beginnen (eine Begrenzung auf 20 Einträge bei einer Anzeige von 20:15 ist dabei so ein Fall). In dieser Situation würde der einfache Algorithmus immer wieder zur gleichen Seite blättern! Der Kompromiß hier ist genauso trivial wie oben: die erlaubte Anzahl wird in dieser Situation ignoriert und es werden so viele Sendungen aufgelistet, dass die letzte in der Liste einen anderen Startzeitpunkt als die erste hat.

epg1.jpgepg2.jpg

Im Moment denke ich, dass diese Kompromisse kein Problem in der Bedienbarkeit der Web Anwendung darstellen.

Jochen

Ü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