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 2nd June 2015, 18:20   #30681  |  Link
XMonarchY
Guest
 
Posts: n/a
Whoever advised that using the High Speed HDMI cable would allow me to get 12bit not only @ 23Hz, but also at 60Hz was dead on right! I just got one of these cables and I can select 60Hz + 12bit in nVidia CP with no artifacts! I hope games will look better now!


BTW, is it a placebo effect that my games (Withcer 3) look better in 12bit mode than in 8bit mode? I know transitions are better, especially since I use a 1D LUT, but colors also seem richer! I tested my calibration done in 8bit with 12bit mode and there was no difference anywhere, and yet 12bit seems to produce richer colors...

Last edited by XMonarchY; 2nd June 2015 at 19:23.
  Reply With Quote
Old 2nd June 2015, 19:29   #30682  |  Link
XMonarchY
Guest
 
Posts: n/a
Also, I noticed an odd problem. I am getting an occasional stutter during my SMPTE 170M content playback that I have not had before... I can't seem to narrow down which setting causes it. There are no frame drops or glitches or delayed frames for 25-30 minutes and suddenly there is this stutter where the screen shakes for a second and then all is fine for the next 30 minutes. GPU is fine, all is stable. I did update MPC-HC to the latest nightly build, do you think that may be reason?
  Reply With Quote
Old 2nd June 2015, 21:29   #30683  |  Link
Sunset1982
Registered User
 
Join Date: Sep 2014
Posts: 280
Quote:
Originally Posted by XMonarchY View Post
Also, I noticed an odd problem. I am getting an occasional stutter during my SMPTE 170M content playback that I have not had before... I can't seem to narrow down which setting causes it. There are no frame drops or glitches or delayed frames for 25-30 minutes and suddenly there is this stutter where the screen shakes for a second and then all is fine for the next 30 minutes. GPU is fine, all is stable. I did update MPC-HC to the latest nightly build, do you think that may be reason?
Had this too yesterday...
Sunset1982 is offline   Reply With Quote
Old 2nd June 2015, 22:13   #30684  |  Link
huhn
Registered User
 
Join Date: Oct 2012
Posts: 7,903
here is my opinion on debanding.
i used a BD with a on of banding encoded with VC-1 with about 14 mbit combined with bad mastering.

untouched: http://abload.de/img/untouchednwsn8.png
madVR high: http://abload.de/img/madvrhighqesn8.png
shiandow 1.0 0.0: http://abload.de/img/madvrnew1.00.036sp3.png
shiandow 1.0 1.0: http://abload.de/img/madvrnew1.01.0wds61.png

madVR high is stronger in debanding than shiandow 1.0 with margin 0.0 but a little bit more harmful too.
margin 1.0 has a very bad effect on moving scene this effect is still visible with 0.0 margin but not visible with madVR high.

so i give madVR high a clear edge in moving scenes.

here a screen with the problem i call it clouding on the blue car it is way worse in moving.

untouched: http://abload.de/img/untouched2xpuk6.png
shiandow 1.0 1.0: http://abload.de/img/clouding61ucd.png
shiandow 1.0 0.2: http://abload.de/img/clouding1.00.274ukn.png
shiandow 1.0 0.0: http://abload.de/img/clouding1.00.0neuas.png
madVR high: http://abload.de/img/cloudingmadvr5nux5.png

a deblock filter before debanding may help shiandow's algorithm a lot.
huhn is offline   Reply With Quote
Old 2nd June 2015, 22:25   #30685  |  Link
cyberscott
Registered User
 
Join Date: Oct 2007
Posts: 92
Quote:
Originally Posted by madshi View Post
Ok, thanks. One more try, if you don't mind:

http://madshi.net/madVR8810test5.rar

Please activate debug mode first (by double clicking "activate debug mode.bat"), then afterwards drop in the new madVR.ax. If you do it the other way round, but you're replacing the "wrong" madVR.ax file and you're testing with the official v0.88.10 again. I know, it's a bit confusing. Basically, after you dropped the replacement madVR.ax file into the madVR folder, don't double click any batch files, until you've completed testing. Thanks!
Ok, still change in the queues in this test. Hopefully I got the log correctly generated. Here it is...:
http://s000.tinyupload.com/?file_id=...04695651332179
cyberscott is offline   Reply With Quote
Old 2nd June 2015, 22:49   #30686  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by XMonarchY View Post
Also, I noticed an odd problem. I am getting an occasional stutter during my SMPTE 170M content playback that I have not had before... I can't seem to narrow down which setting causes it. There are no frame drops or glitches or delayed frames for 25-30 minutes and suddenly there is this stutter where the screen shakes for a second and then all is fine for the next 30 minutes. GPU is fine, all is stable. I did update MPC-HC to the latest nightly build, do you think that may be reason?
I've no idea. When this stutter occurs, do you have frame drops or glitches or delayed frames then?

