Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Hardware & Software > Software players

Reply
 
Thread Tools Search this Thread Display Modes
Old 7th September 2017, 17:47   #21  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
Don't use mpv's Direct3D renderer, it's incomplete and what not.
Default is always OpenGL.

However, you have to choose between different presentation backends for it.
On Windows, there are
ANGLE (allows D3D11VA without copyback, but that combination leads to banding with 10 bit video)
WGL (I guess that's used also by games which run in windowed mode)
dxinterop (frames are presented by DX9, "experimental", allows native DXVA2 decoding with the same quality issues like for madVR, may be troublesome with Radeons and Optimus)

For me with GTX 1070 without Optimus, dxinterop works flawlessly. WGL shows stuttering with interpolation + any hardware decoding (I probably should report that).
dxinterop also worked here with Skylake IGP.
aufkrawall is offline   Reply With Quote
Old 7th September 2017, 19:45   #22  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
What's the best way to have madVR SmoothMotion ? From what I read, I think it's something like
Code:
vo=opengl-hq
video-sync=display-resample
interpolation=yes
tscale=oversample
Not sure if it's really as good as madVR SM.
pirlouy is offline   Reply With Quote
Old 7th September 2017, 20:16   #23  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
I don't find tscale=oversample convincing, I notice severe flicker with it. Default is Mitchell, which is very blurry for camera pans.
Probably linear comes closest to madVR, I personally use sinc which should be sharper than linear. Linear is the same as triangle, btw.
aufkrawall is offline   Reply With Quote
Old 7th September 2017, 21:26   #24  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
Unfortunately, video-sync=display-resample uses a lot of GPU. Not that they don't warn, but you don't expect that much GPU. Maybe it's because of OpenGL, maybe it's because of algorithm. It is too complicated for me to know the reason.

As expected, madVR SmoothMotion is really good: good balance between blur and judder and not very high on GPU.
pirlouy is offline   Reply With Quote
Old 7th September 2017, 21:40   #25  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
I absolutely can't confirm this. I was able to use interpolation with my 6700K IGP without issues.

What if you try deband=no (deband=yes is included in opengl-hq profile)?
Have you already tried opengl-backend=dxinterop?
aufkrawall is offline   Reply With Quote
Old 7th September 2017, 22:19   #26  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
Indeed, debanding seems to be using GPU.
And for opengl-backend=dxinterop, I'm not sure if it does good or bad, but in terms of ressources, it looks the same.
pirlouy is offline   Reply With Quote
Old 16th September 2017, 23:23   #27  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
I have to say... mpv is really interesting.
I took time to read the manual and the input.conf is really nice, you can bind actions like some FPS games. Really nice.
And in order to choose better settings, this script is mandatory (ok, with my limited experience): https://github.com/Argon-/mpv-stats

So indeed, on Windows, dxinterop is the way to go. Too bad, it adds a delay at startup: 1.5 seconds, compared to MPC (which launches video in less than 1 second). Maybe aufkrawall has a magic setting for that ?
In the end, I use little options:
Code:
autofit=600x600
slang=eng,fre,fra
loop-playlist=10

profile=opengl-hq
video-sync=display-resample
interpolation=yes
tscale=sinc
opengl-backend=dxinterop
What I really miss is the auto monitor refresh rate. There's one script for that, but you can't choose the monitor. Is there a "request" bug filled somewhere, that I can vote for ?
pirlouy is offline   Reply With Quote
Old 16th September 2017, 23:56   #28  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
opengl-backend=angle starts fastest for me, while win and dxinterop are a bit slower. Nothing too dramatic, but I got a fast CPU and no anti-virus software installed. I don't think it can be sped up.

There is "autospeed-monitor=0" in autospeedwin.lua.
aufkrawall is offline   Reply With Quote
Old 17th September 2017, 01:05   #29  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
ANGLE has bad performances compared to dxinterop.
For dxinterop slow start, I might fill a bug, maybe someone will have something...

Unfortunately the monitor number is not adapted in my case. I need refresh rate to change only on 1 monitor, and when it's the principal screen. I asked NirSoft if he can improve NirCmd, but I guess it will be complicated.
madVR is perfect for that.
pirlouy is offline   Reply With Quote
Old 17th September 2017, 08:28   #30  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
You already gave opengl-backend=win a try, didn't you?
I didn't suggest to use angle instead, I'd currently only do that if both win and dxinterop fail.
aufkrawall is offline   Reply With Quote
Old 17th September 2017, 10:37   #31  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
Yes I tried the 3. And with mpv-stats script, I can confirm dxinterop has by far better performance, which is confirmed by a lot of users.
When I did my test, I was with 382 nVidia drivers, but then I dit it again with last 385 drivers, and I got same results.
pirlouy is offline   Reply With Quote
Old 17th September 2017, 10:55   #32  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
I'd ignore any rendertime stats shown by video renderers as long as there are no playback oddities like dropped or delayed frames (which are shown by running mpv via CLI).
GPU usage according to driver is the same between win and dxinterop here with GTX 1070 and it's also pretty much the same compared to Linux with x11egl backend.
Only angle shows higher GPU load and power consumption and I'd thus consider it as a backup solution in case OGL driver on Windows is on a rampage.

I btw. once had a problem with renderstats script leading to performance issues. Since then I avoid using it.

Btw 2: My stutter problem with opengl-backend=win + hardware decoding copyback was caused by Windows balanced energy profile. It disappeared by using maximum performance profile. I've seen something similar on Linux with window compositors.
aufkrawall is offline   Reply With Quote
Old 17th September 2017, 19:24   #33  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
Today I've learned the "mpv-stats" script is often wrong with "pass timers".
The best way to compare backend (and performances in general):
1) put "maximum performance" in nVidia drivers settings (always when benchmarking) instead of "adaptive".
2) use
Code:
opengl-swapinterval=0
audio=no
untimed=yes
3) check "estimated Display FPS".

