View Full Version : madVR - high quality video renderer (GPU assisted)
FlashGordon
20th August 2011, 22:30
To get around the MPC-HC crash I used GraphStudio to change the filter properties for Dscaler5 IVTC and so far it has worked perfectly with madvr on every DVD that has needed it
6233638
20th August 2011, 23:12
To get around the MPC-HC crash I used GraphStudio to change the filter properties for Dscaler5 IVTC and so far it has worked perfectly with madvr on every DVD that has needed itExcellent, that worked! DVDs are now being reported as 23.976 as expected, though I am still getting a lot of aliasing and madVR is reporting a lot of dropped frames. (but the dropped frames may just be due to the IVTC process)
Update Well video is now being played back at 24p correctly, but chroma resolution is extremely low and blocky using dscaler compared to CUVID/ffdshow. (outputting YV12)
FlashGordon
21st August 2011, 07:41
Hmm, try turning the option 'Do Analog Blanking' off in Dscaler
clancy688
21st August 2011, 15:18
Hi
First I'd like to thank you for your hard work, madshi! I really appreciate it! :)
But there's a question I have... I'm running madVR with PotPlayer and the LAV Filters on a 13,3" notebook. So now I tried connecting it to a 40" Samsung LE40B650 TV (100/120 Hz capable) via HDMI.
In madVR's device settings I added the 1080p24 display mode for the TV. When I'm playing 24p files now the TV switches from 60Hz to 24Hz, so far everything's fine.
But madVR OSD is telling me that the display rate is 24,somethingsmall Hz, but the Composition Rate (what's that btw?) is 60 Hz. Is that normal?
Thx for all answers. :)
Edit: And there are tons of dropped frames... nearly one every second... and it's still stuttering like hell
pirlouy
21st August 2011, 16:20
Try to disable Aero to see if it's better.
clancy688
21st August 2011, 16:42
Nope, didn't work. The "screen composition" is gone from the OSD, but everything else is the same as before.
The video is stuttering terribly, regardless if I'm adjusting the TV to 23/24 Hz via madVR or via the graphics driver.
And with every setting I get tons of dropped frames, with 60 Hz as well.
The funny thing is that the TV has an embedded media player which's able to play even .mkv (but he's unable to play sophisticated h264 profiles, embedded subs and FLAC/DTS). When using the media player, the same 24p files which are stuttering via HDMI are running very, very smooth...
So I guess the problem has to be somewhere between the laptop and the PC...?
dansrfe
21st August 2011, 17:28
In madVR's device settings I added the 1080p24 display mode for the TV. When I'm playing 24p files now the TV switches from 60Hz to 24Hz, so far everything's fine.
But madVR OSD is telling me that the display rate is 24,somethingsmall Hz, but the Composition Rate (what's that btw?) is 60 Hz. Is that normal?
Composition rate is what the desktop will return to upon madVR exiting I think.
@madshi: Awesome job with madVR v0.73. It's working well for me.
madshi
21st August 2011, 19:35
I've also noticed (and reported to Blight) that if I simply let Zoom Player go to the next file in the playlist after reaching the end of the previous the same problem is present (the grey OSD "windowed" shows up and stays visible for ever).
Will be fixed in the next build.
And it turned stuttery again.
The queues were something like this:
decoder: 6-8 - 7-8 /8
upload: 5-8 - 6-8 /8
render: 1-3 - 1-5 /8
present: 0-3 /3
and now its good again:
7-8 /8
6-8 - 7-8 /8
6-8 - 7-8 /8
2-3 /3
So the decoder = CPU is not the problem. The problem seems to be caused by the GPU *sometimes* not being able to render the frames fast enough. The big question is why. Can you try fixing your GPU clocks with a GPU tweak utility? It's possible that your GPU throttles down because it thinks it doesn't need full clock, and then madVR runs into trouble.
Samples for this are not needed. All you need is to have PotPlayer. Alternate SD XviD AVI's with HD x264 MKV's in a playlist.
I don't have an SD XviD AVI at hand. I need a sample.
view->Subresync or crtl+6 in MPC-HC :) It's really usefull to apply little changes to subtitles without using any external apps or converting subtitle format. To see the problem you should run movie with frame rate other than 25.0FPS(default) and load subtitles in format like this one: {2677}{2778}line1
{2816}{2893}line2
BTW. Look at those screens good (http://dl.dropbox.com/u/16282309/MPC-HC/good.png), bad (http://dl.dropbox.com/u/16282309/MPC-HC/bad.png) (timestamps).
I've just loaded an MKV with ASS subtitles and played it in MPC-HC, then I've opened/activated Subresync, but the Subresync window stayed empty. To be honest, I've no clue what Subresync is, how it works, what purpose it has, what madVR has to do with it, or what I'm supposed to do.
As to my other problem with 720p60 x264 files... here is a small sample. and I have also included the debug log for a few minutes of playback with madVR on default settings.
Thanks for the sample and log. But I really need you to answer the questions I asked you. Here they are again:
What does the madVR OSD say? Which queues are where? Dropped/delayed frames? Presentation glitches? No smooth playback even in exclusive mode? You could try turning the scaling algorithms down a bit. E.g. try Bicubic or SoftCubic instead of Lanczos.
Keep up the great work. Your madVR is wonderful. I can watch an entire movie with 0 dropped frames, 0 delayed and 0 glitches up until the the end!
Thx.
Screenshots of the aforementioned banding with 4:4:4 video:
http://www.mediafire.com/?ksr2c70nn74frdr
The madVR only version isn't truly perfect, but there's no detectable /macro/banding, ie. no 30 pixel wide bands - all inaccuracies are limited to 1 pixel streaks here and there.
Ah, I see, thanks.
Why do you doubt it? That is exactly what ReClockHelper.dll (ReClock's DirectShow frame rate detection) does. You can see this happen with Process Explorer in the lower pane (ReClockHelper.dll loads the default decoder and splitter) and Process Monitor (ReClockHelper.dll reads a small part of the file).
It's a bit hard to catch since it only runs for a split-second when you open a video, but it does appear to be building its own graph with the default decoder (by merit) and splitter source filter (if there is an entry under HKEY_CLASSES_ROOT\Media Type\Extensions for the file type).
madVR's merit is very low at 0x200000, so it will never get used by ReClock. This isn't a problem, since currently the madVR decoder can't be used by anything other than madVR...
The DirectShow estimator is instant framerate detection on video open.
The Built-in estimator is the fall-back solution when the DirectShow estimator fails. It is always watching the active graph (I assume), looking for frame-rate changes on things like VFR content or DVDs. It's completely broken with the madVR decoder though (which is a problem that madshi will need to deal with eventually...), but with other decoders it will eventually determine the current framerate.
You seem to know what ReClock does internally. Can you explain in more detail? Why does it create a temporary graph? What kind of information is it extracting from it exactly? Why does ReClock not simply read out the "average time per frame" information from the splitter's output pin? And what exactly is the purpose of Reclock watching for frame-rate changes with VFR content? This is all some sort of mystery to me.
I just realized that the madTestPatternSource generator actually works quite well for this.
Any chance of updating it to output a 10 bit 4:2:0 signal?
Yeah, maybe sometime in the future. Too busy with other stuff right now.
Problem: partially black picture (see http://img842.imageshack.us/img842/2446/madvrrgb32outputfromffd.th.jpg (http://imageshack.us/photo/my-images/842/madvrrgb32outputfromffd.jpg/)).
Conditions: when watching videos with ffdshow and in the Output tab only RGB32 is selected as supported colorspaces. Using MPC-HC 1.5.2.3456, madVR 0.73, ffdshow 3964.
Comments: this is observed with every video & only with madVR selected as renderer (with Haali renderer or VMR9 everything is fine).
This doesn't seem to happen for me. Can anybody else reproduce this?
And for PAL films is "just weaves them together" equivalent to correct IVTC 50i-->25p ?
Yes and no. For correctly encoded movies it is. But there are some bad DVDs out there. For those you'll get combing artifacts. But image quality should be fine for most PAL movie DVDs, I guess.
In the effort of finding out the difference between upscalers, I took a screenshot of a bunch of them on a 720p Hi10P release (as well as one of a 1080p release) using different upscaler settings.
I was surprised to find out that, well, there really isn't a damn difference because apart from nearest neighbour, they all looked the same to the eye (on this particular image, at least).
The difference will be larger the sharper the image is and the more fine texture detail is has.
Is the fact you added you own video decoders to madVR a step towards madVR supporting 3D content?
I do plan to look into 3D, but there's nothing more than that I can say right now. I haven't done one line of programming for 3D yet.
Hmm, I thought that just showed the auto-detected matrix. ;p
Anyway, yeah, the colors are fine when I force the decoding matrix to BT.601.
The autodetection problem will be fixed in the next build.
Bug:
10-bit video (http://www.multiupload.com/C70Z98HGY6) looks weird with madVR's decoders, but works fine with ffdshow.
Thanks, will be fixed in the next build.
I wrote a small utility to parse an ArgyllCMS .ti3 file, average the white point, properly format it, and output the values so that it can be directly copy/pasted to madVR's yCMS window.
Executable can be found here, requires .NET 2.0 or above: http://www.mediafire.com/?ay5ituooueoit9m
Source code: http://www.mediafire.com/?4ozau7fa66nd402
This will come in handy for easily creating .3dluts from profile data. I recommend using Argyll's Curves + Matrix profile type to generate the .ti3. All code in public domain.
Edit 1: The same program as a command line utility for those who dislike GUIs:
Executable: http://www.mediafire.com/?8uk0u1ay9m18c9k
Source code: http://www.mediafire.com/?hkyg6z85kmnp4hp
Usage: TI3Console.exe <path to .ti3 file>
(If you're going to edit the source code, ignore this version - I'll properly outsource the logic into a library used by both programs soon)
Edit 2: Going to extend it to automatically create a .3dlut as well (by generating a yCMS script like madVR does) if anybody thinks this would be useful.
Edit 3: Started work on it already, I'm thinking of making it automatize ArgyllCMS (in addition to yCMS) so all you need to do is plug in your device and hit OK and it will generate a madVR friendly .3dLUT. Thoughts?
Very nice - thanks a lot! :) Could you please post this in the yCMS thread, as well? It really belongs there, and in this thread your post will just be buried with time.
Would it be possible to implement an option like “[ ] delay playback start until subtitle render queue full” or something?
There's no way for me to know the state of the subtitle render queue because it's totally outside of madVR's reach.
spoke too soon, I still get occasional glitches at intervals with "use a separate device for presentation" off. By glitches I mean the video jerk back and forth like Max Headroom. To get glitch free playback, I have to use either exclusive mode or disable Aero. The path to true video never did run smooth :)
Nobody else is reporting this issue, so my best guess is that there's something wrong with your GPU driver installation. I'd suggest reinstalling it, maybe try the latest driver version.
I am lately having a slight "problem" with what I assume to be banding; for example it's sometimes visible in the faces of people (the skin). Is there something that could be done about this?
My chain is LAV Splitter -> LAV CUVID -> MadVR. I am using Softcubic 70, Spline 4 and Spline 4. Makes no difference if I enable or disable dithering in MadVR.
Which GPU brand are you using? NVidia or ATI? If ATI: Make sure you set the output pixel format to "RGB Full". If NVidia: You'll need to create a custom resolution to get rid of the banding.
Not strictly related to madVR, but I'm hoping someone here will have an answer, as it seems related. (people using madVR care about quality)
Has anyone got IVTC working for NTSC DVDs with madVR?
Seems to work just fine here.
In an old changelog for madVR, it was said to detect DVDs as 23.97 if DScaler5 IVTC Mod was being used but it still says 29.97 here, the film is full of combing, stuttering movement, and MPC-HC crashes when trying to bring up the DScaler preferences.
You'll need to configure DScaler correctly. madVR will only change to 23.976 if DScaler is configured to apply IVTC.
But there's a question I have... I'm running madVR with PotPlayer and the LAV Filters on a 13,3" notebook. So now I tried connecting it to a 40" Samsung LE40B650 TV (100/120 Hz capable) via HDMI.
In madVR's device settings I added the 1080p24 display mode for the TV. When I'm playing 24p files now the TV switches from 60Hz to 24Hz, so far everything's fine.
But madVR OSD is telling me that the display rate is 24,somethingsmall Hz, but the Composition Rate (what's that btw?) is 60 Hz. Is that normal?
Thx for all answers. :)
Edit: And there are tons of dropped frames... nearly one every second... and it's still stuttering like hell
Please activate the madVR OSD and check which queues are at which value. That might tell us what the problem is. Also try using fullscreen exclusive mode. Does that make things go smooth?
mzso
21st August 2011, 20:34
So the decoder = CPU is not the problem. The problem seems to be caused by the GPU *sometimes* not being able to render the frames fast enough. The big question is why. Can you try fixing your GPU clocks with a GPU tweak utility? It's possible that your GPU throttles down because it thinks it doesn't need full clock, and then madVR runs into trouble.
Not sure how to do that. But I'll look around. Although I'm not sure what you mean by fixing. That downthrottling thing exists in older cards like my 2600xt too?
Xaurus
21st August 2011, 21:04
Which GPU brand are you using? NVidia or ATI? If ATI: Make sure you set the output pixel format to "RGB Full". If NVidia: You'll need to create a custom resolution to get rid of the banding.
Hi madshi,
Thanks for your reply. I am using a Nvidia 570 GTX.
I know you wrote "if I have ATI set RGB Full" but in any case just FYI, I have set the 570 to output YcBcR444, if I use RGB I am having some trouble with the black levels (everything in my chain is configured for 0-255 including my plasma display).
Also, I am using MPC-HC refresh rate changer (have no luck getting the madvr one to work) with only default resolutions, I will definitely try your suggestion at once!
Xaurus
21st August 2011, 21:13
madshi,
Okay so I created a custom resolution, it made no difference. I took a screenshot of the whole shebang while running on my plasma that I thought I could upload to show you.
But then when I switched from my plasma to my computer monitor, the banding in the screenshot was gone. So it is not a problem with drivers, madvr or any of those things, it's simply something with my plasma.
So I am baffled, but I will continue to investigate.
Thanks anyway, much appreciated.
madshi
21st August 2011, 21:31
Not sure how to do that. But I'll look around. Although I'm not sure what you mean by fixing. That downthrottling thing exists in older cards like my 2600xt too?
By "fixing" I mean that you should try to have that stay at one specific value. Basically try to disable the downthrottling. I've no idea if the 2600xt downthrottles or not.
Okay so I created a custom resolution, it made no difference. I took a screenshot of the whole shebang while running on my plasma that I thought I could upload to show you.
But then when I switched from my plasma to my computer monitor, the banding in the screenshot was gone. So it is not a problem with drivers, madvr or any of those things, it's simply something with my plasma.
So I am baffled, but I will continue to investigate.
It could be a problem with your plasma. Especially older plasmas sometimes do show banding problems. But it could also be a HTPC setup issue. I think the GPU stores settings per monitor. Try going back to RGB output (instead of YCbCr) with the custom resolution.
Xaurus
21st August 2011, 21:49
It could be a problem with your plasma. Especially older plasmas sometimes do show banding problems. But it could also be a HTPC setup issue. I think the GPU stores settings per monitor. Try going back to RGB output (instead of YCbCr) with the custom resolution.
I don't know, the plasma is 1 year old (LG 60PK550) and in general I'm very happy with it.
It seems it was one of the configurations I used for it - I switched back to the THX Cinema mode and the banding got much better (virtually none existent).
I still have a slight problem getting the black levels correct though by calibrating after AVS HD 709 (specifically Black Clipping.mp4 and APL Clipping.mp4).
The max brightness I can have on my plasma is 54 so that the black pixels stay black. So far, so good.
So when I fire up the calibration videos, basically only 19-25 flash. I have tried adjusting the gamma in the Nvidia control panel, and it's no problem getting 17-25 to flash but if so the videos look horribly bright and ugly. I've also tried adding some gamma correction in madvr, and it works a tiny bit better but I am not very satisfied. In any case, this doesn't belong in this thread.
Thanks! :)
madshi
21st August 2011, 21:49
madVR v0.74 released
http://madshi.net/madVR.zip
* fixed: internal decoder showed 10bit video with non-mod-4 width distorted
* fixed: primaries/matrix auto detection eventually failed if ffdshow upscaled
* fixed: MPEG2 internal decoder timestamps didn't work well with DVDs/VOBs
* fixed: ZoomPlayer "Media: Next Track" -> OSD "windowed" stayed forever
* fixed: corruption with ordered chapters, when using internal decoders
* added new interface "IMadVRExclusiveModeControl"
* added new interface "IMadVRSettings"
* added support for h264 files with a 3-byte NAL length
JarrettH
21st August 2011, 21:53
When I create a custom resolution what is the purpose of this?
Am I just setting up 1920x1080 to display at 24hz? Progressive or Interlaced?
I'm pretty sure my display doesn't even support 24hz and I don't want to damage it!
STaRGaZeR
21st August 2011, 21:55
Anyone else having high CPU usage when using madVR? Consistently 10-15% higher when playing than EVR, about 10% constant when paused (0% EVR), specs in sign.
madshi
21st August 2011, 22:00
When I create a custom resolution what is the purpose of this?
One purpose is to create improved timings in order to reduce the number of dropped/repeated frames. But that's not easy to do. The main purpose really is to force the GPU to output untouched RGB. Without custom resolutions, when you use a typical TV "SD" or "HD" resolution, NVidia GPUs like to post-process madVR's carefully rendered video data in a bad way, introducing banding problems etc.
Anyone else having high CPU usage when using madVR? Consistently 10-15% higher when playing than EVR, about 10% constant when paused (0% EVR), specs in sign.
Some people have slightly higher CPU consumption, others do not. I don't really know where it's coming from, but at this point in time optimizing CPU consumption is not my main priority. I might work on that once madVR is feature complete. Not sure what causes the 10% constant CPU consumption, I don't have that here.
SamuriHL
21st August 2011, 22:02
madVR v0.74 released
* added new interface "IMadVRExclusiveModeControl"
* added new interface "IMadVRSettings"
HAHHA. SWEET!!! :) Thanks, madshi!!
pankov
21st August 2011, 22:10
madshi,
thank you very much for the new version and especially the fix for the OSD in ZoomPlayer
:)
JarrettH
21st August 2011, 22:16
When I try to recreate the same thing I am running as a custom it tells me it is a duplicate :devil:
Thanks for the new version :cool:
Err edit, I created one for 59hz which is apparently not a duplicate o_O
clancy688
21st August 2011, 22:16
Please activate the madVR OSD and check which queues are at which value. That might tell us what the problem is. Also try using fullscreen exclusive mode. Does that make things go smooth?
Thanks, fullscreen exclusive did the magic. :)
But here are the OSD messages. Both are taken from the same file after 90 seconds (1080p24 h264 mkv, ~16 Mbit/s).
Fullscreen exclusive disabled:
http://imgf.tw/750798441.JPG
Fullscreen exclusive enabled:
http://imgf.tw/461714055.JPG
--------------------------------------
Something completely unrelated:
My laptop has an Intel HD 3000 (Sandy Bridge) onboard graphics chip and an optional Nvidia GeForce 410M. The latter is normally turned off, but I can enable it manually if I'm running anything which needs more GPU power.
When playing normal files it doesn't matter if the Intel or the Nvidia are doing the work. For example the above mentioned 1080p24 clip is always using ~40-60% CPU, with Intel as well as with Nvidia.
But playing Hi10P is a different story. A 10 Mbit/s 1080p Hi10P file uses ~60-70% CPU under Nvidia and 90-100% CPU (including lags) under Intel.
Why is that so? Does madVR need more resources under Hi10P?
@Stargazer: Yes, CPU load's at 20-30% with EVR and 40-60% with madVR.
STaRGaZeR
21st August 2011, 22:18
Some people have slightly higher CPU consumption, others do not. I don't really know where it's coming from, but at this point in time optimizing CPU consumption is not my main priority. I might work on that once madVR is feature complete. Not sure what causes the 10% constant CPU consumption, I don't have that here.
I wouldn't call eliminating a 10% consumption (on a 4,5GHz Sandy Bridge, to put things in perspective) that shouldn't be there "optimizing" ;)
Also getting abysmal perfomance with v0.73, 1050p60 is unplayable, no matter the filters. Input is RGB32, same resolution as the screen, so no reason for that. v0.63 worked fine. Max rendering times are also 2-3 ms higher than in v0.63. Screenie (http://img822.imageshack.us/img822/6014/terriblemadvr.png).
Thunderbolt8
21st August 2011, 22:18
whats the purpose of those new interfaces, what do they mean?
SamuriHL
21st August 2011, 22:25
whats the purpose of those new interfaces, what do they mean?
They allow players to auto-config madVR on the fly without messing up an end user's config. This will be useful for things like "Red October" in MC16 and other players that want to auto-config madVR programmatically.
jmone
21st August 2011, 22:26
Players like MC16 can programatically configure madVR as needed
EDIT - SamuriHL too quick!
madshi
21st August 2011, 22:36
I wouldn't call eliminating a 10% consumption (on a 4,5GHz Sandy Bridge, to put things in perspective) that shouldn't be there "optimizing" ;)
It's hard for any developer to fix a problem he can't reproduce. My "paused" CPU consumption is 0-1%.
Also getting abysmal perfomance with v0.73, 1050p60 is unplayable, no matter the filters. Input is RGB32, same resolution as the screen, so no reason for that. v0.63 worked fine. Max rendering times are also 2-3 ms higher than in v0.63.
The rendering times are not the problem, according to your screenshot. The frame uploading is. Is the "upload queue" always almost empty, while the decoder queue is almost full? If that's the case then it's definitely the uploading of the RGB frames from System RAM to GPU RAM which is slowing everything down on your PC. Don't ask me why, though, I've never seen this problem before. Usually the problem is either the decoder queue or the render or presentation queue. But I've never seen uploading being so slow yet!
With v0.63, did you also use RGB? What happens if you use YV12 or NV12 with v0.74? Same problem with the upload queue? Or is that faster?
Edit: If v0.63 definitely works much faster with RGB than v0.74 for you, can you please try the versions between v0.63 and v0.74? If I know which exact version introduced the problem, I might be able to fix it quickly.
JarrettH
21st August 2011, 22:59
Ahhh so I've input what my display supprts in madvr and set a custom resolution to 59hz, but I'm wondering why it chose 29hz interlaced when playing back cartoons? Old Disney stuff, Futurama, etc. I'm not saying it's a problem, just why it seems to be tied with animation.
e-t172
21st August 2011, 23:57
Why does ReClock not simply read out the "average time per frame" information from the splitter's output pin?
Because it's often wrong, I guess. It's wrong for badly encoded files and it's wrong when a filter changes the frame rate (e.g. IVTC filter).
And what exactly is the purpose of Reclock watching for frame-rate changes with VFR content? This is all some sort of mystery to me.
ReClock needs to know the actual frame rate of the video in order to make decisions (like, for example, speeding up 23.97 to 24.00). So it needs to be notified if the frame rate changes in VFR content.
ryrynz
22nd August 2011, 00:22
* fixed: MPEG2 internal decoder timestamps didn't work well with DVDs/VOBs
Working nicely here, thanks.
ajp_anton
22nd August 2011, 00:33
Don't know if you missed it because you haven't commented on it, but could you add an option to only use the refresh rate changer in fullscreen mode?
leeperry
22nd August 2011, 01:45
These logs are a bit hard for me to understand because I don't know for sure what you did exactly at which point in time. Can you create one log (only one) where there's stuttering after an Avisynth scripting change? Then please add a description of when exactly what happened. E.g. like this:
0s - playback start
0s - 30s smooth playback
30s - avisynth script change
30s - 32s frozen image
32s - 50s stuttering
50s - 60s smooth playback
60s media player stopped
This way it's much easier for me to understand what's going on in your log. Reading logs is very time consuming. So it's better to have one good log with added information like shown above, instead of a dozen of logs, without additional info.
righty! so here's a log: madVR74_log_AVISYNTH.rar (http://www.mediafire.com/?8cd7z617ik4978v)
there are some FSE/FSW switches coz I needed to see the timeline of PotP to write down the timings...they have no influence on the stuttering as far as I can tell.
0': smooth playback
0'45: change avisynth scripting and heavy stutter
0'56: smooth playback again
1'33: change avisynth scripting and heavy stutter
1'45: smooth playback again
Hope you can fix it, :thanks:
nand chan
22nd August 2011, 01:51
Yeah, maybe sometime in the future. Too busy with other stuff right now.
Sounds good. The problem is just that I can't get a decent sample due to x264's level bug, but I suppose this can wait.
The difference will be larger the sharper the image is and the more fine texture detail is has.
Yeah, I was just interested to see what /actual/ impact it would have on playing something like a common 720p anime, not something like extreme upscaling of a gradient.
Very nice - thanks a lot! :) Could you please post this in the yCMS thread, as well? It really belongs there, and in this thread your post will just be buried with time.
I've created a thread for it (plus added more features)
There's no way for me to know the state of the subtitle render queue because it's totally outside of madVR's reach.
I see. I was just wondering if there was any way to “trick” the subtitle renderer into giving you the first frame and then blocking until it completes, that way you can start playback when it has at least one frame rendered - if subtitles start on the very first video frame, it takes one or two further frames until they start appearing otherwise.
STaRGaZeR
22nd August 2011, 02:43
It's hard for any developer to fix a problem he can't reproduce. My "paused" CPU consumption is 0-1%.
I know, merely stating that "optimization" wasn't the best word in this case :p . Here's mine (http://img651.imageshack.us/img651/180/cpuc.png). The thing is that whatever is causing this paused consumption is probably also there when playing, so when playing the total is whatever it's needed plus this damn 10%. That would explain the extra consumption of madVR against other renderers, here being around 10-15%.
The rendering times are not the problem, according to your screenshot. The frame uploading is. Is the "upload queue" always almost empty, while the decoder queue is almost full? If that's the case then it's definitely the uploading of the RGB frames from System RAM to GPU RAM which is slowing everything down on your PC. Don't ask me why, though, I've never seen this problem before. Usually the problem is either the decoder queue or the render or presentation queue. But I've never seen uploading being so slow yet!
With v0.63, did you also use RGB? What happens if you use YV12 or NV12 with v0.74? Same problem with the upload queue? Or is that faster?
Edit: If v0.63 definitely works much faster with RGB than v0.74 for you, can you please try the versions between v0.63 and v0.74? If I know which exact version introduced the problem, I might be able to fix it quickly.
Well, screw that. It turns out that when going back to 0.63 the problem was still there. So I decided to reinstall the drivers. Guess what? Fixed (http://img804.imageshack.us/img804/7067/driverssuck.png). Always drivers. Always the fucking drivers. YV12 and RGB32 are more or less the same.
JarrettH
22nd August 2011, 05:17
I'm a little confused...is it better to input supported refresh rates in madvr? I say this because the 59hz option in the screen resolution drop-down is actually 59.940 reported by madvr. madvr itself will never use 59.940 when I've tested
rahzel
22nd August 2011, 06:32
In the OSD, I just noticed that there's a stat that says "1 dropped frame every x days". Is that just an estimate based on the refresh rate and video framerate? Mine seems to jump around between 1-12 days. I use ReClock and my refresh rate is 23.97745 as reported by madVR's OSD.
Also, the dropped frame counter in the OSD, does that count video frames or audio frames as well?
ryrynz
22nd August 2011, 07:17
In the OSD, I just noticed that there's a stat that says "1 dropped frame every x days". Is that just an estimate based on the refresh rate and video framerate? Mine seems to jump around between 1-12 days. I use ReClock and my refresh rate is 23.97745 as reported by madVR's OSD
It's an estimate as you guessed.
Also, the dropped frame counter in the OSD, does that count video frames or audio frames as well?
Just video frames, MadVR is not concerned with audio.
nevcairiel
22nd August 2011, 08:09
I see. I was just wondering if there was any way to “trick” the subtitle renderer into giving you the first frame and then blocking until it completes, that way you can start playback when it has at least one frame rendered - if subtitles start on the very first video frame, it takes one or two further frames until they start appearing otherwise.
What if the first subtitle frame only appears after 30 minutes of playback?
sToN3d
22nd August 2011, 10:06
Anyone else having high CPU usage when using madVR? Consistently 10-15% higher when playing than EVR, about 10% constant when paused (0% EVR), specs in sign.
Yep, I just noticed that I have the same problem (http://ston3d.org/madvr.png).
AFAIR older versions of madVR weren't affected. Does anyone have a mirror with all versions so I can do some further testing ?
My PC specs:
AMD Phenom II X4 965
ATI Radeon HD 5850 2 GB
4 GB RAM
clancy688
22nd August 2011, 10:34
Please activate the madVR OSD and check which queues are at which value. That might tell us what the problem is. Also try using fullscreen exclusive mode. Does that make things go smooth?
Thanks, fullscreen exclusive did the trick. :)
But here are the OSD messages. Both are taken from the same file after 90 seconds (1080p24 h264 mkv, ~16 Mbit/s).
Fullscreen exclusive disabled:
http://imgf.tw/750798441.JPG
Fullscreen exclusive enabled:
http://imgf.tw/461714055.JPG
--------------------------------------
Something completely unrelated:
My laptop has an Intel HD 3000 (Sandy Bridge) onboard graphics chip and an optional Nvidia GeForce 410M. The latter is normally turned off, but I can enable it manually if I'm running anything which needs more GPU power.
When playing normal files it doesn't matter if the Intel or the Nvidia are doing the work. For example the above mentioned 1080p24 clip is always using ~40-60% CPU, with Intel as well as with Nvidia.
But playing Hi10P is a different story. A 10 Mbit/s 1080p Hi10P file uses ~60-70% CPU under Nvidia and 90-100% CPU (including lags) under Intel.
Why is that so? Does madVR need more resources under Hi10P?
Anyone else having high CPU usage when using madVR? Consistently 10-15% higher when playing than EVR, about 10% constant when paused (0% EVR), specs in sign.
Yes, CPU load's at 20-30% with EVR and 40-60% with madVR.
toniash
22nd August 2011, 11:04
AFAIR older versions of madVR weren't affected. Does anyone have a mirror with all versions so I can do some further testing ?
http://www.videohelp.com/tools/madVR/old-versions#download
vivan
22nd August 2011, 11:52
I have (similar?) problem (http://firepic.org/images/2011-08/b1nfcj8o52ahlgrj0ix6pa5yk.png) with 60p playback. Log (http://www.mediafire.com/?htawahpb53txt8w).
i7 970 / ati 5870. Just updated Catalyst - nothing changed. With v0.63 problem also occurs.
So... what should I do?
UPD: but if I output RGB32 (with YV12, NV12, YUY2 and UYVY problem still occurs) from ffdshow everything is almost perfect (http://firepic.org/images/2011-08/6d1juxbd9nkw9akcg3epscsct.png) even in fullscreen. But this is not the best solution, right?
I don't know is this information usefull or not, but there was benchmark from SVPteam and by results of this benchmark ATI GPUs have 4-5 slower "system -> GPU transfer" than nVidia GPUs...
BTW, my CPU load in "paused" state is about 0.6%.
clancy688,
you should use software like fraps to capture screen in exclusive mode.
mzso
22nd August 2011, 12:09
Fullscreen exclusive enabled:
http://imgf.tw/461714055.JPG
The screenshot shows windowed mode...
sToN3d
22nd August 2011, 12:50
http://www.videohelp.com/tools/madVR/old-versions#download
Thanks.
It looks like the new rendering path from v0.50 seems to be responsible for the increased CPU load on my system:
Renderer: CPU load when paused:
madVR
v0.49 ~1-2%
v0.50 (old path) ~1-2%
v0.50 (new path) ~6-7%
v0.74 ~6-7%
EVR ~1%
EVR CP ~5%
Wile-E-Coyote
22nd August 2011, 12:50
Hi Madshi. I did some more tinkering with interlaced content following this post (http://forum.doom9.org/showthread.php?p=1515536#post1515536).
Long story short I'm using ffdshow (for all my videos, not just DVDs), deinterlacing activated with Yadif and "double framerate" checked.
Judging by the fluid video and by what reclock says :
http://petiflo.free.fr/images/reclock_screenshot_2.png
madVR is receiving 50fps. The thing I don't understand is madVR's OSD says the video is 25.000 fps. Note that even when watching a DVD with PAL speeddown activated in reclock, madVR's OSD sees 25.000 fps (when it should see 24).
I'd love to show you screenies of the OSD but I'm still struggling to find a way to save images in MPC-HC when not using VMR.
clancy688
22nd August 2011, 13:04
The screenshot shows windowed mode...
To make the screenshot I paused the file and changed into windowed mode, then used the Snipping Tool. Since nothing changed except the "windowed mode" line I thought that would be no problem.
THEAST
22nd August 2011, 13:19
* fixed: primaries/matrix auto detection eventually failed if ffdshow upscaled
Thank you, that was a really quick fix! :thanks:
Razoola
22nd August 2011, 14:59
I do plan to look into 3D, but there's nothing more than that I can say right now. I haven't done one line of programming for 3D yet.
Nice, when and if that time comes I do have nvidia 3D vision so I will gladly do testing for you.
Raz
nlnl
22nd August 2011, 15:07
madshi
Thanks for the new madvr. Everything is fine here.
Do you have any plans for IVTC (1080(480)i/59 --> p/23) and hardware deinterlacing for pure video content?
@all
Please help me, where I can download that esoteric DScaler IVTC Mod? Can not google it :(
6233638
22nd August 2011, 15:18
Seems to work just fine here.
You'll need to configure DScaler correctly. madVR will only change to 23.976 if DScaler is configured to apply IVTC.I seem to have DScaler configured correctly now (thanks to Graphstudio - the configuration box crashes current builds of MPC-HC) and it is showing 23.976 correctly with DVDs now.
However, chroma is a mess, and I'm not convinced that it's being deinterlaced properly either. (it is a film so weave should be correct)
DScaler:
http://i.imgur.com/H5aF3.png
CUVID:
http://i.imgur.com/mpWWr.png
ffdshow:
http://i.imgur.com/gipBk.png
Is there any chance of having madVR's internal decoder perform IVTC for NTSC DVDs? It seems like it shouldn't be that difficult to force weave deinterlacing and discard unnecessary frames.
when I switched from my plasma to my computer monitor, the banding in the screenshot was gone. So it is not a problem with drivers, madvr or any of those things, it's simply something with my plasma.Plasmas are not capable of displaying smooth gradation without adding a significant amount of dithering to the image. (and even then, they tend to show banding with motion) It's a fundamental issue with the technology and why I refuse to own one. Even bought a Kuro (two actually, first gen and then a KRP500M) because people said they didn't do it - they must have been blind or in denial.
@all
Please help me, where I can download that esoteric DScaler IVTC Mod? Can not google it :(http://www.filedropper.com/dscalerivtc
mzso
22nd August 2011, 15:25
Plasmas are not capable of displaying smooth gradation without adding a significant amount of dithering to the image. (and even then, they tend to show banding with motion) It's a fundamental issue with the technology and why I refuse to own one. Even bought a Kuro (two actually, first gen and then a KRP500M) because people said they didn't do it - they must have been blind or in denial.
http://www.filedropper.com/dscalerivtc
I never heard about this? Why wouldn't they capable? They just excite phosphors as crt-s do.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.