Quote:
Originally Posted by huhn View Post
here is my opinion on debanding.
i used a BD with a on of banding encoded with VC-1 with about 14 mbit combined with bad mastering.

untouched: http://abload.de/img/untouchednwsn8.png
madVR high: http://abload.de/img/madvrhighqesn8.png
shiandow 1.0 0.0: http://abload.de/img/madvrnew1.00.036sp3.png
shiandow 1.0 1.0: http://abload.de/img/madvrnew1.01.0wds61.png

madVR high is stronger in debanding than shiandow 1.0 with margin 0.0 but a little bit more harmful too.
margin 1.0 has a very bad effect on moving scene this effect is still visible with 0.0 margin but not visible with madVR high.

so i give madVR high a clear edge in moving scenes.

here a screen with the problem i call it clouding on the blue car it is way worse in moving.

untouched: http://abload.de/img/untouched2xpuk6.png
shiandow 1.0 1.0: http://abload.de/img/clouding61ucd.png
shiandow 1.0 0.2: http://abload.de/img/clouding1.00.274ukn.png
shiandow 1.0 0.0: http://abload.de/img/clouding1.00.0neuas.png
madVR high: http://abload.de/img/cloudingmadvr5nux5.png

a deblock filter before debanding may help shiandow's algorithm a lot.
Good feedback - thank you!

Quote:
Originally Posted by cyberscott View Post
Ok, still change in the queues in this test. Hopefully I got the log correctly generated. Here it is...:
http://s000.tinyupload.com/?file_id=...04695651332179
Ok, I've finally found what causes the queues to not fill:

When madVR tries to copy the rendered frame to the backbuffer, exactly one out of four times it takes ca. 150-200ms. Every other time it takes 0ms (meaning no measurable time).

I've no idea why copying to the backbuffer sometimes is so slow and sometimes so fast, and why it seems to have a certain rhythm. It could either be a bug in the GPU drivers, or it could be a misconfiguration of some sort. You already tried lowering the number of pre-presented frames without success, right? And you already double checked the NVidia GPU control panel to make sure that the number of pre-rendered frames is set to application control, correct? Have you changed the madVR flush settings at some point? Have you tried restoring the madVR default settings at some point, just in case? Are you running some background process which might access the GPU (e.g. GPU-Z, or similar)? Try closing all processes which are not strictly needed, including the browser.

There's one more thing: In the original log I could see that madVR had to reset the VSync Direct3D device sometimes, because Direct3D reported it was "occluded". Which suggests that maybe some window might have covered the media player, at least for a short time. Does that make any sense to you? The test build you've tested with now doesn't reset the VSync device, anymore. I had hoped this would make a difference, but seemingly it doesn't.
madshi is offline   Reply With Quote
Old 3rd June 2015, 01:05   #30687  |  Link
Aleksoid1978
Registered User
 
Aleksoid1978's Avatar
 
