Ich fange hier mal einen frischen Thread zum Thema MPV Video-Player an.
Home: https://mpv.io/
Manual: https://mpv.io/manual/stable/
Da ja leider die Entwicklung des allseits beliebten Renderers MadVR mehr oder minder zum Stillstand gekommen ist und es auch keine wirklich frei nutzbare Release-Version gibt, suche ich schon seit längerem eine Alternative. Mich selber nervt zudem der Zwang zum Windows-Unterbau enorm. Ich bin dann zufällig drauf gekommen, dass ausgerechnet MPV, den ich seit Jahr und Tag auf meinen Linux-Notebooks als Player nutze, mittlerweile selbst HDR sehr gut zu meistern scheint. Ich wäre tatsächlich nie auf die Idee gekommen, das mal als ernsthafte Alternative in betracht zu ziehen, da bislang alle Player, die ich dahin gehend getestet hatte, krachend durchgefallen sind. Tja, MPV scheint es zu können, HDR und eh noch vieles mehr, was ihn unter'm Strich dann zum meiner Meinung besten aller Player machen würde. Das soll nun auf den Prüfstand...
Anno 1998 habe ich meinen ersten PC-Player mit Menu zum Browsen und Fernbedienung gebaut, mit MPlayer. MPlayer heißt heute MPV und ich fänd es schon sehr cool, wenn sich der Kreis wieder schließen würde!
MPV ist also aus dem über 20 Jahre alten MPlayer Projekt hervorgegangen, das neben dem eigentlichen Linux-Kernel damals das Open Source Projekt mit der größten Beteiligung war. Entsprechend riesig ist die Liste der funktionierenden Features.
Untertitel, Scaling, Cropping, Dithering, alles mit sehr guten Algorithmen ist an Board, Audio-Verarbeitung, Up- und Downmixing, Kompressoren, da fehlt es wirklich an nix. MPlayer schlief irgendwann ein und wurde vor ein paar Jahren von einem kleineren, scheints sehr ambitionierten, Team übernommen, aufgeräumt und weiter entwickelt.
MPV lässt sich sowohl unter Windows als auch unter Linux als externer Player in die neuen Kodi-Varianten einbinden. Da der Player ohne jeglichen Schnickschnack wie Fensterrahmen und Menüs auskommt, ist er dafür sehr geeignet. man verliert allerdings einigen Komfort, wie die Info, um wie viel Uhr der Film vorbei sein wird, und weitere Anzeigen von Kodi. Nach Beenden des Players fällt man auch die Kodi Oberfläche zurück.
MPV scheint sehr ressourcenfreundlich zu sein. Ich habe auch mit recht heftigen Einstellungen eine NVidia 1050 Ti mit HDR Content oder Upscaling nicht mal in die Nähe ihrer Grenzen gebracht. Ich bin überzeugt, dass einem das gelingen wird, wenn man es denn übertreibt, aber mir persönlich scheint das nicht nötig.
Die Konfiguration ist denkbar einfach und übersichtlich. Es werden einfach die gewünschten Optionen und Parameter in eine Text-Konfigurationsdatei geschrieben und dann vom Player interpretiert.
Hier ist mal meine Konfiguration, STAND HEUTE. Die wird sich ändern.
gpu-api=vulkan
vulkan-async-compute=yes
vulkan-async-transfer=yes
vulkan-queue-count=1
ao=jack
fs=yes
video-align-y=1
video-output-levels=full
target-prim=dci-p3
hwdec=vaapi
alang=en,eng,fr,de
hdr-compute-peak=yes
tone-mapping=reinhard
tone-mapping-param=0.15
tone-mapping-max-boost=1.0
tone-mapping-desaturate=1
tone-mapping-desaturate-exponent=19
no-gamut-clipping
hdr-peak-decay-rate=50
screenshot-directory=~/Pictures/MPV-Screenshots
screenshot-template="%F-%P"
profile=gpu-hq
sub-auto=fuzzy
dither-depth=auto
dither=error-diffusion
deband=yes
deband-iterations=1
deband-threshold=160
deband-grain=8
deband-range=64deband=yes
deband-iterations=1
deband-threshold=160
deband-grain=8
deband-range=64
#af=surround:chl_out=7.1
scale=ewa_lanczossharp
cscale=ewa_lanczossharp
dscale=mitchell
correct-downscaling=yes
linear-downscaling=yes
sigmoid-upscaling=yes
scale-antiring=0.6 # luma upscale deringing
dscale-antiring=0.6 # luma downscale deringing
cscale-antiring=0.5 # chroma upscale deringing
Alles anzeigen
Hier meine jeweils aktuelle config. Die oben lasse ich mal zur Nachvollziehbarkeit stehen:
# Allgemeines
save-position-on-quit=yes
# OSD-Bar aufhübschen und nach unten schieben
osd-duration=3000
osd-bar-align-y=0.99
osd-bar-w=99
osd-border-size=2
osd-bar-h=2
osd-font-size=25
osd-color=0.7/0.4 # Subs 70% grau with 40% Alpha
# Sprachen/Untertitel, ich mag O-Ton
alang=en,eng,fr,fre,fra,jp,jap,chin,de,ger
slang=en,eng,de,ger
sid=no # Untertitel beim Start deaktivieren
sub-font-size=32
image-subs-video-resolution=yes
sub-bold=yes
sub-border-size=2
sub-color=0.70/0.70 # Subs 70% grau with 70% Alpha
sub-auto=fuzzy # externe Subs suchen und finden
#Screenshots
screenshot-directory=~/Pictures/MPV-Screenshots
screenshot-template="%F-%P"
# Audio
ao=jack # Audio über jack ausgeben, nicht kopieren, wenn man das nicht kennt
audio-channels=7.1 # Immer 8 Kanäle öffnen, auch bei Nutzung von 6 oder 2
audio-delay=0.19
# GPU-Einstellungen für Linux!
gpu-api=vulkan
vulkan-async-compute=yes
vulkan-async-transfer=yes
vulkan-queue-count=1
hwdec=auto
# Video-Ausgabe
profile=gpu-hq
fs=yes
video-align-y=1 # Video immer an Bildunterkante schieben
video-output-levels=full
target-prim=dci-p3 # Projektor steht auf DCI-P3
no-gamut-clipping
dither-depth=8
dither=error-diffusion
deband=yes
# Scaling-Optionen
scale=ewa_lanczos # luma
cscale=ewa_lanczos # chroma
scale-antiring=0.4 # luma upscale deringing
dscale-antiring=0.4 # luma downscale deringing
cscale-antiring=0.4 # chroma upscale deringing
correct-downscaling=yes
linear-downscaling=yes
sigmoid-upscaling=yes
[HDR]
profile-desc=HDR options
profile-cond=width > 1920 # Hier gibt es sicherlich bessere Bedingungen, HDR-Flag oder so
target-trc=gamma2.2 # Projektor Gamma steht auf 2,2
target-peak=auto
hdr-compute-peak=yes
glsl-shader="~~/adaptive-sharpen.glsl" # bisschen nachwürzen
[SDR]
profile-desc=SDR options
profile-cond=width < 1921 # Hier gibt es sicherlich bessere Bedingungen, kein HDR-Flag oder so
# Sharpening
fbo-format=rgba16hf
glsl-shader="~~/FSRCNN_x2_r2_8-0-2.glsl"
Alles anzeigen
Da die Diskussion aus einem anderen Thread hervor gegangen ist, hole ich mal Teile hier rüber zum antworten.
Alles anzeigenvielen Dank ((( atom ))) . Ich habe bereits in der Vergangenheit mit mpv gebastelt als ich mit SVP getestet habe.
Ich habe noch ein paar Sachen, die Ich ändern würde :
Codeinput-ipc-server=mpvpipe # nötig falls man SVP nutzt ao=wasapi audio-exclusive=yes # nach Geschmack? audio-spdif=ac3,eac3,dts-hd,truehd,dts # Atmos etc .. panscan=1 # entfernt schwarze Balken für CS
Bei den Balken etc bin ich noch am testen. Da gibt es auch noch zusätzliche Lua scripts.
Mit deinen Einstellugen sieht bei mir das HDR Tomemapping zwischen Madvr und mpv relativ identisch aus (mein subjektiver Eindruck).
Mir fehlt aber noch die Schärfeanhebung die ich mit meinen Madvr Einstellungen habe. (Ich werde weiter testen).Edit: Ich werde noch weitere Sachen testen und vergleichen. Bin mir beim Thema Schärfe noch nicht sicher. Erstmal warten bis der JVC richtig warm ist ...
GPU liegt bei meiner RTX3090 momentant bei ca 25% mit mpv. Bei Madvr sind es momentan ca 70%
Deine Änderungen beziehen sich ja in erster Linie auf Audio. Da habe ich für mich schon ganz richtig jack eingestellt, da mein jack dann 1:1 über das Netzwerk in meinen Audioprozessor geht.
Panscan muss ich mal testen.
Mit den Einstellungen da oben brauchte ich dann bereits Deringing beim Hochskalieren, das scheint also in die richtige Richtung zu gehen.
Alles anzeigenDie Oberfläche sieht so aus:
Für die Konfiguration scheint es keine Oberfläche zu geben, das heißt, man setzt die Parameter in einer Konfigurationsdatei.
Ich habe nur mal kurz in Filme reingeschaut und ein paar Parameter ausprobiert. Es gibt auf jeden Fall dynamisches Tone Mapping und es liest sich so als ob das auch lokal passiert (also analog zu HSTM). Aber ich müsste mich damit mehr beschäftigen. Das Tone Mapping ist ja auch nur eine von vielen Sachen, die funktionieren müssen. Dithering, Skalierung, Seitenverhältnis, Untertitel usw. Für alles gibt es Parameter, der Player scheint also sehr mächtig zu sein. Entsprechend Zeit braucht man wohl für das Customizing. Aber bis ich MPC-HC so am Laufen hatte, dass er alle meine Wünsche erfüllt hat, dauerte auch seine Zeit. Man kann in MVP sicherlich einige Tage an Zeit versenken.
Ach ja, es sollte eigentlich möglich sein, madVR und MVP parallel zu starten, wenn einer von beiden DXVA nicht nutzt. Das müsste man noch mal testen. Dann könnte man ohne den Umweg über Screenshots direkt vergleichen.
PS: das Tone Mapping "Reinhard" hat Kodi auch implementiert. Zumindest ein Teil der Codebasis scheint identisch zu sein...
Ja, das Tonemapping kann die Helligkeit der einzelnen Frames messen, also genau wie bei MadVR.
Man kann in Kodi tatsächlich mehrer Player anlegen und mit der rechten Maustaste pro Film entscheiden, welcher Player gewünscht ist.
Ja, Kodi hat Reinhard auch drin, aber da scheint noch eine ganze Menge mehr zu fehlen, um auf so gute Ergebnisse zu kommen.