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 5th December 2012, 17:56   #16001  |  Link
MSL_DK
Registered User
 
Join Date: Nov 2011
Location: Denmark
Posts: 137
Quote:
Originally Posted by madshi View Post
Unfortunately I don't have access to the yCMS sources so I can't say what's wrong exactly or fix the problem myself. However, I would guess that inconsistencies in your measurements might be the problem.
I do not think so. I just got my Spyder4 swapped to a i1pro and I'm pretty sure that it makes correct measurements.
MSL_DK is offline   Reply With Quote
Old 5th December 2012, 17:59   #16002  |  Link
MSL_DK
Registered User
 
Join Date: Nov 2011
Location: Denmark
Posts: 137
Quote:
Originally Posted by dansrfe View Post
It would be nice if someone wrote up a mini guide on how to calibrate madVR via yCMS with hfcr from scratch for people like me who are relatively new to hardware calibration and somewhat clueless.
MSL_DK is offline   Reply With Quote
Old 5th December 2012, 18:39   #16003  |  Link
pururin
Registered User
 
Join Date: Dec 2011
Posts: 54
So now for Intel users DXVA2 scaling for both Chroma/Luma is the best choice?

Also can HD 4000 handle Bicubic75 Chroma+Lanczos3 AR Luma? I'm planning on getting one (I3 3225).

Personally, I prefer less taxing combinations that give reasonably good result (Catmull-rom Chroma+ Bicubic75 Luma in the old discussion?) to save power consumption.
pururin is offline   Reply With Quote
Old 5th December 2012, 19:46   #16004  |  Link
clsid
Registered User
 
Join Date: Feb 2005
Posts: 5,013
@madshi
Would it be possible to make the default scaling settings dynamic? Then you might be able to provide a better out-of-the-box experience, certainly on weaker hardware.

I was thinking of something like this:
1) Show the graphics card name and DeviceID somewhere in madVR settings.
2) Create a topic where people can post test results for the various scaling algorithms in madVR.
Provide links to some representative sample files, so everybody can test with the same ones.
Something like:
http://xhmikosr.1f0.de/samples/2160p/ParkJoy/ParkJoy_720p50.x264.CRF23.mkv
Testers should post details like:
- graphics card name and deviceid
- windows version
- CPU
- screen resolution
- max GPU usage for the sample file(s) for the various scaling methods
3) Based on the results you can decide which sane defaults should be used for each card. I am sure some of the regulars in this topic are willing to help out to generate such conclusions for you, saving you the trouble/time.
A rule of thumb could be at most 80% GPU usage for processing 30i/60p, or maybe a bit more conservative.
And of course the heaviest algorithms should not blindly be used on powerful hardware. You could decide to choose a specific one as the max for default settings, so that there is a good balance between performance and quality.
4) Add a simple lookup table to madVR that uses the DeviceID as index and contains the default scaling settings for each card. A relatively small table should probably already suffice for listing the most popular cards.
(perhaps an external .xml file might be an alternative for an embedded table, as it would allow additions without touching madVR)
5) Use conservative defaults for unknown cards. Or perhaps use some heuristics based on GPU details such as memory/core frequency/shadermodel version/#of shader units. I dunno what kind of info you can (easily) acquire.
clsid is offline   Reply With Quote
Old 5th December 2012, 20:29   #16005  |  Link
ryrynz
Registered User
 
ryrynz's Avatar
 
Join Date: Mar 2009
Posts: 3,228
Already been suggested a number of times, looks to be one of those possibly 1.0 polishing features.

Quote:
Originally Posted by ryrynz View Post
Once again falling into final stage fine-tuning but having MadVR perform a benchmark and auto selecting a preset would be quite cool.
ryrynz is offline   Reply With Quote
Old 5th December 2012, 21:04   #16006  |  Link
6233638
Registered User
 
Join Date: Apr 2009
Posts: 1,019
Quote:
Originally Posted by khanmein View Post
i'm using mobility HD5650. can u suggest what setting for chroma, image up & downscale? thanks~

my setting
chorma 3 jinc AR
luma up 3 jinc AR
down Catmull-Rom AR + linear
If you can run those settings without dropping frames, I would say those are already ideal.


I'm trying to figure out a "scale" for the settings in madVR, to see what the best options are from low-end to high-end, balancing performance and image quality.

