View Full Version : madVR - high quality video renderer (GPU assisted)
madshi
23rd September 2012, 16:05
madVR v0.83 released
http://madshi.net/madVR.zip
* added "enable windowed overlay (Windows 7 and newer)" option
* added "anti-ringing" option for chroma and luma scaling
* added extra "delay playback start after seeking, too" option
* added new calibration option "disable GPU gamma ramps"
* doubled exclusive mode seekbar in size
* added position / runtime information to exclusive mode seekbar
* removed some tweak options (rendered superfluous by new WHQL NVidia driver)
* madVR window is now created and served by a separate thread
* Windows timer/scheduler is now always set to finest possible resolution
* modified DXVA deinterlacing to work a bit more similar to EVR
* AVI Decompressor output is now always considered to be decompressed video
* added workaround to hide kmplayer crash when resizing video
* fixed: crash when multiple madVR instances are created at the same time
* fixed: freeing madVR instance sometimes resulted in a crash
* fixed: VSFilter passes RGB -> input was incorrectly considered limited range
* fixed: bilinear chroma upsampling used MPEG1 chroma position instead of MPEG2
* fixed: switching deinterlacing mode -> "resetting Direct3D device failed"
* fixed: crash when playing certain video files with AVSplitter
Some comments:
(1) I've received several crash reports from madVR users pointing to crashes during madVR shutdown. As a result I've modified the shutdown behaviour and I think those crashes should be gone now. However, there's a certain chance that instead madVR (and with it the media player) might freeze once in a while when closing or changing video files. I have done some more changes in the hope to avoid such freezes, but only real life will tell whether freezes will occur or not. Please let me know...
(2) The new option "disable GPU gamma ramps" seems to work only in fullscreen exclusive mode. Is that what you guys need? Or do you need/want madVR to disable the gamma ramps in windowed mode, too?
(3) I've tried to improve the anti-ringing quality further compared to the last test build, but I have been unable to do so. So this build is identical in quality to the last test build. I might look into providing a higher quality option in a future build, which will probably consume quite a bit more GPU power, though.
(4) Most importantly: madVR now supports using "Overlay" for windowed mode (requires Windows 7 or 8). This has several benefits and a few disadvantages:
+ should have no tearing (I think)
+ performs noticeably better than standard windowed mode
+ seems to work around the levels problems with NVidia drivers
- resizing the media player window looks ugly
- only one player (instance) can use overlay at a time
- I'm not sure yet whether the GPU driver leaves the video untouched
I've enabled Overlay by default for Windows 7, but I need your FEEDBACK:
(1) Does it work well for you? (need feedback from all AMD, NVidia and Intel users)
(2) Do you think it should be enabled or disabled by default?
(3) If you can (and know how to) please check whether image quality is alright and untouched by the GPU driver and report back.
(4) Is there anybody who still needs the "old exclusive mode path" (which is what you get when enabling exclusive mode and disabling the option "prerender multiple frames in advance")? I'm asking because I'd like to remove the old exclusive mode path.
dansrfe
23rd September 2012, 16:13
I don't know about an API but there is a registry key which allows the wallpaper interval to change. Unfortunately, there is no "disable" option in the Personalization area anyways so that won't work but the interval can be pushed all the way to 1 day which may be a good enough period of time to consider it off for the time that madVR is being used in one go.
The key is at: HKEY_CURRENT_USER\Control Panel\Personalization\Desktop Slideshow @ Interval
andybkma
23rd September 2012, 16:18
madVR v0.83 released
(4) Is there anybody who still needs the "old exclusive mode path" (which is what you get when enabling exclusive mode and disabling the option "prerender multiple frames in advance")? I'm asking because I'd like to remove the old exclusive mode path.
Yes, madshi, still need the old path. My 8600M-GT doesn't play nice with the newer path, lots of frame drops. Cheers for new version, almost like christmas :-)
fairchild
23rd September 2012, 16:19
Madshi, thanks as always for continuing support. As for "enable windowed overlay (Windows 7 and newer)" on my system using mpc-be v1.0.3.0 I get no picture. Basically the media player just pauses the video automatically and i get a constant black screen. (with audio playing) I can then force the mpc-be to begin the video but again it just displays a black screen. The loaded filters are the usual, lav suite + madVR + reclock.
edit: also tested on MPC-HC and same behavior.
Also using 12.8 official WHQL drivers on my 7870.
dansrfe
23rd September 2012, 16:20
Windowed overlay mode pauses the video at the beginning and gives me a black screen. It doesn't work at all basically.
Windows 7 x64
ATI Mobility Radeon HD 4570 @ latest drivers 12.8
madshi
23rd September 2012, 16:28
I don't know about an API but there is a registry key which allows the wallpaper interval to change.
Does changing the registry key take immediate effect?
Yes, madshi, still need the old path. My 8600M-GT doesn't play nice with the newer path, lots of frame drops. Cheers for new version, almost like christmas :-)
Have you updated to the latest NVidia WHQL drivers? My 9400M works very well it with the new path.
Have you tried the new Overlay windowed mode option? It should behave quite similar to the old exclusive mode path.
As for "enable windowed overlay (Windows 7 and newer)" on my system using mpc-be v1.0.3.0 I get no picture.
Windowed overlay mode pauses the video at the beginning and gives me a black screen. It doesn't work at all basically.
Best guess: AMD drivers don't like what I'm doing. Can I have a debug log, please?
dansrfe
23rd September 2012, 16:38
Changing the registry key takes immediate effect. I checked the interval in the GUI as well as the registry. The value is in ms I believe.
madVR log from ATI device: http://www.sendspace.com/file/f6m47w
fairchild
23rd September 2012, 16:39
http://www.sendspace.com/file/x6yx2f
This is from loading one of my test files and media player just pauses automatically on my 7870.
Also noticing a new bug, when in FSE (tested both old path and the new) and you close the media file/video while it's still playing, it freezes the player. I then have to go intot he task manager and end the media player, also I notice that the MadVR thread is not running, so not sure what's causing this. This is on mpc-be, probably affects mpc-hc since they are so similair. Not sure if this is affecting others.
andybkma
23rd September 2012, 16:40
v83, Luma downscaling "Activate anti ringing filter" option is greyed out and can't be selected. Is that normal? Both the "ups" are not greyed out...
vivan
23rd September 2012, 16:42
nVidia Optimus system: On integrated Intel HD 3000 overlay is slower by 0.40 ms (16.05->16.46) and present is mush slower (0.05 -> 0.19). But on discrete nVidia 540m overlay is more than 2 times faster (14.1->6.5 ms rendering and 4.28->2.55 ms present time)!
Also +1 disadvantage - it's impossible to take screenshot with video.
wanezhiling
23rd September 2012, 16:44
Tested on 4650m/6850/7750, black screen.
robpdotcom
23rd September 2012, 16:46
Best guess: AMD drivers don't like what I'm doing. Can I have a debug log, please?
http://depositfiles.com/files/w5ggyvnq5
JarrettH
23rd September 2012, 16:50
How do I go about making the sample? I was going to use dgindex, unsure of what field operation setting to use. Forced Film and Honour flags both look interlaced
madshi
23rd September 2012, 16:52
http://samples.mplayerhq.hu/V-codecs/CRAM/clock-cram16.avi
http://samples.mplayerhq.hu/V-codecs/CRAM/worm.avi
http://samples.mplayerhq.hu/V-codecs/CVID/1984.apple_ad.mov
http://samples.mplayerhq.hu/V-codecs/CVID/handss.avi
4 Day Weekend.mov (http://www.directmirror.com/files/BAWVF6FZhttp://)
AVI Decompressor (RGB24) + madVR = artifacts
ffdshow (RGB24) + madVR = normal
AVI Decompressor (RGB24) + Color Space Converter(ARGB32) + EVR = normal
This is a bug in the decoder. Basically the decoder asks madVR to provide an IMediaSample interface to write the decoded frame to. madVR does provide an IMediaSample. However, the decoder seems to expect that the buffer of the media sample is still filled with the previously decoded media sample. That is not the case with madVR due to its queue design. The decoder should not rely on a newly fetched IMediaSample to have a specific buffer content. It's the decoders job to fully initialize the media sample buffer. There's really nothing I can do about this. You can work around the problem by forcing the ffdshow raw video processor into the chain.
madshi
23rd September 2012, 16:57
For you AMD users here are a couple of test builds:
http://madshi.net/madVR83a.rar
Please copy one madVR test build into official madVR v0.83.0 folder at a time, renamed to "madVR.ax", of course. Please test all test builds and let me know which one of them work (if any) and which don't. Thanks!
Also noticing a new bug, when in FSE (tested both old path and the new) and you close the media file/video while it's still playing, it freezes the player.
Can anybody else reproduce this?
Can you please try creating a freeze report by pressing Ctrl+Alt+Shift+Pause?
v83, Luma downscaling "Activate anti ringing filter" option is greyed out and can't be selected. Is that normal? Both the "ups" are not greyed out...
That is normal. Anti-ringing is not yet supported for downscaling.
nVidia Optimus system: On integrated Intel HD 3000 overlay is slower by 0.30 ms. But on discrete nVidia 540m overlay is more than 2 times faster (14.1->6.5 ms rendering and 4.28->2.55 ms present time)!
That's interesting. So playback on Intel is stuttering, I suppose?
How do I go about making the sample? I was going to use dgindex, unsure of what field operation setting to use. Forced Film and Honour flags both look interlaced
I'm not sure what's the best way to cut. There are probably many tools out there for that purpose. You could probably mux to DVD, then use the mkvtoolnix GUI to split the MKV into small parts. Probably there's a better way. Maybe someone else has a good suggestion?
mzso
23rd September 2012, 17:02
madVR v0.83 released
http://madshi.net/madVR.zip
[...]
I agree that resizing is ugly (and slower) in overlay mode. Otherwise it seems to work without problem on my GTS450.
One other thing I noticed that stopping playback is noticeably slower. I get a 1-2 second black window.
vivan
23rd September 2012, 17:04
That's interesting. So playback on Intel is stuttering, I suppose?No. When I posted first time I wrote "30 ms" instead of "0.30 ms". I've added more accurate numbers now.
It's slightly noticeable only when rendering time is near frame interval time (it happens with 60 fps video).
madshi
23rd September 2012, 17:06
I agree that resizing is ugly (and slower) in overlay mode. Otherwise it seems to work without problem on my GTS450.
One other thing I noticed that starting and stopping playback is noticeably slower. In both occasions I get a 1-2 second black window.
Does the slower start/stop only occur with Overlay mode active? Or does that happen in any mode with v0.83?
Do you see any advantages of Overlay mode compared to conventional Windowed mode on your PC?
madshi
23rd September 2012, 17:08
No. When I posted first time I wrote "30 ms" instead of "0.30 ms". I've added more accurate numbers now.
It's slightly noticeable only when rendering time is near frame interval time (it happens with 60 fps video).
What is your opinion on enabling/disabling Overlay by default?
dansrfe
23rd September 2012, 17:08
I can't reproduce the media player freeze bug that fairchild commented on using MPC-HC.
None of the test builds work for me with Windowed overlay mode enabled with ATI.
robpdotcom
23rd September 2012, 17:10
None of the test builds work for me with Windowed overlay mode enabled with ATI.
Same for me.
madshi
23rd September 2012, 17:12
I hate AMD right now. Not sure, maybe they simply don't support Windows 7 D3D9 Hardware Overlay at all? I guess I'll have to setup a win7 PC with AMD GPU here myself to get to the bottom of this.
wanezhiling
23rd September 2012, 17:13
Same for me.
ME too
mzso
23rd September 2012, 17:14
Does the slower start/stop only occur with Overlay mode active? Or does that happen in any mode with v0.83?
Do you see any advantages of Overlay mode compared to conventional Windowed mode on your PC?
I'm really slow... I probably imagined the start thing because of the delay at stopping. It's independent from overlay mode, guess that's the new shutdown behaviour.
For me the normal mode is better since I didn't have problems, so the overlay mode brings just losses. Apart from the resizing there's the impossibility to take screenshots. Otherwise I didn't notice anything different in the two modes.
fairchild
23rd September 2012, 17:17
Here is the freeze report:
http://www.sendspace.com/file/t6urb1
Also tested with the latest mpc-hc from xhmikosr and same thing, black screen when I close the media file while it's running and in FSE mode.
madshi
23rd September 2012, 17:17
New test build for AMD users:
http://madshi.net/madVR83b.rar
In the debug log please search for "Overlay". Does it say "Overlay Caps: -" or "Overlay Caps: +"? Thanks!
vivan
23rd September 2012, 17:17
What is your opinion on enabling/disabling Overlay by default?Off, because I'm using integrated graphics all the time. Also I'm making screenshots (press 1, than alt+2, than alt+prtSc - and you'll get frame in 100% size) quite often...
However it would be cool if it would possible to have different settings for different GPU's (e.g. overlay off for intel, but on for nVidia).
ranpha
23rd September 2012, 17:18
madVR 0.83 with overlay enabled will give a black screen if playing a video with multiple subtitles, and I switch the subtitle stream. Happens with both nVidia and Intel GPUs. Also happens with either MPC-HC internal subtitle renderer and vsfilter.
The only way to make the problem goes away is to disable the overlay feature.
mzso
23rd September 2012, 17:18
I hate AMD right now.
I hope they pull themselves together on the software side. Kaveri APU-s look interesting. I'm thinking of upgrading to one if they live up to their promise.
dansrfe
23rd September 2012, 17:22
Just tried the new test build and I can't find/search for "Overlay" with/without case-sensitivity in the log with notepad.
mzso
23rd September 2012, 17:24
Off, because I'm using integrated graphics all the time. Also I'm making screenshots (press 1, than alt+2, than alt+prtSc - and you'll get frame in 100% size) quite often...
However it would be cool if it would possible to have different settings for different GPU's (e.g. overlay off for intel, but on for nVidia).
Probably a stupid question: But how is it better than simply pressing print screen?
madshi
23rd September 2012, 17:28
Here is the freeze report:
http://www.sendspace.com/file/t6urb1
Also tested with the latest mpc-hc from xhmikosr and same thing, black screen when I close the media file while it's running and in FSE mode.
Thanks. I feared something like this might happen. Would you mind reproducing the problem with a debug build of MPC-HC? I mean one where there are debug symbols (*.pdb) available for MPC-HC? That would make the freeze report much more helpful. Thanks!
Off, because I'm using integrated graphics all the time. Also I'm making screenshots (press 1, than alt+2, than alt+prtSc - and you'll get frame in 100% size) quite often...
However it would be cool if it would possible to have different settings for different GPU's (e.g. overlay off for intel, but on for nVidia).
Not sure how to handle different settings per GPU. I could move these settings to the "device" tree, so you can configure them per *display* (instead of per GPU). But I don't think anybody would look there for these settings. So I'm not sure how to solve this. I think I'll leave the settings where they are for now. Sooner or later I'll restructure the settings and maybe then I'll find a better solution.
madVR 0.83 with overlay enabled will give a black screen if playing a video with multiple subtitles, and I switch the subtitle stream. Happens with both nVidia and Intel GPUs. Also happens with either MPC-HC internal subtitle renderer and vsfilter.
Could I have a small sample, please? I don't have one at hand with multiple subtitle streams, I think.
Just tried the new test build and I can't find/search for "Overlay" with/without case-sensitivity in the log with notepad.
Really? That's weird! Are you sure you "properly" replaced the madVR.ax? It definitely works here. Downloaded my own link, and the "Overlay" is there in the debug log.
robpdotcom
23rd September 2012, 17:34
New test build for AMD users:
http://madshi.net/madVR83b.rar
In the debug log please search for "Overlay". Does it say "Overlay Caps: -" or "Overlay Caps: +"? Thanks!
"Overlay Caps: - " for me.
fairchild
23rd September 2012, 17:36
Thanks. I feared something like this might happen. Would you mind reproducing the problem with a debug build of MPC-HC? I mean one where there are debug symbols (*.pdb) available for MPC-HC? That would make the freeze report much more helpful. Thanks!
Don't know where or how to go about doing this. If you can point me in the right direction I'll be more than willing to give it a go.
dansrfe
23rd September 2012, 17:36
Yeah I can't find it :/ Triple-checked and everything.
JarrettH
23rd September 2012, 17:37
DGindex has this option...
Honor Pulldown Flags - The pulldown flags (if any) are obeyed and the fields are repeated. This means that the frame-served video will appear exactly as it is intended to appear on the final display device. Therefore, if you have a 3:2 pulled-down clip, you'll get the standard repeating pattern of 3 progressive frames followed by 2 interlaced frames. If you have PAL or MPEG1, you'll just get the encoded pictures with no repeated fields (because PAL and MPEG1 have no RFF flags to honor). The frame rate will always be the same as the display frame rate of the source.
Ignore Pulldown Flags - The pulldown flags are ignored. This allows one to obtain the raw encoded MPEG pictures, with no repeated fields. However, because repeated fields intended for display are ignored and not displayed, the resulting frame rate may differ from the source frame rate. It may even vary throughout the clip, due to irregular patterns of pulldown flags. If the pulldown is irregular, use of this option will cause the audio-video sync to change at different parts of the clip, and most likely sync will not be acceptable. This option is mostly intended for power users, who would use it as a diagnostic aid for inspecting the encoded MPEG pictures. Although this option ignores the flags, they are still stored in the D2V file although DGDecode will also ignore them.
Force Film - This option is intended for the special case of film content encoded at 23.976 fps but pulled down for display at 29.97 fps, i.e., 3:2 pulldown. This option will restore the 23.976 fps film rate while keeping audio and video in sync throughout the clip. This option works by ignoring pulldown flags and inserting/removing frames to maintain a constant and sync'ed output stream. Do not use this option on non-3:2 pulled-down material, and, therefore, never use it on PAL or MPEG1. Also do not use this option on streams containing frame repeats.
I chose Ignore for this sample, hopefully it's right!
http://depositfiles.com/files/9k1c3pr9p
fastplayer
23rd September 2012, 17:40
Don't know where or how to go about doing this. If you can point me in the right direction I'll be more than willing to give it a go.
Debug builds (*.pdb) of MPC are available here:
http://xhmikosr.1f0.de/mpc-hc/
madshi
23rd September 2012, 17:49
"Overlay Caps: - " for me.
Ouch. So AMD doesn't seem to support Windows 7 D3D9 Hardware Overlay. That's a very big surprise. A google search indicates that Microsoft requires WDDM 1.1 drivers to support this feature for WHQL certification. I'm confused... :confused:
Yeah I can't find it :/ Triple-checked and everything.
Weird.
I chose Ignore for this sample, hopefully it's right!
Thanks, I'll have a look, download is running (slowly). Can you please describe what the problem is?
Boltron
23rd September 2012, 17:51
New test build for AMD users:
http://madshi.net/madVR83b.rar
In the debug log please search for "Overlay". Does it say "Overlay Caps: -" or "Overlay Caps: +"? Thanks!
No Overlay found in debug file here.
madshi
23rd September 2012, 17:55
I'm sorry, it's my fault: You have to disable the Overlay option, otherwise the debug log will not contain the "Overlay" information. Weird? Yes!
vivan
23rd September 2012, 18:03
Probably a stupid question: But how is it better than simply pressing print screen?I want to get screenshot without any scaling not just *any* random screenshot.
I could move these settings to the "device" tree, so you can configure them per *display* (instead of per GPU).In my case I have only one display there... And if I connect second via HDMI - I can use any GPU too. So it wouldn't help at all :D
dansrfe
23rd September 2012, 18:06
Overlay Caps: -
Budtz
23rd September 2012, 18:07
i have issuses as i have had many times before with madvr freezing when switching to another videofile in the folder. I have had no problesm with the last version for many months but now the problem is back again it seems. with the new version
madshi
23rd September 2012, 18:15
i have issuses as i have had many times before with madvr freezing when switching to another videofile in the folder. I have had no problesm with the last version for many months but now the problem is back again it seems. with the new version
Can I please have a freeze report with an MPC-HC debug build? See 1-2 pages back in this thread for details on where to get an MPC-HC debug build and how to create a freeze report. Thanks!
Mangix
23rd September 2012, 18:22
For some reason, I had to reset to default settings on my computer before version 0.83 was usable. What was happening was I would play a video and it would immediately pause. Resuming it would just be a black screen.
This was on a PC running a GTS 450. Might help the AMD users out there. Or not.
Budtz
23rd September 2012, 18:27
ok here it is
Guest
23rd September 2012, 18:30
I chose Ignore for this sample, hopefully it's right! Honor or Ignore will both work correctly for this stream because it has no repeat flags. Generally, though, only use Ignore for diagnostic purposes as it can get you into trouble.
JarrettH
23rd September 2012, 18:32
Thanks, I'll have a look, download is running (slowly). Can you please describe what the problem is?
Just that the picture breaks up (looks like interlacing artifacts) whether deinterlacing is on or off.
madshi
23rd September 2012, 18:34
I chose Ignore for this sample, hopefully it's right!
http://depositfiles.com/files/9k1c3pr9p
This sample is field blended. Meaning that it's not suitable for IVTC. The only way to achieve output without combing is to use video mode deinterlacing.
ok here it is
Thanks, but the MPC-HC debug information is missing. Did you have the *.pdb files in the right folder? You might have to unzip them, or something.
madshi
23rd September 2012, 18:35
For some reason, I had to reset to default settings on my computer before version 0.83 was usable. What was happening was I would play a video and it would immediately pause. Resuming it would just be a black screen.
This was on a PC running a GTS 450. Might help the AMD users out there. Or not.
That might have been the option "delay playback start until render queue is full", but I'm not sure why it should result in problems with 0.83, it should not.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.