View Full Version : madVR - high quality video renderer (GPU assisted)
jj666
11th April 2009, 11:51
So the "video elite" want's to run madVR in such old graphics cards?:D
lol ;-)
It would be great if people with more recent cards would test it and post the results, so we could be able to see if it's just our cards that cannot handle it.
A single 9800GX2 works fine, I observed no "tearing" or anything else out of the ordinary.
Thanks a lot Madshi!
Cheers,
-jj-
Casshern
11th April 2009, 12:24
No fundamental problems here. XP SP3, ATI 2600 PRO 512 MB, Catalyst 9.2, Zoomplayer. No tearing, smoothness is on par with overlay and vmr7 when using reclock. Just some small things:
1) The options do not get saved, and the dialog looks wierd (white boxes)
2) Picture looks a tad to light - according to the 3dlut employed it should expand just as the ATI drivers do. But it seems different. It's not a 16 vs. 0 difference more a 2 vs. 0. Could it be that the ATI level expansion is not very accurate? Or is there still a small inaccuracy in this renderer?
Is there a way to save the resulting RGB frame? Then one could easily compare with the real values...
bye,
Casshern
lol ;-)
A single 9800GX2 works fine, I observed no "tearing" or anything else out of the ordinary.
Thanks a lot Madshi!
Cheers,
-jj-
Mark_A_W
11th April 2009, 12:31
So the "video elite" want's to run madVR in such old graphics cards?:D
Please remember that madVR needs lot of shader processing power, and the old cards have very few shader processing units... My GF 8600GT only has 16, and it barelly keeps up with it. So, if we really want to use madVR, we should start thinking in upgrading... of course madshi could be able to optimize the code, but in the end it will always be a question of shading power. You have it or not.;)
It would be great if people with more recent cards would test it and post the results, so we could be able to see if it's just our cards that cannot handle it.
I can help you with the 3dlut files creation, but you have to be more specific with your problems... Which source, which other renderers are you comparing? video levels or PC levels?
madshi,
are you ok with using this thread for 3dlut discussions, or will you prefer that we discuss 3dlut stuff in another thread?
Yeah....that 2 year old junk ;)
I guess we need to figure out the minimum required card for 1080p video, if it is these cards that are the issue. I was looking at video card prices and for the ~$200 or so I paid for the 2600XT, I can get a 4850 or somesuch.
What's Madshi got (cue re-reading this thread..)? That would be a good place to start!
And yes please, can you create a thread with the basics of creating a 3dlut?
Currently I run a custom gamma curve (hand crafted with VideoEqualiser which a CRT owner in the AVS CRT forum wrote), on a CRT calibrated with HCFR (which was in-turn calibrated against Colorfacts with the help of a friend).
Can I use HCFR to help generate a 3d lut? Does it/can it replace my custom gamma curve?
Please answer in a new thread!
Thanks
Mark
Mark_A_W
11th April 2009, 12:42
Ok, thanks for feedback. Improving motion smoothness is on the top of my priority list. However, the non-smoothness might also be caused by the HD2600 being too old/slow. Compared to my (entry level) HD3850, the HD2600 only has 1/3 of the shader power and only half of the memory bandwidth. You can try activating some of the "trade quality for performance" options. Maybe that helps smoothness for you?
I tested disabling all of preformance options, and it still tears.
The tearing is not very noticable on most scenes - it can be missed at a casual glance, but the Reclock tearing test reveals all. There are about 5 minor tears, spaced up the screen.
Normally tearing is one big tear towards the top of the screen. This is different.
I take your point about the HD2600 series cards. It may be time for an upgrade.
yesgrey
11th April 2009, 13:07
the dialog looks wierd (white boxes)
I think you (like me) might be using another color for your windows backgrounds instead of the default white...;)
Is there a way to save the resulting RGB frame? Then one could easily compare with the real values...
Yes. Use your keyboard PrtSc key and paste it to an image editor. I use Microsoft photo editor and "paste as new image...".
I was looking at video card prices and for the ~$200 or so I paid for the 2600XT, I can get a 4850 or somesuch.
It's better waiting a little... Soon should be released (in May?) the new ATI 4770 which should be slightly slower than the 4850 and should cost ~$100...;)
And yes please, can you create a thread with the basics of creating a 3dlut?
Does it/can it replace my custom gamma curve?
I'm currently adding the custom gamma curves. I will create the thread once it's ready.
Jaja1
11th April 2009, 13:27
First of all, thanks for another great project Madshi.
I tested some AVC Blu-rays on two machines. I'm using the same software setup on both machines XP+SP3, Zoomplayer, Haali splitter and CoreAVC.
On the NVidia 7600GT machine I get 90-100% CPU usage and the image stutters as hell. So I can't conclude whether the vidcard lacks power since the CPU usage alone would result in serious stuttering.
On a NVidia 9500GT on the other hand the CPU usage is normal (about 20-25%) and at first sight the video is smooth. Not very reliable since this is small PC Monitor. Will test this later with my PJ on a large screen.
It would be great if your effort to create smooth pan's would apply not only to 24p but also to 59,94 Hz displays. My projector unfortunately cannot do 24p. Of course you can't resolve the 3:2 judder, but now there are pans from time to time that are so bad that they are hard to watch.
There might be a annoying problem with custom timings on modern vidcards. Powerstrip doesn't support NVidia after the Geforce7 series and the Nvidia drivers are in my experience very unreliable creating custom timings. I do not know about ATI though.
Mike5
11th April 2009, 13:29
It would be great if people with more recent cards would test it and post the results...
I'm going to spend the afternoon trying madVR on a HD 4650, with a projector and a 2.50 mt wide screen. I'll post the results.
Casshern
11th April 2009, 13:46
I noticed no tearing on an AGP 2600 Pro 512 MB passive (MSI). I have set catalyst to activate vsync synchonization if the application does not specify and use zoomplayer with reclock (but without vsync correction). But will check again tonight.
I tested disabling all of preformance options, and it still tears.
The tearing is not very noticable on most scenes - it can be missed at a casual glance, but the Reclock tearing test reveals all. There are about 5 minor tears, spaced up the screen.
Normally tearing is one big tear towards the top of the screen. This is different.
I take your point about the HD2600 series cards. It may be time for an upgrade.
Mark_A_W
11th April 2009, 13:51
I noticed no tearing on an AGP 2600 Pro 512 MB passive (MSI). I have set catalyst to activate vsync synchonization if the application does not specify and use zoomplayer with reclock (but without vsync correction). But will check again tonight.
Ditto with ZP and Reclock.
I tried the CCC V-sync settings. No difference. Reclock tearing test shows tearing.
Video is playing on my secondary monitor, that could be an issue (it is with Haali if Aero is enabled, that causes tearing..Aero gets confused with two monitors).
yesgrey
11th April 2009, 13:51
I'm using the same software setup on both machines XP+SP3, Zoomplayer, Haali splitter and CoreAVC.
Please try Coreavc with and without cuda. With my 8600GT I have to disable cuda.
leeperry
11th April 2009, 14:30
Please try Coreavc with and without cuda. With my 8600GT I have to disable cuda.
I'll try on my GF9600 and will report back, it all works like a charm in HR in 23.976@48Hz...except for that damn jitter that requires many reseeks to catch the VSYNC fliptime properly :devil:
it all works fine w/ 25/29.97fps MKV and any other container, just 23.976 MKV crap out constantly....I think HR/HMS are too tied up together, and there's some glitch in either of those that apparently will NEVER be fixed :(
madVR might very well be the answer to all this Reclock hiccup and offer perfect smoothness OOTB...and if it could have a "compatibility" mode that uses the GUID of another renderer(VMR7/EVR/HR?) it could even work in *ANY* player(PDVD9/TMT3/KMPlayer) :cool:
2009 started well w/ CoreAVC CUDA and all, it might look even better w/ madVR....hopefully we'll also get an english.ini for PotPlayer(new player from the original KMP coder) soon enough :)
yesgrey
11th April 2009, 14:47
I'll try on my GF9600 and will report back, it all works like a charm in HR
But HR does not make such an intensive use of GPU as madVR, and also the memory use in madVR is very high due to the 3dlut (96MB) and all the intermediate buffers at 16bit per component... That's why we need to redefine our working minimuns.
With madVR doing everything in the GPU, we would have more CPU power for software AVC decoding...;)
Egh
11th April 2009, 15:21
But HR does not make such an intensive use of GPU as madVR, and also the memory use in madVR is very high due to the 3dlut (96MB) and all the intermediate buffers at 16bit per component... That's why we need to redefine our working minimuns.
With madVR doing everything in the GPU, we would have more CPU power for software AVC decoding...;)
lolz. CPU if anything is the one to be used here, for madVR. Remember I reported it maxed one of the 3.1GHz cores here whilst paused.
As for memory requirement and so on, with 512mb I have on my grafix card I should expect no problems.
Quote:
Originally Posted by Egh View Post
This renderer potentially is top#1 choice for video elite
7900GTX (fastest 7xxx GForce)
Quote:
Originally Posted by Mark_A_W View Post
On an ATi 2600XT
Quote:
So the "video elite" want's to run madVR in such old graphics cards?
Please remember that madVR needs lot of shader processing power, and the old cards have very few shader processing units... My GF 8600GT only has 16, and it barelly keeps up with it. So, if we really want to use madVR, we should start thinking in upgrading... of course madshi could be able to optimize the code, but in the end it will always be a question of shading power. You have it or not.
It would be great if people with more recent cards would test it and post the results, so we could be able to see if it's just our cards that cannot handle it.
Well, thing is that 7900GTX even though is definately older architecture, but still pulls most contemporary games in DX9 in medium and sometimes even high graphics settings. It renders about 100fps in a Source-engine based game whilst consuming slightly more CPU power than madVR displaying still frame only.
We definitely need some clarification from the developer regarding what shader version it uses and how many shader units are employed simultaneously.
I'm looking into upgrade options and this renderer would fasttrack it :) However I'm looking into the card which is able to produce 10bit colour, as one of my monitors is CRT which is theoretically able to produce deepcolour (few LCD panels are able to do it, and they do cost alot ;))
Betsy25
11th April 2009, 15:27
Congratulations Madshi !
Some more bug fixing and it's definitely a renderer to keep and use !
Can you please update links to the latest version in your top post ?
Thanks a bunch ! :o
yesgrey
11th April 2009, 15:38
However I'm looking into the card which is able to produce 10bit colour
It's not the card, it's the OS. It seems that only Vista and up support the 10bit mode... I've tryed it with XP SP3 and did not work.
one of my monitors is CRT which is theoretically able to produce deepcolour (few LCD panels are able to do it, and they do cost alot ;))
I'm not so sure about it... I always thought that being CRT analog it would be able of higher than 8bit bit depth, but recently I have read that the CRT phosphors limit is 8bit... and even if you feed it more you will not be able to see any difference...
It seems we can only achieve >8bit color with digital displays...:(
Brazil2
11th April 2009, 15:39
MPC-HC freezes and maxes out a single core while its frozen. RAM usage keeps climbing but nothing else happens.
I'm randomly getting the same issue, MPC-HC seems to freeze but in fact it's playing as I can hear the sound but I see no video and after several seconds the memory usage raises up to about 700 MB and then the video is displayed.
I can't find a way to reproduce this each time but it happens to me when I'm successively playing different video formats (Xvid, MPEG2, H264, VC-1) in different containers (AVI, MPG, MP4, MKV, WMV) and with different resolutions (from 512*288 up to 1920*1080).
There is also something wrong when MadVR is used in GraphEdit/GraphStudio.
The caption bar of the MadVR window has no controls (no system menu, no buttons) and it's cropping the video because the whole MadVR window is at the video native resolution but this includes the caption bar.
Screenshots:
With default VMR the whole window is 520*315 but the video part is 512*288 which is the resolution of the video:
http://img135.imageshack.us/img135/4748/vmr.png
With MadVR the whole window is 512*288 including the caption bar which ends up with a cropped video:
http://img10.imageshack.us/img10/7114/madvr.png
In these screenshots you can also notice the difference between colors.
I got the cr3dlut v2 tool but I'm not sure about which parameters to use to create a new 3dlut for SD with MadVR (say for DVD and DVB MPEG2 SD). Please, could anyone post a 3dlut file for this ?
yesgrey
11th April 2009, 16:13
I got the cr3dlut v2 tool but I'm not sure about which parameters to use to create a new 3dlut for SD with MadVR (say for DVD and DVB MPEG2 SD). Please, could anyone post a 3dlut file for this ?
Here is for PAL, and video levels to PC levels expansion:
Input_Bit_Depth 8
Input_Video_Format PAL_DVD YCbCr
Output_Bit_Depth 16
Output_Video_Format PAL_DVD RGB_PC
For NTSC use "NTSC_DVD" and if you don't want video levels to PC levels expansion use RGB_Video.
Soon I will open a thread for cr3dlut helping and discussion...
leeperry
11th April 2009, 16:31
I always thought that being CRT analog it would be able of higher than 8bit bit depth, but recently I have read that the CRT phosphors limit is 8bit... and even if you feed it more you will not be able to see any difference...
It seems we can only achieve >8bit color with digital displays...:(
ARGYLLCMS has a tool to check the LUT accuracy, of course it's 8bit in DVI but it's 10bit in VGA on nvidia cards(and 9 on ATi :o)
but because of the D/A > A/D conversions, and the fact that CRT monitors have legacy onboard IC....prolly it doesn't really matter.
as about sending pure 10bit, well for the same reasons I'd be rather dubious...or maybe w/ 5BNC connectors on professional broadcast equipment.
But HR does not make such an intensive use of GPU as madVR, and also the memory use in madVR is very high due to the 3dlut (96MB) and all the intermediate buffers at 16bit per component... That's why we need to redefine our working minimuns.
With madVR doing everything in the GPU, we would have more CPU power for software AVC decoding...;)
oh sure, doing the RGB32 conversion in 32float, plus applying your LUT's and scaling in spline is a HUGE plus(the YUY2 coeffs in HR are completely off) :eek:
my GF9600GSO is actually a rebadged 8800GS and it's got 96SP(the regular 9600GT has only 64), so w/ an o/c Q6600 it should take the load hopefully :)
Mike5
11th April 2009, 16:44
Ok, I tried with a HD 4650, Win 7, Catalyst 9.3, MPC-HC, Reclock (my display doesn't support 24Hz, so I need it to stretch 23,976/24fps to 25Hz), a 1280x720 projector and a 2.5 mt wide screen.
HD-mkv mostly H.264 720p, some 1080p
No problem of any type. No crashes, no tearing at all (Reclock tearing test is perfect), no glitches.
Quality is very high with respect to EVR(CP), expecially colours. Particularly in "Speed Racer" the difference in colours between the two renderers is impressive. With madVR there is a sort of "higher colour resolution".
Smoothness can be improved. Like other renderers it depends on where you start the playing.
WMV-HD
720p Ok. 1080p gives a distorted and greenish image.
DVD
Impossible to play .ifo files from disk o DVD from drive. It gives DVD: Macromedia Fail. I can't understand what Macromedia has to do with the renderer, but wait some guru to explain me. No problems with single .vob or .mpg files. Quality is approx. on the same level as EVR plus YV12 -> RGB conversion by ffdshow.
Tried also avi, divx, xvid and everything I have with no problems.
Egh
11th April 2009, 16:46
the ARGYLLCMS has a tool to check the LUT accuracy, of course it's 8bit in DVI but it's 10bit in VGA on nvidia cards(and 9 on ATi :o)
but because of the D/A > A/D conversions, and the fact that CRT monitors have legacy onboard IC....prolly it doesn't really matter.
as about sending pure 10bit, well for the same reasons I'd be rather dubious...or maybe w/ 5BNC connectors on professional broadcast equipment.
Fail -- a) DVI standard supports >8bit accuracy (read about dual-link for instance). b) There are monitors with HDMI c) DisplayPort :win:
As for CRTs, there may be some issues but note that normal people don't use cheap CRTs nowadays, so hopefully high-end monitors may display colours a bit better in 10bit mode. Never tried myself so cannot guarantee anything, however I do opt for high-end grafix with deepcolour and HDMI/DisplayPort as for the next upgrade.
Nvidia RAMDAC in 9xxx series is 10bit I think.
Mike5
11th April 2009, 16:50
I forgot to mention I tried several BluRay with AnyDVD HD in background and the results are similat to mkv's (they are all 1080p).
leeperry
11th April 2009, 16:55
Fail -- a) DVI standard supports >8bit accuracy (read about dual-link for instance). b) There are monitors with HDMI c) DisplayPort :win:
of course I meant general consumer DVI equipment.
show me a DVI display that does >8bit and doesn't cost an arm and a leg :rolleyes:
there's some graphic adapters that support 10bit HDMI 1.3(nvidia IGP's), but not too many ppl talk about them...let alone post benchmarks.
leeperry
11th April 2009, 17:50
well, it works just fine w/ CoreAVC CUDA on XP SP3 here(latest DX9/nvidia drivers updates) w/ ffdshow video(LSF/GrainF3 in the avisynth filter) in YV12 on a GF9600GSO(96SP) + ffdshow audio(volume/mixer/Ozone4 winamp plugin)/AC3filter in 32float on an o/c Q6600.
it sucks a helluvalot of CPU cycles when paused, but that's about it....also, it looks very smooth w/ Reclock in 25@48.000Hz :eek:
will try it on the big screen this evening :thanks:
if you could set one LUT for SD, and one for HD I'd be sold...and faking HR's GUID so it'd work in KMPlayer would be the icing on the cake.
PS1: from what I understand CUDA doesn't use the GPU itself, only the VP2 routines.
in the past I was using the gamut conversion PS script(from yesgrey) in HR w/ Avishader() w/o any problem.
PS2: sending a 720p video in 1280*768 is VERY sharp! is it 1:1? or is that to say that HR indeed has a "soft" picture? this point has been thoroughly debated on HCFR :o
madshi
11th April 2009, 20:35
Just a question, do you plan to handle the subtitles like doing VRM9 and EVR?
I've no idea right now. Haven't looked into subtitles yet.
Try with other renderers, in Vista if you use NV12 and EVR Custom, you get bad chroma upsampling. However if you use plain EVR instead you get good chroma upsampling. Weird.
Yes, it's weird. On my PC I can't seem to get any good chroma upsampling from ATI at all, regardless of the renderer. But this whole mess just proves the point of madVR: With madVR video rendering should look 100% the same on every OS, graphics card and driver version (as long as the drivers don't mess up the shaders). Provided that the GPU is fast enough, obviously...
I get some wackiness trying to play VC1 content
Thanks for the report. I've investigated that and it's a clear bug in the MPC Video decoder. It only shows with madVR because if you use a different renderer, the MPC Video decoder usually outputs YUY2. madVR forces it to use YV12 and it seems that the MPC Video decoder bug only shows this way. I've already reported the bug to the MPC HC guys...
None of those color issues with AVC, but playback is very choppy on higher bitrate stuff, get about 15fps. But CPU is at 100% (C2D @ 3.4ghz)
No issues with MPEG2 stuff it seems.
Graphics card is a 8800GTS 640MB, its the original G80 version so no DXVA or CUDA.
You may want to try with the next version which will have an OSD which shows some statistics. That might help us find the reason for why things are choppy for you. 8800GTS sounds powerful enough for me...
However I have a 1920*1080 VC-1 video in a MKV container (demuxed from the M2TS with TsMuxer and muxed in a MKV with MKVToolNix) that doesn't want to be displayed with the correct aspect ratio with MadVR and only with MadVR.
Can I have a small sample, please?
I start a file in ZoomPlayer and playback seems smooth. I stop playback, without closing the player. I start another file, and now playback might be smooth, or it might be jerky (visible on long pans). No matter what I do, like opening another file (but still not having closed ZoomPlayer), I can't seem to get rid of the jerkiness. Now, I close ZoomPlayer. I open ZoomPlayer again and start playing the file I got jerkiness. However, this time playback is smooth...
Not sure where this is coming from. But since I didn't really implement any "smooth motion" features yet, please let me ignore "non-smooth motion" reports for now. I can only do one step at a time... :)
- having the renderer remember the settings is a must. Each time playback starts, it forgets what the settings were.
Of course.
- how does the filter know whjat .3dlut file to use. What if I have many .3dlut files in the folder where madvideorenderer.ax is, will it load one at random, or will it load only the out16.3dlut one ?
Currently always "out16.3dlut".
- madVR accepts YUY2 input
No, it doesn't. At least not on my PC. How did you get it to accept YUY2? Doesn't work for me in GraphEdit...
- wrong AR on some anamorphic video mkv files, in conjunction with the "Derived" aspect ratio option in ZoomPlayer. Haali's renderer shows proper behavior.
Can I have a small sample, please?
So, does it really support older than 8xxx series of GForce of GPUs? If so, why so much CPU%? In order to be really usable here needs to be probably around half of the current load and definitely as minimal as possible whilst paused.
I have about 4-5% on paused. During playback CPU consumption is too high. Don't know why right now, will need to check that. There is no specific requirement for any specific GPU generation. However, obviously the GPU needs to be fast enough and support 16bit textures etc...
perhaps it might be optimized more for ATI card, as madshi has no nvidia card
I'm developing with an ATI card, but yesgrey3 has been beta testing for a while with his (not too fast) NVidia and found no major problems...
I've tried turning all of the "quality" settings off and same tearing results. Perhaps this card just doesn't have the guts?
Not having the guts shouldn't result in tearing, I think. But I'm not 100% sure...
the dialog looks wierd (white boxes)
That's because it seems to be rocket science to ask Windows which background color a themed window has... :( I still haven't found out how to do this properly!
2) Picture looks a tad to light - according to the 3dlut employed it should expand just as the ATI drivers do. But it seems different. It's not a 16 vs. 0 difference more a 2 vs. 0. Could it be that the ATI level expansion is not very accurate? Or is there still a small inaccuracy in this renderer?
I've tested this and found that the pixel values madVR is putting out are exactly what I'm getting on a PrintScreen screenshot. This is not the case for me when feeding VMR9 RGB (!!).
I guess we need to figure out the minimum required card for 1080p video
Yes. Next version might help by giving us a bit more information to work with (OSD).
What's Madshi got (cue re-reading this thread..)?
ATI HD3850. Seems just about fast enough for 1080p24 playback with resizing activated. Planning to upgrade to an ATI HD4770 when it's released (early May).
We definitely need some clarification from the developer regarding what shader version it uses and how many shader units are employed simultaneously.
Shader version 3.0. I'm using HLSL, so I've no idea how many "shader units" my shader code is making use of.
There is also something wrong when MadVR is used in GraphEdit/GraphStudio.
The caption bar of the MadVR window has no controls (no system menu, no buttons) and it's cropping the video because the whole MadVR window is at the video native resolution but this includes the caption bar.
Will check that.
In these screenshots you can also notice the difference between colors.
About colors you have to talk to yesgrey3. As long as madVR uses the 3dlut files correctly (and I think version 0.2 does), everything depends on the 3dlut files.
Ok, I tried with a HD 4650, Win 7, Catalyst 9.3, MPC-HC, Reclock (my display doesn't support 24Hz, so I need it to stretch 23,976/24fps to 25Hz), a 1280x720 projector and a 2.5 mt wide screen.
HD-mkv mostly H.264 720p, some 1080p
No problem of any type. No crashes, no tearing at all (Reclock tearing test is perfect), no glitches.
Quality is very high with respect to EVR(CP), expecially colours. Particularly in "Speed Racer" the difference in colours between the two renderers is impressive. With madVR there is a sort of "higher colour resolution".
:)
WMV-HD
720p Ok. 1080p gives a distorted and greenish image.
With which decoder? With the MPC Video decoder? Try the MS one (see above).
it sucks a helluvalot of CPU cycles when paused
Not for me!!
also, it looks very smooth w/ Reclock in 25@48.000Hz :eek:
I think with a 1:1 match between display refresh rate and source frame rate even the current simple logic implemented in madVR can produce very smooth results. However, as soon as you don't have 1:1, things can quickly get very ugly.
sending a 720p video in 1280*768 is VERY sharp! is it 1:1? or is that to say that HR indeed has a "soft" picture?
I'm not sure if scaling is activated, depends on your media player zoom modes, of course. Try zooming a little to make sure that scaling is activated in order to judge sharpness with activated scaling. Also try the different scalers. Of course Lanczos4 and spline64 are sharper than the others.
I'm not sure if Haali is inherently soft. I was hoping that you guys would test that and report back! What I noticed is that Haali's scaling solution sometimes produces artifacts (ghost lines). That indicates that maybe there's something wrong. Also I'm not sure if Haali is deactivating scaling if no scaling is needed. Of course madVR only scales if necessary. Scaling is even "half" deactivated by madVR if scaling is only needed into one dimension... ;)
Jaja1
11th April 2009, 20:46
Please try Coreavc with and without cuda. With my 8600GT I have to disable cuda.The 7600GT doesn't support CUDA, nevertheless switching CUDA on and off didn't influence the CPU usage.
With the 9500GT I see no difference in CPU usage.
Doesn't the 9500GT support CUDA? I thought the entire 9 series did that. I don't mind, my processor doesn't have a problem with highbitrate AVC decoding.
leeperry
11th April 2009, 20:49
I'm not sure if scaling is activated, depends on your media player zoom modes, of course. Try zooming a little to make sure that scaling is activated in order to judge sharpness with activated scaling. Also try the different scalers. Of course Lanczos4 and spline64 are sharper than the others.
I'm not sure if Haali is inherently soft. I was hoping that you guys would test that and report back! What I noticed is that Haali's scaling solution sometimes produces artifacts (ghost lines). That indicates that maybe there's something wrong. Also I'm not sure if Haali is deactivating scaling if no scaling is needed. Of course madVR only scales if necessary. Scaling is even "half" deactivated by madVR if scaling is only needed into one dimension... ;)
well I've got a video test pattern(encoded by Kazuya) that does exactly that...test whether we got 1:1 mapping : http://rapidshare.com/files/220185543/Dila_720p.mkv.html
but I mean is it a true 1:1 mapping, no lanczos sharpening or anything if the scaler is not enabled? like playing 720p in 1280*768
the ghost lines of HR's internal scaler are due to a bad sum in the PS code(Haali wrote the PS scaler code in MPC, and when Casimir666 set it to 0.98 instead of 1.0...it fixed the glitch : http://mpc-hc.svn.sourceforge.net/viewvc/mpc-hc/trunk/src/apps/mplayerc/DX9AllocatorPresenter.cpp?r1=380&r2=379&pathrev=380 )
this problem also occurs on nvidia if you set the zoom too high, but it's much worse on ATi's.
well there's always been 2 schools on HCFR, one that swears by HR's smoothness and the other one that finds HR too "soft" compared to EVR/VMR9...which the other side finds "oversharpened" :D
I believe your renderer's sharper than HR(in native res of course), but I'll wait for Kazuya's feedback on this...BTW, when HR says "NN" in its OSD, it's supposed to keep all scaling disabled.
I understand you got a huge TODO list, but adding one LUT for SD/one for HD, and giving the opportunity to fake the GUID would be really awesome(sorry to repeat myself)...would love to have it working in KMP w/ proper 601/709 decoding http://forum-images.hardware.fr/images/perso/otakonleboss.gif
PS: I ran more tests, w/ perfectly matching refresh rates(23.976/24/25@48.000)+Reclock it's just perfectly smooth :eek: ....and it doesn't look oversharpened, so I guess HR is indeed "soft" :o
but until it allows 2 different LUT's for SD/HD, it's not quite usable yet..or maybe w/ a null LUT in madVR and 2x LUT's in tritical's plugin. lemme ask yesgrey
also, while seeking sometimes it missed the VSYNC fliptime...but that's quite rare.
cyberbeing
11th April 2009, 21:03
I just thought I'd mention that with my 7800GTX 512 (faster memory, but slower core then 7900GTX with overall comparable performance), I'm not seeing any of the CPU usage issues that Egh is on 1080p video. CPU usage for madVR seems identical to (and possibly even slightly less then) Haali on my system. CPU usage is 0% when paused, so I'm not having that issue either.
As I mentioned in my previous post I use WinXP SP3, so if Egh doesn't, maybe that is the problem rather then his graphics card.
Also of note is madVR uses ~200MB more RAM then Haali, so if you have high latency or not enough RAM, maybe that could contribute to the problem, but for some reason that seems to be an unlikely cause.
Egh
11th April 2009, 21:40
of course I meant general consumer DVI equipment.
show me a DVI display that does >8bit and doesn't cost an arm and a leg :rolleyes:
there's some graphic adapters that support 10bit HDMI 1.3(nvidia IGP's), but not too many ppl talk about them...let alone post benchmarks.
Well then I'll open you a secret -- most displays are only 6bit native. The other 2bits per channel are achieved by dithering (therefore some color artifacts may be observed). Even for 8 bit proper colour you need to look only for displays with S-IPS or S-PVA matrices, and that is not used in anything below 22" nowadays, and only few models.
leeperry
11th April 2009, 22:08
Well then I'll open you a secret -- most displays are only 6bit native. The other 2bits per channel are achieved by dithering (therefore some color artifacts may be observed). Even for 8 bit proper colour you need to look only for displays with S-IPS or S-PVA matrices, and that is not used in anything below 22" nowadays, and only few models.
you know, I'll tell you another secret....I don't have ANY LCD based display, mostly coz I find this technology really crappy...Darkchip3 DLP/CRT all the way :D
and I'm well aware than most(TN?) panels don't actually show 8bit...I'm not sure what you're trying to prove here, but you just made it to my ignore list :cool:
OK I'm gonna try to play a 2H movie in MPC w/ mVR, hopefully it won't drop like crazy after 1H(like non-D3D VMR9/EVR always do in MPC w/ Reclock)
Egh
11th April 2009, 22:19
I just thought I'd mention that with my 7800GTX 512 (faster memory, but slower core then 7900GTX with overall comparable performance), I'm not seeing any of the CPU usage issues that Egh is on 1080p video. CPU usage for madVR seems identical to (and possibly even slightly less then) Haali on my system. CPU usage is 0% when paused, so I'm not having that issue either.
As I mentioned in my previous post I use WinXP SP3, so if Egh doesn't, maybe that is the problem rather then his graphics card.
I agree that 7800 is just somewhat slower than 7900GTX, however it does take a lot of CPU power here. I tried even SD video in native resolution -- still one of the cores is maxed even when video is paused (around 90% of CPU usage on that core).
Just by scratching my head though I was able to find the cause.
Madshi: bug report #1 here! ;)
Crazily enough, it maxes one of the cores always independent of the actual video (can be even paused) if it is rendered onto non-primary display :eek: I have two monitors, if I move the window from one to another then madVR consumes CPU if the monitor being rendered on is not the current primary. I switched the primary monitors in Nvidia Contol Panel and observed the same behaviour but on the other monitor.
Madshi: bug report #2 here! ;)
If MPC AVC internal is used (no DXVA per definition here), 1920x1080 videos are rendered incorrectly, colors are weird, a yellow bar all the way in the bottom of the frame etc. No such problem if ffdshow avc decoder is used (and fed to YV12). No such problem if 720p video is decoded by internal MPC codec.
madshi
11th April 2009, 22:27
well I've got a video test pattern(encoded by Kazuya) that does exactly that...test whether we got 1:1 mapping : http://rapidshare.com/files/220185543/Dila_720p.mkv.html
but I mean is it a true 1:1 mapping, no lanczos sharpening or anything if the scaler is not enabled? like playing 720p in 1280*768
I find your questions very confusing. First you say you have a test pattern to test 1:1 mapping. Then you ask me if you have 1:1 mapping. Why don't you test it with the test pattern?
Then you ask me if you get 1:1 mapping when playing 720p in 1280x768? How am I supposed to know how your media player is configured? madVR does what the media player asks it to do in terms of scaling. Of course if the media player asks for playback in 1280x720 with a 1280x720 source then madVR does simple 1:1 with no scaling and no sharpening. If the media player asks madVR to scale a 1280x720 source to 1280x768 then madVR does scale, but only in Y direction. Sharpening is currently not applied by madVR at all. There are just softer and sharper scaling algorithms available for selection, which of course are only used if scaling is asked for by the media player...
madshi
11th April 2009, 22:31
Crazily enough, it maxes one of the cores always independent of the actual video (can be even paused) if it is rendered onto non-primary display
Don't know why that is the case. Right now I don't have a second monitor to test this, but sooner or later I should be able to...
If MPC AVC internal is used (no DXVA per definition here), 1920x1080 videos are rendered incorrectly, colors are weird, a yellow bar below etc.
I already replied to this somewhere in my last "monster" reply post.
Egh
11th April 2009, 22:55
I already replied to this somewhere in my last "monster" reply post.
Hmmmm.... which one? :)
In my case colours are totally distorted, not just wrong levels or so. Probably some colour planes problem.
madVR freezes (locks up) when I check both use 10bit luma & chroma buffer during playback and hit apply. It recovers when I uncheck the options and click apply.
madVR freezes (locks up) when I check use 10bit luma buffer and click apply. It recovers when I uncheck the options and click apply.
Regarding that previously reported bug with 10bit, just my experience tells it doesn't recover even if I uncheck 10bit options, then it will crash, silently or not. So yes, older generation cards may have troubles with 10bit buffers apparently.
Mark_A_W
11th April 2009, 23:16
I've narrowed the tearing down on my system (2600XT) to when Zoom Player is on the SECONDARY monitor.
If I switch the primary monitor to the video playback one, it doesn't tear. But it's not smooth, it has little jerks and jumps (yes, I know this will be ignored for now, but just reporting what I found).
Can somebody else with a multi-monitor system try it on the secondary monitor? Preferably at 23.976hz or a multiple thereof. Someone with a beefy videocard would be helpful, to narrrow this down to a secondary monitor issue.
Thanks
Mark
Brazil2
12th April 2009, 00:06
Here is for PAL, and video levels to PC levels expansion:
Input_Bit_Depth 8
Input_Video_Format PAL_DVD YCbCr
Output_Bit_Depth 16
Output_Video_Format PAL_DVD RGB_PC
For NTSC use "NTSC_DVD" and if you don't want video levels to PC levels expansion use RGB_Video.
Thanks for the infos, but as I see you advice to do one for PAL DVD and one for NTSC DVD may I ask you why ? I don't get where is the difference.
Does this also mean that I should create one file per format / resolution ? For instance one for Xvid 512*288, one for H264 1280*720, one for VC-1 1920*1080, etc. I admit I'm a bit lost about how it works...
noee
12th April 2009, 00:08
...
If I switch the primary monitor to the video playback one, it doesn't tear. But it's not smooth, it has little jerks and jumps (yes, I know this will be ignored for now, but just reporting what I found)....
Interesting find, Mark. FWIW, I can duplicate your results, except I don't get the "little jerks". If I set my "secondary" to Primary and playback on it (23.976@24Hz w/Reclock), I get no tearing at all and very smooth playback. Tremendous!
XPSP3, MPC-HC, CCC9.4
Brazil2
12th April 2009, 00:13
Can I have a small sample, please?
Here you go:
http://www.zshare.net/download/58510577a2d908e4/
Cut with DGSplit so I believe it still has the original header.
About colors you have to talk to yesgrey3. As long as madVR uses the 3dlut files correctly (and I think version 0.2 does), everything depends on the 3dlut files.
Yesgrey3 gave me some infos, however I'm afraid I'm still a bit lost about these 3dlut files. It would be nice to have this process automated to avoid confusion and possible mistakes.
Mark_A_W
12th April 2009, 00:14
Interesting find, Mark. FWIW, I can duplicate your results, except I don't get the "little jerks". If I set my "secondary" to Primary and playback on it (23.976@24Hz w/Reclock), I get no tearing at all and very smooth playback. Tremendous!
XPSP3, MPC-HC, CCC9.4
What video card do you have Noee?
leeperry
12th April 2009, 00:34
I find your questions very confusing. First you say you have a test pattern to test 1:1 mapping. Then you ask me if you have 1:1 mapping. Why don't you test it with the test pattern?
Then you ask me if you get 1:1 mapping when playing 720p in 1280x768? How am I supposed to know how your media player is configured? madVR does what the media player asks it to do in terms of scaling. Of course if the media player asks for playback in 1280x720 with a 1280x720 source then madVR does simple 1:1 with no scaling and no sharpening. If the media player asks madVR to scale a 1280x720 source to 1280x768 then madVR does scale, but only in Y direction. Sharpening is currently not applied by madVR at all. There are just softer and sharper scaling algorithms available for selection, which of course are only used if scaling is asked for by the media player...
well, this test pattern can only help to check if the scaling is unchanged...but I find your renderer sharper than HR, and I guess some slight texture processing/luma sharpen/PS script/driver user misconfiguration could make the picture appear sharper on screen....I don't know of any test pattern that can help to spot any post-processing but I'll look further(KMP doesn't rescale)...but prolly it's just that HR is softer, no worries.
anyway my 2H movie went just fine in MPC+Reclock at 25@48.000Hz, so that's cool! if you could find a way to never miss the VSYNC fliptime(triple buffering?), that'd be the final solution for a foolproof Reclock HTPC :)
until you add a LUT management for SD, I will keep madVR for HD movies only...very impressed so far, keep it up :cool:
PS: just to be clear(english not being my native tongue), if I play 720p stuff in 1280*768 in HR, its OSD will show "NN" meaning it simply added horizontal black bars w/o rescaling..but I guess madVR does the same :o
yesgrey
12th April 2009, 00:49
oh sure, doing the RGB32 conversion in 32float, plus applying your LUT's:eek:
The 3DLUT also performs the YCbCr->RGB conversion, and it uses 64bit FP.;)
DVD
Quality is approx. on the same level as EVR plus YV12 -> RGB conversion by ffdshow.
Did you use the same 3DLUT file for HD and DVD? For dvd you should use a different 3DLUT file, so maybe that's the reason you seemed to not like madVR so much with dvds...
Thanks for the infos, but as I see you advice to do one for PAL DVD and one for NTSC DVD may I ask you why ? I don't get where is the difference.
In the example I gave there is no difference, it would be the same for both PAL and NTSC. You only need to differentiate if you want to correct your display's color gamut, but let's leave this for the future cr3dlut thread... for now, use the same file for both.;)
Does this also mean that I should create one file per format / resolution ?
No. Only by video format, and not for all, because some of them use the same file.
leeperry
12th April 2009, 00:55
The 3DLUT also performs the YCbCr->RGB conversion, and it uses 64bit FP.;)
well, OK but the LUT is just a whole bunch of figures, what I meant is that outputting RGB32 off ffdshow/avisynth is not required anymore(so w/ CoreAVC CUDA it's a major relief CPU-wise). LUT's are definitely more GPU-friendly than CPU I think, as the video data is already there and HLSL can work in 64float indeed :devil:
BTW, left side is LSF+PC conversion in MVR(YV12), right side is LSF+PC conversion+t3dlut(w/ MVR's lut) in HR(RGB32) :
http://www.image-load.eu/out.php/t157404_1mvr.png (http://www.image-load.eu/out.php/i157404_1mvr.png)http://www.image-load.eu/out.php/t157403_1hr.png (http://www.image-load.eu/out.php/i157403_1hr.png)
http://www.image-load.eu/out.php/t157406_2mvr.png (http://www.image-load.eu/out.php/i157406_2mvr.png)http://www.image-load.eu/out.php/t157405_2hr.png (http://www.image-load.eu/out.php/i157405_2hr.png)
it's a copy of the RGB32 mixer, so it doesn't tell the whole story...yet the MVR's screenshots yield 10% bigger PNG's and seem a tad darker. I tried w/ the PC conversion in ffdshow, but using a LUT that converts by itself could have been a better idea....but I like to process GrainF3() on PC levels anyway, it looks better.
noee
12th April 2009, 01:14
What video card do you have Noee?
MSI HD2600XT 512MB, passive, stock clocks.
Hypernova
12th April 2009, 06:32
I can help you with the 3dlut files creation, but you have to be more specific with your problems... Which source, which other renderers are you comparing? video levels or PC levels?
Thank you for your offer. On second thought, I think it's defintely TV/PC level problem, except that it's not so clearly one or the other. Here goes:
madVR:
http://img382.imageshack.us/img382/7418/madvrwhite.th.jpg (http://img382.imageshack.us/my.php?image=madvrwhite.jpg)http://img18.imageshack.us/img18/2854/madvrblack.th.jpg (http://img18.imageshack.us/my.php?image=madvrblack.jpg)http://img19.imageshack.us/img19/7817/madvr1080.th.jpg (http://img19.imageshack.us/my.php?image=madvr1080.jpg)http://img23.imageshack.us/img23/7611/madvr720.th.jpg (http://img23.imageshack.us/my.php?image=madvr720.jpg)http://img16.imageshack.us/img16/8082/madvr.th.jpg (http://img16.imageshack.us/my.php?image=madvr.jpg)
and EVR CP:
http://img19.imageshack.us/img19/5905/evrcpwhite.th.jpg (http://img19.imageshack.us/my.php?image=evrcpwhite.jpg)http://img23.imageshack.us/img23/9134/evrcpblack.th.jpg (http://img23.imageshack.us/my.php?image=evrcpblack.jpg)http://img18.imageshack.us/img18/4651/evrcp1080.th.jpg (http://img18.imageshack.us/my.php?image=evrcp1080.jpg)http://img19.imageshack.us/img19/5926/evrcp720.th.jpg (http://img19.imageshack.us/my.php?image=evrcp720.jpg)http://img23.imageshack.us/img23/3310/evrcp.th.jpg (http://img23.imageshack.us/my.php?image=evrcp.jpg)
I'm sorry for jpg's, but the differences should be clear. EVR CP result is consistent with all othe renderers.
My monitor is Dell WPF3008 of DVI, so I think that's PC Level?
Thanks again. I just hope my problem is not so stupid that it's a waste of your time...
Casshern
12th April 2009, 07:43
On catalyst > 9, there is a major problem with multi monitor and reclock, at least with my AGP ATI 2600. Before you just had to set the primary monitor and playback was smooth on that monitor. But starting with the 9 versions, i only get smooth playback if i disable the second monitor altogether. Maybe the new reclocks get confused - but you need it for this renderer.
I've narrowed the tearing down on my system (2600XT) to when Zoom Player is on the SECONDARY monitor.
If I switch the primary monitor to the video playback one, it doesn't tear. But it's not smooth, it has little jerks and jumps (yes, I know this will be ignored for now, but just reporting what I found).
Can somebody else with a multi-monitor system try it on the secondary monitor? Preferably at 23.976hz or a multiple thereof. Someone with a beefy videocard would be helpful, to narrrow this down to a secondary monitor issue.
Thanks
Mark
Mark_A_W
12th April 2009, 07:59
On catalyst > 9, there is a major problem with multi monitor and reclock, at least with my AGP ATI 2600. Before you just had to set the primary monitor and playback was smooth on that monitor. But starting with the 9 versions, i only get smooth playback if i disable the second monitor altogether. Maybe the new reclocks get confused - but you need it for this renderer.
I'm running Cat 9.2 on a PCI-Express HD2600XT, with two monitors, and I can get really smooth playback with Haali and Reclock....and REALLY FRIGGIN SUPER DUPER SMOOTH WITH A CAPITAL SMOO playback with Beliyaal's MPC-HC builds (except I get a big glitch about once per hour).
hubblec4
12th April 2009, 08:12
Hello
i have installed your very good VideoRenderer and use the MPC-hc(Casimir). all plays fine but when i deactivate the internal h264 decoder, and use coreavc. the video will be load but dont play. the player crash and i must kill the prog in the task-manager.
what i do wrong?
hubble
cyberbeing
12th April 2009, 08:43
Thank you for your offer. On second thought, I think it's defintely TV/PC level problem, except that it's not so clearly one or the other.
What you are seeing is the gamma transfer function. Personally I'm unconvinced if this actually make the picture more accurate, but some people seem to believe it does.
If you don't like how it looks, these should make it look similar to other renderers:
# Blu-ray_PC
# Set input bitdepth
Input_Bit_Depth 8
# Set source video format
Input_Video_Format Blu-ray YCbCr
# Set output bitdepth
Output_Bit_Depth 16
# Set display video format
Output_Video_Format Blu-ray RGB_PC
# Output Gamma
Output_Gamma 1
# DVD-NTSC_PC
# Set input bitdepth
Input_Bit_Depth 8
# Set source video format
Input_Video_Format NTSC_DVD YCbCr
# Set output bitdepth
Output_Bit_Depth 16
# Set display video format
Output_Video_Format NTSC_DVD RGB_PC
# Output Gamma
Output_Gamma 1
Hypernova
12th April 2009, 10:05
Thanks for your help cyberbeing!
So, you think what I got from madVR is actually what should have been, and all other renderer give me wrong picture all along? That sounds..disturbing.
yesgrey
12th April 2009, 11:15
LUT's are definitely more GPU-friendly than CPU I think, as the video data is already there and HLSL can work in 64float indeed :devil:
Yes, the video memory access speed it's a lot higher than the ram access speed.
HLSL works in 32float, what works in 64float is cr3dlut. It needs it because the gamma operations require more precision than the rest of the image processing...;)
leeperry
12th April 2009, 11:43
Yes, the video memory access speed it's a lot higher than the ram access speed.
HLSL works in 32float, what works in 64float is cr3dlut. It needs it because the gamma operations require more precision than the rest of the image processing...;)
oh ok, coz this link says that HLSL can work in up to 64float :
http://www.neatware.com/lbstudio/web/hlsl.html
HLSL provides scalar data type like float and vector data type like float3. The scalar data types include bool with true or false value, int with 32-bit signed integer value, half with 16-bit floating point value, float with 32-bit floating point value, and double with 64-bit floating point value.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.