Quote:
Originally Posted by huhn View Post
how about an audio renderer which works hand in hand with madvr to get rig of the frame drop repeat problem by resampling the audio
...
so madvr runs 100% smooth without reclock and out of the box.
That's exactly what Reclock is for though?
6233638 is offline   Reply With Quote
Old 5th December 2012, 22:51   #16007  |  Link
dansrfe
Registered User
 
Join Date: Jan 2009
Posts: 1,212
madshi,

Is it possible to have an option to override PGS subtitle positioning? I know if you choose to do this it will be at the bottom of your list and that's ok. Just wanted to see if you deemed it worthy to enter the list in the first place. Thanks!
dansrfe is offline   Reply With Quote
Old 5th December 2012, 23:14   #16008  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,137
Quote:
Originally Posted by pie1394 View Post
At least it looks much closer if compared to the one produced by version 0.85.1 on ION chipset.
I've found a little bug. Colors with DXVA scaling turned on might now be too bright by a factor of "257/256". This will be fixed in the next build. Then colors should truely be 100% identical.

Quote:
Originally Posted by huhn View Post
and how about an audio renderer which works hand in hand with madvr
I do not have any plans to write an audio renderer.

Quote:
Originally Posted by DragonQ View Post
You could add a very small wizard that simply asks what the user's GPU is and then set recommended scalars based on that. Might be easier to auto-detect though.
It's not necessary to ask the user which GPU he has, I can find out via Direct3D.

Quote:
Originally Posted by sneaker_ger View Post
0.85.1 seems to suffer from the same problem. Also had the problem where the playback does not start with LAV Video come back. MPC-HC's decoder still seems to work fine, but I have great trouble making it 100% reproducable. I have a feeling both problems are connected. It's like a frame is requested from the dxva2 decoder and it either takes very long for it to come or it doesn't come at all.
That sounds quite weird. If you can manage to create a log which *only* has the situation in it where playback does not start at all, I'd be interested in that. If you have a monster log where playback sometimes starts and sometimes not, I'd rather pass on that because it would be hard to interpret.

Just for my information: All these issues only apply to DXVA decoding. No problems with DXVA deinterlacing and/or DXVA scaling, is that correct?

Quote:
Originally Posted by sneaker_ger View Post
Maybe I will also create a seeking sample to better test seeking in the future, unless something like this already exists.
That might be useful.

Quote:
Originally Posted by truexfan81 View Post
weird, with my gt430, if i activate the madvr deinterlacing on either setting, it becomes a slideshow. However the cuvid deinterlace to 60p works perfectly. :-/
That is very weird, I've no explanation for that. Do you have an SSE4.1 capable CPU? Are you sure that cuvid deinterlacing is done with highest possible quality? You could double check by using the cheese slices test video. Most important of all: When you get that slideshow, which of the queues are empty and which are full? You can see that in the madVR debug OSD (Ctrl+J).

Quote:
Originally Posted by mindbomb View Post
the chroma upsampling being done by intel/dxva2 is also a result of dxva scaling on intel?
If you activate DXVA scaling with v0.85.2, chroma upscaling is automatically also done by DXVA on all GPUs.

Quote:
Originally Posted by MSL_DK View Post
I do not think so. I just got my Spyder4 swapped to a i1pro and I'm pretty sure that it makes correct measurements.
I'm not saying that the measurements are incorrect. The problem might be that if you do too many measurements which are too near to each other, the measurements might not be on a straight line/curve. That could produce problems for yCMS. You could try to reduce the number of measurements. That will result in yCMS having to interpolate/guess more, but it might fix those artifacts. But I don't really know, I'm not really an expert with this.

Quote:
Originally Posted by pururin View Post
So now for Intel users DXVA2 scaling for both Chroma/Luma is the best choice?

Also can HD 4000 handle Bicubic75 Chroma+Lanczos3 AR Luma? I'm planning on getting one (I3 3225).

Personally, I prefer less taxing combinations that give reasonably good result (Catmull-rom Chroma+ Bicubic75 Luma in the old discussion?) to save power consumption.
If "reasonably good result" and "save power consumption" are your primary concerns that using DXVA2 scaling for Intel GPUs sounds like a good solution. However, there's currently the one problem with this that Intel only outputs to 8bit RGB. So you might get some banding. But I'm in contact with Intel to get this fixed. Not sure if I can get them to fix this, but I'm trying...

Quote:
Originally Posted by clsid View Post
@madshi
Would it be possible to make the default scaling settings dynamic? Then you might be able to provide a better out-of-the-box experience, certainly on weaker hardware.

