Blu-Ray Wiedergabe

Aus DVBViewer
Wechseln zu: Navigation, Suche

Diese FAQ beschäftigt sich mit der Wiedergabe von m2ts- (Audio/Video-Dateien) und mpls-Dateien (Wiedergabelisten), wie sie u.a. auf Blu-Ray Discs (in weiterer Folge mit 'BD' abgekürzt) zu finden sind. Auf Grund der Komplexität und der Tatsache, dass sich dieses Feature bzw. die Blu-Ray Wiedergabe am PC generell noch relativ im Anfangsstadium befindet, gilt es, noch einiges zu erforschen und implementierungstechnisch zu erweitern und zu verbessern. Diese FAQ reflektiert daher den aktuellen Stand der Entwicklung und was man generell wissen muss bzw. was benötigt wird, um die Wiedergabe realisieren zu können, welche Probleme man zu erwarten hat, welche Einschränkungen es derzeit gibt usw.

Wie ist die Blu-Ray Wiedergabe im DVBViewer gelöst?[Bearbeiten]

BD Auto-Wiedergabe
Der DVBViewer macht es sich zur Aufgabe, die Filminhalte sämtlicher Blu-Ray Discs, unabhängig von Profil und integrierten Features, lesen und perfekt wiedergeben zu können. Auf BD-Konzepte wie BD-J, PiP (Profile 1.1) oder BD-Live (Profile 2.0) wird bewusst verzichtet, nicht nur auf Grund des hohen Implementierungsaufwands und der Lizenzen, die zu entrichten wären, sondern da es auf Grund des größeren Interpretationsspielraums der BD-J Spezifikation immer wieder zu Inkompatibilitäten mit diversen Discs kommen würde und der Wartungsaufwand dementsprechend riesig wäre, da jede Disc einzeln überprüft und angepasst werden müsste. Auch die Anwender wären auf ständige Updates der Abspielsoftware angewiesen. Ist ein Update für eine Disc nicht verfügbar, ist diese unter Umständen schlicht und ergreifend nicht abspielbar. Der DVBViewer spielt die Filminhalte unabhängig dieser Extrafeatures. Die CPU-Zeit, die so eine BD-J(ava) Engine für sich beantsprucht, ist ebenfalls enorm und läuft im Hintergrund ständig mit. Die Eliminierung dieses zusätzlichen Overheads ermöglicht die BD-Wiedergabe auch auf leistungsschwächeren Systemen.

Der DVBViewer ist dazu in der Lage, BD-Strukturen zu erkennen (sowohl auf Disc als auch Festplatte), die Wiedergabelisten (*.mpls), in welchen die Inhalte organisiert sind, zu lesen und darunter den Hauptfilm zu finden. Bei der Wiedergabe wird größtenteils auf externe Komponenten zurückgegriffen.

Das Feature zur Wiedergabe von Blu-Ray im DVBViewer ist in erster Linie für die Wiedergabe von Blu-Ray gemasterten DVB-Aufnahmen und/oder AVCHD gedacht.

Was ist Seamless Branching?[Bearbeiten]

Auswahl BD-Wiedergabelisten
BDedit
Typischerweise ist ein zusammenhängendes Video in einer einzigen Mediendatei (*.m2ts) untergebracht (anders als bei Video-DVD, wo der Hauptfilm dateisystembedingt auf 1 GB große VOB-Dateien aufgeteilt ist). Der DVBViewer ist dazu in der Lage, diese m2ts-Mediendateien wiederzugeben. Bei Seamless Branching ist der Hauptfilm auf mehrere solche m2ts-Dateien verteilt (auf Grund von Layer-Break oder Alternativszenen). Für diesen Fall sieht der BD-Standard das Konzept der Playlisten vor, die u.a. beschreiben, welche m2ts-Dateien in welcher Reihenfolge ein zusammenhängendes Video ergeben.

Werden Seamless Branching Blu-Ray Discs vom DVBViewer unterstützt?[Bearbeiten]

Der DVBViewer versucht beim Einlegen einer Disc die Wiedergabeliste des Hauptfilms zu finden, die darin enthaltenen m2ts-Dateien aneinanderzuhängen und lückenlos wiederzugeben.

