VirtualDub de-interlace filter choices?
There are a few de-interlacing filters in my version of V-Dub, which I'm pretty sure is the one from Lordsmurf, with extra filters pre-loaded. I was admonished (rightfully so) for using VLC to de-interlace.. (Cheap, Lazy, terrible results!) My footage of Railroad and Steam engine action could be considered as fast action/sports-like, with rapid movement of smoke, as well as some panning of camera at the time of filming these events, so which filter is best? Plus I'm learning how to properly apply Masking in VirtualDub at the same time. Can I Apply both de-interlacing AND Resize filters at same time, to reduce Workflow time?
|
Use the builtin VDub yadif deinterlacer. It's not nearly as clean as QTGMC.
Never resize interlaced or telecined video. Not ever. Period. Deinterlace first. Re-interlace later. Why are you deinterlacing? Nothing deinterlaces without a cost, and yadif can cause aliasing especially with animation and titles. You should deinterlace only if a video requires it for certain filters, and usually only for web posting. If you're deinterlacing and removing alternate frames, you're ruining your action videos and camera pans by discarding 50% of your temporal resolution. |
-Yes, de-interlacing for Web viewing, as stated a few days ago by lordsmurf: "is a necessary evil"
- Using the "Resize" filter in VirtualDub only to mask video, again for Web viewing, no actual resizing, Exept for what VirtualDub does during crop/mask process -Currently all my captures are intended for Web viewing for now, might make DVD'S at a later time, for a few of my fellow older friends and family? But making DVD'S is another part I haven't learned to do yet. Quote:
|
Quote:
|
Quote:
|
Yes, you're right. :) Typoed.
|
Quote:
Quote:
|
Yadif can also do 25i -> 50p and keep the temporal resolution. But basic Yadif is not very good quality. Not even with the NNEDI3 predictions in my opinion.
QTGMC on the other hand is *very* slow. I would recommend Avisynth+ or VapourSynth for multithreaded operation with it. And the learning curve to set everything up is pretty steep. Example code for Avisynth with Yadif/NNEDI3: Code:
LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\NNEDI3-0.9.4\nnedi3.dll") |
Or better, for 50p output and decent denoising:
Code:
AssumeTFF() But you'll have a heck of a time talking rockovids into using Avisynth, which is what he needs for those videos. There are plenty of his posted samples that make the case for Avisynth. |
Quote:
|
Have you ever tried to install Avisynth? We could feed you a script to test. You'd not be learning it alone in a vacuum.
The only caveat is you need a not-slow computer. My Skylake build doesn't even sneeze at it, nor at x264 encoding. Post-processing/restoration is why I got it. For VirtualDub, the best is usually Yadif. The others are more special-needs. Animation especially has some considerations. Not sure about trains; there are lots of lines in the videos. When you can see lines, you can see problems with any non-QTGMC method. I should probably explain what every filter in the pre-made package does, and I'll note that on the glossary. Maybe I can start with the deinterlace filters, but it'll be about a month before I get to it. Trying to upgrade and expand this site is no small feat, but one we're committed to in 2017. |
Quote:
|
Rocko, it's true that you're writing a computer program when you code an Avisynth command script, but you're making it more complicated than it sounds. When you click an icon or button in Virtualdub you're running a computer program whose commands are imbedded in the code that runs that icon's functions. It gets more complicated when you run a filter, such as the yadif deinterlacer. In the filter dialog you have to tell yadif a few things by clicking in check boxes and options -- you tell yadif the field priority (Top field first or bottom field first), and tell it whether you want to discard fields (keep the top field, keep the bottom field) or use double frame output by keeping all fields, etc-- which means you're programming that filter. In effect, you're doing some programming whether you realize it or not.
In Avisynth you don't have check boxes, but when you run yadif in Avisynth you have to write out these instructions using some English that Avisynth's yadif plugin understands. Those commands do the same things that VirtualDub's yadif version does. The setup parameters are clearly explained in the documentation for yadif, and the settings are no different than the ones you'd use in Virtualdub. It just looks different because there aren't any check boxes. So if I was running the Avisynth version of yadif I'd have to tell yadif what I want to do. In the case shown below, I tell Avisynth's yadif to use top field first and to keep all fields for double frame rate output. Instead of clicking checkboxes, I use yadifs' prescribed language: Code:
yadif(order=1, mode=1) If you were using QTGMC it can be even more simple than that, because QTGMC is equipped with default presets that you write out by name. Each preset name has been configured to operate in a certain way, and these presets are all defined in the instructions that come with the plugin. It's no different than figuring out which options to turn on or off with a VirtualDub filter. Other than the preset option, the only thing you have to tell QTGMC that isn't "automatic" is the field order -- but that's easy in Avisynth: Code:
AssumeTFF() So to deinterlace a TFF video and do some pretty nifty cleanup and line smoothing and noise reduction, not to mention some hefty motion compensation to make sure your deinterlaced frames are true interpretations of how the fields are related, the actual code is pretty simple: Code:
AssumeTFF() So much for that. Post samples if you have more questions. And BTW, thanks for contributing your videos to the forum. |
Ok, thanks sanlyn for spending all that time, not wasted! Looks like you did talk me into it! I'll try it. Not very happy with current results anyway, by the time I've uploaded some of my "finished" videos to the Railroad website, they look "OK" on a small phone screen, but pretty bad upon zooming in, or viewing on a larger pc monitor. It's time to "unbox" myself out of this "capture corner"!...And really just getting back into the whole thing again, seriously, for the umpteenth time.
|
I'll also be happy to post some encodes and stats with VapourSynth if you provide sample videos for processing.
|
Vapoursynth has one big disadvantage: tons of filters are versions written for Avisynth 2.5 and 2.6, but not for Vapoursynth. I'd say that "normal" Avisynth 2.6 is difficult enough for newcomers without having to hunt down different plugin versions and -- worse -- having no Vapoursynth version available. I have dozens of standby filters no longer on the regular listings that work for Avisynth 2.5 and 2.6, but not Vapoursynth.
I suppose you're aware that Vapoursynth doesn't use Avisynth's simple syntax, but uses the more flexible but complesx and difficult Python programming language. Seems like a lot more for someone new to take on, not to mention the filter limitations and the fact that you don't see Vapoursynth projects in most of the popular forums except the geekiest areas of doom9's development threads. Of courses, some people enjoy difficulty. I spent 18 years in several programming languages for PC's and mainframes, including PL/1 and C++, but stuff like Python got very tiring very quickly. It does the same thing many other languages do, it's just that it's someone else's baby and is stubbornly determined to be different. But to each his own. |
It all depends. For many most of the old Avisynth dll's are obsolete. They don't exist for VS for a reason. Clean slate and all. With VS there's no need to hunt down plugin versions. The most important ones can be found easily and run natively with support for multithreading and high bitdepth if needed.
Be it Avisynth pseudocode or Python for most it's just a matter of copy/paste. And a call to QTGMC is easily done in both. It took close to 15 years for Avisynth to be "popular" outside of doom9. Masses move slowly. |
Quote:
|
Replaced by newer technology I think. For example these interlacing techniques we've been talking about. There are many other plugins/scripts for the task but their userbase is diminishing -> no need to port the old tech.
|
Quote:
|
Site design, images and content © 2002-2024 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2024 Jelsoft Enterprises Ltd.