I was thinking of something like this:
1) Show the graphics card name and DeviceID somewhere in madVR settings.
2) Create a topic where people can post test results for the various scaling algorithms in madVR.
Provide links to some representative sample files, so everybody can test with the same ones.
Something like:
http://xhmikosr.1f0.de/samples/2160p/ParkJoy/ParkJoy_720p50.x264.CRF23.mkv
Testers should post details like:
- graphics card name and deviceid
- windows version
- CPU
- screen resolution
- max GPU usage for the sample file(s) for the various scaling methods
3) Based on the results you can decide which sane defaults should be used for each card. I am sure some of the regulars in this topic are willing to help out to generate such conclusions for you, saving you the trouble/time.
A rule of thumb could be at most 80% GPU usage for processing 30i/60p, or maybe a bit more conservative.
And of course the heaviest algorithms should not blindly be used on powerful hardware. You could decide to choose a specific one as the max for default settings, so that there is a good balance between performance and quality.
4) Add a simple lookup table to madVR that uses the DeviceID as index and contains the default scaling settings for each card. A relatively small table should probably already suffice for listing the most popular cards.
(perhaps an external .xml file might be an alternative for an embedded table, as it would allow additions without touching madVR)
5) Use conservative defaults for unknown cards. Or perhaps use some heuristics based on GPU details such as memory/core frequency/shadermodel version/#of shader units. I dunno what kind of info you can (easily) acquire.
It's a good idea, but it's a rather complex thing. E.g. on Intel GPUs using DXVA scaling and deinterlacing is running in dedicated hardwired circuits, while with AMD and NVidia, DXVA stuff mostly runs on GPU shaders. So with Intel using DXVA scaling and deinterlacing shouldn't slow madVR rendering performance down much. The situation is different with AMD and NVidia. Then performance can differ a lot depending on whether you downscale or upscale, and with which scaling factor.

But the main problem is that the current scaling algorithms may not be final yet. E.g. current algorithms all run in HLSL pixel shaders. Maybe I can use CUDA/OpenCL to squeeze more performance out of the GPU, then everything could change again. So I think it's too early right now to start creating such a GPU <-> settings database.

In the long run I do plan to either make such a database, or to alternatively add a built-in benchmark which measures GPU speed and then auto-configures madVR accordingly. But this is all future talk. I still need to add several missing features first...

Quote:
Originally Posted by dansrfe View Post
Is it possible to have an option to override PGS subtitle positioning? I know if you choose to do this it will be at the bottom of your list and that's ok. Just wanted to see if you deemed it worthy to enter the list in the first place. Thanks!
I think the subtitle renderer would be the better place to have such options. Soon (hopefully) the next xy-vsfilter version might replace the MPC-HC internal subtitle renderer as the best option for madVR subtitle rendering. Let's see then which options xy-vsfilter will offer and whether that'll be enough for everybody. If not, you could try convincing the xy-vsfilter dev to add more options.
madshi is offline   Reply With Quote
Old 5th December 2012, 23:32   #16009  |  Link
DragonQ
Registered User
 
Join Date: Mar 2007
Posts: 930
Quote:
Originally Posted by madshi View Post
It's not necessary to ask the user which GPU he has, I can find out via Direct3D.
Yeah but what I mean is, wouldn't you have to keep a big database of every card in existence this way? With a simple menu (old IGP, new IGP/old GPU, new GPU) you can be more generic.
__________________
HTPC Hardware: Intel Celeron G530; nVidia GT 430
HTPC Software: Windows 7; MediaPortal 1.19.0; Kodi DSPlayer 17.6; LAV Filters (DXVA2); MadVR
TV Setup: LG OLED55B7V; Onkyo TX-NR515; Minix U9-H
DragonQ is offline   Reply With Quote
Old 5th December 2012, 23:41   #16010  |  Link
aufkrawall
Registered User
 
Join Date: Dec 2011
Posts: 1,716
Quote:
Originally Posted by madshi View Post
If you activate DXVA scaling with v0.85.2, chroma upscaling is automatically also done by DXVA on all GPUs.
Even if no luma scaling happens?

Edit: I guess not.
But now that DXVA logic of madVR has changed, why not making it possible to select DXVA scaling also for luma?

