Mal wieder die Nexus…

Meine alte Nexus hat unter Windows 7 leider die unangenehme Eigenschaft, dass beim Starten einer Aufzeichnung (respektive Nutzung der Karte überhaupt) das System kurz ins Stocken kommt. An sich kein Problem, aber wenn meine andere DVB Karte (Nova-HD-S2) gerade eine Aufzeichnung macht, gibt es kurz Aussetzer. Für VCR.NET 4.2 wird es daher eine eigene Planungsregel geben – hey, ich nutze das halt auch 🙂 :

Startzeit einschränken

In dieser Variante (die Regel ist durchaus etwas mächtiger) sagt die Zeile mit der Nexus: wenn möglich (i.e. keine der vorherigen Regeln wird verletzt) sollten Aufzeichnung auf der Nexus immer vor Aufzeichnungen anderer Karten starten. Da in der Standardeinstellung die Priorität der Geräte erst ganz am Ende berücksichtigt wird heißt das, dass die Nexus in solchen Situationen bevorzugt wird, obwohl sie (bei mir aus gutem Grund) eigentlich eine niedrigere Aufzeichnungspriorität hat.

Viel Spaß

Jochen

WaitableTimer und der Schlafzustand mit Tücken

Für VCR.NET 4.1 habe ich einige grundlegende Änderung beim Arbeiten mit dem Schlafzustand vorgenommen. Ursache war, dass seit Windows Vista der Windows Dienst den durch den Anwender ausgelösten Schlafzustand nicht mehr unterbinden kann und sich dem ganzen Vorgang stillschweigend anschließen muss. Das Beenden laufender Aufzeichnungen ist dabei ein wichtiger Schritt und das scheint auch soweit zu klappen. Allerdings wollte ich VCR.NET dafür sorgend lassen, dass zum einen ein überhasteter Schlafzustand Aufzeichnungen nicht ganz unter den Tisch fallen lässt zum anderen aber der Rechner auch nicht direkt wieder aufgeweckt wird.

Die Grundidee war der neue Konfigurationsparameter zur minimalen Verweildauer im Schlafzustand. Wenn der Anwender eine Minute vor Beginn in der Aufzeichnung den Schlafzustand auslöst, dann respektiert VCR.NET das erst einmal. Allerdings wird sichergestellt, dass der Aufweckzeitpunkt durch einen sogenannten WaitableTimer nicht weiter als diese minimale Verweildauer in der Zukunft liegt – die Voreinstellung ist 5 Minuten, i.e. im Beispiel gingen „nur“ 4 Minuten der Aufzeichnung verloren.

Leider haben wir nun festgestellt, dass das so nicht immer geht. Es scheint so zu sein, dass Windows den Aufweckzeitpunkt ignoriert wenn dieser zu spät während des Übergangs in den Schlafzustand erfolgt! Einige Änderungen in VCR.NET 4.1 führen dazu, dass je nach konkreter Konfiguration, Anzahl von Aufzeichnungen und Karten und abhängig von der Leistungsfähigkeit des Rechners in einigen Fällen genau dies passiert. Und dann wacht der Rechner für die nächste Aufzeichnung gar nicht auf – blöd, wenn das im Urlaub passiert.

Ab VCR.NET 4.2 kann man dieses neu eingeführte Verhalten wieder deaktivieren – in der Voreinstellung ist es weiterhin aktiv, für mich benutze ich es als Selbstschutz gegen persönliche Dummheit.

Neue Einstellung

Ist das Häkchen gesetzt, so manipuliert VCR.NET 4.2 den Aufweckzeitpunkt nicht mehr. Würde das Kontrollzentrum einen gelben Hintergrund zeigen und damit signalisieren, dass eine Aufzeichnung unmittelbar bevorsteht, so kann es dann sein, dass der Rechner sehr schnell wieder aufwacht – und dann die Aufzeichnung korrekt ausführt. Bei einem blauen Hintergrund und damit einer laufenden Aufzeichnung kann das Verhalten nicht genau vorhergesagt werden. Überlappen sich Aufzeichnungen, so wird VCR.NET zu Beginn der Folgeaufzeichnung aufwachen, ansonsten eventuell unnötig zu dem Zeitpunkt, an dem die unterbrochene Aufzeichnung eigentlich zu Ende wäre. Mit Verlust ist auf jeden Fall zu rechnen.

