DGSource or DirectShow with FieldDeinterlace()

Support for my Avisynth filters
Post Reply
DAE avatar
Sharc
Posts: 233
Joined: Thu Sep 23, 2010 1:53 pm

DGSource or DirectShow with FieldDeinterlace()

Post by Sharc »

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!
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: DGSource or DirectShow with FieldDeinterlace()

Post by admin »

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
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: DGSource or DirectShow with FieldDeinterlace()

Post by admin »

I reproduced the issue. Investigating...
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

Re: DGSource or DirectShow with FieldDeinterlace()

Post by admin »

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.
DAE avatar
Sharc
Posts: 233
Joined: Thu Sep 23, 2010 1:53 pm

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

Post by Sharc »

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
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

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

Post by admin »

Great, thanks for your report and testing.
User avatar
admin
Posts: 4551
Joined: Thu Sep 09, 2010 3:08 pm

[RESOLVED] DGSource or DirectShow with FieldDeinterlace()

Post by admin »

Why can't I be approved? So unfair. If you have no confidence in me I can submit my resignation, just ask.
User avatar
DG
Posts: 88
Joined: Thu Dec 31, 2020 9:55 am

[RESOLVED] DGSource or DirectShow with FieldDeinterlace()

Post by DG »

My bad. Congratulations and thank you for all you do for the forum. :bow:
Post Reply