Last edited by aufkrawall; 5th December 2012 at 23:49.
aufkrawall is offline   Reply With Quote
Old 6th December 2012, 00:08   #16011  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,494
Quote:
Originally Posted by madshi View Post
That sounds quite weird. If you can manage to create a log which *only* has the situation in it where playback does not start at all, I'd be interested in that. If you have a monster log where playback sometimes starts and sometimes not, I'd rather pass on that because it would be hard to interpret.
I'm still trying to create a proper log. I have the feeling that the debug version behaves somehow different - read: better - than the normal version. Is that possible?

I tried to create a similar situation by playing a 1080p60 file, which the HD5850 is too slow to handle:
http://www.mediafire.com/?ffwpozffc2gkhyp
The symptons are the same.

I'll keep trying to create a proper sample but it really proves to be difficult.

Quote:
Originally Posted by madshi View Post
Just for my information: All these issues only apply to DXVA decoding. No problems with DXVA deinterlacing and/or DXVA scaling, is that correct?
Just testing DXVA2 decoding here. No deinterlacing or DXVA2 scaling going on.
sneaker_ger is offline   Reply With Quote
Old 6th December 2012, 00:21   #16012  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,494
Back to Cat 12.9, first video: transparent window, no start.
Switch to [debug]: works fine.
sneaker_ger is offline   Reply With Quote
Old 6th December 2012, 00:49   #16013  |  Link
ajp_anton
Registered User
 
ajp_anton's Avatar
 
Join Date: Aug 2006
Location: Stockholm/Helsinki
Posts: 782
Quote:
Originally Posted by aufkrawall View Post
Even if no luma scaling happens?

Edit: I guess not.
But now that DXVA logic of madVR has changed, why not making it possible to select DXVA scaling also for luma?
Why not? DXVA scaling now outputs RGB, which it can do whether there's luma scaling or not.
And "also for luma"? It's currently *only* for luma (which automatically does it for chroma as well).

edit: I just realized, my overlayed start menu has been fixed. If it's in your list of unresolved low-prio bugs, you can forget about it.

Last edited by ajp_anton; 6th December 2012 at 00:53.
ajp_anton is offline   Reply With Quote
Old 6th December 2012, 02:13   #16014  |  Link
Hwasin
Registered User
 
Join Date: May 2012
Posts: 6
Quote:
Originally Posted by madshi View Post
If you activate DXVA scaling with v0.85.2, chroma upscaling is automatically also done by DXVA on all GPUs.
This does not seem to be true in any fullscreen mode for me. Using Intel HD3000 in a optimus system with 540m

The test I did was to set chroma with Jinc + AR. In windowed mode, rendering time is 9ms. In fullscreen mode, it's 60ms.

Last edited by Hwasin; 6th December 2012 at 02:17.
Hwasin is offline   Reply With Quote
Old 6th December 2012, 02:31   #16015  |  Link
khanmein
Registered User
 
Join Date: Oct 2012
Posts: 118
Quote:
Originally Posted by 6233638 View Post
If you can run those settings without dropping frames, I would say those are already ideal.


I'm trying to figure out a "scale" for the settings in madVR, to see what the best options are from low-end to high-end, balancing performance and image quality.
dropping/delay frames impossible 0. once i start play BD-RMVB (DXVA-CB, NV12 4:2:0)
@drop frame 4
@delay frame 1
once i alt+tab full screen or adjust the seek bar drop/delay frame will increase slightly & stay at there as long i didn't pause or click forward/backward.

i noticed when start playing MKV+FLAC, the mpc will delay & hang for less than 15 sec with black screen. after that it play smoothly.

Last edited by khanmein; 6th December 2012 at 02:36.
khanmein is offline   Reply With Quote
Old 6th December 2012, 04:20   #16016  |  Link
ajp_anton
Registered User
 
ajp_anton's Avatar
 
Join Date: Aug 2006
Location: Stockholm/Helsinki
Posts: 782
Quote:
Originally Posted by Hwasin View Post
This does not seem to be true in any fullscreen mode for me. Using Intel HD3000 in a optimus system with 540m

The test I did was to set chroma with Jinc + AR. In windowed mode, rendering time is 9ms. In fullscreen mode, it's 60ms.
And what about if chroma upscampling is set to bilinear or nearest neighbor?
ajp_anton is offline   Reply With Quote
Old 6th December 2012, 06:28   #16017  |  Link
Hwasin
Registered User
 
Join Date: May 2012
Posts: 6
Quote:
Originally Posted by ajp_anton View Post
And what about if chroma upscampling is set to bilinear or nearest neighbor?
I don't know how to tell the difference. But upon further testing. This only happens with 1920*1080 material. My screen is 1920*1080.

