Wiedergabe Tutorial

Aus Fansub-Wiki
Version vom 10. Juli 2006, 15:01 Uhr von Naito (Diskussion | Beiträge) (4. Zwischenspeicherung (by Naito) (fertig bis 3.))
Zur Navigation springen Zur Suche springen

Dieses Wiedergabe Tutorial befasst sich mit dem Abspielen verschiedener Video/Audio-Dateien, basierend auf ffdshow.

Installation

Systemvoraussetzung ist Windows XP (ServicePack 2) mit DirectX (9.0c).

Player mit integrierten DirectShow-Filtern

Es gibt Player, die i.d.R. keine zusätzlichen Decoder benötigen. Bei diesen Playern sind die Decoder / Splitter schon im Programm enthalten. Bekannte Player sind der VLC (VideoLan Client) Media Player, der MPlayer und der TCMP (The Core Media Player). Wer diese Player nutzt, kann hier mit lesen aufhören, denn alles weitere was besprochen wird, ist (meist) nicht relevant für diese.

Das CCCP (Combined Community Codec Pack)

Informationen zum CCCP gibt es hier. Die Tipps für Einstellungen können übernommen werden, es entfällt jedoch die manuelle Installation.

Manuell

Mit den folgenden Programmen lassen sich alle gängigen Audio- und Videoformate wiedergeben. Ausnahme sind QuickTime (*.mov) und RealMedia (*.ram). Für diese wird zusätzlich AlternativeQuickTime / QuickTime Player oder Alternative RealMedia / RealMedia Player benötigt.

ffdshow

  • Zwingend erforderlich.
  • Hinweise zu Downloadmöglichkeiten und Erklärung gibt es hier.

Media Player Classic (MPC)

  • Zwingend erforderlich. Download (deu)
  • Ich werde hier alles anhand des Media Player Classic besprechen, denn diesen gibt es auf Deutsch.
  • Alternativ bietet sich auch Zoom Player an.

Haali Media Splitter

  • Nicht zwingend erforderlich, aber empfehlenswert. Download (eng)
  • Der Media Player Classic hat zwar schon einen Splitter für MKV, MP4 und OGM integriert, jedoch bietet der Splitter von Haali mehr Funktionen, bessere Unterstützung und ist aktueller.
  • Installation: Heruntergeladene EXE-Datei (Setup) ausführen und den Anweisungen folgen.
  • Wenn der Haali Media Splitter genutzt wird, müssen die Integrierten Splitter des Media Player Classic abgeschaltet werden:
    1. Dazu in der Menüleiste unter Ansicht die Optionen… auswählen.
    2. Unter Interne Filter sind in Quellfilter die Hacken bei Matroska, MP4/MOV und Ogg zu entfernen.
    3. OK klicken.

DirectVobSub (VSFilter)

  • Erforderlich zum darstellen von Untertiteln, die nicht in das Video „eingebrannt“ (Hard Subs) sind (z.B. bei MKV). Download (eng)
  • DirectVobSub ist die vsfilter.dll programmiert von Gabest. (Nicht mit dem gleichnamigen Programm VobSub verwechseln; ebenfalls von Gabest.)
  • Installation:
  1. Die vsfilter.dll an einem geeigneten Ort kopieren (z.B. C:\Programme\DirectVobSub).
  2. Um die vsfilter.dll in Windows zu registrieren, folgende Kommandozeile ausführen: (unter Start –> Ausführen…) regsvr32 C:\Programme\DirectVobSub\vsfilter.dll
  3. Den Computer neu starten! (Wenn nicht, funktioniert die DLL-Datei noch nicht)

ffdshow – Video Decoder Configuration

Hinweise:

  • Dies stellt eine Auswahl von Einstellmöglichkeiten bestimmter Bereichen von ffdshow dar. Eine Erläuterung aller Funktionen und Möglichkeiten würde den Rahmen des Tutorials sprengen, weswegen hier nur eine wenige wichtige erklärt werden.
  • Bei Unklarheiten besser Standardeinstellungen belassen!
  • Einstellmöglichkeiten sind kursiv geschrieben.

