Jump to content

Einstellung für den Untertitel-Renderer?


Fruchtzwerg

Recommended Posts

Hallo,

 

ich vermisse die Einstellung für den Untertitel Renderer. Mein Setup: LAV Audio, Video und Splitter, madVR und xySubFilter für Untertitel. Wenn ich mir den remote Graph von DVBViewer anschaue, dann sehe ich dass der Subtitel-PIN vom LAV Splitter nicht verbunden ist. Beim Mediaplayer Classic gibt es dafür eine Einstellung. Wie kann ich das beim DVBViewer einstellen?

Link to comment
  • 10 months later...

Das wird über Optionen -> DirectX -> Vorgaben geregelt. Der DVBViewer bringt bereits einige Filtergraph-Vorgaben für Untertitel mit.

 

Die (vom DVBViewer benutzten) *.fgp Dateien befinden sich im Konfigurationsordner\GraphPresets, die usprünglich installierten Defaults im Installationsordner\Default\GraphPresets. Dort findet sich auch eine Datei FilterPreset.txt, die auf Englisch den Aufbau und Inhalt der *.fgp Dateien beschreibt. Die Vorlagen kannst du an deine Bedürfnisse / Verhältnisse anpassen. Siehe dazu auch im Wiki

 

http://de.dvbviewer.tv/wiki/Optionen_DirectX#Vorgaben

http://de.dvbviewer.tv/wiki/GraphPresets

 

Link to comment

Geht denn das mittlerweile überhaupt, die Untertitel vom LAV anzeigen lassen? Ich hab das zumindest bei mkv nicht hinbekommen und mir dann mit ffdshow dxva zusammen gebaut. 

Link to comment

Ich habe mal ein Preset erstellt, leider wird XySubFilter nicht geladen. Ich habe mich dabei an den Beispieldateien orientiert. Anbei auch mal die Graphen von DVBViewer und MPHC. Selbst wenn ich die Datei in graphedit lade, wird der XySubFilter korrekt verbunden. Was macht der DVBViewer anders?

BD_LAV_XYSUB.fgp

 

DVBViewer:

dvbviewer.png

 

MPHC:

mphc.png

 

Graphedit:

graphedit.png

Edited by Fruchtzwerg
Link to comment

Wo gibt es die von dir verwendete Version des XySubFilters? ist es diese hier (Stable Release, 32 Bit)?

 

Gibt es im Filter eine spezielle Unterstützung für MadVR? Falls ja, wie aktiviert man sie?

 

Vermutlich stört sich der DVBViewer daran, dass er den Filter nicht wie sonstige Video-Postprozessoren zwischen Decoder und Renderer klemmen kann. Da fehlt irgendwie ein Output Pin ;)

 

 

Link to comment

Das hier dürfte die letzte Version sein (würde ich auch empfehlen): https://forum.doom9.org/showthread.php?p=1850600#post1850600

 

XySubFilters benötigt einen kompatiblen Renderer wie madVR oder den EVR Custom aus dem MPC-HC Projekt, aber was die Hauptanwendung für eine Verbindung der Filter beitragen muss entzieht sich leider meiner Kenntnis (bei mir wird der XySubFilter im DVBViewer auch nicht geladen).

Link to comment

Danke für die Hinweise. Ich musste erst mal lernen, dass xy-VSFilter und xySubFilter etwas verschiedenes sind. Mit ersterem als Video-Postprozessor funktionieren nämlich MKV-Untertitel im DVBViewer, allerdings unter Verzicht auf DXVA.

 

8 hours ago, nuts said:

aber was die Hauptanwendung für eine Verbindung der Filter beitragen muss entzieht sich leider meiner Kenntnis  (...) Hier gibt es eine Diskussion über die Einbindung des Filters in einen Mediaplayer:

 

Sich die Spezifikationen in Forum-Posts und Open Source-Quellcode zusammenzusuchen, ist eine mühselige Angelegenheit... nichts was mich jetzt besonders motiviert ;)

 