Join Date: Apr 2008
Location: Russia, Vladivostok
Posts: 2,783
Quote:
Originally Posted by madshi View Post
nevcairiel has it right. If you use ChangeDisplaySettingsEx() the normal way, it will switch to 23.976, even if you specify 24.000. You have to call ChangeDisplaySettingsEx() twice, in a very specific way (see nevcairiel's post), to get true 24.000.
Thanks - i try
__________________
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /Patriot 32Gb@3200 /Kingston 500Gb M.2 /RTX 4060 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215
Aleksoid1978 is offline   Reply With Quote
Old 3rd June 2015, 01:33   #30688  |  Link
cyberscott
Registered User
 
Join Date: Oct 2007
Posts: 92
Quote:
Originally Posted by madshi View Post

Ok, I've finally found what causes the queues to not fill:

When madVR tries to copy the rendered frame to the backbuffer, exactly one out of four times it takes ca. 150-200ms. Every other time it takes 0ms (meaning no measurable time).

I've no idea why copying to the backbuffer sometimes is so slow and sometimes so fast, and why it seems to have a certain rhythm. It could either be a bug in the GPU drivers, or it could be a misconfiguration of some sort. You already tried lowering the number of pre-presented frames without success, right? And you already double checked the NVidia GPU control panel to make sure that the number of pre-rendered frames is set to application control, correct? Have you changed the madVR flush settings at some point? Have you tried restoring the madVR default settings at some point, just in case? Are you running some background process which might access the GPU (e.g. GPU-Z, or similar)? Try closing all processes which are not strictly needed, including the browser.

There's one more thing: In the original log I could see that madVR had to reset the VSync Direct3D device sometimes, because Direct3D reported it was "occluded". Which suggests that maybe some window might have covered the media player, at least for a short time. Does that make any sense to you? The test build you've tested with now doesn't reset the VSync device, anymore. I had hoped this would make a difference, but seemingly it doesn't.
Glad you were able to isolate the cause, that is a good thing. As far as .88.10, I always started testing at madVR's default settings, only changing the up-scaling to bilinear.
All the flush settings are at default, I never had need to touch them, and If I had, it would be corrected when I reset to default settings.

nVidia's control panel is set globally for "application control" for frames. I had hoped nVidia's new 353.06 drivers might have an effect but it appears to have made no difference.

I don't have gpu-z running nor any type of gpu overclocking/monitoring software running. I have tried closing processes to bare minimum with no changes.

I messed around a little more with the new .ax tonight
One thing I noticed that on the untouched, original .88.10 .ax, changing the exclusive mode present frames in advance didn't change the behavior of the queue, it would stay at 1-4/X until I set it below that. Even then, it would stay 1-4, 1-3, 1-2, etc. The latest madVRtest5.ax, the presented frames will completely fill if set to 4. (4-4/4).

With some more queue adjustments, I currently have all the queues filling up, using .88.10 and MadVRtest5.ax

Decoder queue: 14-15/15
Upload queue: 8-9/9
Render queue: 8-9/9
Present queue: 4/4-4 (lower than I like but the highest setting that works)


Also, remember me mentioning that the Decoder queue (in exclusive mode) would always show one more than it should, such as 14-16/15? When I set the exclusive mode to 4 frames or below, it will show correctly, 14-15/15. Not sure if that has anything to do with this issue, though.

The "occluded" D3D you saw was most like me tinkering with things at one point with the log running and I unintentionally sent you a log with my messing around. Sorry about that.

I always can use .88.8 if I want use 10 bit output with higher " presented frames in advance" settings in 10 bit DSD11 mode but of course I couldn't play with the added /changed features in .88.10.

I do appreciate you taking extra time troubleshooting this issue with me even though I'm the only one to have reported it up to now.

Here is the log for the full queues if you want to take a look.
http://s000.tinyupload.com/?file_id=...78447616236926

Last edited by cyberscott; 3rd June 2015 at 01:47. Reason: added link
cyberscott is offline   Reply With Quote
Old 3rd June 2015, 03:49   #30689  |  Link
Della
Registered User
 
Join Date: Dec 2011
Posts: 32
I replied earlier, I too have seen the unfilled queues when using 10 bit exclusive. You're not alone & thanks much for all your investigative work.
Della is offline   Reply With Quote
Old 3rd June 2015, 04:15   #30690  |  Link
har3inger
Registered User
 
Join Date: Feb 2014
Posts: 139
The newest MPC-HC official release for June 1st causes my render and present queues to bounce around zero despite having render times of around 28-30ms for 24p content. Dropped frame count is surprisingly fine, with only a couple frames per minute, but clearly something isn't working as it was before.

Anyone have a link to a copy of 1.7.6.156 I could revert to? That was the tweaked 64 bit build to support 64 bit madvr. The old one on dropbox from weeks/months back is dead.

Hmm, with further testing to isolate the problem, it went away without me doing anything. Go figure.

Last edited by har3inger; 3rd June 2015 at 04:25.
har3inger is offline   Reply With Quote
Old 3rd June 2015, 06:01   #30691  |  Link
MysteryX
Soul Architect
 
MysteryX's Avatar
 
Join Date: Apr 2014
Posts: 2,559
Hey I have a very simple suggestion that would make the usage much simpler.

Why are downscaling algorithms like Catmul in the upscaling pages, and why are upscaling algorithms like Lanczos in the downscaling page?

You could remove downscaling algorithms from the upscaling page and upscaling algorithms from the downscaling page. That would make the interface simpler and make it easier for new users.

Also, someone mentioned that Scale in Linear Light shouldn't be used when downscaling except for Catmul when also using Anti-Ringing. If it's a bad choice for others, it could be removed for other algotirhts.

Last edited by MysteryX; 24th June 2015 at 06:07.
MysteryX is offline   Reply With Quote
Old 3rd June 2015, 07:21   #30692  |  Link
ryrynz
Registered User
 
ryrynz's Avatar
 
Join Date: Mar 2009
Posts: 3,646
Quote:
Originally Posted by MysteryX View Post
Why are downscaling algorithms like Catmul in the upscaling pages, and why are upscaling algorithms like Lanczos in the downscaling page?

You could remove downscaling algorithms from the upscaling page and upscaling algorithms from the downscaling page. That would make the interface simpler and make it easier for new users.

Also, someone mentioned that Scale in Linear Light shouldn't be used when downscaling except for Catmul when also using Anti-Ringing. If it's a bad choice for others, it could be removed for other algotirhts.
They're algorithms for upscaling and downscaling, nothing needs to be removed. There are common preferences for upscaling and downscaling and sometimes different from each other, that's fine.

With regards to scaling in linear light it's a case of only enabling it if you you need it. Some options may move to advanced section but I suspect this rejigging if it occurs will happen closer to 1.0.
ryrynz is offline   Reply With Quote
Old 3rd June 2015, 08:13   #30693  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
Quote:
Originally Posted by cyberscott View Post
Glad you were able to isolate the cause, that is a good thing. As far as .88.10, I always started testing at madVR's default settings, only changing the up-scaling to bilinear.
All the flush settings are at default, I never had need to touch them, and If I had, it would be corrected when I reset to default settings.

nVidia's control panel is set globally for "application control" for frames. I had hoped nVidia's new 353.06 drivers might have an effect but it appears to have made no difference.

I don't have gpu-z running nor any type of gpu overclocking/monitoring software running. I have tried closing processes to bare minimum with no changes.

I messed around a little more with the new .ax tonight
One thing I noticed that on the untouched, original .88.10 .ax, changing the exclusive mode present frames in advance didn't change the behavior of the queue, it would stay at 1-4/X until I set it below that. Even then, it would stay 1-4, 1-3, 1-2, etc. The latest madVRtest5.ax, the presented frames will completely fill if set to 4. (4-4/4).

With some more queue adjustments, I currently have all the queues filling up, using .88.10 and MadVRtest5.ax

Decoder queue: 14-15/15
Upload queue: 8-9/9
Render queue: 8-9/9
Present queue: 4/4-4 (lower than I like but the highest setting that works)


Also, remember me mentioning that the Decoder queue (in exclusive mode) would always show one more than it should, such as 14-16/15? When I set the exclusive mode to 4 frames or below, it will show correctly, 14-15/15. Not sure if that has anything to do with this issue, though.

The "occluded" D3D you saw was most like me tinkering with things at one point with the log running and I unintentionally sent you a log with my messing around. Sorry about that.

I always can use .88.8 if I want use 10 bit output with higher " presented frames in advance" settings in 10 bit DSD11 mode but of course I couldn't play with the added /changed features in .88.10.

I do appreciate you taking extra time troubleshooting this issue with me even though I'm the only one to have reported it up to now.

Here is the log for the full queues if you want to take a look.
http://s000.tinyupload.com/?file_id=...78447616236926
The VSync reset stuff might have had a part in this, as well. Here's a new test build:

http://madshi.net/madVR8810test6.rar

This time it's a release mode build. So please double click "activate release mode.bat" first, then replace the madVR.ax file. Then please just double check if this test build still fills the queues with your current settings (4 frames pre-presented). If it does, as is well. If it doesn't, the VSync reset stuff is still a problem. I don't need a log this time. Just the information whether this build still fills the queues for you, or not. Thanks.
madshi is offline   Reply With Quote
Old 3rd June 2015, 11:29   #30694  |  Link
Aleksoid1978
Registered User
 
Aleksoid1978's Avatar
 
Join Date: Apr 2008
Location: Russia, Vladivostok
Posts: 2,783
Quote:
Originally Posted by madshi View Post
nevcairiel has it right. If you use ChangeDisplaySettingsEx() the normal way, it will switch to 23.976, even if you specify 24.000. You have to call ChangeDisplaySettingsEx() twice, in a very specific way (see nevcairiel's post), to get true 24.000.
I try ... and it's don't help. Maybe something wrong with system ?? I do clean install latest Nvidia drivers. But - i create custom mode that work "true" 23.976 mode, maybe it's broken 24p mode ??
__________________
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /Patriot 32Gb@3200 /Kingston 500Gb M.2 /RTX 4060 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215
Aleksoid1978 is offline   Reply With Quote
Old 3rd June 2015, 11:34   #30695  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
How does your code look like? Should be something like this:

Code:
LONG res = ChangeDisplaySettingsExA(MonitorInfo->szDevice, &devMode, 0, CDS_UPDATEREGISTRY | CDS_NORESET, NULL);
if (res == DISP_CHANGE_SUCCESSFUL)
  res = ChangeDisplaySettingsEx(NULL, NULL, 0, 0, NULL);
This is at least what madVR is doing.
madshi is offline   Reply With Quote
Old 3rd June 2015, 12:06   #30696  |  Link
Aleksoid1978
Registered User
 
Aleksoid1978's Avatar
 
Join Date: Apr 2008
Location: Russia, Vladivostok
Posts: 2,783
Quote:
Originally Posted by madshi View Post
How does your code look like? Should be something like this:

Code:
LONG res = ChangeDisplaySettingsExA(MonitorInfo->szDevice, &devMode, 0, CDS_UPDATEREGISTRY | CDS_NORESET, NULL);
if (res == DISP_CHANGE_SUCCESSFUL)
  res = ChangeDisplaySettingsEx(NULL, NULL, 0, 0, NULL);
This is at least what madVR is doing.
This code from MPC-BE:
Code:
ChangeDisplaySettingsEx(DisplayName1, &dmScreenSettings, NULL, CDS_UPDATEREGISTRY | CDS_NORESET, NULL);
ChangeDisplaySettingsEx(NULL, NULL, NULL, 0, NULL);
__________________
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /Patriot 32Gb@3200 /Kingston 500Gb M.2 /RTX 4060 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215
Aleksoid1978 is offline   Reply With Quote
Old 3rd June 2015, 12:15   #30697  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,344
If you create a custom 23.976 mode on NVIDIA, it can break the 24.000 mode. Delete your custom mode, and both should work fine.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders
nevcairiel is offline   Reply With Quote
Old 3rd June 2015, 12:19   #30698  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
But why does it work with madVR then? At least that's how I understood Aleksoid1978's original comment.

We're talking about windowed mode playback, not FSE mode, right? In FSE mode things can be more complicated because Direct3D itself can also try to change/set the display mode...
madshi is offline   Reply With Quote
Old 3rd June 2015, 12:20   #30699  |  Link
Aleksoid1978
Registered User
 
Aleksoid1978's Avatar
 
Join Date: Apr 2008
Location: Russia, Vladivostok
Posts: 2,783
Quote:
Originally Posted by nevcairiel View Post
If you create a custom 23.976 mode on NVIDIA, it can break the 24.000 mode. Delete your custom mode, and both should work fine.
Well, what then watch a movie with a frequency 23.976 ??
Nvidia don't have a mode for 23.976 fps ))

P.S. we are talking about FSE.
__________________
AMD Ryzen 5 3600 /GIGABYTE B450 Gaming X /Patriot 32Gb@3200 /Kingston 500Gb M.2 /RTX 4060 /Samsung U28R550UQI /OLED Philips 55OLED707 /Yamaha RX-V471 + NS-555 + NS-C444 + NS-333 + YST-SW215
Aleksoid1978 is offline   Reply With Quote
Old 3rd June 2015, 12:25   #30700  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,140
How about windowed mode then? Does it work there?

And in FSE mode, are you changing the display mode after or before you enter FSE mode? If you change the display mode, after the switch to FSE has fully completed, your ChangeDisplaySettingsEx() call should overwrite whatever Direct3D has done before. If you change the display mode too early, Direct3D might switch it again during the windowed -> FSE mode transition.
madshi is offline   Reply With Quote
Reply

Tags
direct compute, dithering, error diffusion, madvr, ngu, nnedi3, quality, renderer, scaling, uhd upscaling, upsampling

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 19:57.


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