Codecs

Wenn bei einem Format disabled ausgewählt ist, heißt das nicht zwangsläufig, dass ein Video gar nicht wiedergegeben werden kann. Es wird nur kein ffdshow verwendet. Der Windows Media Player zum Beispiel bringt ja auch Decoder mit, die in diesem Fall dann einspringen (bzw. ein anderer Decoder, wenn dieser installiert ist).

Bei der Installation von ffdshow bring dieser schon eine Auswahl von Voreinstellungen mit. Hier ist nochmal eine Auswahl wichtiger Codecs, die wie folgt eingestellt werden sollten:

  • XviD: libavcodec
  • DivX 3, DivX 4, DivX 5: libavcodec
  • Other MPEG4: libavcodec
  • WMV1/7: disable (ein entsprechender Decoder wird mir dem Windows Media Player installiert)
  • WMV2/8: disable (ein entsprechender Decoder wird mir dem Windows Media Player installiert)
  • H.264: libavcodec (Unbedingt H.264 aktivieren da, x264 keinen eigenen DirectShow-Filter mitbringt!)
  • Theora: libtheora (einziger DirectShow-Filter für Theora)

Natürlich kann man noch weiter Decoder aktivieren, jedoch sollte man dann auch im entsprechenden Player diese Decoder deaktivieren, da sonst ffdshow nicht genutzt wird.

Original-Decoder von XviD unter ffdshow

Wenn man XviD installiert hat, stellt ffdshow bei XviD einen weiteren Decoder (neben der Standardbibliothek libavcodec) zur Verfügung. Wenn man hier XviD wählt, decodiert die im XviD-Installationspacket enthaltene xvid.dll den Video-Stream und reicht ihn an ffdshow weiter, wo alle zusätzlichen Optionen von ffdshow zur Verfügung stehen. Diese Option ist höchstens für XviD zu empfehlen, damit ffdshow bei XviD-Videos den Originaldecoder verwendet, sollte aber generell nicht genommen werden. Die Postprocessing-Decodereinstellungen von XviD im Startmenü unter Programme -> XviD -> Configuration Decoder haben keinen Einfluss auf ffdshow (jedoch auf andere Programme, die den originalen XviD-Decoder verwenden).

Info & Debug (Info)

Hier findet man Informationen zum wiedergegebnen Video.

Merit ist Rang des DirectShow-Filters ffdshow (Empfehlung: default)

Image Settings (Bildeinstellungen)

Nur wenn in den Kästchen vor dem Filternamen eine Häckchen gesetzt ist, werden diese auch genutzt. Einige Filter lassen sich auch in Echtzeit (de)aktivieren.

Profile

Alle Einstellungen, die im Bereich Image Settings (Bildeinstellungen) vorgenommen werden, lassen sich als Profile abspeichern. Besonders nützlich ist, das sich unter Bedingungen für automatisches Laden... Regeln festlegen lassen, wann bestimmte Profile gestartet werden sollen. Z.B. nur wenn der Madia Player Classic verwendet wird, oder im Dateinamen gestimmte Wörter vorkommen (Z.B. Fansubgruppen-Kürzel). Wichtig ist, seine persönlichen Profile mit Hilfe von Datei speichern zu sichern, denn bei einer Aktualisierung/Neuinstallation von ffdshow gehen diese verloren.

Show/Hide Filters

Zeigt Filter unter Image Settings (Bildeinstellungen) oder blendet diese aus (z.B. wenn bestimmte Filter eh nie verwendet werden).

  • Available Filters: Alle verfügbaren Filter.
  • Visible Filters: Alle angezeigte Filter.

Postprocessing (Nachbearbeitung)