Link to comment

Falls es eine Rolle spielt: ich versuche das ganze mit Blurays und nicht mit MKV (mpls ist die Playliste, m2ts ist der Stream). Ich benutze komplett LAV (Splitter, Audio, Video). Im LAV Splitter habe ich forced Subtitlestream eingestellt, dann wird auf jeden Fall ein Subtitle Stream aus den forced Subtitles erstellt und MadVR nutzt den dann auch automatisch. Bringt es euch was die Graphen aus graphedit bereitzustellen, wenn unklar ist welche Pins benötigt werden? Ich kann auch Screenshots von allen Komponenten und den Einstellungen aus den Graphen machen. Sagt mir einfach was ihr braucht und ich lade es hoch...

Link to comment
Am 23.9.2018 um 17:57 schrieb Griga:

...

 

Gibt es im Filter eine spezielle Unterstützung für MadVR? Falls ja, wie aktiviert man sie?

 

Vermutlich stört sich der DVBViewer daran, dass er den Filter nicht wie sonstige Video-Postprozessoren zwischen Decoder und Renderer klemmen kann. Da fehlt irgendwie ein Output Pin ;)

 

 

 

 

Aktivieren  muss  man offensichtlich nichts. Ich habe das mal in Graphstudionext getestet, funktioniert.

Also add Videorenderer "madVR" , add Mediafile (MKV mit Untertitelspur), Graph wird gebaut inklusive madVR und xySubFilter (autoload),

Untertitelspur im LAV-Splitter auswählen, play, madVR zeigt die Untertitel an.

Geht auch wenn ich den Graph von Hand zusammensetze mit dem xySubFilter ohne autoload.

Es darf dabei aber kein anderer Videorenderer im Graph sein, wenn der xySubFilter eingefügt wird (wie der VMR  in @Fruchtzwergs GraphEdit Bild).

Dann nützt auch kein austauschen gegen madVR etwas, keine Untertitel. Der xySubFilter muss erst wieder gelöscht, neu eingefügt und verbunden  werden.

Was zuerst da ist, xySubFilter oder madVR, spielt glaube ich keine Rolle.

 

Edited by gwr
Link to comment
45 minutes ago, gwr said:

Aktivieren  muss  man offensichtlich nichts. Ich habe das mal in Graphstudionext getestet, funktioniert.

 

Danke für die Untersuchung :) Mit diesen Hinweisen ist es kein großes Problem, die Verwendung des xySubFilters im DVBViewer zu veranlassen - allerdings nur, wenn MadVR als Video Renderer zum Einsatz kommt. MKV-Untertitel funktionieren damit im DVBViewer ohne weitere Umstände (d.h. ohne spezielles Filtergraph-Preset) und lassen sich auch per Menü umschalten. Die Kombination LAV Sourcefilter/Splitter + xySubFilter + MadVR kriegt sogar beim Abspielen von TS-Dateien die Anzeige von DVB-Untertiteln hin, wenn man dem DVBViewer Filter die Zuständigkeit entzieht (siehe Optionen -> DirectX -> DVBViewer Filter).

 

Es stellt sich die Frage nach der praktischen Ausführung. Soll der xySubFilter immer herangezogen werden, wenn er im System registriert ist und LAV Sourcefilter/Splitter plus MadVR zum Einsatz kommen, oder muss das konfigurierbar sein?

 

Link to comment

Der xySubfilter wird in einer internen Beta-Version jetzt geladen. :)

Super Sache Griga, danke für die Umsetzung.

 

Soweit ich die praktische Ausführung verstanden habe wird jetzt der xySubfilter immer herangezogen, wenn er im System registriert ist und LAV Sourcefilter + madVR verwendet werden.

Zusätzlich ist dies per Tweak deaktivierbar falls man andere Untertitel-Renderer über ein Graph-Preset ins Spiel bringen will.

