View Full Version : madVR - high quality video renderer (GPU assisted)
Xaurus
17th November 2011, 08:44
Looks like a bug in madVR, will be fixed in the next build.
Thanks madshi. Do you have any more details about this?
Does the bug also affect the other thing with having to enable the "limit rendering times to avoid glitches" or is it only related to the frame drops?
jmone
17th November 2011, 10:03
madshi, this version is working really well with JR's MC 17 Videoclock as madvr reports anticipated dropped/repeated frames swinging around by many hours or even days. Since the audio is slaved to madvr would it be worth reporting it as infinity or "slaved" in the OSD?
Mikey2
17th November 2011, 13:04
With this update, now my queues do not fill-up, thus I drop frames (unless I drop the scaling Algorithm to something low, like Bilinear.) I went back and forth between .78 and .79 multiple times and am confident that I can only get .78 to work.
I have always been pushing my graphics card[s] to the max with madVR (pair of NVidia 8600GT's in SLI, but with only 256MB of video-ram.) Thus I have my backbuffers/frames in advance set really low, to something like 2 or 3. This has worked in the past and allowed me to use 4-tap Spline in exclusive mode without drame-drops. However, as mentioned, .79 will not fill the queues anymore.
I have been messing around with flushing settings (right now I have: don't flush/flush and Wait(sleep)/flush/flush, with "run presentation in seperate thread.")
Is this the best for my situation? What settings can I try to squeeze every bit I can from my low-memory GPU's in order to continue using madVR? (Unfortunately I cannot afford a new GPU right now.)
I have this issue with or without interlaced videos. However, like many others, I like madVR's new de-interlacer better than ffdShow's yadif. Of course, this puts even more strain on my GPU, but it still seems to work if I set de-interlacing in a different thread. Is this correct reasoning?
I do not know what it is about .79 that puts it over the edge where I can no longer play without frame-drops...does anyone have any thoughts on that too?
Thanks in advance for your help!
MikeY
PS - I am running software decoding of course instead of H/W decoding. (That is what has allowed me to get this far with my old GPU's!)
Thunderbolt8
17th November 2011, 14:11
Do you still get visible differences between deinterlacing on/off?no, atm not. dont know why or whats different. but it seems to be fine atm.
pie1394
17th November 2011, 16:03
In D3D9 exclusive mode with "prepresented frames" active, madVR will already show each weaved frame twice, provided that the timestamps are clean. If the timestamps jitter a lot, nasty things like 2:2:2:3:1:2:2:2 can happen.
If you turn deinterlacing off, madVR does *nothing*. If the fields are swapped then madVR does not correct that.
Then the odd-field-first interlaced contents will not be displayed correctly.
It would show the very similar issue I described in below.
I have retried the normal even-field-first MPEG-2 1080i60 contents to HDMI 1080i60 output by madVR (w/o deinterlace) on GTX260+. It looks like the presented field sequence is still incorrect by GPU. The problem is very obvious when the picture contains some moving objects.
If the video contents' presentation order are Frame0[E0 O1] Frame1[E2 O3] Frame2[E4 O5] ...
The field signal sent to HDMI should be something like:
E0 O1 E2 O3 E4 O5 ...
On the 1080i PDP TV, howerver, I observed it often looks like:
E0 O1 E0 O3 E4 O5 ...
That is one reason why I keep using frame-rate-doubing deinterlace at 1080i50 / i60 output signals. At least HDMI 1080i signal always contains all right fields.
Why I do not use 1080p50 / 1080p60 signals on my PDP TV. The reason is simple. The TV will perform some anti-flicking process if the input signal is 1080p24/p25/p30/p50/p60. Thus the static objects on the 1080i video's will have a slight vertical image resolution loss.
You just said above that activating deinterlacing would be a waste of GPU processing power. But now you're saying in your own setup you have deinterlacing active even when using 1080i60 output? That's kinda confusing.
Well... I remebered it was discussed with you when you were preparing to design the deinterlaing function into madVR. The interlaced source content's deinterlacing process is not needed only when it exactly matches the output video signal. In other words, it always needs to perform deinterlacing process upon any of following cases:
1. An interlaced frame is vertically scaled by frame to either interlaced or progressive video signal.
2. An interlaced frame is shown as still image on interlaced output device (CRT / Hitachi PDP)
3. Playback frame / field rate is different from output signal. (Tricky play)
Can you make comparison screenshots, please?
Method1: Cuda deinterlace
http://desmond.imageshack.us/Himg706/scaled.php?server=706&filename=alancudadeint.png&res=galhttp://img706.imageshack.us/img706/9914/alancudadeint.png
Method2: madVR DXVA2 deinterlace
http://desmond.imageshack.us/Himg257/scaled.php?server=257&filename=alandxva2deint.png&res=galhttp://img257.imageshack.us/img257/9969/alandxva2deint.png
I did the comparision of single frame by two playback methods. To be honest, the difference is very minor even through I did not capture the exact time frame. Thus the difference could come from the fact that Japanese HDTV contents have very different bit rate distribution among MPEG-2 I / P / B pictures.
Yet I am sure that my Hitachi PDP can show somewhat magic nartural human skin colors and 3D-alike stereo effect on those well-captured + well-encoded high bit-rate video contents. Have played those contents on my friend's Panasonic FullHD PDP, it does not show me the same natural color / stereo feeling which I have seen on my TV.
iSeries
17th November 2011, 17:38
Hi Madshi,
Regarding my timestamp issue with index.bdmv and mpls files, I've found an MKV that plays in exactly the same way (hundreds of dropped frames).
The MKV was made with MakeMKV straight from disc and is a music concert 1080i 29.97fps.
Log file is here: http://www.mediafire.com/?oo6676cjrouncna
nlnl
18th November 2011, 13:34
madshi
Another strange beast for your zoo :).
http://dl.dropbox.com/u/43376972/PAL%20film%20deinterlacing%20artifacts.mkv
PAL SD movie in .mkv.
If it is DXVA deinterlaced, we have a lot of interlacing artefacts.
And "DXVA deinterlacing off" (plain weaving?) does not help.
LoRd_MuldeR
18th November 2011, 14:40
url]http://dl.dropbox.com/u/43376972/PAL%20film%20deinterlacing%20artifacts.mkv[/url]
PAL SD movie in .mkv.
This one doesn't appear to be interlaced. Looks more like the result of a bad deinterlace :scared:
I would suggest you "repair" that clip prior to playback. You may try something like this in Avisynth:
FFVideoSource("PAL film deinterlacing artifacts.mkv")
NNEDI3(field=-2)
Merge(Last.SelectEven(), Last.SelectOdd())FFVideoSource("PAL film deinterlacing artifacts.mkv")
SeparateFields()
Merge(Last.SelectEven(), Last.SelectOdd())
NNEDI3(dh=true)
dlb76
18th November 2011, 16:01
madshi, just to clear things out
"use a separate device for presentation" option give any good on xp64 sp2 or can be safely disabled, because i see it says vista and win7 only ?
and what about "present queue" also on xp64 sp2 ? is it possible to make it > "3" ?
even setting in driver to "4" still limits it to "3"...
:thanks:
6233638
18th November 2011, 16:17
Maybe it has, not sure. So any improvements or negative side effects by increasing the queue sizes?Didn't have a chance to do any proper testing until now. While it looked like things were fine initially, keeping the queues maxed out eventually leads to presentation glitches showing up with longer videos.
I'm currently running the latest Nvidia beta drivers (seems like this is something I'll have to keep doing as a gamer) and was concerned they were the cause, but lowering the queues to 16 results in glitch-free playback.
If I lower the GPU queue to 16 but leave the CPU queue at 32 playback is fine initially with no presentation glitches, but at random it will suddenly start dropping a significant number of frames.
So with Nvidia, at least when running the latest beta drivers, I wouldn't recommend going over 16 at all.
I suspect that whatever causes this is the same thing that Nevcariel found when going over 12 queues on his system in previous versions.
I also encountered a film where madVR decided that deinterlacing was necessary (it wasn't) and that caused it to drop massive numbers of frames. Will see if I can get a sample later, been quite busy lately.
I also had a problem with the OSD not showing up, and "uninstalling" & "reinstalling" fixed this. All I did was run the two batch files though.
I suspect this was another issue caused by running J-River MC17 and uninstalling it. (same thing as ffdshow becoming unregistered) I guess they have a build or preference that lets them disable the OSD?
italospain
18th November 2011, 16:42
I am forced to use the Intel IGED Drivers to add a custom Interlaced Resolution for my TV.
madVR works with the Intel GMA Drivers but refuses to work with the IGED Drivers.
One thing i noticed that my custom Resolution is reported as 25 Hz Interlaced with the IGED Drivers but under the GMA Drivers interlaced resolutions are reported as 50 Hz Interlaced.
D3D games working fine.
Is this a bug in madVR ?
Is there hope you can fix it ? (I cant live without madVR )
thanks
nlnl
18th November 2011, 19:17
This one doesn't appear to be interlaced. Looks more like the result of a bad deinterlace :scared:
I would suggest you "repair" that clip prior to playback. You may try something like this in Avisynth:
:thanks:
Mediainfo reports for that stream:
Codec ID : V_MPEG2
Width : 720 pixels
Height : 576 pixels
Frame rate : 25.000 fps
Standard : PAL
Scan type : Progressive
Color primaries : SMPTE 170M
Transfer characteristics : SMPTE 170M ???
Matrix coefficients : SMPTE 170M ???
So progressive frames are in that stream and Looks more like the result of a bad deinterlace means bad, wrong soft flags in the stream? And the stream is actually 25p?
Pat357
18th November 2011, 20:58
Madshi,
On certain files I have a lot of dropped frames. Because I have fast hardware (core i7 -970 with GTX-570, W7 SP1), I assumed it is not a performance issue.
The drops also happen if a switch all scaling to bilinear + lower quality settings. I started logging and this messages were often repeated in the log :
00092845
00161358 Render drop frame 9246, no free vsync slot, plannedVSync: 4121
00161358 Render drop frame 9247, no free vsync slot, plannedVSync: 4122
00167112 VSync drop frame 9570, can't delay, plannedVSync: 4448, present vsync: 4467, next frame's vsync: 4449
00167112 Upload drop frame 9578, can't be rendered in time, plannedVSync: 4456, timeLeft: -186891, vsync interval: 16666
00167112 Upload drop frame 9579, can't be rendered in time, plannedVSync: 4457, timeLeft: -170265, vsync interval: 16666
00167112 Upload drop frame 9581, can't be rendered in time, plannedVSync: 4459, timeLeft: -137000, vsync interval: 16666
00167112 Upload drop frame 9583, can't be rendered in time, plannedVSync: 4461, timeLeft: -103738, vsync interval: 16666
00167112 Upload drop frame 9585, can't be rendered in time, plannedVSync: 4463, timeLeft: -70481, vsync interval: 16666
00167112 Upload drop frame 9587, can't be rendered in time, plannedVSync: 4465, timeLeft: -37213, vsync interval: 16666
00167112 Upload drop frame 9589, can't be rendered in time, plannedVSync: 4467, timeLeft: -3946, vsync interval: 16666
00167113 Upload drop frame 9571, no free vsync slot, plannedVSync: 4449
00167113 Upload drop frame 9572, no free vsync slot, plannedVSync: 4450
00167113 Upload drop frame 9573, no free vsync slot, plannedVSync: 4451
00167113 Upload drop frame 9574, no free vsync slot, plannedVSync: 4452
00167113 Upload drop frame 9576, no free vsync slot, plannedVSync: 4454
00167113 Upload drop frame 9575, no free vsync slot, plannedVSync: 4453
00176248 Render drop frame 9598, can't be rendered in time, plannedVSync: 3766, timeLeft: -20821486, vsync interval: 16666
00176249 Render drop frame 9599, can't be rendered in time, plannedVSync: 3767, timeLeft: -20804860, vsync interval: 16666
00176249 Render drop frame 9600, can't be rendered in time, plannedVSync: 3768, timeLeft: -20788236, vsync interval: 16666
00176249 Render drop frame 9601, can't be rendered in time, plannedVSync: 3769, timeLeft: -20771616, vsync interval: 16666
00176249 Render drop frame 9602, can't be rendered in time, plannedVSync: 3770, timeLeft: -20754994, vsync interval: 16666
00176249 Render drop frame 9603, can't be rendered in time, plannedVSync: 3771, timeLeft: -20738364, vsync interval: 16666
00176249 Render drop frame 9605, can't be rendered in time, plannedVSync: 3773, timeLeft: -20705102, vsync interval: 16666
00176249 Render drop frame 9607, can't be rendered in time, plannedVSync: 3775, timeLeft: -20671834, vsync interval: 16666
00176249 Render drop frame 9610, can't be rendered in time, plannedVSync: 3778, timeLeft: -20621902, vsync interval: 16666
00176249 Render drop frame 9612, can't be rendered in time, plannedVSync: 3780, timeLeft: -20588606, vsync interval: 16666
00176249 Render drop frame 9594, no free vsync slot, plannedVSync: 3762
00176249 Render drop frame 9595, no free vsync slot, plannedVSync: 3763
00176249 Render drop frame 9596, no free vsync slot, plannedVSync: 3764
00176249 Render drop frame 9597, no free vsync slot, plannedVSync: 3765
00176249 Render drop frame 9609, no free vsync slot, plannedVSync: 3777
00177763 Render drop frame 9617, no free vsync slot, plannedVSync: 69
00177763 Render drop frame 9618, no free vsync slot, plannedVSync: 70
---------------------------------------------------------------------------------------------------------------------------
00041624 Upload drop frame 2119, can't be rendered in time, plannedVSync: 1936, timeLeft: 17220, vsync interval: 19992
00042140 VSync drop frame 2132, can't delay, plannedVSync: 1960, present vsync: 1961, next frame's vsync: 1961
00042460 VSync drop frame 2146, can't delay, plannedVSync: 1976, present vsync: 1977, next frame's vsync: 1977
00042780 VSync drop frame 2160, can't delay, plannedVSync: 1992, present vsync: 1993, next frame's vsync: 1993
00043100 VSync drop frame 2174, can't delay, plannedVSync: 2008, present vsync: 2009, next frame's vsync: 2009
00043740 VSync drop frame 2202, can't delay, plannedVSync: 2040, present vsync: 2041, next frame's vsync: 2041
00044379 VSync drop frame 2230, can't delay, plannedVSync: 2072, present vsync: 2073, next frame's vsync: 2073
00045019 VSync drop frame 2258, can't delay, plannedVSync: 2104, present vsync: 2105, next frame's vsync: 2105
00045660 VSync drop frame 2286, can't delay, plannedVSync: 2136, present vsync: 2137, next frame's vsync: 2137
00046300 VSync drop frame 2314, can't delay, plannedVSync: 2168, present vsync: 2169, next frame's vsync: 2169
00046620 VSync drop frame 2328, can't delay, plannedVSync: 2184, present vsync: 2185, next frame's vsync: 2185
00046939 VSync drop frame 2342, can't delay, plannedVSync: 2200, present vsync: 2201, next frame's vsync: 2201
00047579 VSync drop frame 2370, can't delay, plannedVSync: 2232, present vsync: 2233, next frame's vsync: 2233
00047667 Render drop frame 2375, can't be rendered in time, plannedVSync: 2237, timeLeft: -7939, vsync interval: 19992
00047680 Upload drop frame 2377, can't be rendered in time, plannedVSync: 2239, timeLeft: 18509, vsync interval: 19992
00047808 Render drop frame 2381, can't be rendered in time, plannedVSync: 2245, timeLeft: 10524, vsync interval: 19992
If you need the complete log, just say the word, but maybe you can already tell in what direction I have to search to resolve this issue.
It seems it most happens in Window mode (Aero on), much less in exclusive mode. Also if interlace is active, it seems to happen more often, but it could also be the content itself.
I can't reproduce it every time, it seems to happen sometimes.
My buffers settings are : decoder=20, GPU=10, backbuffer =10, and they are filled to about max-2/(max-1 or max), just the backbuffer goes to 0 if the frame gets deleted from the queue.
The GPU load < 35 %, CPU load < 5%.
I use Lav-filters to decode, player is MPC-HC and MadVR v0.79.
System : Core i7 6+6 cores @3.6 Mhz / 24 GB RAM @ 1600 Mhz
Win7 x64 including latest updates (auto-update) / Aero ON
NV drivers : latest WHQL
Lav filters 0.39 + MadVR v0.79 with latest MPC-HC
LoRd_MuldeR
18th November 2011, 23:52
:thanks:
Mediainfo reports for that stream:
Codec ID : V_MPEG2
Width : 720 pixels
Height : 576 pixels
Frame rate : 25.000 fps
Standard : PAL
Scan type : Progressive
Color primaries : SMPTE 170M
Transfer characteristics : SMPTE 170M ???
Matrix coefficients : SMPTE 170M ???
So progressive frames are in that stream and means bad, wrong soft flags in the stream? And the stream is actually 25p?
All tools that just look at flags of the stream, without actually analyzing the image content (which includes MediaInfo), only report how the stream was encoded.
But they can't tell you the nature of the content!
Progressive content can be encoded as interlaced, which costs some compression efficiency, but nevertheless often happens in reality. Encoding interlaced content as progressive will "destroy" it.
Having said that, what we see in your case is progressive content. Just "bad quality" progressive content - which, apparently, once was created from an interlaced source.
It's impossible to know, how they managed to screw up the content. And, unfortunately, it's impossible to simply "revert" the process.
As long as we don't have access to the original "interlaced" source, we can only try to "repair" the mess as good as possible. A "normal" bobbing deinterlacer is not the right tool in this case though*.
And, as this looks like some kind of "line doubling" has been applied, my quick&dirty AVS script interpolates a full frame from each field, then blends the two results together.
(*) A dumb "skip field" deinterlacer might work in a way for this case, but would simply discard 1/2 of the lines.
Dextrosan
19th November 2011, 00:05
I have a problem with madVR 0.79 that doesn't happen with 0.78.
As you probably know I use MPC-HC fullscreen refresh rate changer and it has always worked.
But with 0.79, when I play a 24fps movie my LCD starts as 60Hz, then I go fullscreen and the LCD changes to 24Hz but it shows the MPC seek bar kinda out of place, I hear the audio of the movie but no image. I pause and unpause, then I can see the movie, but 2 to 3 seconds later after the movie is already playing, the LCD changes back to 60Hz even though I didn't exit the fullscreen. It should stay at 24Hz.
I go back to 0.78 and all is fine as it has always been.
Did you change anything that could have broke the MPC-HC refresh rate changer?
PS: madVR's refresh rate changer works with 0.79 and mantains the 24HZ throughout the movie. I would like to use your changer, though, if it would allow me to change the rate, only when in going fullscreen.
I have exactly the same problem as you do and I was unable to find any solution to this unfortunately. Anyone else?
nlnl
19th November 2011, 07:34
LoRd_MuldeR
Thank you very much for that very detailed and educational reply!
nevcairiel
19th November 2011, 10:10
Hi madshi,
i've been trying to figure out why my HTPC stopped going into FSE mode, but i couldn't find anything the log regarding a window covering the display or anything like that.
Maybe you can see anything in it?
http://files.1f0.de/madVRnofse.zip
Edit:
Reinstalling MC17 seems to have fixed it for now, but if you still see something in the log, maybe it helps avoid the problem in the future.
pacemaker1000
19th November 2011, 15:00
i just assumed my pc wasnt fast enough do use madvr with 1080 stuf but yesterday i loaded lav video and it works. why is this when i dont have a nvidia card?
also if anyone can help i cant get reclock to work with lav cplitter /audio it gives an error.
can someone give me the right settings for lavfilters and madvr?
cheers
MPC-HTPC
19th November 2011, 15:33
Hi madshi,
first of all: Great work you are doing with madVR!
At least since the latest build 0.79 I am getting very often a black screen when starting a video in MPC-HC. I already tried to play around with the madVR options, but nothing changed the situation.
The sound of the video is audible, but I do not see the picture. If I press CTRL+ALT+DEL the video sometimes appears (sometimes have to press "Switch to" before), but sometimes MPC-HC closes immediately. I prepared a log, where I opened MPC-HC in fullscreen, the picture was black and MPC-HC closed after pressing CTRL+ALT+DEL.
http://www.mediafire.com/?a538o2rial1gxpl
Maybe this log helps and I would be glad if you could find the reason for this behaviour.
fastplayer
19th November 2011, 16:47
madshi, the locking issue is probably related to the UAC issue which I've reported 2 years ago. You tried to fix but it didn't work out. My wild guess is that there's some Win32 API call that stops all drawing operation (freezing the desktop momentarily) when the screen dims during a UAC prompt or locking resp. unlocking the desktop. madVR doesn't like that and can't recover from it: render and backbuffer queues deplete to zero while the decoder and upload queues stay filled.
The UAC issue can be "solved" by either disabling UAC or setting it to "Notify me only when programs try to make changes to my computer (do not dim my desktop)".
Fixed in 0.79 after 2.5 years :D
:thanks:
Audioboxer
20th November 2011, 00:21
I'm a little new to this so please don't bite :P
When using fullscreen exclusive mode with PotPlayer I can't seem to get the seek bar to show. I have it enabled.
The only thing that will appear upon mouse movement is the potplayer controls which takes the player back into windowed mode.
Thanks!
Portioli
20th November 2011, 02:39
a couple of questions to all,
Does dxva2 de-interlace work with VC1 1080i50?
Which are optimal settings in CCC? (auto-deinterlace [on] / pulldown detection [on] all other video options disabled?)
minimum hw requirements for ATI cards (from you experience?)
jmone
20th November 2011, 03:13
Does dxva2 de-interlace work with VC1 1080i50?
Yes, I have no issue with playing back these files. FYI the issue is in the decoding (eg libav can not currenty do it) which is before the deinterlacing.
I'll leve the other Q to ATI users.
noee
20th November 2011, 03:29
Which are optimal settings in CCC? (auto-deinterlace [on] / pulldown detection [on] all other video options disabled?)
Well, I can tell you what my CCC is set for on the HD6570:
Everything is off, *except*:
Dynamic Range (Limited)
Automatic deinterlace
Pulldown..
Enforce Smooth...
Apply current video settings to Internet video
In madVR, I just set the queues back to "managed". For deinterlacing to work, I have to make sure my CPU is running 1100Mhz (all four cores) for SD and 2300Mhz for HD. For progressive material (23.976) it runs at 700Mhz for SD and 1700Mhz for HD. Using an Athlon II X4 (and K10Stat).
The lowest end ATI card I have is an HD2600XT, which I haven't tested yet for deinterlacing.
mr.duck
20th November 2011, 04:47
Which are optimal settings in CCC? (auto-deinterlace [on] / pulldown detection [on] all other video options disabled?)
Turn everything off pretty much. Especially the 'enhancements'. Don't force anything.
It's been quite a while since I last saw the CCC. I install only the bare drivers and worked out how to tweak settings (all enhancements off, adjust the saturation down) via the registry. It's very stable, it stops me going into CCC and mucking it up by tweaking the settings too much.
dansrfe
20th November 2011, 04:56
How do you change it in the registry? I wish someone could make a barebones tool to change the CCC settings. Like an alternative to CCC.
mr.duck
20th November 2011, 05:20
How do you change it in the registry? I wish someone could make a barebones tool to change the CCC settings. Like an alternative to CCC.
Yep the CCC should be a standalone portable program ~2MB in size.
Anyway, I recorded my findings and progress HERE (http://forums.amd.com/game/messageview.cfm?catid=279&threadid=147270).
ryrynz
20th November 2011, 07:50
You guys might wanna give ATi Tray Tools a shot.
http://www.atitraytools.tk/
hoborg
20th November 2011, 08:35
BTW, ATI tray Tools gives me BSOD on my Win7 x64 + Radeon 6750.
rahzel
20th November 2011, 10:03
Turn everything off pretty much. Especially the 'enhancements'. Don't force anything.
It's been quite a while since I last saw the CCC. I install only the bare drivers and worked out how to tweak settings (all enhancements off, adjust the saturation down) via the registry. It's very stable, it stops me going into CCC and mucking it up by tweaking the settings too much.
I believe madVR ignores all the CCC enhancements anyway. But now with DXVA deinterlacing, I believe madshi actually recommends that you enable automatic deinterlacing/pulldown detection (correct me if I'm wrong).
But yeah, you generally want to disable all the settings in the Video section of AMD Vision Center (or whatever it's called).
Qaq
20th November 2011, 11:06
DXVAChecker is good tool to double check (and edit) CCC settings. For advanced users only!
I prefer to keep deinterlacing in VA. This way, if I see some judder I understand that I forgot to change EVR CP to EVR (I can't get HW decoding and deinterlacing with my 5450 and madVR). Otherwise it will be EVR CP with some ugly but easyest deinterlacing method.
Thunderbolt8
20th November 2011, 11:26
can you actually make more changes with the dxva checker you othewise cant do in ccc? e.g. enabling stuff which is otherwise unsupported by dvxa (like interlaced vc-1 support)?
nevcairiel
20th November 2011, 12:22
Interlaced VC-1 is supported just fine by DXVA, its just MPC-HC and ffdshows DXVA codecs that dont support it.
Thunderbolt8
20th November 2011, 14:45
so how could I get interlaced vc-1 stuff to play if ffdshow and mpc-hc dont support it (excluding products like tmt or powerddvd)?
pankov
20th November 2011, 14:55
:)
very simple - use the Microsoft decoder provided with your OS
;)
Thunderbolt8
20th November 2011, 14:57
which one do you mean? the wmvvideo decoder dmo? or another one?
italospain
20th November 2011, 14:59
I am forced to use the Intel IGED Drivers to add a custom Interlaced Resolution for my TV.
madVR works with the Intel GMA Drivers but refuses to work with the IGED Drivers.
One thing i noticed that my custom Resolution is reported as 25 Hz Interlaced with the IGED Drivers but under the GMA Drivers interlaced resolutions are reported as 50 Hz Interlaced.
D3D games working fine.
Is this a bug in madVR ?
Is there hope you can fix it ? (I cant live without madVR )
thanks
update
I was able to get it to work with a opengl wrapper but only with the internal Display. So the question remains does madVR interpret 25 Hz Interlaced (madVR doesnt work) same as 50 Hz Interlaced (madVR works)?
pankov
20th November 2011, 15:02
which one do you mean? the wmvvideo decoder dmo? or another one?
you guessed right - WMVideo Decoder DMO
Qaq
20th November 2011, 15:16
you guessed right - WMVideo Decoder DMO
No DXVA support for ATI cards, AFAIK (a pin is missed or something).
nevcairiel
20th November 2011, 15:35
No DXVA support for ATI cards, AFAIK (a pin is missed or something).
It supports DXVA just fine, but only in WMP
pankov
20th November 2011, 16:04
I'm pretty sure I've read somewhere that there was a registry option that can turn on the acceleration in normal DirectShow applications too.
Sorry but I don't remember it exactly but it's either in this thread or in one of the LAV Filters/CUVID ones.
Portioli
20th November 2011, 16:04
:)
very simple - use the Microsoft decoder provided with your OS
;)
Unfortunately not.
I was asking about 1080i with vc1.
Ms decoder supports only weave that means no deinterlace.
Till now only cyberlink can (sw) deinterlace vc1 - no support of mpc or ffdshow.
I was asking if madvr decoder & dxva can also support proper vc1 1080i.
pankov
20th November 2011, 16:08
can you point me to a test clip so I can test locally.
I'm pretty sure the MS decoder works but I could be wrong because I've been using LAV CUVID for a long time now.
e-t172
20th November 2011, 16:16
I have some questions about RGB24 input:
- Is madVR able to detect automatically (i.e. from the actual content) whether the RGB input is full range (0-255) or limited range (16-235)?
- What's the exact processing chain with RGB input compared to YUV input? I expect some processing steps to be bypassed, but which ones exactly?
I know this was discussed a while ago, but I don't remember the conclusions. Considering madVR's behavior with RGB changed between versions, I must say I'm a little confused right now.
madshi
20th November 2011, 18:17
2.7 dual core cpu and current ati 4650 and i can run MadVR for everything other than 1080 stuff
will a new nvidia card enable me to do 1080 if i enable Cuvid?
What's the problem with the current PC? Is the CPU too slow for software decoding? Even with CoreAVC or DiAVC?
I was wondering if there is way around a little problem I'm having. Actually it's more of an annoyance than a real problem, but it drives me mad nonetheless.
Every time I start a player, the first file I'm playing gives me correct screen refresh rate (usually ~48Hz, but incorrect composition rate (60 and sometimes 30Hz).
Hmmmm... Does that also happen if you change the refresh rate to the correct rate before loading the video file?
I installed the Intel decoder, and now the clip works fine with madVR doing the decoding.
I noticed that next to the VC-1 checkbox in madVR settings, I can choose either libav or Intel decoder. I actually still have it on libav, but the interlaced VC-1 clip still decodes properly.
Is madVR using libav for non-interlaced VC-1, and automatically choosing Intel decoder for interlaced VC-1?
madVR automatically switches to Intel for interlaced VC-1 content (if the Intel decoder dll is available). In the same way madVR also automatically switches to libav, if you playback a 10bit h264 file, while having "Intel" selected in the madVR settings dialog. You can use Ctrl+J to check which decoder madVR currently uses.
If I play a clip in exclusive mode on monitor 1 then everything is "frozen" on monitor 2. I'm guessing that is normal behavior but just wanted to confirm since if the reverse happens I can use monitor 1 like normal.
I have the same problem but I would not call it "frozen" but rather the application on monitor 2 can't get the focus.
I can move the windows around but they can't become the active application.
Is that a "new" problem (introduced by a recent madVR version)? Or has it always been this way?
It's rather late at night. I was hoping to get some sleep first.
No problem. I'd still like to see a screenshot comparison from you, though. You're in a better position to do that because you know what you're looking for. If I do a screenshot comparison then I won't know if I see the difference you were talking about or not.
bug report: resuming from sleep, or switching between single-monitor and extended desktop modes (win+p in vista/7) causes madVR to become very choppy.
Is that a new problem with the latest madVR version? And madVR does not recover after a couple of seconds?
I have a problem with madVR 0.79 that doesn't happen with 0.78.
As you probably know I use MPC-HC fullscreen refresh rate changer and it has always worked.
But with 0.79, when I play a 24fps movie my LCD starts as 60Hz, then I go fullscreen and the LCD changes to 24Hz but it shows the MPC seek bar kinda out of place, I hear the audio of the movie but no image. I pause and unpause, then I can see the movie, but 2 to 3 seconds later after the movie is already playing, the LCD changes back to 60Hz even though I didn't exit the fullscreen. It should stay at 24Hz.
I go back to 0.78 and all is fine as it has always been.
Did you change anything that could have broke the MPC-HC refresh rate changer?
PS: madVR's refresh rate changer works with 0.79 and mantains the 24HZ throughout the movie. I would like to use your changer, though, if it would allow me to change the rate, only when in going fullscreen.
Hmmmmm... That's weird. Can I have a log file that shows the problematic situation?
http://www.sendspace.com/file/w5r27b
The log file says:
00012657 Render fullscreen windowed mode, covered by some windows
00012658 Render madVR window [madVR] "madVR" {0,0,1920,1200}
00012659 Render covered by explorer.exe window [EdgeUiInputWndClass] {0,1185,15,1200}
00012661 Render covered by explorer.exe window [EdgeUiInputWndClass] {0,100,1,1100}
00012662 Render covered by explorer.exe window [ImmersiveLauncher] "Start menu" {0,0,1920,1200}
00012663 Render covered by explorer.exe window [Snapped Desktop] "Desktop" {0,0,1920,1200}
Not sure what all those explorer windows are, but they seem to cover the madVR rendering window. That's the reason why madVR doesn't switch to exclusive mode.
Does the bug also affect the other thing with having to enable the "limit rendering times to avoid glitches" or is it only related to the frame drops?
It's only related to the frame drops.
madshi, this version is working really well with JR's MC 17 Videoclock as madvr reports anticipated dropped/repeated frames swinging around by many hours or even days. Since the audio is slaved to madvr would it be worth reporting it as infinity or "slaved" in the OSD?
I don't think that's a good idea. What happens if Videoclock stops working correctly? In that situation the madVR report might show that something is wrong. I believe it's better that madVR measures these things and reports them truthfully, regardless of whether Videoclock is turned on or not.
With this update, now my queues do not fill-up, thus I drop frames (unless I drop the scaling Algorithm to something low, like Bilinear.) I went back and forth between .78 and .79 multiple times and am confident that I can only get .78 to work.
What happens if you set both queues to 8 in the madVR settings? Does that make 0.79 behave like 0.78 for you?
Method1: Cuda deinterlace
http://desmond.imageshack.us/Himg706/scaled.php?server=706&filename=alancudadeint.png&res=galhttp://img706.imageshack.us/img706/9914/alancudadeint.png
Method2: madVR DXVA2 deinterlace
http://desmond.imageshack.us/Himg257/scaled.php?server=257&filename=alandxva2deint.png&res=galhttp://img257.imageshack.us/img257/9969/alandxva2deint.png
I did the comparision of single frame by two playback methods. To be honest, the difference is very minor even through I did not capture the exact time frame. Thus the difference could come from the fact that Japanese HDTV contents have very different bit rate distribution among MPEG-2 I / P / B pictures.
I don't see much of a difference. Maybe there is a small one, but that's impossible to judge because it's not an identical frame. Can you post a comparison of the identical frame?
Another strange beast for your zoo :).
http://dl.dropbox.com/u/43376972/PAL%20film%20deinterlacing%20artifacts.mkv
PAL SD movie in .mkv.
If it is DXVA deinterlaced, we have a lot of interlacing artefacts.
And "DXVA deinterlacing off" (plain weaving?) does not help.
Thanks, but this looks like a problem with the source file, nothing even the best deinterlacer could fix.
just to clear things out
"use a separate device for presentation" option give any good on xp64 sp2 or can be safely disabled, because i see it says vista and win7 only ?
Changing this setting has no effect on XP.
and what about "present queue" also on xp64 sp2 ? is it possible to make it > "3" ?
even setting in driver to "4" still limits it to "3"...
Direct3D is limited to 3 backbuffers in XP. Nothing I can do about it.
If I lower the GPU queue to 16 but leave the CPU queue at 32 playback is fine initially with no presentation glitches, but at random it will suddenly start dropping a significant number of frames.
So with Nvidia, at least when running the latest beta drivers, I wouldn't recommend going over 16 at all.
So what final queue sizes did you end up using?
I am forced to use the Intel IGED Drivers to add a custom Interlaced Resolution for my TV.
madVR works with the Intel GMA Drivers but refuses to work with the IGED Drivers.
update
I was able to get it to work with a opengl wrapper but only with the internal Display.
I didn't even know that there are totally different drivers available. madVR has very specific requirements (GPU which has *hardware* support for D3D9 with ShaderModel 3.0). My best guess is that the Intel IGED drivers don't expose hardware support at that level, but I don't really know.
One thing i noticed that my custom Resolution is reported as 25 Hz Interlaced with the IGED Drivers but under the GMA Drivers interlaced resolutions are reported as 50 Hz Interlaced.)
That's the same. Some call is 25i, others 50i. Different names for the same thing. The same situation exists for 30i/60i. That's also the same thing.
On certain files I have a lot of dropped frames. Because I have fast hardware (core i7 -970 with GTX-570, W7 SP1), I assumed it is not a performance issue.
The drops also happen if a switch all scaling to bilinear + lower quality settings.
A full log would help (zipped please).
i've been trying to figure out why my HTPC stopped going into FSE mode, but i couldn't find anything the log regarding a window covering the display or anything like that.
Maybe you can see anything in it?
http://files.1f0.de/madVRnofse.zip
Edit:
Reinstalling MC17 seems to have fixed it for now, but if you still see something in the log, maybe it helps avoid the problem in the future.
Unfortunately the log file only contains the necessary information to analyze exclusive mode failures if you have the debug OSD (Ctrl+J) active.
i just assumed my pc wasnt fast enough do use madvr with 1080 stuf but yesterday i loaded lav video and it works. why is this when i dont have a nvidia card?
You're not even telling us what the problem was before. Too slow CPU? Too slow GPU? Some other problem? Which decoder were you using before? Etc etc...
At least since the latest build 0.79 I am getting very often a black screen when starting a video in MPC-HC. I already tried to play around with the madVR options, but nothing changed the situation.
The sound of the video is audible, but I do not see the picture. If I press CTRL+ALT+DEL the video sometimes appears (sometimes have to press "Switch to" before), but sometimes MPC-HC closes immediately. I prepared a log, where I opened MPC-HC in fullscreen, the picture was black and MPC-HC closed after pressing CTRL+ALT+DEL.
http://www.mediafire.com/?a538o2rial1gxpl
Maybe this log helps and I would be glad if you could find the reason for this behaviour.
It seems that madVR is not able to detect the display refresh rate, for whatever funny reason. Which GPU are you using with which refresh rate? I'd suggest trying to reinstall the GPU drivers.
Fixed in 0.79 after 2.5 years :D
Oooops, not intentionally!
When using fullscreen exclusive mode with PotPlayer I can't seem to get the seek bar to show. I have it enabled.
The only thing that will appear upon mouse movement is the potplayer controls which takes the player back into windowed mode.
How old is your PotPlayer version? Newer builds have support for madVR's OSD interface, which means that you should be able to get PotPlayer's seekbar without madVR having to go back to windowed mode. Maybe you need to tweak your PotPlayer settings a bit? Sorry, I'm not a PotPlayer expert. Maybe someone else can help out?
a couple of questions to all,
Does dxva2 de-interlace work with VC1 1080i50?
DXVA2 deinterlacing does not care what codec the video was encoded in. DXVA2 just gets video frames in NV12 format. So the answer is: Yes.
Which are optimal settings in CCC? (auto-deinterlace [on] / pulldown detection [on] all other video options disabled?)
Yes, but I'd also suggest to enable "Advanced Video -> Dynamic Range" and set it to 16-235. But not all users have this option in their CCC. If not, then don't worry, it's not much of a problem.
minimum hw requirements for ATI cards (from you experience?)
That depends on your needs. If you want to use DXVA2 deinterlacing for 1080i60 content and then scale the result with Lanczos4, then I'd suggest a 6750 or faster. My recommendation is always to pick the fastest GPU you can afford and which fits your thermal requirements. Right now I would recommend to wait for the new 28nm GPUs coming out early next yet, though.
Turn everything off pretty much. Especially the 'enhancements'. Don't force anything.
Set the deinterlacing slider to the highest value, though, and activate IVTC.
Ms decoder supports only weave that means no deinterlace.
You can force madVR to deinterlace by pressing Ctrl+Alt+Shift+D twice.
I was asking if madvr decoder & dxva can also support proper vc1 1080i.
You can use the Intel VC-1 decoder, integrated in madVR. It's quite slow, though, so you'll need a fast CPU.
I have some questions about RGB24 input:
- Is madVR able to detect automatically (i.e. from the actual content) whether the RGB input is full range (0-255) or limited range (16-235)?
Yes. You can double check (and correct, if necessary) by pressing Ctrl+Alt+Shift+I. If you find situations where the auto detection fails, please let me know, and I'll fix it.
What's the exact processing chain with RGB input compared to YUV input? I expect some processing steps to be bypassed, but which ones exactly?
Well, naturally chroma upsampling and YCbCr -> RGB conversion steps are skipped. The remaining processing chain is 100% identical. Gamut correction etc is all working for RGB input, too (if enabled in the madVR settings, of course).
dansrfe
20th November 2011, 19:33
The focus problem has always existed but I think in version 0.7x it was partially fixed to where if madVR was in exclusive mode on the secondary monitor the primary monitor would still be able to gain focus on other windows elements.
Also madshi when I minimize MPC-HC to the try the audio starts to cut and the video has to speed up from the frame that I minimized it at to the position of the audio currently.
italospain
20th November 2011, 19:47
I didn't even know that there are totally different drivers available. madVR has very specific requirements (GPU which has *hardware* support for D3D9 with ShaderModel 3.0). My best guess is that the Intel IGED drivers don't expose hardware support at that level, but I don't really know.
That's the same. Some call is 25i, others 50i. Different names for the same thing. The same situation exists for 30i/60i. That's also the same thing.
yeah thats the same thing but are you shure madVR interprets it correct and treats it the same ?
Because like i said it before it works now with the internal display but not with the external.
In my experience madVR works with 50 Hz interlaced resolution (reported by windows) but crashes with 25 Hz interlaced (reported by windows) resolution.
verfluchtes English , sorry for the bad style.
SoBizarre
20th November 2011, 21:42
I was wondering if there is way around a little problem I'm having. Actually it's more of an annoyance than a real problem, but it drives me mad nonetheless.
Every time I start a player, the first file I'm playing gives me correct screen refresh rate (usually ~48Hz, but incorrect composition rate (60 and sometimes 30Hz).
Hmmmm... Does that also happen if you change the refresh rate to the correct rate before loading the video file?
No, it doesn't. Desktop composition is always equal to screen refresh rate from before loading the first (or should I say - most recent) file, so if I manually switch to correct refresh rate beforehand, composition matches it of course. After that, it stays the same until the change to different refresh rate.
In practice:
I use 48Hz/50Hz custom or 60Hz native refresh rate and I have madVR doing the switching.
Desktop refresh rate is at native 60Hz, I load first file (23.976 fps) and refresh rate is changed to 48Hz but composition stays at 60Hz (just to add more confusion - it sometimes, very rarely, changes to 30 Hz).
Upon opening next file, composition matches the last (most recent - in this case 48Hz) refresh rate, so if I reopen the first file, or open any other file which requires the same refresh rate, I'll have matching composition.
But if second file is, say, 25fps, madVR will switch refresh rate to 50Hz but composition will change to 48Hz regardless (always equals most recent refresh rate). In this case, if the third file is 24fps, refresh rate will be switched to 48Hz, but composition will change to 50Hz (refresh rate for the second file).
Typical scenario (playing order->frame rate->refresh rate->composition)
Desktop=60Hz
1->23.976->48->60 (sometimes 30)
2->23.976->48->48
3->23.976->48->48
4->25.000->50->48
6->24.000->48->50
Most of the time (but not always :rolleyes:), when there is wrong composition, madVR reports some dropped/delayed frames. Usually, 60Hz means roughly equal number of dropped/delayed frames, and 30Hz - some dropped and lots of delayed.
Regardless of the dropped/delayed frames, when composition is reported to be different than screen refresh rate, I could actually swear the video is not perfectly smooth. Although I've been told on another forum that this problem is of "cosmetic nature" only, and given I understand what impact can placebo effect have on our perception, I still open first file twice. :D
Cheers,
SB
Pat357
21st November 2011, 02:26
Madshi,
On certain files I have a lot of dropped frames. Because I have fast hardware (core i7 -970 with GTX-570, W7 SP1), I assumed it is not a performance issue.
The drops also happen if a switch all scaling to bilinear + lower quality settings. I started logging and this messages were often repeated in the log :
00092845
00161358 Render drop frame 9246, no free vsync slot, plannedVSync: 4121
00161358 Render drop frame 9247, no free vsync slot, plannedVSync: 4122
00167112 VSync drop frame 9570, can't delay, plannedVSync: 4448, present vsync: 4467, next frame's vsync: 4449
---------------------------------------------------------------------------------------------------------------------------
00041624 Upload drop frame 2119, can't be rendered in time, plannedVSync: 1936, timeLeft: 17220, vsync interval: 19992
00042140 VSync drop frame 2132, can't delay, plannedVSync: 1960, present vsync: 1961, next frame's vsync: 1961
00042460 VSync drop frame 2146, can't delay, plannedVSync: 1976, present vsync: 1977, next frame's vsync: 1977
00042780 VSync drop frame 2160, can't delay, plannedVSync: 1992, present vsync: 1993, next frame's vsync: 1993
00043100 VSync drop frame 2174, can't delay, plannedVSync: 2008, present vsync: 2009, next frame's vsync: 2009
00043740 VSync drop frame 2202, can't delay, plannedVSync: 2040, present vsync: 2041, next frame's vsync: 2041
00044379 VSync drop frame 2230, can't delay, plannedVSync: 2072, present vsync: 2073, next frame's vsync: 2073
If you need the complete log, just say the word, but maybe you can already tell in what direction I have to search to resolve this issue.
It seems it most happens in Window mode (Aero on), much less in exclusive mode. Also if interlace is active, it seems to happen more often, but it could also be the content itself.
I can't reproduce it every time, it seems to happen sometimes.
My buffers settings are : decoder=20, GPU=10, backbuffer =10, and they are filled to about max-2/(max-1 or max), just the backbuffer goes to 0 if the frame gets deleted from the queue.
The GPU load < 35 %, CPU load < 5%.
I use Lav-filters to decode, player is MPC-HC and MadVR v0.79.
System : Core i7 970 (6+6 cores) @3.6 Mhz / 24 GB RAM @ 1600 Mhz
Win7 x64 including latest updates (auto-update) / Aero ON
NV GTX-570 , NV drivers : latest WHQL
Lav filters 0.39 + MadVR v0.79 with latest MPC-HC
This time with full log-file :
Window mode : file plays OK, no dropped frames,
FSE mode : lots of "no vsync slot available"
http://www.mediafire.com/?bpqngkkoqt4ak2q
bjd
21st November 2011, 13:21
Ouch, this is bad. madVR has a very complicated logic in it which reads the current VSync scanline from the GPU once per millisecond. Then it looks at all the collected scanline data and tries to do some very clever math to calculate the exact refresh rate. It seems that in your case the scanline data sometimes allows different interpretations (50Hz and 75Hz). I've never heard of such a problem before. This will be hard to fix. Does this occur in windowed and/or fullscreen exclusive mode?
Madshi, thanks for the info. I have spent the last week working on this and managed to resolve by using Powerstrip. Clearly there is some stability issue with using a NVidia custom resolution in my system (I am guessing driver). However even though my TV only supports 50 & 60hz, i can actually lock it at 47.952 (or as near as i can in Powerstrip) which works better for 23.976 material. On another note even though my GT430 runs at about 20-30% load according to GPU-Z when upscaling using spline at 4 taps, i get the odd glitch where as 3 taps causes none so is my preferred scaler. Also with 2gb of GPU ram, madvr defaults to a 28 frame queue/1024mb RAM use which seems a bit OTT, so i have manually set to 16 which means about 716mb in use from memory.
Bottom line, I now have perfect playback and a stable refresh with smooth playback.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.