Die Nachbearbeitungen hier sind alle gegen Blockbildung (Deblocking). Dies führt zwangsläufig zu mehr oder weniger starken Weichzeichnen, das durch späteres Schärfen ausgeglichen (und verbessert) wird.

  • Voreinstellung & Benutzerdefiniert:

Als Grundeinstellung empfiehlt es sich, mindestens die Voreinstellungen auf Stufe 5 (fünfte von links) zu nutzen. Stufe 6 & 7 verstärken das Deblocking noch mehr, führen aber auch zu stärkerem Weichzeichnen (das durch späteres Schärfen problemlos ausgeglichen werden kann). Wenn Automatische Qualitätsregelung gewählt wird, entscheidet libavcodec anhand der verfügbaren Prozessorleistung, welche Voreinstellungs-Stufe gewählt wird.

  • Verarbeitungsstärke: Gibt an, wie stark des Deblocking geschehen soll. Ein hoher Wert führt zu weniger Blockartefakten, aber auch zu stärkeren Weichzeichnen. (Empfehlung zwischen 100% und 150%)
  • Verarbeitungsmethode:
    • mplayer: Methode zur Erkennung von Blocks aus dem mplayer (Die Einstellungen bei Genzwert-Korrektur sind nur für TV, unerheblich für PC-Bildschirme.)
    • Nics: Methode zur Erkennung von Blocks und genauso wie die mplayer, ziemlich ähnlich zu der von XviD.
    • SSP: Komplett andersartige Methode für Deblocking. (sehr gute Qualität aber auch hoher Ressourcenverbrauch)
  • H.264 Deblocking: Empfehlenswert ist when decoding H.264 video; es wird H.264 Deblocking nur bei H.264-Videos angewand.

Sharpen (Schärfen)

Hinweis: Zu starke Einstellungen führen zu Halos („Heiligenscheine“) Allgemein gilt, dass man den Schwellenwert (Threshold) nicht verändert werden sollte, da dieser optimal gewählt ist.

  • xsharpen: Guter allgemeiner Schärfer. Stärke zwischen 40 und 70 sollte guter Ergebnisse liefern.
  • Unschärfe-maske (unshap): Nicht Empfehlenswert, da zu kleiner Stärkewert wenig schärft und ein zu hoher zu Blockartefakten führt.
  • msharpen: Guter Schärfer, der allerdings zu leichten „Ausfransen“ der Kanten führt.
  • swscaler: Sollte nicht genutzt werden, da (nicht nur) für Anime ungeeignet.
  • asharp: Guter Schärfer, der zudem auch für stabile Kanten sorgt. Ein Adaptive sharpenning strength zwischen 3 und 6 sollte gute Ergebnisse liefern. Block adaptive sharpening führt zu Weichzeichnen (das mit der Nachbearbeitung gegen Blockbildung schon geschehen ist) und sollte nicht genutzt werden.

Miscellaneous (Weitere)

  • IDCT (Inverse Discrete Cosine Transform) ist auf auto (Standard) zu belassen. libavcodec entscheidet dann anhand des FOURCC des Videos, welche iDCT es nutzt.
  • Workaround encoder bugs: Nur Automatisch ist zu aktivieren. libavcodec entscheidet dann eigenständig, welche Fehler bereinigt werden sollen (falls welche da sind).
  • Error Concealment & Error Resilience: Kaputte Dateien trotzdem wiedergeben

Output

Unbedingt das Häckchen bei Use overlay mixer setzen, damit keine Problem mit Bildverzerrungen auftreten und die Filter auch angewendet werden. (HW deinterlacing steht für Deintelacing mittels Hardware (z.B. TV-Karte) und sollte nicht aktiviert werden.) Empfehlenswert ist auch Allow output format changes during playback zu aktivieren.

ffdshow – Audio Decoder Configuration

Codecs

