MPV Player als Alternativer Player z.B. in Kodi

  • Ja, soweit ich weiß, sind das illegale Werte. Ich weiß auch nicht, wie oft die vorkommen. Mit madVR merkt man das ja nicht mehr. Interessant ist jedenfalls, dass die Algorithmen in diversen TVs, die damals mit madVR verglichen wurden, auch damit klar kamen. Also schön wäre es schon, wenn MPV da auch tolerant reagieren würde. Aber das kann ja noch kommen.

    Die TVs haben glaube ich damals allesamt einfach hart geclippt. Es wurde vermutet, dass auch die damaligen Mastering-Monitore geclippt haben, so dass denen das beim Mastering einfach nicht aufgefallen ist. Es sind insgesamt sehr wenige Filme, die kann man wohl an einer Hand abzählen.

  • Hallo,


    wirklich gute Sache und ich werde diese Thread verfolgen.


    Meine Frage ist, ob downscaling auch problemlos ginge?

    Mit den alten Pro Projektoren wäre eine KO Kriterien..


    Ich benutze madvr seit Jahren, zufriedenstellend, trotzdem gut zu hören, dass eine alternative gibt’s

  • Sorry für den dritten Post in Folge, aber ich habe etwas wichtiges vergessen zu schreiben: Der Parameter "target-peak" wird auch auf SDR angewandt. Die Erklärung hierzu seitens des Entwicklers ist, dass viele Leute heutzutage SDR auf 500 Nits TVs gucken und also auch für SDR eine Gewichtung wichtig ist. Kann ich zwar nachvollziehen, macht mir aber Probleme, da ich SDR und HDR in verschieden hellen Modi gucke. Es gibt wohl aber in der playercorefactory.xml die Möglichkeit, den zu startenden Player nach Regeln auszuwählen Eine der möglichen Bedingungen ist die Auflösung. Da kann man sich dann also zwei Scripte als Wrapper schreiben, die MPV mit jeweils anderen Parametern für alles >1080p starten. Evtl. kann man auch einfach ein anderes Config-File übergeben, das wäre am hübschesten.

    Ja das sollte gehen über die Regeln von Kodi und cmdline parameter von mpv.


    1. ein allgemeines Configurationsfile für mpv erstellen

    2. In der playercorefactory.xml mehrere Einträge für mpv hinzufügen

    3. unter <args> ein entsprechended zusätzliches Config file laden mit --include=<configuration-file> in denen dann die individuellen Optionen sind

    4. unter <rules> die entsprechenden Player auswählen


    Hier ein ungetestetes und theoretisches Beispiel für Windows:

  • Was hier schon an Infos zusammen kommt, ist ja Wahnsinn:respect:

    Genügend, um schon mal selbst einen Versuch zu machen.


    Erstmal ein paar Vergleiche zwischen madvr und mpv:

    (links: madvr, rechts: mpv)

    Da sehe ich bei madvr mehr Details. Gerade bei dem Hilight auf der Kugel, geht bei mpv etwas verloren.



    Da gefällt mir madvr auch besser. Auch wenn das vielleicht schon etwas zu hell sein könnte.


    Hier gehen ganz klar Details bei mpv verloren und es wirkt insgesamt zu hell.


    Ausgehend von den Bildern würde ich weiterhin madvr den Vorzug geben. Zumal mein System gerade schön rund läuft.

    Dennoch fände ich eine Linux- oder sogar Librelec-basierte Kiste sehr spannend.

    Ich müsste auch mal mehr mit den Parametern experimentieren. Das war ja nur ein erster Versuch. Vielleicht lässt sich da noch mehr rausholen.


    Interessant war auf alle Fälle, das ich auch eine deutlich geringere Last hatte. Mit madvr so bei 40% , mit mpv nur ca 10% (jeweils GPU load mit einer GTX 2070 Super).


    Was ich an Infos sonst noch gefunden habe, wäre bspw ein Vergleich zwischen verschiedenen Upscale-Algorithmen: Mathematically Evaluating mpv's Upscaling Algorithms

    Dazu noch eine Config, die auf hohe Video-Qualität ausgelegt ist: How To: Configuring MPV for Best Video Quality Including 4K Upscaling

    Darin wird auch der Upscaler "FSRCNNX_x2_8-0-4-1" benutzt, der im ersten Vergleich mit am besten abgeschnitten hat.


    Zudem sind in der Config auch verschiedene Profile erkennbar. Das geht damit also auch. So könnte sich das Problem mit dem multiplen Playern vlt auch lösen lassen.

    "A computer lets you make more mistakes faster than any other invention in human history, with the possible exceptions of handguns and tequila." - Mitch Ratcliffe

  • Durch die ganzen Optionen muss man sich erstmal durchfummeln. Was ich bisher gefunden habe:


    Anamorphe Vorverzerrung und Skalierung ist kein Problem. Untertitel werden dann auch brav immer an die Unterkante des Bildes geschoben. CIH mit Anamorphot sollte also kein Problem sein.


    Beispiel (vertikal strecken und etwas zoomen):

    Code
    video-scale-y=1.33
    video-zoom=-0.2


    Bitstreaming unter Windows ist über HDMI auch kein Problem:

    Code
    audio-spdif=ac3,dts,dts-hd,eac3,truehd
    audio-exclusive=yes


    Exlusive Fullscreen Mode:

    Code
    d3d11-exclusive-fs=yes


    MPV kann auch eine einfache Frameinterpolation (ähnlich Smooth Motion von madVR), aber die sieht nicht gut aus. Also habe ich die gleich wieder deaktiviert.


    3D-LUTs gehen anscheinend über ICC-Profile:

    Code
    icc-profile=<file>


    Somit habe ich mal grob alle Anforderungen abgeklopft, die ich habe. Eine Sache geht anscheinend nicht direkt: das Wechseln der Bildrate abhängig vom Stream. Das muss man entweder extern erledigen oder über ein Script, das man irgendwie einbettet (nicht getestet). Da man die ganzen Optionen wahlweise in der Konfigurationsdatei und über die Kommandozeile übergeben kann, ist man hier sehr frei für Automatisierungen (z.B. über meinen MovieManager).


    Klingt alles sehr interessant und brauchbar. So richtig den Bedarf zu wechseln, habe ich aktuell nur leider nicht. :zwinker2:

  • 3D-LUTs gehen anscheinend über ICC-Profile:

    Der Punkt ist mir nicht ganz klar. Ein ICC-Profil ist ja keine 3D-LUT. Den genauen Unterschied habe ich aber nie so richtig verstanden. Da wollte ich mich aber demnächst mal näher mit beschäftigen.


    Insgesamt gibt es kaum etwas, der der Player nicht kann. Das A und O sind natürlich erst mal die Einstellungen, die die Qualität betreffen. Falls da wer auf für Projektoren gut geeignete kommt, bitte unbedingt teilen.


    Ich werde wohl nachher mal testen, wie ich verschiedene Profile für verschiedene Filme realisiseren kann. Auch muss ich jetzt mal gucken, wie ich die Lichtsteuerung umsetze. Es entfällt ja leider die Möglichkeit, aus Kodi heraus Pause und Resume zu erkennen. Da muss jetzt irgendwas her, was den MPV abfragt, oder der MPV müsste selber was senden, was eher schwierig werden dürfte.

  • Hi


    steinigt mich nicht für die Frage: aktuell habe ich für MadVR ne 3080 am laufen. Aber W potent sind heute integrierte GPUs? Käme man evtl gar mit sowas hin (upscaling+tonemapping)? Angesichts Grakapreise wäre das für einige ein Segen!

  • Der Punkt ist mir nicht ganz klar. Ein ICC-Profil ist ja keine 3D-LUT. Den genauen Unterschied habe ich aber nie so richtig verstanden. Da wollte ich mich aber demnächst mal näher mit beschäftigen.

    Da bin ich mir auch nicht sicher und man kann ja zusätzlich ein Verzeichnis für 3D-LUTs angeben. Ich empfand ICC-Profile auch immer als sehr undurchsichtig. Unter Windows z.B. kann man sie zwar auf den Ausgang der GPU anwenden, aber es wird nur die 1D-LUT genutzt. Die Koordinaten des Gamuts werden ignoriert. Dagegen werden letztere genutzt, wenn man z.B. einen Druck-Proof (z.B. in Lightroom) macht. Das ist alles so implizites Wissen, das nicht klar irgendwo steht. Man kann mit DisplayCAL auf jeden Fall 3D-LUTs als ICC/ICM erzeugen. Also muss das ja irgendwie dort enthalten sein (können).



    Man kann aber auf jeden Fall für den ersten Test den Gamut fest auf DCI-P3 setzen. Das geht genauso wie in madVR.

  • Hier ist ein wenig beschrieben, was MPV mit den ICC-Profilen macht. Ich verstehe es so, dass es sich selbst eine 3D-LUT generiert. Daher auch der Cache-Pfad. Es wird dort aber auch eine Möglichkeit gezeigt, wie man eine selbsterstellte 3D-LUT über einen FFMPEG-Filter anwenden kann.


    Ich glaube, das mit dem ICC-Profil muss man einfach mal ausprobieren und durchmessen. Dann weiß man ja, ob alle Informationen da sind.

  • Super Sache! Wäre toll, wenn man mit MPV eine MadVR-Alternative schaffen könnte.

    Ist es eventuell sogar möglich MPV mit dem Videoprocessor-Projekt unter Linux zu kombinieren? Dann könnte man ja auf Linuxbasis einen reinen Videoprozessor bauen und mit einem beliebigen Zuspieler betreiben.

    Mir fehlt derzeit leider die Zeit um Tests durchzuführen, daher bin ich Allen extrem dankbar, die sich hier praktisch mit dem Thema auseinander setzen!

  • Olombo Das wird Dir wohl nur jemand beantworten können, der es selbst probiert hat und der werde ich mit einigermaßen alter Hardware nicht sein.


    Aber mit MPV fällt der Einstiegspreis doch schon ganz beachtlich.


    Mule Ja, die Möglichkeit besteht durchaus.


    Hier übrigens mal meine playercorefactory.xml, die also für 4K FIlme mein Wrapper-Script etwas anders aufruft


    Und hier mein Wrapper-Script, welches meine Projektorsteuerung auf den richtigen Lampenmodus bringt:

    Bash
    #!/bin/sh
    
    projector_control $1
    
    mpv "$2"
    
    exit 0


    Hier noch der Eintrag in der mpv.conf, der je nach Auflösung andere Parameter setzt, aktuell nur einen.

    Code
    [HDR]
    profile-desc=HDR options
    profile-cond=width > 1920
    target-peak=120


    Funktioniert alles auf Anhieb und ohne Gefummel, so muss Spielzeug!

  • So, fast fertig mit Lichtschalterei und Fernbedienung, endlich wieder über das Netzwerk, also einer empfängt und verteilt es an alle. Da geht dann echt mal "nahtlos".


    Was mich begeistert, vor allem auch beim Einrichten/Testen, ist die Geschwindigkeit. Wenn ich auf Play drücke geht es unmittelbar los und Spulen/Kapitel anspringen ist der reine Wahnsinn.


    Ich hab mal eine Heimkniotaugliche Seek-Bar konfiguriert, etwas dünner, an der unteren Bildkante und komplett von links nach recht:

    Code
    osd-bar-align-y=0.98
    osd-bar-w=99
    osd-border-size=2
  • Habe den ganzen Thread noch nicht ganz "durchgearbeitet":

    Aber schon einmal Danke, dass ihr mir MPV wieder auf den Schirm gebracht habt. :sbier:

    Hatte mir das vor langer Zeit mal angesehen, da schien es mir noch nicht recht tauglich madvr abzulösen ....

    Wird wohl Zeit für einen neuen Versuch :respect:


    Ergänzend: Für Windows gibt es noch mpv.net

    Der bietet wohl "mehr" GUI und basiert auf MPV, ob alle Features des Originals drin sind weiß ich nicht.

    https://github.com/stax76/mpv.net/releases

  • Was mich begeistert, vor allem auch beim Einrichten/Testen, ist die Geschwindigkeit. Wenn ich auf Play drücke geht es unmittelbar los und Spulen/Kapitel anspringen ist der reine Wahnsinn.

    Ja, das ist mir auch sofort aufgefallen. Der Film startet sofort ohne längere Denkpause.


    Ich hab mal eine Heimkniotaugliche Seek-Bar konfiguriert, etwas dünner, an der unteren Bildkante und komplett von links nach recht:

    Viele dieser OSD-Einstellungen funktionieren unter Windows übrigens nicht. Die Fontgröße konnte ich zwar ändern, aber am Aussehen/Position der Leiste und Buttons überhaupt nichts. Das scheint unter Linux anders zu sein.

  • Irgendwie bekomme ich immer nur die Fehlermeldung [vo/gpu] Error loading ICC profile. Komischerweise macht Displaycal bei mir unter Linux nur .icc Dateien, unter Windows (und da habe ich die aktuellen Messungen drauf) nur .icm.


    Naja, das wird man auch noch irgendwie rausfinden.

  • Ui, jetzt bin ich erst über die LUA-Scripte gestolpert. Damit kann man dann wirklich alles machen, Systemaufrufe (Licht ausmachen und so), wenn der Player irgend einen Zustand erreicht, sei es eine Zeitmarke, Play, Pause, sonstwas, Webbasierte Steuerungsinterfaces, Autocrop, prakisch alles, was einem einfallen mag. Na da kann man sich dann auch langfristig austoben.


    Mein player ist übrigens so weit fertig und die User-Experience lässt meine alte Kodi/MadVR-installation dagegen wie aus dem letzen Jahrtausend aussehen. War lange nicht so happy mit einem neuen Spielzeug!

  • Ui, jetzt bin ich erst über die LUA-Scripte gestolpert. Damit kann man dann wirklich alles machen, Systemaufrufe (Licht ausmachen und so), wenn der Player irgend einen Zustand erreicht, sei es eine Zeitmarke, Play, Pause, sonstwas, Webbasierte Steuerungsinterfaces, Autocrop, prakisch alles, was einem einfallen mag. Na da kann man sich dann auch langfristig austoben.


    Mein player ist übrigens so weit fertig und die User-Experience lässt meine alte Kodi/MadVR-installation dagegen wie aus dem letzen Jahrtausend aussehen. War lange nicht so happy mit einem neuen Spielzeug!

    Magst Du Deine Config mit uns teilen?:sbier:

    Ich wäre mittelfristig glaube ich auch Happy, wenn ich auf diesem Wege von Windows an dieser Stelle weg käme....

  • Na klar, hier die aktuelle config, musss ich bei Gelegenheit mal strukturieren:

    Hier ein Script - autocrop.lua - das einfach nur in den scripts Ordner (unter Linux ist das ~/.config/mpv/scripts/) muss und dann automatisch schwarze Balken erkennt und wegschneidet, genau wie MadVR das auch macht: https://github.com/mpv-player/…er/TOOLS/lua/autocrop.lua

    Einfach den Inhalt in eine Datei autocrop.lua kopieren und in den Scripte-Ordner packen - fertig, der Rest geschieht automatisch.


    Was mir dann eben beim Zappen noch so aufgefallen ist: Einige wenige HDR-FIlme brauchen aus irgend einem Grund um einiges mehr Prozessor, als mein Pentium Gold im Backup-PC liefert. Ich werde da morgen mal den i5 einbauen. Die NVidia 1050 Ti reicht in jedem Fall aus, bislang. Die 1050 kosten aktuell um die 250 €. Uff, meine habe ich für 150 gekauft. Falls wer wagemutig ist, könnte man mal testen, ob man mit einer 1030er hinkommt, die gibt es aktuell für um die 100 €. Ich könnte mir gut vorstellen, das die ausreichen könnte, aber das müsste man halt mal probieren. Meine alte habe ich damals leider weggegeben. Der jenige wird sich aber über kurz oder lang auch einen Linux-PC mit MPV damit bauen, das ist bereits geklärt..


    Dann ist mir aufgefallen, dass HDR-Filme nicht mehr ganz so bunt rüber kommen, wie ich es gewöhnt bin. Beim neuen Bladerunner habe ich die Casino-Szene um einiges bunter in Erinnerung. In meiner config steht drin, dass der Projektor auf DCI-P3 steht und SDR wird auch korrekt gemapped, würde ich sagen. Da muss ich noch mal forschen, was Sache ist. Evtl. erschlägt sich dass aber auch mit ICC-LUTs, mal sehen.

  • Man müsste mal Kontakt zu den Kodinerds aufnehmen. Da sitzen doch ein paar Entwickler von Libreelec.

    Wenn die den Player implementieren dann könnte doch auch vielleicht eine China box mit s905x Chipsatz das alles out of the box realisieren, oder??

    Das wäre der absolute Knaller.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!