[RESOLVED] DGSource or DirectShow with FieldDeinterlace()

Support for my Avisynth filters
Post Reply
Sharc
Distinguished Member
Distinguished Member
Posts: 175
Joined: Thu Sep 23, 2010 1:53 pm

[RESOLVED] DGSource or DirectShow with FieldDeinterlace()

Post by Sharc » Mon Dec 26, 2016 5:05 am

With DirectShow as source filter the combing detection parameters of the decomb filter (like full=true/false, threshold=xxx) work as expected: Show=true indicates "Clean Frames" and "Combed Frames", and only the combed frames are getting deinterlaced according with the dthreshold parameter.
With DGSource as source filter the combing detection seems to be disabled: Show=true indicates "Deinterlacing all frames", and only the dthreshold=xxx seems to be effective.

Why is this different? Do I miss something?

Thanks, and Happy Holidays!

admin
Site Admin
Posts: 3102
Joined: Thu Sep 09, 2010 3:08 pm

Re: DGSource or DirectShow with FieldDeinterlace()

Post by admin » Mon Dec 26, 2016 6:25 am

Hi Sharc. That sounds strange. I'll look into it today. Any chance you could give me a source file and your full script that produces the unexpected result? The only thing that comes to mind is that FieldDeinterlace() is erroneously seeing hinting that DGSource() of course does not produce.

BTW, the world rapid chess championship starts in half an hour. Magnus Carlsen and other super GMs will be playing. Don't miss it!

https://chess24.com/en/watch/live-tourn ... 2016/1/1/1

admin
Site Admin
Posts: 3102
Joined: Thu Sep 09, 2010 3:08 pm

Re: DGSource or DirectShow with FieldDeinterlace()

Post by admin » Mon Dec 26, 2016 8:11 am

I reproduced the issue. Investigating...

admin
Site Admin
Posts: 3102
Joined: Thu Sep 09, 2010 3:08 pm

Re: DGSource or DirectShow with FieldDeinterlace()

Post by admin » Mon Dec 26, 2016 9:39 am

Please re-download DGDecNV 2052 and update DGDecodeNV.dll.

I thought I wasn't generating hints but in fact DGDecodeNV was hinting in a half-assed sort of way. :oops:

The problem is that the Telecide hints that FieldDeinterlace was designed for denote whether the frame is actually combed or not. But DGDecodeNV passed along only the stream's progressive_frame flag (so does DGDecode but I am not maintaining that any more), which is not always correct. So the two filters had different expectations. I have decided to remove hinting from DGDecodeNV. Probably the only issue might be people that use ColorMatrix() and expect it to be automatic based on hints. Too bad, so sad, the info is still available in the DGI file. If anybody complains I may try to do something more intelligent, but that may be difficult without modifying all the existing hint clients. In any case, hinting was a kludge in the first place, and it needs to die.

DirectShowSource() worked because it does not generate hints, of course.

Sharc
Distinguished Member
Distinguished Member
Posts: 175
Joined: Thu Sep 23, 2010 1:53 pm

Re: [RESOLVED] DGSource or DirectShow with FieldDeinterlace()

Post by Sharc » Mon Dec 26, 2016 11:51 am

Hi Donald
You are fast! Nice to see that you had already fixed it when I returned to the PC. I tried and it works ok now. :D

admin
Site Admin
Posts: 3102
Joined: Thu Sep 09, 2010 3:08 pm

Re: [RESOLVED] DGSource or DirectShow with FieldDeinterlace()

Post by admin » Mon Dec 26, 2016 11:53 am

Great, thanks for your report and testing.

Post Reply