View Full Version : madVR - high quality video renderer (GPU assisted)
leeperry
2nd May 2010, 17:28
I don't think I can afford the hourly rate of a professional coder on my own..and madshi already said that he didn't plan on making mVR shareware anytime soon. The waiting game continues :o
tetsuo55
2nd May 2010, 18:20
I don't think I can afford the hourly rate of a professional coder on my own..and madshi already said that he didn't plan on making mVR shareware anytime soon. The waiting game continues :oYou can pm madshi and talk about an amount you could "donate" to him.
An end-user shouldn't care less whether free software is GPL...that's none of his business IMHO :o
[....]
Reclock and madVR are essential pieces of code in my book
Just my two ecents: I'd say that we can all assume that MPC-HC and ffdshow are another two essential pieces of code in many people book, and maybe even yours, correct ?
Well, both are project that have been created by someone, then abandoned, then picked up by someone else with the will and the skills to bring them forward.
If they had not been under the GPL or another opensource license that would not have been possible, and the "end-user" would be stuck with a 3/4 years old program, with old bugs, new incompatibilities, and no recent features - or more probably he would have switched to something else.
Now, Madshi is an very skilled developer. What he chooses to do with is time and is ability is obviously his choice, and I am quite grateful for what he has chosen to donate so far to other people. In no way I am saying that he has to opensource madVR. This, again, is completely is choice.
Moreover it is also quite possible that, should he opensource it, nobody else will pick it up and start adding features or bugfixes.
But I know one this: sooner or later he will lose the motivation to work on MadVR, and, if he will not opensource it, it will stagnate, and in time become irrelevant. But if he will, there is at least the possibility that it will continue to evolve, as MPC/MPC-HC and ffdshow have done.
madshi
3rd May 2010, 12:03
madVR 0.12 released
http://madshi.net/madVR.zip
* rewrite of about 75% of the code
* loads of bug fixes
* improvements for DVD playback (macrovision complaints etc)
* improvements for frame stepping during paused playback
* re-added rendering stats to OSD
I hope that v0.12 will still do all that v0.11 did, just without all the stability problems. I've noticed, though, that on my NVidia 9400 HTPC, v0.12 was a tiny bit more GPU hungry than v0.11. Hopefully that won't affect things with faster GPUs.
Please note that since v0.12 is basically a rewrite, there may be some new bugs. That is to be expected, but should be fixable quickly.
Can anybody tell me all the nasty details about subtitle rendering? What exactly does madVR have to do to be fully subtitle capable? I've no knowledge in this area...
leeperry
3rd May 2010, 12:17
yay, will look into it and report back! :thanks:
nevcairiel
3rd May 2010, 12:28
Thanks for the update, have been looking forward to it!
Will test it when i get home and report back any potential problems (if any)!
chuuey
3rd May 2010, 13:08
sweet, thanks for the update :) works fine on my work machine with a 5870, can anyone test 24hz output with this version since i won't be home till friday :(
Tested on a DVD from disc. It still gives DVD: Macrovision Fail.
I don't have a DVD ripped on disk at work.
Some quick observations....MPC-HC, HD2600XT CCC10.3, Playback of SD material (mkv/avc)
Aero ON, w/reclock (vsynch off), 24Hz no tearing. If I turn Aero OFF, tearing is present.
With .11, I was using Lanczos4 (up) and SoftCubic100. With .12, it appears Lanczos is now too resource hungry for playback (jumpy), but Spline36 appears to work better (chroma=SoftCubic80).
Will keep playing around and will get to some HD source material next.
Thanks for the update to this fantastic renderer, regardless of the "issues" as the tool progresses, I always find myself going back to madVR. ;)
torpedo
3rd May 2010, 14:17
New version 0.12 comes! madshi, Thx for your great work!
namaiki
3rd May 2010, 15:56
Bloody brilliant so far. Rock stable. I haven't had to kill my media player once. :D
fastplayer
3rd May 2010, 15:56
madVR uses 50% CPU of my dual-core when pausing a video. Unfortunately, it happens randomly and is not easily reproducible. So far it happened with MP4 and MKV files. Once playback continues, CPU load drops to normal levels. Here's a screenshot of Process Explorer:
http://i40.tinypic.com/nvt9ub.png
Edit: Even when the video is paused and the CPU is idling, CPU load randomly goes up to 50%.
Edit2: I created a dump file. I can upload it if necessary.
Setup:
Athlon64 X2 3800+
Radeon HD4670
Windows 7 32-bit
Haali Media Splitter 1.10.120.15
ffdshow rev3370
MPC-HC rev1825
flanger216
3rd May 2010, 16:22
Can confirm that 0.12 works with the latest nVidia drivers.
namaiki
3rd May 2010, 16:31
Can confirm that 0.12 works with the latest nVidia drivers.
Just clarifying, but were you one of the people who was experiencing issues before?
Steveo08
3rd May 2010, 16:57
Can confirm that 0.12 works with the latest nVidia drivers.
well madvr 0.12 isen't working for me on my gt 220 and latest nvidia driver.
leeperry
3rd May 2010, 16:58
madVR uses 50% CPU of my dual-core when pausing a video. Unfortunately, it happens randomly and is not easily reproducible.
ditto, I've sometimes had a frozen core while pausing(on a Q9450/8800GS/XP SP3).
OTOH, no freeze on seek/close, everything works fine...so far, no error msg in the event viewer when closing KMP either.
catching the VSYNC fliptime properly w/ KMP+Reclock in 96hz is still a hit or miss, but you said D3D exclusive mode might be the only solution to this? FWIW, Beliyaal's EVR CP always seems to catch it spot-on IME. I really wish mVR could be as bullet-proof as his EVR CP(in windowed mode) for this last issue, if any possible :o
namaiki
3rd May 2010, 17:10
ditto, I've sometimes had a frozen core while pausing(on a Q9450/8800GS/XP SP3).
OTOH, no freeze on seek/close, everything works fine...so far, no error msg in the event viewer when closing KMP either.
catching the VSYNC fliptime properly w/ KMP+Reclock in 96hz is still a hit or miss, but you said D3D exclusive mode might be the only solution to this? FWIW, Beliyaal's EVR CP always seems to catch it spot-on IME. I really wish mVR could be as bullet-proof as his EVR CP(in windowed mode) for this last issue, if any possible :o
Try disable ReClock vsync correction. Though you're not running Aero.
madshi
3rd May 2010, 17:18
Tested on a DVD from disc. It still gives DVD: Macrovision Fail.
Argh. Which exact OS are you on? Does the problem only occur with madVR? Does it work with all other renderers?
With .11, I was using Lanczos4 (up) and SoftCubic100. With .12, it appears Lanczos is now too resource hungry for playback (jumpy), but Spline36 appears to work better (chroma=SoftCubic80).
I might have an idea why v0.12 is a bit more GPU hungry. Might be able to revert that to v0.11 levels in the next version. Or not, we'll see...
Bloody brilliant so far. Rock stable. I haven't had to kill my media player once. :D
How about smooth motion? Is it still as smooth as v0.11 for you?
madVR uses 50% CPU of my dual-core when pausing a video.
Does that problem only occur during pause? If so, I think a fix should be easy...
well madvr 0.12 isen't working for me on my gt 220 and latest nvidia driver.
What happens exactly when you try to play a video with v0.12? Do you get a crash? Or a freeze? Or something else?
catching the VSYNC fliptime properly w/ KMP+Reclock in 96hz is still a hit or miss, but you said D3D exclusive mode might be the only solution to this?
I don't know for sure. I still don't know what the exact issue is to start with. But I do have some future improvements in store, even for windowed mode. Anyway, have you only tested stability with v0.12? Or did you also test whether playback is still as smooth as v0.11?
fastplayer
3rd May 2010, 17:20
Does that problem only occur during pause? If so, I think a fix should be easy...
Yep, at least so far. Sometimes a simple maximizing resp. minimizing of MPC triggers it.
JarrettH
3rd May 2010, 17:25
Do you still think SoftCubic is still the best looking one madshi? There's just so many choices :devil:
Thank you for 0.12 :cool:
namaiki
3rd May 2010, 17:27
How about smooth motion? Is it still as smooth as v0.11 for you?
I can definitely see the difference between 0.9 and 0.10 (can't stand 0.9 - possibly my 9600M GT isn't fast enough to run without a queue). v0.11 seems fine so far, but I haven't had the chance to test on a higher resolution monitor to see if it will hiccup.
random edit: IMO, softcubic is too soft for me if I want to upscale something like 400p-> 1080p.
kostik
3rd May 2010, 17:56
Thanks Madshi, works great for.
Have someone noticed that when you force MADVR in the filter manager in mpc, and choose EVR CS in the output menu with D3D exclusive checked , you get the madvr work with d3d exclusive mode? it works for me! can someone explain it:?
leeperry
3rd May 2010, 18:00
I don't know for sure. I still don't know what the exact issue is to start with. But I do have some future improvements in store, even for windowed mode. Anyway, have you only tested stability with v0.12? Or did you also test whether playback is still as smooth as v0.11?
I've tested stability and playback smoothness for a few hours..everything looks fine so far, just as smooth as b11 to my eyes in 96Hz on my CRT...I will try 48Hz on my DLP pj later :)
well it's the same ole VSYNC fliptime thingie: Video Frame Display Synchronization - Intel Software Network (http://software.intel.com/en-us/articles/video-frame-display-synchronization/)
that's the only serious problem I've had in b11, and the only presenter I know of that seems to completely overcome this issue is Beliyaal's EVR CP...it seems to wait for the right time to present the first frame, so the video is perfectly synchronized to the output...and Reclock's tight timings become easy to "follow"...because it's a very old issue with Reclock: the VR doesn't catch the fliptime properly > Reclock doesn't know and sends very tight timings(hoping for the best)> the VR is forced to drop frames soon or later(it can happen right away if it completely missed it to begin with, or it can happen after 30/45 mins because it's been slowly derivating around the fliptime :o)
that's my understanding of wth is going on anyway, and I'm sure Jong could get into it much more thoroughly.
OTOH, a dirty fix is to force D3D exclusive mode, which will force everyone(the OS, the graphic drivers, the VR, Reclock) to sing along and minimize the drifting around the actual fliptime.
to sum up: sometimes when I seek with Reclock, mVR completely misses the fliptime and it's a drop feast...sometimes, it's fine for 30/45' then it starts dropping frames...and sometimes it works perfectly fine for 2H in a row(but it takes quite a bit of luck :p)
Try disable ReClock vsync correction.
it's disabled.
namaiki
3rd May 2010, 18:03
kostik, can you right-click the video and get a menu? I'm pretty sure it's not exclusive. :/
Steveo08
3rd May 2010, 18:51
@madshi
when i select madvr as renderer and start a video, i get always a black screen and mpc-hc is freezing. so i have to go to the task-manager to quiet mpc-hc.
madshi
3rd May 2010, 19:01
Do you still think SoftCubic is still the best looking one madshi?
Yes, but I only ever liked it for chroma upsampling. For luma it's much too soft.
I've tested stability and playback smoothness for a few hours..everything looks fine so far, just as smooth as b11 to my eyes in 96Hz on my CRT...I will try 48Hz on my DLP pj later :)
Happy to hear that.
when i select madvr as renderer and start a video, i get always a black screen and mpc-hc is freezing. so i have to go to the task-manager to quiet mpc-hc.
Can you please create a debug log for me? Here is a special madVR 0.12 version which writes a log to C:\log.txt:
http://madshi.net/madVRdebug.rar
Simply replace the original madVR.ax file with the debug one. Then start MPC HC and let it freeze. Let it stay in frozen state for at least 10 seconds. Then terminate MPC HC. Hopefully on your PC madVR will have write access to that path? Then please upload the log somewhere, it will probably be too long to post it here. Thanks!
kostik
3rd May 2010, 19:21
kostik, can you right-click the video and get a menu? I'm pretty sure it's not exclusive. :/
No I get no menu when I click right ... it works exectly as if I were using evr cp with D3D!
kostik
3rd May 2010, 19:26
No I get no menu when I click right ... it works exectly as if I were using evr with D3D!
However, when I choose evr cp as output with D3D checked , I get a menu but when choosing somethibg it looks like the video is on top, and it also starts with a full screen.
Steveo08
3rd May 2010, 19:28
@madshi
i replaced your debug file, but it won't write a log file in the dir from madvr and i have write access on my htpc.
madshi
3rd May 2010, 19:36
@Steveo08, the log is supposed to be created in "C:\log.txt" and not in the madVR dir. Have you looked at the C:\ root?
iSeries
3rd May 2010, 19:37
Just tried 0.12. Unfortunately the same issues I had with 0.11, which are tearing at 23 / 24hz without Aero and stuttering with Aero. The only way I can get MadVR to work without issue is to disable Aero, set my TV to 50hz and use Reclock to speed up 23.976 material to 25hz.
Steveo08
3rd May 2010, 20:03
@Steveo08, the log is supposed to be created in "C:\log.txt" and not in the madVR dir. Have you looked at the C:\ root?
it was my mistake, i found the log in c:
http://rapidshare.com/files/383139689/log.txt.html
cyberbeing
3rd May 2010, 20:56
I've run into few problems in 0.12 which also existed in 0.11.
The first is a massive stutter (Render Queue drops like a rock) during a small portion of Avatar, but only when using a 3DLUT. I suspect this issue may be the same as the one with Advent Children, which I reported to you a long time ago.
The second is with a 16:9 Anamorphic 720x480 XVID encode which only shows a black screen and the video doesn't even playback (stays on 00:00) when using madVR.
The third is a problem with a Youtube 480p H264 FLV. CoreAVC as the decoder causes a crash. FFDShow as the decoder doesn't crash, but the output has black bars on the sides (854x480 padded to 864x480). CoreAVC as the decoder to FFDSHOW RAW to madVR and everything displays correctly (854x480).
Here are the debug logs for all three problems: http://www.mediafire.com/?oo3lk4mzwcm
I've sent you a PM with links to samples of the above problems.
Edit: There is also a new 'problem' where the Render Queue never fills up beyond 7/8. With madVR 0.11, the Render Queue was always 8/8.
Edit2: I also have that 100% CPU problem when paused for a long time. Problem occurs in both 0.11 and 0.12.
cyberlolo
3rd May 2010, 21:16
Hi Madshi.
First of all, thank you for your great work. Your renderer is stunning.
But I'm still missing an option to have the output at 16-254 levels. I mean, with the current version, we have two options:
- TV Levels (16-235)
- PC Levels (0-255)
But it would be great if the renderer could offer us another option to clip BTB (all values from 0-16 as total black, and begin to grow from level 17), AND preserving WTW (all the grayscale up to 254 is showed, having top white at 254, then 253 as light gray, 252 a little bit darker, and so on...).
By now, we can achieve that by using ffdshow's levels filter, but as it works at an 8-bit level, it introduces banding. Another option will be to use the new version of cr3dlut, which yesgrey said that will support this feature, but we don't know if yesgrey will release it soon, and I think this feature is a must for achieving the best possible PQ.
Thanks in advance!
Hello madshi, great to see you back here in this thread !
I still got the tearing problem with 23.976/24.000hz (50.000/59.940hz are fine). HTPC is a Intel Q9950 + ATi 4770 (Win XP SP3, CCC 10.4, ZoomPlayer + CoreAVC/ffdshow + madVR + ReClock), so power shouldn't be a problem.. I tried madVR with/without anti-tearing fix and with/without ReCLock VSync Correction - no joy.
On the other hand overlay/vmr9 windowed/vmr9 renderless are working perfect (with ReClock VSync Correction) at 23.976/24.000hz.
Still hoping for the exclusive mode ;-)
makakam
3rd May 2010, 21:35
I use directvob sub for displaying subtitles with madVR but with some files it doesn't work, I don't know why. Oh and when i play some files with the newest mpc hc the picture looks like this http://img217.imageshack.us/img217/6828/samplevu.th.jpg (http://img217.imageshack.us/i/samplevu.jpg/)
so I have to use some older version.
SacredCultivator
3rd May 2010, 21:36
Hey,
I have one problem with this that i did with .11 as well.
But it's mainly for XviD encodes taht I noticed, as there are no problems for x264 encodes.
These apply for Animorphic encodes like cyberlolo mentioned. For Animorphic 720x480 XviD encodes, it doesn't display the correct resolution, but for H264 encode of the same file, it is displayed correctly.
When you right click on the video and check the Properties, it does say 720x480, but not 720 x 480 (AR 4:3) or 720 x 480 (AR 853:480).
I have 3DLUT enabled, tried disabling with no results as well.
So not too sure what I might be doing incorrectly or if it might just be something with madVR.
(Not too sure about the Luma down/up + Chroma sampling settings, as there are too many, but are the defaults generally pretty good?)
Thanks.
Can you please create a debug log for me? Here is a special madVR 0.12 version which writes a log to C:\log.txt:
http://madshi.net/madVRdebug.rar
Simply replace the original madVR.ax file with the debug one. Then start MPC HC and let it freeze. Let it stay in frozen state for at least 10 seconds. Then terminate MPC HC. Hopefully on your PC madVR will have write access to that path? Then please upload the log somewhere, it will probably be too long to post it here. Thanks!
Same problem for me, here's my log file:
http://www.megaupload.com/?d=T76COMTZ
Thanks
cyberbeing
3rd May 2010, 22:53
(Not too sure about the Luma down/up + Chroma sampling settings, as there are too many, but are the defaults generally pretty good?)
The madVR upscaling and chroma defaults are very soft, but should have minimal to no aliasing or haloing/ringing, which is why madshi picked them as the defaults.
If you find the defaults too soft, try out a sharper resizer like Spline36 or Lanczos4. Don't feel like you need to restrict yourself to the defaults. Experiment around and pick whichever you think looks best to you. If you can't tell any difference between resizers, then you may as well stick to the defaults.
In terms of speed:
Very Fast: Bilinear, Nearest Neighbor
Fast: Bicubic, SoftCubic, Catmul-Rom, Mitchell-Netravali
Slow: Spline36, Lanczos3, Lanczos4
Very Slow: Spline64, Lanczos8
In terms of sharpness it should be something like the following:
-Soft-
Bilinear
SoftCubic 50
SoftCubic 60
SoftCubic 80
SoftCubic 100 (or is SoftCubic reversed with 100 being softest and 50 sharpest?)
Mitchell-Netravali
Bicubic 50
Catmul-Rom
Bicubic 60
Bicubic 75
Spline36
Lanczos3
Spline64
Lanczos4
Lanczos8
-Sharp-
Bicubic, Catmul-Rom, and Lanczos will all have moderate ringing/haloing.
The Spline resizers are designed to be as sharp as possible with minimal ringing/haloing.
I seem to remember madshi mentioning that Lanczos had less alaising but more ringing/haloing then Spline.
You can get away with choosing a softer resizer for Chroma since most detail is contained in Luma.
I personally use:
Luma Upscaling: Spline36
Luma Downscaling: Spline64
Chroma Resampling: Mitchell-Netravali
SacredCultivator
3rd May 2010, 23:25
Thanks cyberbeing for the little breakdown, shall play around with those and see what works for me, or if I even see any difference.
Mark_A_W
4th May 2010, 02:50
No problems for me so far with v0.12.
- Ati 2600XT (yes, old)
- Vista32
- No 3D lut (stutters due to lack of grunt if I try the 3D lut)
- Reclock 1.8.6.7
- Zoomplayer
- Avatar bluray
Playback at 96hz interlaced is fine. Will check for super smoothness (like v0.11 gives) tonight.
Mark_A_W
4th May 2010, 10:09
I'm glad to hear that. Honestly, I was fearing that due to the rewrite there would be a lot of new problems, which v0.11 didn't suffer from. Seems I was wrong about that, which is great.
I'm sorry madshi, I was wrong.
I also have the CPU Pause bug. When I pause one of my cores sits at 90%.
(What happened to the delayed frames OSD line? Not needed?)
Also, a little request: A shortcut to reset the dropped frames number to 0.
Perhaps CTRL+J again? While it is already displayed.
I lose track of the dropped frames number when I'm testing for smoothness. It goes up a few when I seek....then I get lost...was that 23 originally? Or 24?
Or perhaps it should reset after a seek (then wait a second before starting the count).
Playback seems smooth so far (watching reclock tearing test and dropped frames number). Will keep testing. Sometimes it seems the reclock line goes faster or slower, but the video behind the line can give that impression. No coarse jumps so far.
Seeking is fine. And no crashes so far.
Cheers
Mark
makakam
4th May 2010, 10:10
Actually the only problem I've got is the one concerning subs I've mentioned above but You said You got that covered so I'm happy about it. Oh I've noticed that HD movies are much much smoother now comparing to 0.11. Is it only me? Keep up the great work. Thanks
Tested on a DVD from disc. It still gives DVD: Macrovision Fail.
Which exact OS are you on?
Windows 7 32 bit with a nVidia GeForce 6600GT. MPC-HC 1779 with internal filters and DVD Navigator.
Does the problem only occur with madVR? Does it work with all other renderers?
Only with MadVR. It works fine with EVR, VMR9 and VMR7, any flavour.
cyberlolo
4th May 2010, 10:27
IMHO you should calibrate your display in the way you want and let madVR do its normal job. When you use TV levels in madVR, all the information is there and it's the job of your display (respectively your calibration) to make the display cut BTB and display WTW. IIRC, your display can't be calibrated properly? madVR will get brightness and contrast settings sooner or later. You will be able to use these for your needs. I don't really plan on adding another "levels" option, though, because as explained above, I don't think it's generally the right approach, and I think only very very few people would need that, because most will be able to calibrate their display properly.
Thanks for your answer, madshi.
But then, I don't understand why you have included the PC Levels option. My point is that option is decreasing PQ, as you're cutting WTW with it, and as you know there's a lot of WTW info in every video using RGB, which will be lost with PC Levels option. So, IMHO, it would be better if the two options are as follows:
- TV Levels: Umolested video, and let the display to cut BTB. This is ok.
- PC Levels: The renderer cuts BTB, but preserving WTW all the way up to 254. Because as I said, actually it's cutting WTW too, and that means losing valuable info and lowering PQ.
If not, I don't see the benefits of using PC Levels...
Edit: By the way, I don't have the CPU high load bug when pausing the video.
Thanks, but the log file is very short. It stops after about 350ms of playback. Did you let the media player sit frozen for a couple of seconds?
Yes I've wait before to kill MPC.
And this problem doesn't happen with KMP.
I'll try tonight with your new test version.
Thanks
yesgrey
4th May 2010, 10:47
there's a lot of WTW info in every video using RGB, which will be lost with PC Levels option.
Read this (http://www.avsforum.com/avs-vb/showthread.php?t=1240153) thread, it might surprise you...
cyberbeing
4th May 2010, 11:06
Well I've noticed a problem new to madVR 0.12.
At random, after ~5-10 minutes, madVR suddenly begins dropping a couple frames every few seconds. Yet if I reopen the video or seek, I can usually get through the entire video without any dropped frames. Nothing unusual is happening with the render and present times, and the decode/backbuffer/render queues are remaining full when it drops frames.
On that note, the CTRL+J statistics must be leaving out some important statistic which could cause frames to drop independently of those which are already shown.
In any case, it appears there is something wrong with the 0.12 VSync code, which is occasionally causing it to lose VSync after a period of time and never fully recover. I never had that problem with 0.11. My refresh rate is 96.0005 Hz and I use MPC-HC + Reclock on WinXP x86 with a 7800GTX 512.
cyberlolo
4th May 2010, 11:29
Read this (http://www.avsforum.com/avs-vb/showthread.php?t=1240153) thread, it might surprise you...
I don't get your point, yesgrey. In that thread, they say exactly what I say: we're converting to RGB, and in that conversion, we'll be having a lot of values exceeding 235, which will be lost if we can't see WTW. We had this same discussion in this post http://forum.doom9.org/showpost.php?p=1380004&postcount=2261, and you decided to put it on hold until you had your new version of cr3dlut... (by the way, how does it go?)
In that time, you told me that you have your output at 16-245 to be safe. Are you still thinking the same way?
namaiki
4th May 2010, 11:45
Well I've noticed a problem new to madVR 0.12..
Do you have Reclock vsync correction for madvr/'all other renderers' enabled or disabled?
Try flip that setting to the opposite of what is currently set.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.