View Full Version : madVR - high quality video renderer (GPU assisted)
Snowknight26
25th November 2012, 22:15
When using DXVA with H.264 files, seeking causes madVR to jumble up the frame order. If the video is, say, 100 frames long, seeking to frame 50 from frame 20 seems to cause the frames to be played back in this order until it hits the seek point: 20,50,21,50,22,50,23,50...
http://stfcc.org/misc/madVR - log v0.85.1.zip
Portioli
26th November 2012, 01:36
Congrats for the latest version of MadVR and the DXVA2 support.
I think the biggest problem for ATi users after enabling DXVA-CB was the VC1 1080i50/60 playback.
Now i can watch all the BBC Planet earth & Life BDs using MadVR.
Till now, i have the best results (PQ, lower Cpu load & properly deinterlaced) using Arcsoft Video Decoder for VC1.
If you want i have uploaded only the necessary files in this folder here (http://www.mediafire.com/?k0u0men76x7i104).
The idea and the checkactivate.dll is from this thread (http://forum.doom9.org/showthread.php?t=154070).
At last one more question. Many people talk here about didee`s finesharp script.
Is it the same shader like the MPC-HC built-in finesharp or you need to add it using avisynth`s LSFmod?
thx in advance!
ajp_anton
26th November 2012, 01:40
When I activate fullscreen together with changing the refresh rate, the start menu icon (from "Classic Start Menu") stays on top of the movie until I exit and enter fullscreen again (without changing the refresh rate).
Of course it only happens with windowed fullscreen, not exclusive mode.
Screenshot: http://ajpanton.se/menu.png
Logfile, in case it's even there: http://ajpanton.se/log.zip
sneaker_ger
26th November 2012, 09:23
Problems:
- DXVA2 scaling seems to use something like nearest neighbor.
- some frames are shown out of order when seeking. (DXVA2 decoding + scaling)
- when seeking "scaling failed" warning may appear, but playback seems to immediately continue fine
Now on 0.85.1 and LAV 0.54 I couldn't reproduce problems 1 and 3 anymore.
Problem 2:
It seems to only be related to DXVA2 decoding, not the scaling. I created a log. (Opened video, seeked once, waited a few seconds, seeked again, waited a few seconds, seeked again, waited a few seconds, then closed the player)
Out-of-order/jerkyness on all three seeks. It looks a bit like this happens until the decoder has caught up after the seek. Not really sure.
log (https://rapidshare.com/files/318478037/madVR_0.85.1_dxva2_out_of_order.7z) (mirror (http://www.mediafire.com/?y3zry4qs4a84znk))
sample (https://rapidshare.com/files/1350258742/worldwarz-p1tt-tlr1_h1080p.mkv) (mirror (http://www.mediafire.com/?etaya7ybam4r0dd))
MPC-HC
Win 7 x64
HD 5850 (Cat 12.11 Beta 8)
* added "[DXVA2]" to debug log when DXVA2 decoding is used
This doesn't seem to happen here, even though LAV says it's using dxva2 native.
/edit:
Or is "[DXVA2]" only supposed to be added to the debug OSD?
dansrfe
26th November 2012, 09:45
Which card is a better investment for madVR at max settings: Sapphire 7970 or GTX 670? I've heard that NVidia's driver's are better but I'm not sure about that.
nevcairiel
26th November 2012, 10:58
Ever since NVIDIA fixed the issue with the playback glitches in madVR, i would go NVIDIA for video without any reservations. AMD just has a bad history of not properly supporting the things they claim to support, the latest being 4K decoding, which the 7xxx series claimed to do, but it never worked properly and was simply turned off in the latest drivers. NVIDIA drivers have been rather solid since the glitch fix, at least for me.
wanezhiling
26th November 2012, 11:55
Nvidia, no reason!!! :cool:
Warlock
26th November 2012, 12:27
Madshi, a GeForce GTX 650 Ti supports run jinc3 AR + linear light both in chroma, image downscaling / upscaling?
MokrySedeS
26th November 2012, 12:43
What I found interesting about DXVA2 scaling is that my GTS450 uses two different scalers for different resolutions.
DXVA2 upscaling for a 720p file looks like bilinear. For SD it looks more like lanczos.
Also, I've tried a 1280x546 file and it's treated like sd (sharp scaler and wrong colors) but 1280x580 is treated like HD (soft scaler and correct colors).
ryrynz
26th November 2012, 13:20
Madshi, a GeForce GTX 650 Ti supports run jinc3 AR + linear light both in chroma, image downscaling / upscaling?
Supports isn't the correct word, it'll run it but frame drops could sometimes occur depending on what resolution your upscaling/downscaling from and to, more with the downscaling than the upscaling.
I think the 650 would be cutting it pretty fine, I think your best bet is the 660.
AndreaMG
26th November 2012, 14:19
@Madshi (or anyone):
Whenever I play a dvd in MadVR OSD it is wrongly reported "movie 25 fps" even if it's actually 23.976 or 24 fps as correctly reported in real time by both FFdshow raw video filter and reclock. Why? Can be fixed? Notice that by showing the wrong frame per second rate you lose also the information (which I like a lot;)) about the frame repeat every...The worst thing is that if I let MadVR take care of the display frame reate switching according to the movie fps it goes to 50HZ, which is wrong, MPCHC autochange fullsceen monitor otherwise behaves correctly.
Thanks :)
Razoola
26th November 2012, 16:15
I must say I am very happy with the current state of madVR. There is only one thing left that I'd like to see and madshi has indicated its quite high on his priority list. Its going to be a good christmas :)
mindz
26th November 2012, 16:36
Stupid questions, but im trying to figure this whole DXVA vs. software thingie out.
About DXVA Deinterlacing. If I enable the deinterlacing in mVR, will I automatically get the DXVA deinterlacing? And if I get the DXVA deinterlacing does that mean Im getting the Vector Adaptive deinterlacing? I am using ATI 5770. I think i read somewhere mVR will just pick the best deinterlacing algorithm available from the graphics card?
DragonQ
26th November 2012, 23:09
As I understand it, yes, MadVR uses hardware deinterlacing (as EVR does). I believe for nVidia the best quality deinterlacing is used by default (vector adaptive for most cards I think), for AMD you have to set what you want in the CCC.
leeperry
27th November 2012, 01:24
I'm not in a position to talk to the PotPlayer devs about this since I'm not using PotPlayer myself and I don't even know which problems are there exactly. And no, I'm not interested to find out. If the PotPlayer devs have questions about how to do something, they can contact me and ask.
Actually, I just found out that they did fix it and that with 1.5.34665 the transport bar doesn't break FSE anymore :cool:
They've also been kind enough to make a few adjustments in the profiles automatic rules in order to make it easier to specify a different PS script based on resolution and frame rate, too good :)
I find it rather sarcastic how what I've been dreaming of for years is finally possible now that I'm just about to buy a pj with a CMS http://forum-images.hardware.fr/images/perso/tt%20tt%20dago%20tt.gif
This said, the ISF CMS stuff uses something called "CCA tables" and that doesn't seem nearly as easy as inputting the RGBW xy coordinates in an excel sheet (http://www.avsforum.com/t/957897/benq-w-5000-little-test/5000_100#post_19551904)...so backup plans are always good, should I need a few days/weeks to figure out that CCA stuff :scared:
But it can allow 5% tolerances on saturations with a ΔE no higher than 2 (http://www.avsforum.com/t/957897/benq-w-5000-little-test/5100_100#post_22369596) so it will be well worth the effort anyway....as nothing can do that on a PC at this point AFAIK, tritical gave me a definitive NO and yesgrey told me years ago that he'd think about it.
toomyzoom
27th November 2012, 02:54
Hi madshi, when I tried to use lav video decoder (0.54) to DXVA2 native output NV12 to madVR (0.85.1), I got "creating Direct3D device failed (8876086c)" with all video. Can you you tell me how to set the decoder to feed the renderer correctly?
Thank you.
ryrynz
27th November 2012, 03:05
That isn't something you can fix up on the LAV configuration side, it sounds like you have a problem with your graphics card driver. Does that happen with EVR?
toomyzoom
27th November 2012, 03:32
That isn't something you can fix up on the LAV configuration side, it sounds like you have a problem with your graphics card driver. Does that happen with EVR?
Doesn't happen with EVR custom, only with madVR. I have Geforce 9800gtx+ with 306.23 driver. With Lav video decoder output 8-bit to NV12, EVR Custom displays it with no problem but always gets above error with madVR.
toomyzoom
27th November 2012, 04:19
Doesn't happen with EVR custom, only with madVR. I have Geforce 9800gtx+ with 306.23 driver. With Lav video decoder output 8-bit to NV12, EVR Custom displays it with no problem but always gets above error with madVR.
Never mind. Got it to work after install 306.97 driver and restart.
pie1394
27th November 2012, 06:40
Never mind. Got it to work after install 306.97 driver and restart.
Read #15824 (http://forum.doom9.org/showthread.php?p=1602845#post1602845) for the root cause of my issue.
I see...
That's why I am also curious that all of my 3 machines never get Lav 0.54 dxva2n activated with madVR 0.85.1 dxva scaling.
ION with Geforce driver 306.23
GTX260+ with Geforce driver 306.23
HD5450M with Catalyst 11.12
turbojet
27th November 2012, 07:23
I do think this problem is limited to resizing. Probably the video you tested with needed an anamorphic stretch, which also falls into the resizing category.
You are right it was anamorphic stretch that's the culprit, I was thinking the ffdshow resizing would take care of that but guess not. I went from 1:1 xvid to 16:9 x264, got the green line, changed the decoder and reopened and there was no green but toggling the fullscreen a few times made it reappear. This seems to happen at random while most of the time its a green line, ocassionally half green, half red, occasionally no line until player is moved to change size of the video.
How long is twice as long? Half a second? 10 seconds? Can anybody else reproduce this?
Nevermind this, it's back to normal now, this may have been caused by the router that just died. With new router there isn't the long delay opening when streaming over wireless. No idea why 84.7 and evr was 2-3 seconds and 85.x 5-6 in the few tests, may have just been coincidence. This was all with f3kdb().spline144() in ffdshow which isn't a normal situation.
I don't really understand what you mean here. Could you please clarify?
Scaling dxva resizing to video card performance would use a lighter resize on weak machines. Not sure this is possible but HD3000 drops some frames playing 1080p BD with dxva2 resizer and bicubic AR chroma, 80-90% gpu load.
Well, unfortunately the queue size has a different effect for different users. E.g. on my NVidia 9400 PC I only get smooth results if I increase the default queue sizes.
Strange, 9500GT is opposite, drops frames on default 12/8 when playing BD with lanczos3ar , 6/4 doesn't but there's quite a performance difference between the two gpus: http://www.hwcompare.com/4089/geforce-9400-gt-256mb-vs-geforce-9500-gt-ddr2/ I used to get consistent dropped frames every few seconds before nvidia 30x drivers fixed it, increasing queues didn't help, but dropping backbuffer to 1 eliminated it completely.
At last one more question. Many people talk here about didee`s finesharp script.
Is it the same shader like the MPC-HC built-in finesharp or you need to add it using avisynth`s LSFmod?
It's an avisynth function discussion is http://forum.doom9.org/showthread.php?t=166082. If you are looking for a sharper picture Spline144resize might be worth checking out, it's a light load, I posted how to use it in this thread a few weeks ago for feature request. It's more comfortable to my eyes then finesharp used with any madvr resizer except for Jinc which I can't accurately test because of weak gpu. Finesharp+Spline144 is just too much for me and has a lot of edge artifacts but your opinion may differ.
omarank
27th November 2012, 08:46
Hi Madshi
:thanks: for the new version with custom pixel shader support.
I just wanted to know that when you enable 10 bit or higher output sometime in a future version, will that work on NVIDIA GeForce cards (or only Quadro cards)?
BTW, Jinc 4 taps AR for chroma upscaling and Jinc 3 taps AR for image upscaling, subjectively look the best to my eyes. I saw many people have recommended Jinc 3 taps AR for chroma. Is there anything not good about Jinc 4 taps AR, except for the performance hit?
pie1394
27th November 2012, 15:07
Hi madshi,
I just realize that lav dxva2n decoding does not work with the old rendering path option.
With geforce driver 306.97 + ION at Win7x64, Chroma Lanczos3, Luma Bilinear scaling does produce different color output from Luma DXVA scaling for 1920x1080 --> 960x540.
See the ribbon's color...
Luma - Bilinear
http://i.imgur.com/nGACU.jpg (http://imgur.com/nGACU)
Luma - DXVA
http://i.imgur.com/rIfpk.jpg (http://imgur.com/rIfpk)
EVR - DXVA
http://i.imgur.com/o0eYH.jpg
Carpo
27th November 2012, 17:56
Carpo:
MadVR does seem to support frame-advance, In Zoom Player all you need to do is press "A" (pause) and then "A" again to frame-step and "Alt+F" to take a screenshot.
might just be MPC-HC then, because it throws up a little box saying it cant do stepped frames and to use a different render
Moony349
27th November 2012, 19:06
BTW, Jinc 4 taps AR for chroma upscaling and Jinc 3 taps AR for image upscaling, subjectively look the best to my eyes. I saw many people have recommended Jinc 3 taps AR for chroma. Is there anything not good about Jinc 4 taps AR, except for the performance hit?
I use the same.
Some people like softer chroma i guess.
G_M_C
27th November 2012, 21:27
Heee, i just saw that xy-VSFilter is upgraded to 3.0.0.211 Stable on the 20'th of November. Does it contain the changes you needed/were waiting for Madshi ?
sneaker_ger
27th November 2012, 22:40
Heee, i just saw that xy-VSFilter is upgraded to 3.0.0.211 Stable on the 20'th of November. Does it contain the changes you needed/were waiting for Madshi ?
No, not yet.
Mangix
27th November 2012, 22:50
Hi madshi,
I just realize that lav dxva2n decoding does not work with the old rendering path option.
A lot of things don't work with the old rendering path(overlay for example). Assume it to be abandoned at this point as madshi has mentioned several times that he wants to remove it.
Asmodian
28th November 2012, 02:00
BTW, Jinc 4 taps AR for chroma upscaling and Jinc 3 taps AR for image upscaling, subjectively look the best to my eyes. I saw many people have recommended Jinc 3 taps AR for chroma. Is there anything not good about Jinc 4 taps AR, except for the performance hit?
Just the extra ringing, but the "subjectively look the best to my eyes" is far more important. You must admit the differences aren't too obvious. ;)
omarank
28th November 2012, 08:47
I use the same.
Some people like softer chroma i guess.
Back when no Anti Ringing filter was available, softer chroma algorithms were preferred as the sharper ones produced glaring ringing. At least this is my understanding. Now I think if there is no issue of horsepower, the sharpest Jinc AR, which doesn't produce any artifacts, may be preferred.
Just the extra ringing, but the "subjectively look the best to my eyes" is far more important. You must admit the differences aren't too obvious. ;)
Is the Anti Ringing algorithm not that effective on Jinc 4 taps as it is on 3 taps? I don't see any extra ringing with 4 taps (for chroma). I haven't checked with any test pattern though. When I switch from 3 taps to 4 taps (for chroma upscaling), it adds the precise amount of sharpening which I seem to like. In case of image upscaling, I agree there are no obvious differences between 3 taps and 4 taps.
hannes69
28th November 2012, 14:15
Can you guys please test the following:
(1) Use software decoding and e.g. Bilinear scaling.
(2) Use native DXVA2 decoding and e.g. Bilinear scaling.
(3) Use software decoding and DXVA2 scaling.
(4) Use native DXVA2 decoding and DXVA2 scaling.
I use AMD HD4550 with Windows7/64bit.
Colors in (2), (3), (4) are the same but different from (1). Especially green is much too oversaturated. (1) stays the same by using copy-back-decoding instead of software.
DXVA-Deinterlacing works as intended, no change in colors.
Interesting: using native decoding instead of copy-back lowers cpu load as expected but as well gpu load! Furthermore dxva2 upscaling has about the same gpu load as Mitchell-Netravali.
Beside that: I really appreciate the great work of madshi with this renderer, i regularly read all topics in this thread to stay updated and I´m learning more and more from you all here. Tomorrow I get a colormunki display colorimter, time to test the ycms features :D
:thanks: for giving us all the greatest renderer of all for free!
6233638
28th November 2012, 16:54
I've made a huge mistake. My GTX 570 died, so I needed a video card ASAP, and bought a GT610 to hold me over until the replacement arrives as it was the cheapest Nvidia card I could buy locally.
I wrongly assumed that being a "600" series card it would at least be capable of handling madVR, but this thing is struggling to do any kind of video scaling, with high GPU load no matter the settings. Lanczos/Jinc are out of the question, and it can't handle downscaling Blu-ray with any of the "good" options - anti-ringing or linear light scaling is too much for it, no matter the scaling used.
Even without any scaling (bilinear/nearest chroma) and decoding on the CPU, it can't handle playback of 1080p60 content.
That said, I think it must be using the same (or similar) VPU as my 570, because it has no problem decoding anything I throw at it if I do use DXVA.
But I wanted to confirm what someone else posted here earlier - DXVA2 upscaling uses quite a lot more GPU power than any of the bicubic variants do. It can't handle anything beyond that, but I'm happy with how SoftCubic 80 looks at least, and it doesn't need the anti-ringing filter. (in fact it looks better without it)
nevcairiel
28th November 2012, 17:21
The 610 is a Fermi GPU (GF119), so it has a VP4 decoder, the same as in your 570. The decoders are independent of the actual GPU speed (which is truely abysmal on the 610). Only thing worse would've been a 605, but i think they only OEM that one. ;)
Boltron
28th November 2012, 17:45
I am a long time ATI man but I reached a point in my life where I would like to see how life is on the other side. What would you Nvidia fans recommend as a good video card for my Win 7 HTPC (HDMI connected) running MC18, LAV and madVR? I mostly watch ripped blurays (raw, no compression) and 720p shows.
I want the best possible quality picture from madVR but would like to keep it real in that it is a HTPC and don't need a SLI configuration for example. Currently I use a HD7770.
nevcairiel
28th November 2012, 17:52
A GTX 660 is probably the lowest you can safely go with all the madVR options these days. Maybe a 650Ti, but i can't guarantee that. I run a 660 myself and its perfect.
wanezhiling
28th November 2012, 17:52
The 610 is a Fermi GPU (GF119), so it has a VP4 decoder
nev,GF119 is vp5...you forgot? gt610 is totally same with my gt520.
Of course, its a slow card.
nevcairiel
28th November 2012, 18:00
For that card, it doesn't really matter how fast the decoder is. :D
6233638
28th November 2012, 18:04
The 610 is a Fermi GPU (GF119), so it has a VP4 decoder, the same as in your 570. The decoders are independent of the actual GPU speed (which is truely abysmal on the 610). Only thing worse would've been a 605, but i think they only OEM that one. ;)Ah you're right, the GT630 is the lowest-end Kepler part. I hate that they do that sort of re-branding to put old products in the "current" lineup.
Still, those were more than twice the price of the 610 locally, and my priority here was buying the cheapest card that was in stock and had an HDMI output on it, so I could actually use my computer again while waiting on a replacement 570, not buying a fanless low-power card for madVR use. I was tempted to just put that money towards a Z77 motherboard instead and use the 2500K's HD3000 (access to QuickSync would be nice) but it will be worthless next year when they switch sockets again.
I just noticed that my Lanczos had been set to 8-taps for some reason (no idea why) and it seems to be capable of handling Lanczos 3 AR for Chroma, with Lanczos 3 for Luma upscaling 720p30 content. It may be able to handle Lanczos 3 AR luma with Bilinear chroma at a push. Jinc is out of the question, of course.
I haven't tried changing the flush settings to see if I can get some extra performance out of it. (I've left them at the defaults ever since the presentation glitches issue was fixed)
I can probably overclock the card as well - even though it's fanless, there's a lot of airflow in my case.
I was just surprised to see that on a low power card, where you would think it would matter the most, DXVA2 scaling pushes GPU load higher than any of the Bicubic variants, by about 10-20% in some cases.
wanezhiling
28th November 2012, 18:07
A GTX 660 is probably the lowest you can safely go with all the madVR options these days. Maybe a 650Ti, but i can't guarantee that. I run a 660 myself and its perfect.
Is your 660 capable of Jinc8,nev?
Im also searching a nice kepler card for game and video both.
the GT630 is the lowest-end Kepler part.
No, GT630 is a Fermi GPU(GF108).
6233638
28th November 2012, 18:13
No, GT630 is a Fermi GPU(GF108).Wikipedia had it listed as a GK107. Either way, a Kepler part was out of my price range, when it's not a card I intend on using for more than a week, and then keeping around as a backup.
nevcairiel
28th November 2012, 18:33
There is actually two 630's (or well three, one on Kepler, and one DDR3 Fermi, and GDDR5 Fermi), naming things was always hard, i guess. :p
wanezhiling
28th November 2012, 18:33
http://en.wikipedia.org/wiki/Comparison_of_Nvidia_graphics_processing_units#GeForce_600_Series
GT630(GK107) is just an OEM card. (http://i.imgur.com/m0wlt.png) :)
nevcairiel
28th November 2012, 18:34
Is your 660 capable of Jinc8,nev?
Im also searching a nice kepler card for game and video both.
Didn't try, Jinc8 is not really a real-world scaler you want to use.
wanezhiling
28th November 2012, 18:39
Didn't try, Jinc8 is not really a real-world scaler you want to use.
Got it, thanks.
DragonQ
28th November 2012, 23:13
Hmm, what does it mean if I get a "MadVR reports deinterlacing failed" message when trying to play a 576i/25 video on my Intel i5-430M (Arrandale) when using LAV in DXVA2 Native mode?
EDIT: Doesn't work with DXVA2 Copy-Back or software encoding either. :eek:
pokazene_maslo
29th November 2012, 10:29
wow, dxva2 native input! I have to say to madshi: Thank you! Thank you! Thank you!
Finally is madVR usable for me.
mindbomb
29th November 2012, 17:58
Hmm, what does it mean if I get a "MadVR reports deinterlacing failed" message when trying to play a 576i/25 video on my Intel i5-430M (Arrandale) when using LAV in DXVA2 Native mode?
EDIT: Doesn't work with DXVA2 Copy-Back or software encoding either. :eek:
idk, but you can use yadif in lav video until you get this problem fixed.
manma
29th November 2012, 19:52
I'm a bit lost as to what an optimal setup constitutes. A lot of people seem to be using DXVA via lavfilters despite proprietary solution slike cuvid and quicksync seeming preferable at first glance. Is there any reason for this? Also, I can't quite get a straight answer on what options increase performance without reducing quality. Apparently either increasing or decreasing the buffers can help, but I can't seem to get a straight answer after skimming over a few pages of this thread every few weeks or so.
Basically, I'm just hoping I can get a few expert tips or tricks out of you more experienced users. Looking forward to learning something new. Thanks in advance!
Keiyakusha
29th November 2012, 20:06
A lot of people seem to be using DXVA via lavfilters despite proprietary solution slike cuvid and quicksync seeming preferable at first glance.
dxva eats less power than cuvid, not sure about quicksync. Also AMD guys have no choice but to use dxva. But IMO all of them is a useless waste of time. Most people can't even tell if any of these things are working unless it is written in some OSD, which only proves its uselessness.
Also, I can't quite get a straight answer on what options increase performance without reducing quality
if there was a way to increase performance with the same quality, why would anyone made this optional?
manma
29th November 2012, 20:25
if there was a way to increase performance with the same quality, why would anyone made this optional?
Simple. It doesn't matter for most configurations, and it may only give marginal performance increases in fringe cases. I'm sure there are a few things I could fine tune that would help me out a bit.
But IMO all of them is a useless waste of time.
Yeah, I feel the same way. I have a feeling using HW decoding at all might actually decrease madvr's performance since it would take some load off of the GPU. There's really no point when my CPU is perfectly capable of decoding hi10p without issue. Am I right in thinking this way?
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.