Imho ist das für den DVBViewer ausreichend, aber vielleicht können sich dazu ja noch andere mit mehr bedarf und Erfahrung mit Untertiteln äußern.

 

MPC-HC hat dafür ein extra UI (siehe Bild).

Imho ist im DVBViewer aber erstmal nicht nötig, da die Möglichkeiten begrenzter sind (nur DVBSource + interne Untertitel Unterstützung und (zukünftig) LAV Source, madVR + xySubfilter).

 

Es gibt hier noch ein interessantes Untertitel Projekt: https://forum.doom9.org/showthread.php?t=173573

Imho funktioniert die Einbindung ähnlich wie beim xySubfilter. Sollte man sich entscheiden diesen Filter auch einzubinden wäre ein UI mit Auswahlmöglichkeit vielleicht doch ganz nett?

MPC-HC_subtitels.png

Link to comment
8 minutes ago, nuts said:

Zusätzlich ist dies per Tweak deaktivierbar falls man andere Untertitel-Renderer über ein Graph-Preset ins Spiel bringen will.

 

Nicht ganz richtig. Wenn durch eine Filtergraph-Vorgabe ein anderer Untertitel Renderer als Video-Postprozessor ins Spiel kommt, bleibt der xySubfilter automatisch außen vor.

 

Anders gesagt: Der DVBViewer holt den xySubfilter nur in den Filtergraphen, wenn es keine andere Möglichkeit gibt, den Untertitel-Output-Pin des LAV Sourcefilters / Splitters zu verbinden.

 

Der Tweak, mit dem man den xySubfilter auf jeden Fall aus dem Verkehr ziehen kann, ist für den Fall gedacht, dass er im System registriert ist, aber im DVBViewer Probleme macht.

 

Link to comment

Ok hier noch eine Beobachtung (ein Testsample mit SRT Untertiteln).

In MPC-HC wird der xySubfilter herbeigezogen, im DVBViewer nicht.

Untertitel werden im DVBViewer dennoch angezeigt, da der DVBViewer SRT selbst beherrscht?

Imho ist das aber nicht das gewünschte Verhalten oder? Auch in diesem Fall sollte der xySubfilter bemüht werden? Oder sollte es nicht zumindest konfigurierbar sein wer zuständig ist? 

 

 

P.S. Hat hier jemand eine gute Sammlung mit verschiedenen Untertitel Testdateien?

MPC-HC_SRT.png

DVBViewer_SRT.png

Link to comment
2 minutes ago, nuts said:

Untertitel werden im DVBViewer dennoch angezeigt, da der DVBViewer SRT selbst beherrscht?

 

So ist es. Das ist auch vorzuziehen, da es unabhhängig vom Filtergraphen via OSD realisiert wird und deshalb weder DXVA im Wege steht noch eine spezielle Kombination von Komponenten anderer Anbieter braucht. Und nein, ich werde das nicht konfigurierbar machen.

Link to comment

Nunja ob das vorzuziehen ist sei mal so dahingestellt. Der xySubfilter im Zusammenspiel mit madVR kann ja noch allerlei mit dem Untertiteln anfangen was der DVBViewer nicht kann.

Die Überzeugungsarbeit überlasse ich aber gerne Benutzern denen das wirklich wichtig ist. Für meine Zwecke tuts das mal so wie es jetzt ist.  ;)

 

Link to comment
On 9/28/2018 at 9:44 PM, nuts said:

(ein Testsample mit SRT Untertiteln).

 

Ich habe es mir kurz angeschaut. Da der LAV Source Filter in dem Fall keinen Output Pin für Untertitel bildet, bleibt unklar, wie das mit dem xySubfilter funktionieren soll. Ein in GraphStudio mit MadVR gebauter Graph brachte nach dem Hinzufügen des xySubfilters keine Untertitel zum Vorschein.

Link to comment