Nach aktuellem Kenntnisstand ist das im Moment das beste, was ich für VCR.NET 4.2 machen kann.

Jochen

VCR.NET 4.2 – Ablage der Favoriten (gespeicherten Suchen) der Programmzeitschrift

VCR.NET 4.2 wird die gespeicherten Suchen der Programmzeitschrift (dort Favoriten genannt) im Benutzerprofil auf dem Server (App_Data Unterverzeichnis) ablegen – der REST Web Service wurde entsprechend erweitert. VCR.NET 4.1 speicherte die Favoriten im localStorage auf dem Client. Allerdings verwaltet jeder Browser diese Ablage individuell und ärgerte dadurch Anwender wie mich, die ab und an zwischen den Browsern wechseln – hier IE und FF.

Es wird auch ein einfacher Migrationsalgorithmus eingesetzt: wenn man die gespeicherten Suchen aufruft aber noch keine im Profil abgelegt wurden, so werden die des Browsers verwendet. Bei der ersten Veränderung an den Favoriten (neu Anlegen oder Entfernen) gibt es dann endgültig die einzige Wahrheit auf dem Server.

Viel Spaß

Jochen

VCR.NET 4.2 – Regeln für die Aufzeichnungsplanung

Hier schon einmal ein erster Blick auf die Möglichkeit, mit VCR.NET 4.2 ein Feintuning an dem Regelwerk vorzunehmen, das die Grundlage für die Verteilung von Aufzeichnungen auf verschiedene DVB Geräte ist. Ich habe diese Version noch nicht hochgeladen, da es wirklich direkt aus der Werkstatt ist: keine Ahnung, ob man auch etwas ordentlich kaputt machen kann und zudem sind die Konfigurationsmöglichkeiten unzureichend. Wie dem auch sei: das Bild zeigt die Regeln, die ohne weitere Maßnahmen durch den Anwender verwendet werden – i.e. vor allem direkt nach einer Erstinstallation.

Initiale Regeln

Wie zu sehen erfolgt die Eingabe direkt aus der Konfiguration des VCR.NET heraus. Zusätzlich gibt es natürlich auch einen recht einfach direkt verwendbaren REST Web Service.

Jochen

VCR.NET 4.2 ohne Trauerränder

In VCR.NET 4.1 habe ich an einigen Stellen graue Rahmen verwendet, um logisch zusammenhängende Daten optisch ein wenig enger zusammen zu fassen. Irgendwie sah das alles wie auf einer Trauerkarte aus. VCR.NET 4.2 verwendet in der aktuellen Evaluation XML fieldset Tags, die sich so ähnlich präsentieren wie die guten alten Windows Frames (Win32 SDK, WinForms, VB6, etc.).

Beim Ändern
In der Konfiguration
Integrierte Programmzeitschrift

Irgendwie verhält sich das fieldset aber zumindest im IE10 komisch – ich habe das noch nicht zu Ende untersucht, im Firefox sieht es ordentlich aus. Setzt man im IE10 die Hintergrundfarbe NICHT, so sind die Ecken abgerundet, dafür gibt es aber ein Darstellungsproblem am rechten Rand – deutlich zu sehen, wenn die Seite eine Hintergrundfarbe verwendet. Setzt man die Hintergrundfarbe des fieldset auf transparent, so verschwindet der Darstellungsfehler, dafür sind aber nun die Ecken nicht mehr abgerundet – so wie im FF von Anfang an. Komisch, aber so ist er halt der Internet Explorer…

Jochen