Da die Blu-Ray Wiedergabe auf Menü-Navigation basiert, sieht der Standard keine zweifelsfreie Hauptfilmerkennung vor. Der DVBViewer versucht diesen deshalb auf Heuristiken basierend zu erkennen. Das kann in seltenen Fällen schief gehen. Deshalb ermöglicht es der DVBViewer dem Benutzer, BD Mediendateien und Wiedergabelisten entsprechend manuell zu wählen (m2ts-Dateien sind in einer BD-Struktur im Verzeichnis 'BDMV\STREAM\' und mpls-Dateien im Verzeichnis 'BDMV\PLAYLIST' zu finden).

Schlägt die Hauptfilmerkennung im DVBViewer fehl, kann man zum Beispiel das kostenlose Tool 'BDedit' verwenden, um Blu-Ray Disc Strukturen zu erforschen. Unter anderem zeigt es sämtliche auf der Disc befindlichen Wiedergabelisten, die darin enthaltenen m2ts-Dateien und deren Spieldauer.

Wie kann auf die Dateien einer Blu-Ray Disc zugegriffen werden?[Bearbeiten]

Auf Blu-Ray Discs befindet sich ein UDF 2.5 Dateisystem. Im Gegensatz zu Windows Vista/7 installiert Windows XP standardmäßig keinen Treiber dafür. Toshiba stellt für deren HD DVD Laufwerke bzw. das Microsoft XBox HD-DVD Laufwerk einen Windows XP UDF 2.5 Treiber bereit, welcher aber auch für Blu-Ray Discs sehr gut funktioniert ([1]). Ist diese Hürde genommen, kann man ganz einfach über den 'Datei öffnen'-Dialog bzw. den Windows Explorer darauf zugreifen. Auch der DVBViewer ist anschließend in der Lage, die Inhalte zu lesen.

Werden auch verschlüsselte (AACS/BD+) Blu-Ray Discs wiedergegeben?[Bearbeiten]

Nein. Das Feature zur Wiedergabe von Blu-Ray im DVBViewer ist in erster Linie für als Blu-Ray gemasterte DVB-Aufnahmen und/oder AVCHD gedacht. Nichtsdestotrotz werden sämtliche im Blu-Ray Standard definierten Audio/Video Formate unterstützt. Die Wiedergabe von "Hollywood Blu-Ray Discs" wird lediglich durch die fehlende Entschlüsselungsinstanz zwischen Blu-Ray Laufwerk und Audio/Video-Verarbeitungskette verhindert, welche der DVBViewer aus lizenztechnischen Gründen nicht bereitstellen kann.

Wird für die Wiedergabe im DVBViewer HDCP fähiges Equipment benötigt?[Bearbeiten]

Grundsätzlich nicht. Der DVBViewer nimmt keine Verschlüsselung der auszugebenden Audio/Video-Inhalte vor.

Da die Audio/Video-Verarbeitung bzw. Ausgabe aber auf Dekoder und Renderer von Dritten ausgelagert wird, besteht durchaus die Möglichkeit, dass hier noch ein entsprechender DRM-Algorithmus angewendet oder Mechanismus aktiviert wird. Bisher ist aber kein derartiger Fall bekannt.

Welche Audio/Video-Formate werden unterstützt?[Bearbeiten]

Die Verarbeitung der Audio/Video-Ströme wird auf Komponenten/Dekoder von Drittentwicklern ausgelagert, da diese über die benötigten Lizenzen und das Know-How für Audio/Video-Kompressionsverfahren verfügen. Der DVBViewer kann ohne diese zusätzlichen Komponenten also keine m2ts-Dateien und foglich Blu-Ray Discs wiedergeben.

Was wird für die Verarbeitung der Audio/Video-Inhalte benötigt?[Bearbeiten]

Die Medienwiedergabe bzw. die Audio/Video-Verarbeitung ist im DVBViewer über DirectShow realisiert. Es handelt sich dabei um ein komponentenbasiertes Multimedia-Framework von Microsoft. Die Komponenten werden auch Filter genannt. Man unterscheidet zwischen diversen Filter-Typen, welche sich an unterschiedlichen Stellen in der Verarbeitungskette einklinken, unter anderem sind das Source (liest einen Datenstrom von einer Quelle, e.g. Datei oder URL, und splittet selbigen üblicherweise in Audio/Video/Untertitel-Ströme auf) und Transform (e.g. Dekoder zur weiteren Verarbeitung der Audio/Video-Ströme) Filter.

Für sämtliche im Blu-Ray Disc Standard verankerten Audio/Video-Formate (MPEG-2, H.264/AVC, VC-1, AC3/Dolby Digital, EAC3/Dolby Digital+, dts, LPCM, Dolby TrueHD/MLP, dts-HD, LPCM) stehen meist mehrere Dekoder Filter (fälschlicherweise auch oft 'Codec' genannt) zur Auswahl.

Der DVBViewer ist dazu in der Lage, für die Wiedergabe von Medieninhalten diverse im System befindliche Source Filter heranzuziehen. Je nach Source Filter sollte man evtl. die Wahl der Dekoder überdenken. Im folgenden werden zwei mögliche Verarbeitungsketten für BD vorgestellt, ihre Stärken und Schwächen aufgezeigt usw.

DVBSource Filter[Bearbeiten]

Auf Grund der hohen Komplexität moderner Audio/Video-Formate und mangelnder Spezifizierung derselben im DirectShow-Bereich haben sich diverse Lösungen bei der Kommunikation zwischen Source und Dekoder Filter ergeben (unterschiedliche Media-Subtypes, Paketdefinitionen und auch Verantwortlichkeiten). Der DVBViewer versucht immer einen möglichst standardkonformen Weg zu gehen, sprich eine Lösung zu finden, die sich weitestgehend "in der Industrie" durchgesetzt hat. Gerade in der OpenSource-Welt haben sich oft andere, teilweise weniger durchdachte Lösungen, durchgesetzt und verbreitet. So können zum Beispiel 'ffdshow DXVA Video Decoder' und 'MPC Video Decoder' mit den Datenpaketen, wie sie der DVBSource Filter und viele andere Demuxer für H.264/AVC und VC-1 liefern, nichts anfangen. Die nachfolgenden Dekoder werden für ein reibungsloses Zusammenspiel mit dem DVBSource Filter empfohlen:

  • H.264/AVC
    CyberLink Video Decoder
    
  • VC-1:
    CyberLink Video Decoder
    
  • Dolby Digital (AC3)
    ffdshow Audio Decoder
    
  • dts:
    ffdshow Audio Decoder
    
  • Dolby TrueHD (MLP):
    ffdshow Audio Decoder
    
  • dts-HD MA:
    ffdshow Audio Decoder
    
  • LPCM:
    LAV Audio Decoder
    


Die Blu-Ray Spezifikation sieht in Dolby TrueHD und dts-HD Tracks einen zu AC3 bzw. dts kompatiblen Kern vor. Leider ist die Auswahl an Dekodern, die die verlustfreie HD-"Hülle" verarbeiten, verschwindend gering. Da einige AC3/dts-Dekoder zudem Schwierigkeiten haben den AC3 bzw. dts-Kern zu erkennen, extrahiert der DVBSource Filter diesen vorläufig eigenständig (das gilt im übrigen auch für das verlustbehaftete EAC3/Dolby Digital Plus), somit können sämtliche AC3- und dts-Dekoder für Blu-Ray Discs mit Dolby TrueHD und dts-HD Tonspuren verwendet werden und man kommt zumindest in den Genuss von hochwertigem Multikanal-Audio (5.1 Kanal, 16-Bit, 48 kHz), mit teilweise sogar höheren Datenraten, als man das von DVD's gewohnt ist.

LPCM als weiteres verlustfreies Multikanal Audio-Format wird im vollen Umfang unterstützt.

LAV Splitter[Bearbeiten]

DVBSource Optionen

Alternativ kann der 'LAV Splitter' Source Filter verwendet werden. Dazu muss man in den DVBViewer Optionen die Verarbeitung von m2ts/mpls durch den DVBSource Filter entsprechend deaktivieren. Das schöne an dieser Lösung ist unter anderem, dass sich der 'LAV Splitter' sehr gut mit den freien und quelloffenen Dekoder Filtern aus der libav Ecke verträgt.

  • H.264/AVC
    ffdshow DXVA Video Decoder
    
  • VC-1:
    ffdshow DXVA Video Decoder
    
  • Dolby Digital (AC3)
    LAV Audio Decoder
    
  • dts:
    LAV Audio Decoder
    
  • Dolby TrueHD (MLP):
    LAV Audio Decoder
    
  • dts-HD MA:
    LAV Audio Decoder
    
  • LPCM:
    LAV Audio Decoder
    


Werden die verlustfreien (HD-)Audioformate unterstützt?[Bearbeiten]

Wie bereits erwähnt, gibt der DVBSource Filter bei TrueHD/dts-HD MA lediglich den AC3/dts kompatiblen Kern an die Dekoder weiter. Um in den Genuss von verlustfreiem HD-Audio zu kommen, muss der 'LAV Splitter' verwendet werden. Die HD-Audioformate können entweder in Software dekodiert oder via HDMI (>= 1.3) an einen externen A/V-Receiver (sogenanntes 'Bitstreaming') weitergereicht werden.

Dekodierung in Software[Bearbeiten]

dts-HD MA

'ffdshow Audio Decoder' und 'LAV Audio Decoder' sind dazu in der Lage MLP (Dolby TrueHD) in Software zu dekodieren. Für dts-HD MA gibt es momentan lediglich eine Lösung über den 'LAV Audio Decoder'. Dazu wird eine entsprechende Bibliothek aus TotalMedia Theatre benötigt.

Bitstreaming[Bearbeiten]

Bitstreaming wird aktuell von den freien und quelloffenen Dekodern 'ffdshow Audio Decoder' sowie 'LAV Audio Decoder' unterstützt.

Können auch Untertitel dargestellt werden?[Bearbeiten]

Untertitel werden, wie auch die HD-Audioformate, nur mit dem 'LAV Splitter' unterstützt. Der DVBViewer versucht dazu eine Textverbindung zwischen Source und Dekoder Filter herzustellen. Der Dekoder muss dafür also über entsprechende Eingabemöglichkeiten verfügen (e.g. ffdshow).

Die noch bessere Nachricht ist, dass sich DXVA und Untertitel im DirectShow-Graph ohne Hilfe durch die Applikation bzw. die OSD Render-Engine mittlerweile nicht mehr gegenseitig ausschließen. Der 'ffdshow DXVA Video Decoder' ist dazu in der Lage, Untertitel in der Grafikkarte gezielt über das Video zu lagern.

Wie man Untertitel über ffdshow konfiguriert, kann hier nachgelesen werden.

Sind alternative Ton- und Untertitel-Spuren wählbar?[Bearbeiten]

Tonspur-Auswahl
Der DVBViewer verwendet eine Standard-Schnittstelle, worüber Ton- und Untertitel-Spuren in diversen Source Filtern umgeschaltet werden können. Implementiert wird diese Schnittstelle unter anderem von 'LAV Splitter' und 'Haali Media Splitter'. Falls erforderlich wird im Fall von Audio auch der Dekoder entsprechend des Formats des selektierten Streams ausgetauscht.

Zusätzlich ermöglichen diverse Source Filter (e.g. 'LAV Splitter') die Wahl von Default Ton- und Untertitel-Spuren über ihre Einstellungen (e.g. deutsche Tonspur und "Forced Subtitles").

Die Auswahl der Ton- bzw. Untertitel-Spuren kann im DVBViewer OSD über die 'OSD Blau' Aktion aufgerufen werden.

Wie werden die Dekoder im DVBViewer selektiert?[Bearbeiten]

Merit
Für Audio kann im DVBViewer momentan nur ein Dekoder für Dolby Digital (AC3) gewählt werden. Es wird versucht, selbigen auch für dts sowie TrueHD und dts-HD MA zu verwenden. Der 'LAV Audio Decoder' ist hier zu empfehlen, zumal sämtliche BD Audio Formate unterstützt werden. Wird ein Audio-Format vom selektierten AC3-Dekoder nicht unterstützt, wird der Dekoder mit dem höchsten Merit im System (System Default) verwendet. Den Merit eines Dekoders (bzw. DirectShow-Filters) kann man zum Beispiel mit dem Tool GraphStudio editieren ('Graph' > 'Insert Filter...').

Zumal der DVBSource Filter oft Schwierigkeiten mit den quelloffenen Video Dekodern hat, diese aber für die Darstellung von Untertiteln benötigt werden, sollte man einen separaten DirectShow Graph B für die Blu-Ray Wiedergabe definieren. Die selektierten Dekoder sollen nur dann zur Anwendung kommen, wenn sich der DVBSource Filter nicht im Graph befindet (Auto B Bedingung: '/DVBSource', '/' steht für NOT).

Ist es möglich, einen vollwertigen BD-Player in den DVBViewer zu integrieren?[Bearbeiten]

Mit dem DVBViewer Switch (im Forum) ist eine nahezu nahtlose Integration von PowerDVD in den DVBViewer möglich. Der Switch ist dazu in der Lage, DVBViewer-Aktionen (von Eingabegeräten wie Tastatur, Fernbedienung usw.) abzufangen und in geeignete PowerDVD Aktionen umzuwandeln. Somit kann die im DVBViewer angelernte Fernbedienung durch benutzerspezifisches Mapping auch zur Bedienung von PowerDVD verwendet werden. Ebenfalls möglich ist die automatische Umschaltung der Bildwiederholfrequenz (mittels CCC/nVIDIA Control Panel oder PowerStrip Profilen).