Das funktioniert vielleicht nur mit dem Autoloader. In den Einstellungen des xySubfilters "Load when needed" und "External" anschalten.

Dann add madVR, add Mediafile (mit externer srt -Datei) , die Untertitel kann man mit Rechtsklick auf den xySubfilter wählen. play

So funktioniert das hier in Graphstudionext.

ist nur "just for fun"

Link to comment
  • 2 weeks later...

Hendrik hat übrigens vor einiger Zeit einen Closed Caption Output-Pin in den LAV-Video-Dekoder eingebaut, der sich scheinbar direkt mit einem geeigneten Renderer verbinden kann. Welcher Renderer dies sein soll, weiß ich allerdings nicht:

 

LAV.jpg.2f8dd26ce62c31b5d96d0a7e55372749.jpg

 

Sichtbar wird dieser neue Pin allerdings nur bei MPEG2 oder H.264 und wenn keine DVD wiedergegeben wird:

(!bDVDPlayback && (codec == AV_CODEC_ID_MPEG2VIDEO || codec == AV_CODEC_ID_H264))
{
  if (m_pCCOutputPin == nullptr && CBaseFilter::IsStopped())
    m_pCCOutputPin = new CCCOutputPin(TEXT("CCCOutputPin"), this, &m_csFilter, &hr, L"~CC Output");
}

Und bei der Release-Version muß man das ganze über das LAV-Videosettings API explizit einschalten (eine Konfigurationsoption gibt es nicht dafür):

//  Enable the creation of the Closed Caption output pin
STDMETHOD(SetEnableCCOutputPin)(BOOL bEnabled) = 0;

 

Edited by SnoopyDog
Link to comment
16 hours ago, SnoopyDog said:

Hendrik hat übrigens vor einiger Zeit einen Closed Caption Output-Pin in den LAV-Video-Dekoder eingebaut,

 

Das bezieht sich offenbar auf EIA 608 Closed Captions, die im amerikanischen Standard ATSC verwendet werden. Dabei handelt es sich um Untertitel, die als "User Data" in MPEG2 oder H.264 Video eingebettet sind. Deshalb liegt es auch nahe, sie vom Video Decoder extrahieren zu lassen.

 

Closed Captions in MPEG2 Video unterstützt der DVBViewer bei Wiedergabe mit dem DVBViewer Filter schon länger (siehe Optionen -> Untertitel -> Immer nach ATSC-Untertiteln suchen - soll heißen, nicht nur bei Live TV mit Tunertyp = ATSC oder wenn ATSC als Quelle einer Aufnahme/Datei erkannt wird). Die Ausgabe erfolgt dabei nicht über DirectShow-Filter, sondern im OSD.

 

Im nächsten Release wird der DVBViewer auch Closed Captions in H.264 unterstützen. Damit gibt es dann Untertitel bei diversen US-amerikanischen Internet-Streams im HLS-Format.

 

Link to comment

Danke für die Information, das klingt logisch!

Link to comment

Ich habe die Version von Griga mit diversen Blurays getestet, es funktioniert aus meiner Sicht einwandfrei. Mein Setup: MadVR, XySubfilter, LAV Splitter/Video/Audio, Forced Subtitles im LAV Video. Vielen Dank für die Implementierung, jetzt muss ich nicht mehr umständlich zu MPC wechseln wenn eine Bluray von Untertiteln lebt, vielen Dank!

Link to comment
  • 1 month later...

Testversion bei mir

 

Testbericht: (funktioniert einwandfrei)

 

LAV 73.1

MadVR 92.17

latest XYSubfilter

AMD Relive 2019 (12.2) (Rx460@560)

 

VSsub deinstalliert,

bei Vorgaben LAV default ausgewählt (sonst geht kein 3D)

 

normale Bluray etc, XY wird geladen -> geht

4K HDR, XY wird geladen -> geht

3D FP, XY wird geladen geht (3D bleibt normal, mit VSfilter war bei 3D die Tiefe weg)

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...