View Full Version : madVR - high quality video renderer (GPU assisted)
wayland
13th June 2009, 21:24
when i try to play mkv files im getting a message that mpc has stopped working (this is on windows 7 build 7077) it worked before and still works for dvds, i tried a few versions of mpc but it doesnt make a difference
lunkens
13th June 2009, 22:34
when i try to play mkv files im getting a message that mpc has stopped working (this is on windows 7 build 7077) it worked before and still works for dvds, i tried a few versions of mpc but it doesnt make a difference
It's working here. Which decoders, splitters do you use?
wayland
13th June 2009, 22:39
halli splitter, coreavc, ffdshow for audio
lunkens
14th June 2009, 15:20
Well, I use the same setup except i'm using ffdshow decoder.
Oops I see that i'm running release 7137 of W7
Have you installed DirectX 9 "march", until i did that there were some little jerks.
wayland
14th June 2009, 20:41
upon trying more files it does work with mkv but work work with some specific files. if anyone else has "Oz.Complete.Series.NTSC.DVD.DD5.1.x264-h264iRMU" maybe they can try it to see if a problem with my pc/the files/madvr suppose i could cut a sample from one of the episodes but i dont have the program to do it and am a lazy bastard
Leak
14th June 2009, 22:15
I'm getting dissapointing results with madVR and interlaced video. I'm using DScaler5 set to force bob deinterlace. I don't understand why madVR would stop the deinterlacing from working. Can anyone explain?
I'm going out on a limb here, but madVR doesn't do deinterlacing.
It only does resizing, and if you resize interlaced content you blend the contents of both fields together; even the best deinterlacer won't be able to save your image afterwards...
np: Tosca - 2504 1 (Session 11) (Dehli9 (Disc 2))
LoRd_MuldeR
14th June 2009, 23:05
Some more info:
An options like "force bob" or "hardware deinterlacing" in a decoder simply means that the decoder will set a flag, which indicated that decoded video data is interlaced.
This flag signals that the video should be deinterlaced before it is displayed. But nothing else! There's absolutely no guarantee that this flag will have any effect!
Whether the video will actually be deinterlaced or not (and how, if it is deinterlaced) solely depends on the video renderer that is connected to the decoder.
Renderes like VMR7, VMR9 or EVR will perform hardware-accelerated deinterlacing (therefore the name "hardware deinterlacing"), but other renderers may simply ignore the interlaced flag!
Unless madVR implements support for deinterlacing interlaced content - which obviously isn't the case yet - it will display the video as-is. Hence interlaced video will show combing.
Deinterlacing needs to happen before the video data is sent to madVR. I can only recommend to use one of ffdshow's built-in deinterlacers, such as Yadif...
Neeto
15th June 2009, 12:20
Having messed around with various deinterlacing solutions the ATI hardware delinterlacing "Vector adaptive" on my 4650 seems to be the best on interlaced content - mainly for DVDs & some OTA 1080i HDTV.
There are some earlier posts indicating that seemed to indicate no hardware accelaration will be supported by madVR - I hope this is not so.
I'm just putting in a vote hoping madVR will support hardware deinterlacing.
Very happy to hear other opinions/options etc.
What say you all?
Neeto
pankov
15th June 2009, 13:34
For me Deinterlacing is a must.
I personally watch a lot of TV on my HTPC (both recorded and live) and 99% of the content is interlaced (both SD and HD).
From my experience with many software deinterlacers I can tell that none can match the quality of both NVidia and ATI hardware deinterlacing.
I know it won't be easy if at all possible but won't stop me from dreaming
;)
LoRd_MuldeR
15th June 2009, 21:31
I don't think you can utilize "hardware" deinterlacing, but use your own custom scaling algorithms at the same time. So if deinterlacing was implemented in madVR, then it would have to be implemented entirely in the renderer itself. And since Nvidia and ATI keep their deinterlacing algorithms in secret, Madshi probably would have to implement something that equals the well-known "software" deinterlacers, such as Yadif.
73ChargerFan
15th June 2009, 22:07
So if I've got this straight ...
Deinterlacing must be done prior to scaling. To use hardware deinterlacing, you must allow the hardware to then do the image scaling.
madVR scales in software, so the image has to be deinterlaced in software first.
LoRd_MuldeR
15th June 2009, 22:22
So if I've got this straight ...
Deinterlacing must be done prior to scaling. To use hardware deinterlacing, you must allow the hardware to then do the image scaling.
madVR scales in software, so the image has to be deinterlaced in software first.
Yes. Except that madVR doesn't scale "in software". It runs on the GPU. But it implements its own scaling algorithms. Hence it totally skips the standard video rendering pipeline (including the possibility to use "hardware" deinterlacing). Instead it seems to access the graphics hardware directly through the Direct3D interface. As you said correctly, deinterlacing needs to happen before scaling. So if you want to utilize the so-called "hardware" deinterlacing, you would need to leave the scaling to the "hardware" (more specifically: to the video driver) too. But if you want to do the scaling yourself, then you will need to handle the deinterlacing yourself too (or simply ignore interlacing, as madVR does right now). In theory Madshi could implement deinterlacing in his renderer and he could even run this on the GPU too (so it would be "hardware" deinterlacing in a sense), but he would need to come up with his own deinterlace algorithms, rather than using Nvidia/ATI's algorithms that are implemented in the video drivers...
73ChargerFan
15th June 2009, 23:24
For future reference:
yadiff (http://avisynth.org.ru/yadif/yadif.html) accepts yv12, so it could be compatible, and could be integrated or perhaps called as an external dll.
Yadif
author: Fizick (Alexander Balakhnin)
version: 0.9
download: http://avisynth.org.ru/
category: Deinterlacing & Pulldown Removal
requirements: YUY2, Planar YV12 color format
license: GPL
Port of YADIF (Yet Another DeInterlacing Filter) from MPlayer by Michael Niedermayer (http://www.mplayerhq.hu). It check pixels of previous, current and next frames to re-create the missed field by some local adaptive method (edge-directed interpolation) and uses spatial check to prevent most artifactes.
Leak
16th June 2009, 00:04
For future reference:
yadiff (http://avisynth.org.ru/yadif/yadif.html) accepts yv12, so it could be compatible, and could be integrated or perhaps called as an external dll.
Or you could perhaps pilfer Phaeron's GPU implementation of yadif (http://www.virtualdub.org/blog/pivot/entry.php?id=256) and also run it on the GPU... :D
St Devious
16th June 2009, 06:08
someone help me understand what GPU assisted in the title means.
Does this renderer output higher quality than EVR or does it use GPU for decoding like DXVA ?
73ChargerFan
16th June 2009, 06:33
The goal is to use the gpu to get higher quality. DXVA is not possible, because the gpu sees the madVR as a video game, not a media player.
Leak
16th June 2009, 08:46
The goal is to use the gpu to get higher quality. DXVA is not possible, because the gpu sees the madVR as a video game, not a media player.
That quite incorrect - MPC also uses the GPU for scaling, and it works just fine with DXVA (modulo any DXVA bugs that crop up, of course)...
tetsuo55
16th June 2009, 09:07
madVR is written in a way which makes the use of DXVA impossible, not supporting DXVA gives madVR a ton of benefits.
theoretically a DXVA supporting version of madVR could be written, but it would basically be as crippled as EVR-CP, so why bother?
lunkens
16th June 2009, 10:25
It seems that a lot of pepole is horny about dxva. Like tetsou55 says, it only implicate problems and it's not to prefer. So lets hope everybody stops nagging about it.
Now.... Let us look forward to the next release of madVR and the possible improvments, and the aces up madshis sleves. :)
Mark_A_W
16th June 2009, 12:27
DXVA is irrelevant and unneeded these days.
I just built a HTPC with the cheapest Intel processor I could find, an E5200, and it plays BD rips in software with about 50% CPU usage.
What exactly is DXVA needed for?
leeperry
16th June 2009, 12:36
less heat/noise, lower energy bills? supposedly a GPU can decode a video a lot more efficiently than a CPU(having so many cores, and a CPU being a very bad DSP and all)...and it helps for older systems too, I guess.
CoreAVC CUDA is great because it will put the decoding load on the GPU, but it will also increase the latency as the video frames will have to go back and forth between CPU>GPU>CPU>GPU...so what you gain on one end, you actually lose on the other :o
Mark_A_W
16th June 2009, 12:51
Oh c'mon. An E5200 is basically silent with the stock cooler, and being 45nm it drawers bugger all power - and I care about that, my house is (partially) powered by solar panels.
The difference in power consumption will be minimal..especially in light of the Projector and Amplifiers which are running as well. It's not like you are watching movies 24/7.
leeperry
16th June 2009, 13:02
I'd guess that many ppl watch movies on <24" flat screens, and these are not energy hungry at all....CRT is terrible on that point, whatever regular monitors or projectors.
and it's still great if you got an old system...but anyway yeah, you can get a Q6600 for very cheap now...this will allow you to do pretty much any post-processing you could ever think of(not possible w/ DXVA). if you don't wanna PP at all, an E5200 would do the trick I guess.
Mark_A_W
16th June 2009, 13:26
Yeah, and that mob watching downloaded divx's on a tiny screen aren't here crapping on desperately waiting for madVR v0.11 ;)
leeperry
16th June 2009, 13:29
haha, at some point I was really having some OCD waiting for new Reclock releases, so I feel you....especially on Vista where HR constantly hiccups ^^
Jong
16th June 2009, 14:02
DXVA is irrelevant and unneeded these days.
I just built a HTPC with the cheapest Intel processor I could find, an E5200, and it plays BD rips in software with about 50% CPU usage.
What exactly is DXVA needed for?
As I think we have discussed before this is cutting it too fine. <3Ghz dual core cannot reliably play all Blu-rays smoothly in software. It varies from disc to disc; It depends on the way the video was encoded and what audio processing is needed. But some discs will trip such a system up.
I am sure your "about 50% CPU usage" is total CPU usage, which can mean 90% on one core and 10% on another. Once you get to about <10% headroom on any core you start to hit problems.
I am not trying to start an argument or deny what you saw with the system you built, but I know the way statements like this, if picked up by Google, can suddenly become authoritative if not at least debated!
Mark_A_W
16th June 2009, 14:09
As I think we have discussed before this is cutting it too fine. <3Ghz dual core cannot reliably play all Blu-rays smoothly in software. It varies from disc to disc; It depends on the way the video was encoded and what audio processing is needed. But some discs will trip such a system up.
I am sure your "about 50% CPU usage" is total CPU usage, which can mean 90% on one core and 10% on another. Once you get to about <10% headroom on any core you start to hit problems.
I am not trying to start an argument or deny what you saw with the system you built, but I know the way statements like this, if picked up by Google, can suddenly become authoritative if not at least debated!
I've found it depends on the video card.
Using onboard Intel G31 video I needed 3.3ghz for all my stuff (Dark Knight included), with high usage on both cores.
With an 8500GT all of a sudden CPU usage plummeted....and no I'm not using DXVA.
Jong
16th June 2009, 14:11
So there you go. Builders beware! Don't cut things too fine!
Leak
16th June 2009, 14:37
madVR is written in a way which makes the use of DXVA impossible, not supporting DXVA gives madVR a ton of benefits.
Actually I can't believe using DXVA with madVR is impossible, it's just that madVR doesn't seem to support the interfaces neccessary to accept video frames that are already on the graphics card.
After all, MPC-HC's custom presenters do basically the same thing and support DXVA.
tetsuo55
16th June 2009, 14:39
Actually I can't believe using DXVA with madVR is impossible, it's just that madVR doesn't seem to support the interfaces neccessary to accept video frames that are already on the graphics card.
After all, MPC-HC's custom presenters do basically the same thing and support DXVA.I felt the same way, until i learned more about how madVR works. Now i know (and accept) that DXVA is impossible.
6233638
16th June 2009, 15:56
So, as we haven't had any madVR updates for a while, and it's running smoothly on my system since 0.10 I'm now looking to calibrate.
I've borrowed an eye one to take measurements of my screen, but I'm not actually sure how to adjust the gamut with a 3DLUT?
I've read the readme for cr3dlut which tells me how to define primaries, but I don't know how to actually use that and change my displays gamut. When I open up a .3dlut file I see what's expected but then the rest is gibberish.
My tv has a wide/normal option, but that's much wider than HD, and much narrower than HD, so I was hoping to use madVR to constrain wide gamut to the HD spec.
Can anyone help?
EDIT: I think I've got it working now.
I've taken RGB + White measurements, put them into a .txt file (with the formatting the readme specifies) and then run cr3dlut from the command line with it as the input file, creating a new .3dlut file for madVR to use. (I just overwrote the default one)
This does seem to have worked, but it seems really primitive. If your only input is RGB primaries, doesn't that assume your display is perfectly linear? (which is never the case…)
I've only tried this out on my PC monitor which is actually pretty close to the HD spec, so it's hard to tell much of a difference, but I assume that you just tell it your display primaries and it calculates how to restrict the gamut automatically based off this.
LoRd_MuldeR
16th June 2009, 17:46
Who cares about DXVA with it's very limited Level support, when any decent DualCore can do 1080p H.264 just fine using ffdshow-MT ???
My Q6600 has ~15% load when playing 1080p H.264 video (Apple Trailer). That is with ffdshow decoder.
St Devious
16th June 2009, 18:20
ok so I get that no DXVA possible. no biggie, as others said with multicore CPUs 1080p decode should be smooth.
So the aim of this renderer is to provide highes quality output out of all the renderers ?
Will it be able to use shaders like Sharpen Complex and TV->PC Levels in MPC HC or are those DXVA dependent ?
73ChargerFan
16th June 2009, 19:25
Madshi,
In your first post, perhaps you could add a list of
"to do / goals (please don't ask for)" items.
Add switches -help -? for when I want to read the help screen. Currently, I have to switch to a different directory to see it.
ok so I get that no DXVA possible. no biggie, as others said with multicore CPUs 1080p decode should be smooth.
So the aim of this renderer is to provide highes quality output out of all the renderers ?
Will it be able to use shaders like Sharpen Complex and TV->PC Levels in MPC HC or are those DXVA dependent ?
On a nVidia video card CUDA works very well with madVR, and it's less limiting than DXVA, too. So that's one solution. And if you plan on using madVR on a laptop, having a CUDA enabled video card is the only option for high bitrate HD avc playback, unless you're willing to spend more than necessary on the laptop. Some people are not using desktop systems anymore, so this is good to know.
actarusfleed
21st June 2009, 10:28
On a nVidia video card CUDA works very well with madVR,
I've an ATI HD4850 so ... Do I've to buy a q6600 to have a perfect fluidity with H264 and ffdshow?
Or, in the next future, the ATI card will give us a similar solution like nvidia's cuda?
thanks,
actarus.
nlnl
21st June 2009, 12:27
Cuda + Nvidia 9400
Using Cuda I have dropped frames (Nvidia 9400 + Vista 32 + CoreAVC + MPC HC - no scaling 1080p) but when Cuda is off - no dropped frames, smooth playback => 9400 has not enough shader power for Cuda+MadVR (only chroma upsampling).
BTW if video frame buffer is set to 512 in BIOS I have dropped frames (with Cuda and without) and if it is set to 256 no dropped frames :confused: Wierd!
leeperry
21st June 2009, 12:41
I don't think it has to do w/ shader power...I had the same problem w/ "The Nightmare Before Christmas" BD, basically CoreAVC CUDA creates additional latency, as the video data has to go CPU>GPU>CPU>GPU and then you have mVR on top of it...I'm also getting additional latency and jitter in HR. CoreAVC CUDA is nice and all, but it adds latency, and I was getting tearing w/ mVR....that went away w/ CPU decoding.
I already mentioned that latency issue to CoreCodec, but it's a necessary evil I guess...you can't quite get the GPU to decode w/o latency....even doing timecodec measurements exhibits the aforementioned latency issue, whether mVR could handle latency in a more effective way remains to be seen by madshi...but it's not quite a high priority matter I guess.
RadioactiveMan
24th June 2009, 12:03
Hello,
when I use madvr 0.10 with mpchc running some series in the background I can't use UAC in Windows 7. As soon as I bring the popup into the front (the time when the desktop becomes darker) and tell uac to do whatever it wants to, the video stops and the sound goes on. additionaly mpchc won't react anymore. After killing and restarting the app the video is fine again.
Probably you also know of some setting that prevents mpchc from freezing.
VempX
24th June 2009, 12:48
I use madVR in MPC-HC,then I change upscaling to Lanczos3 and close MPC,then reopen MPC I found it retrun to SoftCubic50 @@;
I check the setting.ini and found "luma upsampler=Lanczos3" @@;
why? @@
yesgrey
24th June 2009, 13:32
why?
It's a known bug. You will have to wait that madshi find some time to correct it and post a new version...;)
VempX
24th June 2009, 13:36
It's a known bug. You will have to wait that madshi find some time to correct it and post a new version...;)
THX
I'll waiting for madshi to correct it:)
leeperry
26th June 2009, 15:02
anyone tried mVR + Reclock on W7? when you seek, does it always catch the VSYNC properly?
if not, does it work to force "triple buffering" in D3DOverrider(from RivaTuner) for MPC HC?
from what I've seen, Beliyaal's EVR CP never misses it..I'm slowly thinking about moving to W7(tetsuo55 made me do it :D)
Mike5
26th June 2009, 15:36
anyone tried mVR + Reclock on W7? when you seek, does it always catch the VSYNC properly?
I tried. Most times it plays smooth. Sometimes after a seek it stutters, even badly, and I need to repeat the seek until it doesn't stutter anymore.
It requires AERO On and Reclock to get a smooth playing in my system (AMD 4650). If either of the two is not activated there is stuttering.
if not, does it work to force "triple buffering" in D3DOverrider(from RivaTuner) for MPC HC?
I don't know what it is and at the moment I can't try.
leeperry
26th June 2009, 15:54
I tried. Most times it plays smooth. Sometimes after a seek it stutters, even badly, and I need to repeat the seek until it doesn't stutter anymore.
[..]
I don't know what it is and at the moment I can't try.
ok cool! and if you catch the VSYNC fliptime properly, it doesn't drop frames repeatedly after 1H or so of continuous playback? it always does it on XP due to a lack of Aero/exclusive D3D mode.
the D3DOverrider.exe trick enables to NEVER miss the VSYNC w/ MPC HC+EVR/VMR9 on Vista...so w/ a bit of luck it'd also work on MPC HC+mVR :cool:
catching the VSYNC properly w/ HR on XP is a matter of luck....if at some point I could find a foolproof butter smooth solution, that'd be a god send! :eek:
apparently Beliyaal's EVR CP never misses it, so it'd appear to be entirely possible...and madshi didn't work on improving playback smoothness yet, if I got right...so my hopes are still pretty high :o
Mike5
26th June 2009, 16:16
ok cool! and if you catch the VSYNC fliptime properly, it doesn't drop frames repeatedly after 1H or so of continuous playback?
Once or twice this happened (with madVR). I had to reseek. But I assumed that it depends on the fact that madVR is still not refined.
So, since so much time has passed since any status info was posted, I shall dare and ask: are any updates of madVR foreseeable in the near future ? In what regards me, v0.10 is unusable because of the very long startup times, and as a consequence I'm still using v0.9 even if pans are jerkier with that version, and CPU usage higher.
Thunderbolt8
27th June 2009, 19:43
for me 0.10 is more usable than 0.9
VempX
2nd July 2009, 19:44
MPC-HC build-in subtitles would not work with madVR in Win7, is that a bug?
73ChargerFan
2nd July 2009, 21:49
No, just a future feature.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.