Angle and Win have same results, whereas dxinterop is behind !
So for now, I'll test "Angle" and verify if I have dropped frames at the end of video.
pirlouy is offline   Reply With Quote
Old 17th September 2017, 19:34   #34  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
I really fail to see why that would be a good way to determine performance differences between the backends.
aufkrawall is offline   Reply With Quote
Old 17th September 2017, 19:49   #35  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
It's not only backends, it's for performance in general.
I got that information on IRC from this guy: https://github.com/haasn
He seems to know a lot.
On his branch he works on Vulkan and explained the advantages of Vulkan that obviously I did not understand.

But you are right to doubt me since I know little from this player or OpenGL.
pirlouy is offline   Reply With Quote
Old 17th September 2017, 19:53   #36  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
Quote:
Originally Posted by pirlouy View Post
He seems to know a lot.
Probably because he's a very active developer of mpv.

Well, it wouldn't hurt to take a look at the GPU load & clock at the same time too imho.
aufkrawall is offline   Reply With Quote
Old 17th September 2017, 20:55   #37  |  Link
pirlouy
_
 
Join Date: May 2008
Location: France
Posts: 692
Yes I did not tell, but I use Open Hardware Monitor to check usage. So GPU frequencies are at max, and usage is at 80% (the maximum the card can do). The only difference is dxinterop displays less fps.
pirlouy is offline   Reply With Quote
Old 23rd September 2017, 13:46   #38  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
I'd suggest using the latest nightly build since last few release versions had a problem with chroma channel alignment when using hardware decoding:
https://sourceforge.net/projects/mpv...windows/files/
However, config variables have changed a lot lately because of renderer refactoring (old variables still work though).
aufkrawall is offline   Reply With Quote
Old 21st October 2017, 19:35   #39  |  Link
xabregas
Registered User
 
Join Date: Jun 2011
Posts: 121
whats the difference between opengl and opengl-hq?

From what ive seen this is a very nice alternative to d3d and it plays everything without the need to change any setting even HEVC 4k with very high bitrates. It plays it with accurate color output. Opengl FTW.
xabregas is offline   Reply With Quote
Old 21st October 2017, 19:59   #40  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,812
opengl-hq is only a profile with certain quality settings for the OpenGL renderer.
There are better scalers available though, like jinc.
aufkrawall is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 10:58.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.