WMA nicht aktivieren. Ein passender Decoder wird mit dem Windows Media Player installiert. Bei AC3 empfiehlt es sich Dynamic range compression zu aktivieren. Bei DTS empfiehlt es sich Dynamic range compression und Chek for DTS in WAV zu aktivieren. Bei Vorbis empfiehlt es sich Vorbis Gain zu aktivieren. Der libavcodec ist tremor vorzuziehen. (Der tremor-Decoder ist nicht so gut in der Decoding-Qualität, bietet aber andererseits Geschwindigkeitsvorteile gegenüber libavcodec.)


Audio Settings

Show/hide filters

Zeigt oder Versteckt Filter. Nur wenn in den Kästchen vor dem Filternamen eine Häckchen gesetzt ist, werden diese auch genutzt. Einige Filter lassen sich auch in Echtzeit (de)aktivieren. Available Filters: Alle verfügbaren Filter. Visible Filters: Alle angezeigte Filter.

Processing

Allowed sample formats for sound processing gibt an, mit wie viel Bit ffdshow intern rechnet. Floating point to integer convention gibt an, wie von 32 Bit floating point (mit Nachkomma) auf integer (Ganzzahlig) umgerechnet werden soll.


Dolby Decoder

Rear channels delay gibt die Verzögerung zu den Frontlautsprechern in Millisekunden (ms) an. Sollte, wenn aktiviert, auf den von Dolby vorgegeben 20ms belassen werden.


Mixer

Mixer Custom Matrix

      Eigene Matrix eintragen

Normalize Matrix???

      ???

Voice control

      Stimme verstärken???

Expand stereo

      ???

Voice

      Lautstärke???

Surround

      Lautstärke???

LFE

      Lautstärke???

Unter Output Speakers configuration: 2/0 – Stereo: 2 Lautsprecher vorn (1 Links, 1 Rechts) 3/0 - 3 Front: 3 Lautsprecher vorn (1 Links, 1 Center, 1 Rechts) 3/2 - 5 Channels: 3 Lautsprecher vorn und 2 hinten LFE: aktiviert den Basskanal

Für eine 5.1-Anlage ist 3/2 - 5 Channels mit LFE zu aktivieren. Für eine 2.1-Anlage ist 2/0 - Stereo mit LFE zu aktivieren. Für eine 2.0-Anlage ist 2/0 - Stereo zu aktivieren. (klassisches PC-Boxen-Paar)

Swap channels

Standardmäßig nicht zu aktivieren.

Selten kommt es vor, dass in einem Video die Soundkanäle nicht richtig angeordnet wurden. Falls dies doch mal der Fall sein sollte, kann man hier die Soundkanäle vertauschen, um in den Genuss des „richtigen“ Sounds zu kommen.


Volume

Mit Master Volume lässt sich die Lautstärke insgesamt (über alle Kanäle) anpassen.

Wenn Decibels scale aktiviert ist, werden die Werte nicht in Prozent sondern in Dezibel (db) angezeigt.

L = Left = vorne links C = Center = vorne mitte R = Right = vorne rechts SL = Surround Left = hinten links SR = Surround Right = hinten rechts LFE = Basskanal

Show current volume levels zeigt einen Balken mit der Lautstärkeänderung.


AC3 über S/PDIF

Um AC3 (Dolby Digital) per S/PDIF ausgeben zu können, muss der vorliegende Audio-Stream in DVD-konformes AC3 umgewandelt werden. Dazu sind folgende Einstellungen vorzunehmen:

Der DVD-Standard verlangt eine Samplingfrequenz (in Hz) von 48kHz. Da aber nicht immer der Audiostream mit 48kHz vorliegt, benutzen man Resample um die Samplingfrequenz anzupassen. Unter Resample to ist 48000 Hz zu wählen. Der Mode kann, je nach Rechnerstärke, frei gewählt werden. Die Bedingung ist Resample always („Wandle immer um“), damit, egal welchen Sampling-frequenz als Input vorliegt, immer 48kHz ausgegeben wird.

