DVBViewer Filter ChangeLog
Aus DVBViewer
Änderungen in Version 2.9.1:
Fix: Eingefrorenes Bild für mehrere Sekunden bei einem Senderwechsel oder Springen/Suchen mit ffdshow als MPEG2 Decoder.
Geändert: Die Batch-Bateien für das Registrieren / Deregistrieren des DVBViewer Filters wurden durch EXE-Dateien ersetzt, da es unter Windows Vista schwierig ist, Batch-Dateien mit Administratorrechten auszuführen.
Ergänzt: Möglichkeit, in der Datei DVBSource.ini einen separaten Latency-Wert für H.264 Video festzulegen (siehe auch "Einstellungen im DVBViewer Filter" unten).
Dies wurde für experimentelle Zwecke eingebaut und stand bereits in vorherigen 2.9.0.x Beta-Versionen zur Verfügung. Sie können den H.264-Latency-Wert festlegen, indem Sie in der Datei DVBSource.ini die Zeile
udH264Latency=xxxx
einfügen, wobei xxx für den Latency-Wert in Millisekunden steht. Ein negativer Wert (z.B. -1) veranlasst den DVBViewer Filter, den allgemeinen auf der Eigenschaftsseite eingestellten Wert zu verwenden. Bitte beachten Sie, dass sich die tatsächlich verwendete Datei DVBSource.ini im DVBViewer-Konfigurationsverzeichnis befindet, also nicht notwendigerweise im Programmverzeichnis.
Änderungen in Version 2.9.0:
Ergänzt: Die Anwendung erhält bei Änderungen des Seitenverhältnisses und der Auflösung Messages. Wird in zukünftigen DVBViewer-Versionen verwendet.
Änderungen in Version 2.8.5
Fix: Die H.264-Formaterkennung konnte die Videoauflösung von BBC HD aufgrund zusätzlicher Parameter im Header nicht mehr korrekt ermitteln.
Änderungen in Version 2.8.4
Stellt einem MPEG2 Decoder beim Verbinden zusätzliche Formatinformationen zur Verfügung, und behebt auf diese Weise TV-Wiedergabe-Probleme mit dem Elecard Decoder (horizontal gestauchtes Bild bei Auflösungen wie 480x576). Erfordert das Einschalten der Videoformaterkennung im DVBViewer -> Einstellungen -> Optionen -> DirectX (Pro) bzw. DirectShow (GE).
Zusätzliche (optionale) Überprüfung der Zeitstempel-Kontinuität. Wenn der DVBViewer Filter eine Lücke > 10 s in den Zeitstempeln entdeckt (was normalerweise die DirectShow-Wiedergabe zum Erliegen bringt), sendet er eine Fehlermeldung an den DVBViewer, der daraufhin versucht, die Situation durch einen Stop und Neustart der Wiedergabe zu bereinigen. Die Eigenschaftsseite des DVBViewer Filters zeigt in dem Fall die Meldung "Graph too late".
Dies ist eventuell bei gesendeten Demo-Schleifen von Nutzen, bei denen die Zeitstempel alle paar Minuten auf 0 zurückgesetzt werden. Die Zeitstempel-Überprüfung wird aktiviert, indem man die Zeile
CheckTimeStamps=1
in der Datei DVBSource.ini einfügt. Bitte beachten: Die tatsächlich benutzte Datei befindet sich je nach Benutzermodus eventuell im Konfigurationsordner des DVBViewers, nicht notwendigerweise im Programmverzeichnis.
Kleinere Korrekturen
Änderungen in Version 2.8.2
Fortlaufende H.264-Formaterkennung durch einmalige Formaterkennung ersetzt (pro Stop/Play-Vorgang), um die CPU-Belastung zu verringern. Führt dazu, dass H.264-Formatänderungen während laufender Wiedergabe nicht mehr erkannt werden. Allerdings habe ich noch nie gehört, dass es solche überhaupt gibt...
Änderungen in Version 2.8.1
Ergänzt: Work-Around für Probleme, die durch den CoreAVC H.264-Decoder verursacht werden (DVBViewer friert bei einem H.264 -> H.264-Senderwechsel ein, oder wenn man beim Abspielen einer H.264-Datei den Positionsregler in der Kontrollleiste benutzt).
Entfernt: Work-Around für Probleme, die durch den Mediamatics (DVD-Express) MPEG2-Decoder verursacht wurden, der früher Bestandteil der TechniSat-Software war (sie enthält jetzt den Sonic Decoder). Dieser Work-Around konnte in seltenen Fällen die Wiedergabe bestimmter Sender (z.B. Raceworld TV) behindern.
Der veraltete DVD Express Decoder sollte nicht zusammen mit dem DVBViewer Filter 2.8.1 verwendet werden.
Änderungen in Version 2.8
Ergänzt: Vollständige Unterstützung für H.264-Video-Wiedergabe, entsprechend der Version 2.7.5.1 (PushSource_H264.ax) aus dem H.264 Kit. In Zukunft wird es keine separaten Verionen mit/ohne H.264-Unterstützung mehr geben.
Verbessert (im Vergleich zur Version 2.7.5.1): H.264-Formaterkennung, um das Abspielen von Dateien zu ermöglichen, die mit dem Cyberlink H.264-Encoder erzeugt wurden. Erfordert zusätzlich Änderungen in zukünftigen DVBViewer-Versionen.
Änderungen in Version 2.7.2
Behoben: Fehler bei der Berechnung der Video-Bitrate (betrifft nur die Versionen 2.7 und 2.7.1)
Behoben: Diskontinuitäten im Audio-Stream wurden in bestimmten Fällen nicht an den Decoder weitergemeldet (betrifft nur die Versionen 2.7 und 2.7.1).
Verbessert: Eine blockierte / abgestürzte Wiedergabe unterbricht den Datenfluss im DVBViewer nicht mehr.
Änderungen in Version 2.7.1
Behoben: Die Erkennung des Audioformats funktionierte bei bestimmten Streams nicht korrekt (betraf die Funktion "Audioformat automatisch erkennen" im DVBViewer).
Änderungen in Version 2.7
Behoben: Memory Leak. Der vom DVBViewer Filters belegte Speicher wurde bei einem Neuaufbau der Wiedergabe (z.B. TV <-> Radio-Umschaltung) nicht vollständig freigegeben.
Behoben: Kompatibilitätsprobleme mit DVBViewer Pro 3.2.6
Verbessert: Das Wiedergabe-Timing, insbesondere die Timing-Beziehung zwischen dem DVB- bzw. Datei-Stream und den Wiedergabe-Komponenten (DirectShow Filtergraph) wurde reorganisiert, um eine verbesserte Stabilität und Flexibilität zu erzielen. Dieser Teil wurde komplett neu geschrieben.
Verbessert: Behandlung von Diskontinuitäten.
Verbessert: Die Eigenschaftsseite zeigt zusätzlich an, ob Video/Audio-Output stattfindet ("No Data", falls nicht), und ob der DVBViewer Filter mit einem Video- und Audio-Decoder verbunden ist ("Unconnected" = nicht verbunden, "Connected" = verbunden). "Reconnected" erscheint bei Formatänderungen (z.B.bei geänderter Bildauflösung oder Stereo -> Mono), wenn in den DVBViewer-Optionen die Funktion "Automatische Video/Audio-Formaterkennung" aktiviert ist.
Verbessert: Um geänderte Einstellungen auf der Eigenschaftsseite wirksam werden zu lassen, muss nicht mehr unbedingt ein Neuaufbau der Wiedergabe veranlasst werden (was zwangsläufig die Eigenschaftsseite schließt). Jetzt reicht ein Stoppen und Starten der Wiedergabe, z.B. indem man den Sender umschaltet, in der DVBViewer-Navigationsleiste Stop/Play ausführt oder bei Dateiwiedergabe ein Stück weiter/zurück springt.
Behoben: Kleinere Unstimmigkeiten der Eigenschaftsseite.
Geändert: Auf der Eigenschaftsseite wurde die EInstellmöglichkeit "Max. queued audio buffers" der Version 2.6 durch "Max. queued audio (ms)" ersetzt.
Mit anderen Worten: Die interne Datenfluss-Kontrolle beruht nicht mehr auf der Anzahl der gefüllten, aber noch nicht abgeholten Audio-Puffer, sondern auf der Spieldauer der in den Puffern enthaltenen Daten. Diese Methode ist zuverlässiger und präziser, weil das Verhalten damit unabhängig von der Größe der Audiopakete und der Bitrate ist. Sender und Multiplexer verhalten sich in dieser Hinsicht sehr unterschiedlich, was in einzelnen Fällen Probleme mit der in Version 2.6 verwendeten Methode mit sich brachte (die nur die Puffer zählte, aber nicht den Inhalt berücksichtigte).
Änderungen in Version 2.6.2
Behoben: Ein Speicherleck, das auftrat, wenn der DVBViewer Filter aus dem Speicher entfernt wurde.
Geändert: Der Wert "Max queued audio buffers" für TV/Radio-Wiedergabe kann auf der Eigenschaftsseite auf 0 gesetzt werden, was die Kontrollfunktion gegen übermäßige Puffernutzung komplett abschaltet. In diesem Fall verhält sich der DVBViewer Filter 2.6 wie die frühere Version 2.4.3.
Setzen Sie den Wert auf 0, wenn Sie "Stop and Go" bei TV/Radio-Wiedergabe erhalten, und sich dies nicht durch ein Erhöhen des Wertes beheben lässt.
Änderungen in Version 2.6.1
Behoben: Die Fehlerbehandlung und automatische Anpassung der Datenrate, die mit Version 2.6.0 bzw. 2.6.0.1 eingeführt wurde, hat sich in bestimmten Fällen als unzuverlässig erwiesen. Deshalb verwendet die Version 2.6.1 eine andere Methode, die nicht mehr auf dem DirectShow-Timing, sondern auf der Anzahl der bereitgehaltenen (queued) Audio-Puffer beruht. Der DVBViewer Filter 2.6.1 geht davon aus, dass die Wiedergabe nicht korrekt "ausbalanciert" ist, wenn ihre Anzahl ein bestimmtes Maß überschreitet.
Entfernt: Das Eingabefeld für die PCR Lead Time auf der Eigenschaftsseite (siehe Ansicht -> Filter - DVBSource).
Ergänzt: Zwei Eingabefelder für die maximale Anzahl bereitgehaltener Audio-Puffer, die noch als akzeptabel angesehen wird - ein Eingabefeld für TV/Radio-Wiedergabe, eines für Datei-Wiedergabe.
Bitte beachten: Änderungen werden erst nach dem Anklicken von OK bzw. Apply und einem Neuaufbau der Wiedergabe wirksam (siehe Ansicht-Menü).
Wenn die Anzahl der bereitgehaltenen Audio-Puffer den Wert im TV/Radio-Feld (standardmäßig 5) überschreitet, interpretiert der DVBViewer Filter 2.6.1 es als ungesund hohe Puffernutzung und sendet eine Nachricht an den DVBViewer, der als Reaktion die Wiedergabe zurücksetzt, indem er sie anhält und neu startet. Erhöhen Sie den Wert, wenn es aufgrund der Auto-Korrektur zu stotternder oder unterbrochener Wiedergabe kommen sollte. Senken Sie den Wert, wenn sie möchten, dass der Mechanismus sensibler reagiert.
Wenn die Anzahl der bereitgehaltenen Audio-Puffer den Wert im Feld für Dateiwiedergabe (File, standardmäßig 1) überschreitet, hält der DVBViewer Filter das Lesen von Daten aus der Datei an, bis die überzähligen Puffer vom Audiodecoder abgeholt wurden. Er versucht auf diese Weise, die Pufferung so niedrig wie möglich zu halten, was die Präzision bei der Navigation bzw. beim Suchen verbessert. Erhöhen Sie den Wert schrittweise jeweils um 1, falls es zu stotternder Wiedergabe kommen sollte.
Änderungen in Version 2.6
Verbessert: Speicherverwaltung durch Verwendung der FastMM Memory Management Unit für Delphi, die unter der Mozilla Public License 1.1 veröffentlicht wurde (MPL 1.1, http://www.mozilla.org/MPL/MPL-1.1.html). Der Quellcode ist von http://fastmm.sourceforge.net erhältlich. Verbessert: Nochmal Speicherverwaltung :). Der DVBViewer Filter gibt jetzt bei einem Stop-Befehl alle Puffer frei frei, um sie bei Run neu anzufordern. Z.B. bei einem Senderwechsel: Wenn nach der Wiedergabe von HDTV auf einen normalen TV-Sender umgeschaltet wird, sinkt der Speicherverbrauch entsprechend der niedrigeren Bitrate. Zuvor hatte der DVBViewer Filter einmal belegten Speicher beibehalten, um zeitaufwändige Neuanforderung zu vermeiden. Mit FastMM ist das jedoch kein Thema mehr. Ergänzt: Zusätzliche Funktionen für Fehler- und Pufferüberlauf-Behandlung. Wird von zukünftigen DVBViewer Pro/GE-Versionen genutzt werden. Deshalb der Versionsnummer-Sprung auf 2.6. Ergänzt: Automatische Anpassung der Datenrate beim Lesen von Dateien an die Timing-Anforderungen der Wiedergabe. Wird (hoffentlich) helfen, in zukünftigen DVBViewer Pro/GE- und TSPlayer-Versionen ruckelnde Dateiwiedergabe und Timeshift zu vermeiden. Behoben: Unstimmigkeit (Race Condition) bei Run -> Stop-Übergängen, die unter ungünstigen Bedingungen zum Blockieren der Anwendung führen konnte.
Änderungen in Version 2.4.3
Behoben: Potentieller Puffer-Überlauf, falls ein erwarteter Audiostream nicht eintrifft oder stark fehlerhaft ist.
Änderungen in Version 2.4.2:
Behoben: Unter bestimmten (eher seltenen) Umständen konnte die Ermittlung der internen Stream Time scheitern und aufgrund falscher Zeitstempel (PTS) zu ruckelnder Wiedergabe oder einer längeren Verzögerung bei der Senderumschaltung führen.
Änderungen in Version 2.4.1:
Behoben: Die auf der Eigenschaftsseite angezeigte Versionsnummer war noch 2.3 ;) Behoben: Wenn der DVBViewer GE für die Speicherung der Konnfigurationsdateien im Benutzerprofil unter Dokumente und Einstellungen\Anwendungsdaten konfiguriert wurde, schrieb der DVBViewer Filter eine geänderte DVBSource.ini trotzdem in das Verzeichnis Programme/DVBViewer.
Änderungen in Version 2.4:
Behoben: Kleinen Fehler bei der AC3-Formaterkennung - wahrscheinlich ohne praktische Bedeutung. Ergänzt: Unterstützung für den Betrieb in verschiedenen (insbesondere eingeschränkten) Benutzerkonten mit verschiedener Konfiguration. Dies wird in Zukunft vom DVBViewer GE 1.5 verwendet werden. Mehr Informationen dazu im DVBViewer Forum, sobald alle Komponenten/Plugins entsprechend aktualisiert sind.
Änderungen in Version 2.3:
Ergänzt: Unterstützung für die Wiedergabe von *.mp2 und *.ac3 Audiodateien (wird von DVBViewer GE 1.4 und wahrscheinlich zukünftigen DVBViewer Pro-Versionen genutzt). Erhöht: Puffer-Kapazität. Scheint aus unerfindlichen Gründen mit Twinhan-Karten besser zu laufen als vorherige Versionen...
Änderungen in Version 2.2.3:
Behoben: Der DVBViewer Filter konnte das Programm, das ihn benutzt, zum Absturz bringen, wenn man auf einen Fernsehsender mit formal gültiger Audio-PID, aber ohne einen tatsächlich vorhandenen Audiostream umschaltete (bei einer falschen Audio-PID in der Kanalliste, oder bei Audiostreams, die nur zeitweise gesendet werden).
Änderungen in Version 2.2.2:
Entfernt: MPEG2 PES Video Format vom Video-Output-Pin, um den AC3 Filter daran zu hindern, sich mit dem Pin zu verbinden. Ergänzt: Eingabemöglichkeit für die PCR Lead Time (siehe 2.2.1-Änderungen) auf der Eigenschaftsseite. Bitte beachten: Geänderte Einstellungen auf der Eigenschaftsseite wirken sich erst nach dem nächsten Neuaufbau der Wiedergabe aus.
Änderungen in Version 2.2.1:
Behandlung von Problemen bei Dateiwiedergabe ergänzt.
Wenn es bei der Benutzung des DVBViewer Filters 2.2 für MPG/TS-Dateiwiedergabe (z.B. im TSPlayer oder DVBViewer GE) zu ruckelndem Bild/Ton oder Aussetzern kommt, können Sie das folgende probieren:
- Öffnen Sie die Datei DVBSource.ini (die aus dem Ordner des betroffenen Programms) mit einem Texteditor. - Hängen Sie die folgende Zeile an:
udPCRLeadTime=500
- Speichern Sie die Datei - Starten Sie die Wiedergabe neu, indem Sie das Programm neu starten, oder für einen Neuaufbau des Filtergraphen sorgen.
Die PCR Lead Time (in Millisekunden) lässt den DVBViewer Filter größere Zeitabweichungen in der Datei tolerieren (bis 500 ms im obigen Beispiel). Bei Bedarf kann der Wert weiter erhöht werden. Dies führt allerdings zu vermehrtem Puffer- bzw. Speicherverbrauch, und das Suchen/Springen innerhalb der Datei ist weniger präzise.
Änderungen in Version 2.2.0:
Behandlung von unvollständigen Transportstream-Datenpaketen ergänzt, um die allgemeine Robustheit bei Diskontinuitäten und fehlerhaften Streams zu erhöhen.
Änderungen in Version 2.1:
Verbesserte AC3-Formaterkennung. Die Art des gesendeten AC3-Streams (z.B. 2/0 oder 3/2) wird auf der Eigenschaftsseite angezeigt. Zeigt auf der Eigenschaftsseite die aktuelle Video-Bitrate an, berechnet als gleitender Durchschnitt der letzten 100 PES Datenpakete. Zusätzliche Funktionen für zukünftige DVBViewer- und Plugin-Versionen.