View Issue Details

IDProjectCategoryView StatusLast Update
0000316madVRbugpublic2015-06-15 23:22
Reporter6233638 Assigned Tomadshi  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionno change required 
Platformx64OSWindows 8.1 ProOS Version6.3 (Build 9600)
Summary0000316: Inconsistent deinterlacing performance in full-screen modes
DescriptionThis is a strange one:
 
When deinterlacing is active - specifically when playing 50 FPS (video) DVD content - I am seeing very inconsistent performance across madVR's various output modes.
 
DX11 FSW or FSE: the upload/deinterlace/render queues drop to 8-24/24, and the present queue drops to 0 or 1.
DX9 FSE: same problem.

DX9 Old Path: all queues except the backbuffer stay full.
Every so often the backbuffer queue briefly drops from 7-8/8 to 0-8/8, causing dropped and repeated frames.

DX9 FSW and Overlay are unaffected. Full or nearly-full queues all the time.
 
 
Even stranger: DX11 FSW has the queues drop if it is the active window (in a single-monitor setup) but if I alt-tab to bring another window in front of the video, the queues fill up.
If I switch back to the video, the queues drop again.
Additional InformationOccurs with hardware or software decoding
 
This is happening even when using Bilinear scaling, so it shouldn't be a performance issue on my system.
 
Doesn't seem specific to any one player, also tested MPC-HC
 
Tested a handful of builds, though nothing prior to the introduction of the DX11 path yet (as they were on my system, and DX9 also seems to be affected)
TagsNo tags attached.
madVR Version0.88.12
Media Player (with version info)JRiver MC 20.0.115
Splitter (with version info)LAV Splitter 0.65.0
Decoder (with version info)LAV Video 0.65.0
DecodingDXVA2 Copyback
Deinterlacingforced video mode
DXVA2 Scaling Activeno
Aero / Desktop CompositionOn
Problem occurs with modeall modes
GPU ManufacturerNVidia
GPU ModelGTX 570
GPU Driver Version353.06 WHQL

Activities

madshi

2015-06-15 14:38

administrator   ~0001085

Which is the first queue (from top to bottom) which gets into trouble? That's the likely bottleneck. What happens if you use software decoding?

6233638

2015-06-15 15:23

reporter  

madVR - log.rar (3,613,392 bytes)

6233638

2015-06-15 15:23

reporter   ~0001087

It all seems to happen at once. It just drops instantly rather than gradually reducing.
 
I've attached a log which shows behavior in DX9 FSW when I hit the ALT key to bring up the menus over the video compared to the video playing full-screen.

madshi

2015-06-15 15:31

administrator   ~0001088

With first" I didn't mean in a temporal sense, I meant literally the first in the OSD list of queues, from top to bottom. E.g. if the decoder queue goes empty, all other queues will follow. That means the decoder queue is at fault. If the decoder stays nicely filled, but the upload queue gets empty, all other queues below that follow. So the upload queue is the bottleneck then.

6233638

2015-06-15 16:26

reporter   ~0001091

It would seem to be, though it's very strange that giving another application focus instead of the madVR window would fix the performance in FSW mode.
 
Not breaking FSE, just giving another application focus when DX11 FSW is active.

madshi

2015-06-15 16:31

administrator   ~0001092

Ehm, which is the first queue going empty? You didn't clearly say that yet... ;-)

6233638

2015-06-15 16:36

reporter  

queues.png (702 bytes)   
queues.png (702 bytes)   

6233638

2015-06-15 16:36

reporter   ~0001094

Last edited: 2015-06-15 16:44

Sorry. The only one which is *empty* is the present queue.

---
 
Not sure how to edit/remove attached files.
 
The "queues.png" file shows the queues in DX11 FSW when madVR is the active window.
"DX11-FSW-Background.png" shows the queues when I have another application in front of the video.

6233638

2015-06-15 16:41

reporter  

DX11-FSW-Background.png (731 bytes)   
DX11-FSW-Background.png (731 bytes)   

madshi

2015-06-15 16:55

administrator   ~0001095

Wow, a monstrous decoder queue... ;-)

I can see from the debug log that about once every second there's 200ms in which nothing happens in the log. This causes the queues to empty which can eventually lead to frame drops. So the big question is why does this happen? And why about once every second in regular intervals? I've found one thing in madVR that is done every second: Namely updating the debug OSD. Does the same problem happen with the debug OSD deactivated? Of course it's hard to judge without seeing the debug OSD! ;-) You could create another log with the debug OSD deactivated. Then I can check the log.

It could be something external, too. Maybe you have some sort of background process running which interferes? Maybe some sort of GPU watcher like GpuZ or something similar? Try closing all 3rd party software, including the browser. Does that help?

6233638

2015-06-15 17:34

reporter   ~0001096

Dammit, it's f.lux (https://justgetflux.com/) causing this - even though it was currently "disabled".
If I put it in "safe mode" or exit the program, suddenly I'm no longer getting these performance drops.
 
There was me thinking I had already disabled anything which could be affecting it.
 
I'm confused as to why DX9 FSW/Overlay seems completely unaffected by this, and the strange behavior where DX11 FSW is only affected when it's in the foreground, but at least I've figured out the cause.

madshi

2015-06-15 20:51

administrator   ~0001097

I've seen reports of f.lux causing such issues already in the past, same with GpuZ etc. So I guess I can close this issue?

6233638

2015-06-15 22:26

reporter   ~0001098

Yes, doesn't seem to be anything wrong on madVR's end.
Strange that it only seemed to manifest when deinterlacing 50 FPS content.

Issue History

Date Modified Username Field Change
2015-06-15 13:03 6233638 New Issue
2015-06-15 14:38 madshi Note Added: 0001085
2015-06-15 14:38 madshi Assigned To => madshi
2015-06-15 14:38 madshi Status new => feedback
2015-06-15 15:23 6233638 File Added: madVR - log.rar
2015-06-15 15:23 6233638 Note Added: 0001087
2015-06-15 15:23 6233638 Status feedback => assigned
2015-06-15 15:31 madshi Note Added: 0001088
2015-06-15 15:31 madshi Status assigned => feedback
2015-06-15 16:26 6233638 Note Added: 0001091
2015-06-15 16:26 6233638 Status feedback => assigned
2015-06-15 16:31 madshi Note Added: 0001092
2015-06-15 16:31 madshi Status assigned => feedback
2015-06-15 16:36 6233638 File Added: queues.png
2015-06-15 16:36 6233638 Note Added: 0001094
2015-06-15 16:36 6233638 Status feedback => assigned
2015-06-15 16:41 6233638 File Added: DX11-FSW-Background.png
2015-06-15 16:42 6233638 Note Edited: 0001094
2015-06-15 16:44 6233638 Note Edited: 0001094
2015-06-15 16:55 madshi Note Added: 0001095
2015-06-15 16:55 madshi Status assigned => feedback
2015-06-15 17:34 6233638 Note Added: 0001096
2015-06-15 17:34 6233638 Status feedback => assigned
2015-06-15 20:51 madshi Note Added: 0001097
2015-06-15 20:51 madshi Status assigned => feedback
2015-06-15 22:26 6233638 Note Added: 0001098
2015-06-15 22:26 6233638 Status feedback => assigned
2015-06-15 23:22 madshi Status assigned => closed
2015-06-15 23:22 madshi Resolution open => no change required