Unter Output AC3 mit einer Bitrate von 448kbps auswählen. Dies entspricht dem DVD-Standard, und kein Decoder sollte damit Probleme haben. Unter Connect to ist any filter und Allow direct-to-file output zu wählen (ggf. auch DirectSound oder WaveOut ausprobieren).

S/PDIF-Ausgang der Soundkarte mit dem S/PDIF-Eingang der HiFi-Anlage verbinden.

Wie man den S/PDIF-Ausgang eurer Soundkarte aktiviert (sofern vorhanden), entnehmt bitte dem Handbuch.


ffdshow – VfW Decoder Configuration

ffdshow stellt anderen Programmen VfW-Codecs für Encoding zur Verfügung.

Ist zum Anschauen von Videos nicht notwendig und sollte bei den Standarteinstellungen belassen werden.

Media Player Classic

Interne Decoder-Filter abschalten

Damit auch ffdshow (mit den entsprechenden Einstellungen) auch einspringt, müssen die im Media Player Classic integrierten DirectShow-Decoder deaktiviert werden. Natürlich sollte nur die Decoderfilter deaktiviert werden, die auch in ffdshow aktiviert sind. Ansonsten bleiben die Lautsprecher stumm und das Bild dunkel, oder es springt ein (nicht gewollter) anderer Decoderfilter ein. Der Media Player Classic verwendet die gleichen Bibliotheken wie ffdshow, jedoch bietet ffdshow wesentlich mehr Einstellmöglichkeiten.


Untertitel bei anamorphen Video im schwarzen Bereich darstellen

Achtung: Führt zu zusätzlicher Prozessorlast.

Bedingung: Direct3D-Grafikkarte mit aktivierter Hardwarebeschleunigung. (Systemsteuerung --> Anzeige --> Einstellungen --> Erweitert --> Problembehandlung --> Schieber auf Maximal)

Leider funktioniert das nicht immer so wie es soll. Manchmal kommt es zu doppelten Untertiteln. Einmal in den Schwarzen Balken und einmal (wie es normalerweise auch ist) im (unteren) Bereich des Videos.

Overlay für Untertitel aktivieren

Im Media Player Classic die Optionen öffnen. Unter Wiedergabe --> Ausgabe den VMR9 (renderless) als DirectShow-Video auswählen.

Untertitelposition anpassen

Im Media Player Classic unter Untertitel Position anpassen aktivieren. Horizontal die Untertitel über das Bild hinausschieben, indem man einen Wert über 100% wählt. H(orizontal): 110 % V(ertikal): 50 %


ODER (Es gibt zwei Möglichkeiten. Nur eine ist zu nutzen!)


In DirectVobSub im Reiter Main den Hacken bei Override placement setzen. Horizontal die Untertitel über das Bild hinausschieben, indem man einen Wert über 100% wählt. H(orizontal): 110 % V(ertikal): 50 %

Im Reiter General unter Picture Size das Vertical Padding auf das entsprechende Monitorformat setzen. Extended to 4:3 ist für 5:4 Monitore. (Standard) Extended to 16:9 ist für 16:10 Monitore. (Breitbild oder auch „Widescreen“)



Erläuterung zu Fachbegriffen

DirectShow Ist eine Multimedia-Schnittstelle, die von DirectX zur Verfügung gestellt wird. Es erlaubt die Wiedergabe (und das Erstellen) von verschiedensten Audio- und Video-Dateien. (Informationen zu DirectShow gibt es bei hier bei Wikipedia unter Weiterführende Links.) DirectShow stellt u.a. folgende Filtertypen zur Verfügung: Sourcefilter (Quellfilter): Öffnet Quelldatei und reicht sie in passender Form weiter. Demultiplexer: Spaltet Quelldatei in die einzelnen Streams (Audio, Video) auf. Parser: Demultiplexer mit weiteren Funktionen wie Suchen und Springen. Decoder: (s. unten) Renderer: Reicht Rohdaten an Treiber (der Sound- /Grafikkarte) weiter