It doesn't use DXVA2 scaling when luma scaling is nor used.

Last edited by Hwasin; 6th December 2012 at 08:23.
Hwasin is offline   Reply With Quote
Old 6th December 2012, 06:40   #16018  |  Link
Mangix
Audiophile
 
Join Date: Oct 2006
Posts: 354
Quote:
Originally Posted by madshi View Post
Maybe I can use CUDA/OpenCL to squeeze more performance out of the GPU, then everything could change again.
I thought that CUDA as well as OpenCL didn't expose any graphics related functionality like textures and whatnot but did allow GPGPU stuff like password cracking.
Mangix is offline   Reply With Quote
Old 6th December 2012, 09:48   #16019  |  Link
Heuer
Registered User
 
Join Date: Jan 2012
Posts: 15
I seem to be having problems with 85.2 - it is causing sound breakup on the centre channel. Reloaded 85.1 and everything was back to normal. Tried this iteration three times with the same result so I am back to running the earlier release. Any suggestions?

Setup - i3, GTX650Ti, W7, MPC-HC, LAV + MadVR + Re-clock. Break up gets worse as video (720p was the tester) progresses.
Heuer is offline   Reply With Quote
Old 6th December 2012, 10:09   #16020  |  Link
madshi
Registered Developer
 
Join Date: Sep 2006
Posts: 9,137
Quote:
Originally Posted by aufkrawall View Post
Even if no luma scaling happens?
Quote:
Originally Posted by Hwasin View Post
This does not seem to be true in any fullscreen mode for me. Using Intel HD3000 in a optimus system with 540m

The test I did was to set chroma with Jinc + AR. In windowed mode, rendering time is 9ms. In fullscreen mode, it's 60ms.
DXVA scaling is only active if the video needs to be scaled. If DXVA scaling is active, chroma upsampling is being done by DXVA, too. If the video doesn't need to be scaled, chroma is still upsampled by the madVR algorithms.

Quote:
Originally Posted by aufkrawall View Post
But now that DXVA logic of madVR has changed, why not making it possible to select DXVA scaling also for luma?
Well, I guess it would be possible. But I somehow doubt the usefulness of using DXVA chroma upsampling with non-DXVA luma upscaling. So I wonder whether I should invest the development time to make this combination work.

Quote:
Originally Posted by sneaker_ger View Post
Back to Cat 12.9, first video: transparent window, no start.
Switch to [debug]: works fine.
That's bad. I'll try to reproduce this on my development PC. You're using win7, right?

Quote:
Originally Posted by khanmein View Post
dropping/delay frames impossible 0. once i start play BD-RMVB (DXVA-CB, NV12 4:2:0)
@drop frame 4
@delay frame 1
once i alt+tab full screen or adjust the seek bar drop/delay frame will increase slightly & stay at there as long i didn't pause or click forward/backward.
Try activating the "delay playback start until queues are full" in the madVR settings. That might get rid of the frame drops when starting the video.

Quote:
Originally Posted by khanmein View Post
i noticed when start playing MKV+FLAC, the mpc will delay & hang for less than 15 sec with black screen. after that it play smoothly.
Which MKV splitter and which FLAC decoder are you using? Try madFlac as an alternative, if you haven't already...

Quote:
Originally Posted by Mangix View Post
I thought that CUDA as well as OpenCL didn't expose any graphics related functionality like textures and whatnot but did allow GPGPU stuff like password cracking.
Both CUDA and OpenCL (1.2) have interop functionality to Direct3D9 which in theory allows accessing D3D textures. However, it only half works at the current time and is very slow with current AMD drivers. But there's hope that this might be improved in the future.

Quote:
Originally Posted by Heuer View Post
I seem to be having problems with 85.2 - it is causing sound breakup on the centre channel. Reloaded 85.1 and everything was back to normal. Tried this iteration three times with the same result so I am back to running the earlier release. Any suggestions?

Setup - i3, GTX650Ti, W7, MPC-HC, LAV + MadVR + Re-clock. Break up gets worse as video (720p was the tester) progresses.
Are you using anything DXVA related? Does it help if you disable those? Does madVR drop any frames while you get audio breakup? In theory madVR does not have anything to do with audio at all. This might be a result of how DXVA/Direct3D demands resources from the CPU, maybe not leaving enough resources to the audio driver? Does your CPU run near 100% when this problem occurs? You could also check DPC latency, there are test tools available for that.
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 23:08.


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