VfW Ist eine Multimedia-Schnittstelle von Windows, zum Bearbeiten von Video (und Audio) in das AVI-Format (z.B. mit Hilfe von VirtualDub).

Decoder Dekomprimiert eine komprimierte Multimedia-Datei.

Encoder Komprimiert eine Multimadia-Datei; wobei er versucht mit, verschieden Techniken, soviel wie möglich Informationen des Originals beizubehalten, die der auch Mensch wahrnimmt.

Codec Kunstwort aus Encoder und Decoder

Player Programme zur Wiedergabe von Video und Audio (sowie zur Darstellung von Untertiteln).

MPEG4-ASP (auch H.263) ist ein Video-Kompressions-Standard. Die bekanntesten Encoder sind wohl DivX sowie XviD (der Qualitativ besser und OpenSource ist).

MPEG4-AVC (auch H.264) ist ein Video-Kompressions-Standard. Die bekanntesten Encoder sind sowohl x264 (OpenSource) als auch Nero’s AVC-Codec.

Container Kann man sich am einfachsten als Packet vorstellen, in das man verschiedenste Informationen ablegen kann, z.B. Video-Stream(s), Audio-Stream(s) und/oder Untertitel. Die gebräuchlichsten Container sind AVI (*.avi), Matroska (*.mkv) und MPEG4 (*.mp4)

Splitter Spaltet die Informationen (= Streams) die in einem Container sind auf, und reicht sie an entsprechende Decoder / Programme weiter.

FourCC Identifikationscode, anhand dessen ein Programm erkennt, welchen Decoder es benutzen muss um das Video wiedergeben zu können.

Kompilieren Ein OpenSource-Programm liegt immer als Quellcode (Source Code) vor. Dieser Quellcode ist so aufgebaut, dass der Mensch in lesen, verstehen und bearbeiten kann; lauffähig (d.h. eine ausführbare Datei) ist er nicht. Damit der Quellcode eine ausführende Datei (Binary) wird, benötigt man einen Vorgang der Kompilieren genannt wird. Der Compiler (das Programm, das den Kompilier-Vorgang (compiling) durchführt) verarbeitet der Quellcode so, dass der Computer ihn verstehen kann und schreibt das Ergebnis in entsprechende Dateien (die wir als *.exe, *.dll, usw. kennen und benutzen).

Alpha Eine sehr frühe Programmversion, in der noch nicht alle Features eingebaut und getestet sind. (meist nur für Testzwecke, sollte nicht benutzt werden)

Beta Eine frühe Programmversion, in der zwar alle Features eingebaut, aber noch nicht ausreichend getestet sind. (können benutzt werden)

Stable Eine Programmversion, in der alle Features eingebaut und getestet sind, so das das Programm als stabil lauffähig gelten kann. (bedenkenloser Einsatz)


In der OpenSource gibt es verschiedene Leute, die kompilieren. Wenn ich mich dabei auf Binaries einer bestimmten Person beziehe, schreibe ich immer „von / by [Name]“. Einige optimiere ihre Binaries z.B. für den SSE-Befehlssatz. Solche Binaries funktionieren nicht einwandfrei auf PCs mit Prozessoren, die SSE-Befehlssätze nicht verstehen. CPU-Z ist ein Programm, mit dem man u.a. sehr gut nachprüfen kann, welche Befehlssätze ein Prozessor unterstützt.

Nicht immer gibt es offizielle Binaries eines Programms. Daher werde ich Binaries, die aus dem originalen Quellcode sind als „offiziell“ (mit Anführungszeichen) bezeichnen, und Binaries die Patches (Erweiterungen / Veränderungen) enthalten als „patched“.

Bei weiteren ungeklärten Begriffen bitte Wikipedia und Google benutzen.