Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Smart deinterlace filters for VirtualDub (Read 24561 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Smart deinterlace filters for VirtualDub

Hi.

The title says it all.

I transcode DV video (720x576, interlaced) to DivX 5.1 with VirtualDub for PC playback, mostly dance rehersals / performances with a lot of movement (see my avatar  ).

So far I know use a filter called "Deinterlace MAP" with default settings. Any advices how to improve (qualtiy improvements preferred, speed improvement at identical quality would be OK too).

Thanks for your answers.

Cheers tigre
Let's suppose that rain washes out a picnic. Who is feeling negative? The rain? Or YOU? What's causing the negative feeling? The rain or your reaction? - Anthony De Mello

Smart deinterlace filters for VirtualDub

Reply #1
afaik the best deinterlace filter is the standard deinterlace that comes with virtualdub with the mode 'blend fields together'...but i would recommend using avisynth as a frameserver.

edit: i just found out that it depends on what dv you have. if you have dv type-2 you just use virtualdub, but if you have dv type-1 avisynth usage is recommend.

Smart deinterlace filters for VirtualDub

Reply #2
Avisynth has more powerful deinterlacing filters, so it's probably a better way to go than using the default virtualdub filter.  Also blending fields in high motion scenes isn't the best way to go.  I usually do it because I'm lazy and don't mind a little ghosting. 

Here's an excellent page on deinterlacing:

http://100fps.com

Basically, it is suggested that you throw away a field to preserve crispness, or even better, convert the fields to frames for a nice 60p (or 50p) video.


Hope this helps,

mobius
Gur svggrfg funyy fheivir lrg gur hasvg znl yvir. Jr zhfg ercrng.

Smart deinterlace filters for VirtualDub

Reply #3
indeed interesting page about deinterlacing...

another method would be if you do not deinterlace at encoding, but at decoding with ffdshow. but i don't know how good divx handles interlaced material.

Smart deinterlace filters for VirtualDub

Reply #4
Quote
but i don't know how good divx handles interlaced material.

Well, Xvid has a switch for interlaced material in the settings. It does cost some bits extra to encode interlaced video, though.

Smart deinterlace filters for VirtualDub

Reply #5
Quote
Quote
but i don't know how good divx handles interlaced material.

Well, Xvid has a switch for interlaced material in the settings. It does cost some bits extra to encode interlaced video, though.

sure xvid has that switch...but tigre is saying that he uses divx 5.1...

Smart deinterlace filters for VirtualDub

Reply #6
DivX can both encode interlaced material, or optionally deinterlace the video during encoding.

So first I'd try encoding with no deinterlace filter and only use the DivX codec to deinterlace (Options | Video | Advanced | Deinterlace All Frames). That should be the fastest option, and you can easily check how the quality compares with what you have now.

I also like Donald Graft's "Smart Deinterlace" filter for VirtualDub. You have a number of choices of what deinterlacing method to use:
http://neuron2.net/smart.html

But for encoding from an interlaced DV source, I'd recommend you try the DivX deinterlace method first.

Smart deinterlace filters for VirtualDub

Reply #7
if you have no special reason for using divx i would xvid give a try. it is faster than divx 5.1 and it's free...and, at least for me, it looks better...

 

Smart deinterlace filters for VirtualDub

Reply #8
Thanks for your answers.

To clarify what I'm talking about here's a picture:
Good page indeed.

Quote
or even better, convert the fields to frames for a nice 60p (or 50p) video.
I have some concerns about how much processing power is needed for playback (I'd like to use 640x480 resolution for DivX), so 50fps could cause trouble on not-so-fast PCs compared to 25fps - or no?

Quote
another method would be if you do not deinterlace at encoding, but at decoding with ffdshow. but i don't know how good divx handles interlaced material.
As I don't want to create the avis at full DV resolution, this doesn't work, does it?

Quote
Well, Xvid has a switch for interlaced material in the settings. It does cost some bits extra to encode interlaced video, though.
What exactly happens if I use this switch - can I resize without trouble? And what kind of deinterlacing is performed on playback?
@Linkin: Using XviD or anything else that gives similar quality at comparable size is OK for me.

Quote
So first I'd try encoding with no deinterlace filter and only use the DivX codec to deinterlace (Options | Video | Advanced | Deinterlace All Frames). That should be the fastest option, and you can easily check how the quality compares with what you have now.
Thanks. I'll do that. I'll have to find out if I can resize too directly. (Good idea to resize after deinterlacing.  )

Quote
I also like Donald Graft's "Smart Deinterlace" filter for VirtualDub. You have a number of choices of what deinterlacing method to use:
http://neuron2.net/smart.html
I have this one already installed, but after having tried ~ 20 different settings success I gave up. Any recommendations?

Quote
if you have no special reason for using divx i would xvid give a try. it is faster than divx 5.1 and it's free...and, at least for me, it looks better...
I'll give it a try. I haven't used it for quite a while. What version do you recommend? The stable avail. at doom9 or some beta/alpha?
Let's suppose that rain washes out a picnic. Who is feeling negative? The rain? Or YOU? What's causing the negative feeling? The rain or your reaction? - Anthony De Mello

Smart deinterlace filters for VirtualDub

Reply #9
Do it as 50/60 Hz but use half height resolution (like 640/320) and resize it to the real aspect ratio on playback.

Smart deinterlace filters for VirtualDub

Reply #10
Quote
Do it as 50/60 Hz but use half height resolution (like 640/320) and resize it to the real aspect ratio on playback.

That sounds like a really good approach. Only question I have: How do I resize it to the real aspect ratio on playback? I mean is there any way to add the "real aspect ratio" information to the file (like a tag) so every player on someone else's PC resizes it automatically?
Let's suppose that rain washes out a picnic. Who is feeling negative? The rain? Or YOU? What's causing the negative feeling? The rain or your reaction? - Anthony De Mello

Smart deinterlace filters for VirtualDub

Reply #11
Quote
Quote
Well, Xvid has a switch for interlaced material in the settings. It does cost some bits extra to encode interlaced video, though.
What exactly happens if I use this switch - can I resize without trouble? And what kind of deinterlacing is performed on playback?

AFAIK it just makes use of the information that the input is interlaced (thus increasing codec efficiency). The video is stored with the interlace stripes, so you have to take care of deinterlacing at playback time (e.g. use ffdshow) or use a device that supports interlaced video (like your TV). Resizing is only possible if it respects the half frame structure, that is it resizes half frames separately

Smart deinterlace filters for VirtualDub

Reply #12
Quote
Do it as 50/60 Hz but use half height resolution (like 640/320) and resize it to the real aspect ratio on playback.

This is good for temporal resolution, but you loose vertical resolution on static scenes (even on interlaced material!).

Smart deinterlace filters for VirtualDub

Reply #13
Ah, deinterlacing, my favourite

There exists many good smart deinterlacing filters, but due to the guesswork involved in the deinterlacing process, some deinterlacers work better with some material than others. You're handling PAL DV material which is relatively easy; true deinterlacing hell starts with poor NTSC-PAL (or vice versa) conversion of interlaced material, and of course material with mixed progressive and interlaced frames.

Whereas the idea of keeping and encoding the material in interlaced format is a good one, it's also the more difficult one. If the video is to be watched with a progressive scan device, such as a computer monitor, it has to be deinterlaced during the decoding process. This just shifts the trouble of deinterlacing to the viewer; if the viewer doesn't have ffdshow or a similar utility, the clip is going to be a pain to watch. Also, a proper setup of displaying interlaced material on TV using a computer's TV-out is very difficult to set up. To my knowledge, it's only possible with Matrox cards.

If you plan to stick with VirtualDub filters, I too recommend Donald Graft's Smart Deinterlacer. For AviSynth Tom Barry's TomsMoComp and Donald Graft's Decomb are excellent choices.

You could compare different deinterlacing algorithms before encoding easily with ffdshow since it can decode DV material directly.

Good luck for your encoding

Smart deinterlace filters for VirtualDub

Reply #14
Quote
I'll give it a try. I haven't used it for quite a while. What version do you recommend? The stable avail. at doom9 or some beta/alpha?

Koepi's alpha builds have always been pretty good, and the current 24.06.2003 build is rock stable. Give it a shot, these binaries come with a tutorial called "Xvid options explained."

Koepi's builds are available at Koepi's New Media Development

Smart deinterlace filters for VirtualDub

Reply #15
Well, for once I can add something useful...

As some people have said before, Avisynth is, in my opinion, the way to go.

It is some sort of VirtualDub without interface, controlled by scripts. It is a "driver" that allows text files with extension .avs to be interpreted as video files by (almost) any video player or editing software. It is said to be faster than VirtualDub, and there are really interesting filters available for it.

I used in the past GreedyHMA, and it did a nice job, without much hassle. Decomb is said to be a miracle maker, but I never was in need for it.

It is quite easy to find information on it: behold the wiki!

Have fun, it is a really interesting tool.

Edit: At trbarry's webpage he says himself that Decomb pretty much supercedes GreedyHMA, and TomsMoComp looks really interesting indeed...

Smart deinterlace filters for VirtualDub

Reply #16
Quote
Whereas the idea of keeping and encoding the material in interlaced format is a good one, it's also the more difficult one. If the video is to be watched with a progressive scan device, such as a computer monitor, it has to be deinterlaced during the decoding process. This just shifts the trouble of deinterlacing to the viewer; if the viewer doesn't have ffdshow or a similar utility, the clip is going to be a pain to watch.

That's a very good point. Probably I will store interlaced full resolution high-bitrate versions for my own use (+ archiving) anyway, but if I want others (non-techies) to watch my clips, this needs to work like "insert CD -> doubleclick on clip.avi -> watch". Besides this I want to resize, so storing interlaced is not an option.

Quote
If you plan to stick with VirtualDub filters, I too recommend Donald Graft's Smart Deinterlacer. For AviSynth Tom Barry's TomsMoComp and Donald Graft's Decomb are excellent choices.
I'd prefer to try if I get satisfying results with Donald Graft's Smart Deinterlacer before starting to work with a to me so far unknown program. There are many options and I'll start searching + trying, but If anyone could point me to some kind of setup guide or could recommend settings for Smart Deinterlacer I'd appreciate it.

Quote
You could compare different deinterlacing algorithms before encoding easily with ffdshow since it can decode DV material directly.
. Good idea. I've just installed ffdshow, but I had already a DV directshow filter installed (don't remember which one), which is still used for DV playback. How can I tell Windows to use ffdshow instead?
Let's suppose that rain washes out a picnic. Who is feeling negative? The rain? Or YOU? What's causing the negative feeling? The rain or your reaction? - Anthony De Mello

Smart deinterlace filters for VirtualDub

Reply #17
Quote
I'd prefer to try if I get satisfying results with Donald Graft's Smart Deinterlacer before starting to work with a to me so far unknown program. There are many options and I'll start searching + trying, but If anyone could point me to some kind of setup guide or could recommend settings for Smart Deinterlacer I'd appreciate it.

I'd say you can pretty decent results with Smart Deinterlacer. As I said, DV material isn't that hard to deinterlace.

If you still want to research AviSynth say, for fun, a good place to start is AviSynth homepage. They have a complete scripting guide in there with plenty of examples.

Every necessary filter for avisynth can be found at AviSynth filter collection, or directly at Donald Graft's site or Tom Barry's site. The filter distribution packages usually include a tutorial with simple examples.

I unfortunately can't help you with Smart Deinterlacer's settings, since I mostly use the AviSynth stuff. Donald's homepage might have some tips.

Quote
How can I tell Windows to use ffdshow instead?


You can set ffdshow's codecs in it's configuration panel. Normally at Start menu, Programs, ffdshow and "Configuration". Then "Codecs" from the left side of the panel, scroll to "DV" and set it to "libavcodec".

Smart deinterlace filters for VirtualDub

Reply #18
Quote
For AviSynth Tom Barry's TomsMoComp and Donald Graft's Decomb are excellent choices.

I personally really like Donald's Decomb filter as it gives pretty decent results in almost all circumstances.  It comes with a half decent tutorial for making it work to.  Remember to always deinterlace before you resize.  I've heard Tom Barry's filter is pretty good as well, although I've never used it personally.


Smart deinterlace filters for VirtualDub

Reply #20
edit: allready mentioned smart deiterlacer, so nm.
PANIC: CPU 1: Cache Error (unrecoverable - dcache data) Eframe = 0x90000000208cf3b8
NOTICE - cpu 0 didn't dump TLB, may be hung

Smart deinterlace filters for VirtualDub

Reply #21
Donald Graft's KernelDeInt  also derserves a mention. I have a clear preference on this, when dealing with "natural" (non-anime/cartoon) images. 

It provides very good sharpness and very few artifacts - especially with thresholds around 4-7.

Of course this only goes for pure interlaced (non-telecined) material.
Regards, sh0dan // VoxPod.  AviSynth 2.5 developer.

Smart deinterlace filters for VirtualDub

Reply #22
I don't use VirtualDub's own plug-ins.
I prefer Avisynth filters like AutoDeint which is included in WarpSharp.

example:AutoDeint("")

If you also need IVTC try
Auto24FPS(true,24,16,"",false)    (included in WarpSharp)

WarpSharp needs msvcp70.dll and msvcr70.dll. Download at http://www.dll-files.com/ if you don't have them.

Smart deinterlace filters for VirtualDub

Reply #23
hi there fellow video comerads  iirc, that's my 1st post here, so, hya all

i always prefere to preserve the video as close to the source as possible.

obviously, keeping the video interlaced is closest to the source, and brings the generated distortions to minimum, which usually also  reduces the required bitrate (per quality). that is' AS LONG as the encoding codec is aware of the interlaced nature of the clip, and can handle it properly (Xvid was mentioned here, and indeed, xvid is able to encode interlaced material properly. and no, it doesn't deinterlace, it only compresses better under the knowledge that it's interlaced, if the relevany checkbox is checked).

one obvious consequence of keeping the encoded video interlaced is that the video is.. ermmm.. interlaced, which causes interlacing artefacts when played on a progressive display (i.e. most normal PC monitors these days). so, one needs to deinterlace the video in real time during playback. DScaler, the win32 TV-viewer ( http://deinterlace.sf.net ) has been able to get excellent results in this area for some time now, but it can only handle TV input (BTxxx chips). however, it has a plugin system, and other projects can use it's DLLs to deinterlace.

one known decoding app for windows is ffdshow, which was mentioned on this thread as well. since some time now, it's able to use these dscaler plugins (among other, inferior imho, deinterlacing methods) effectively.

so what do i recommend? (ONLY if the source material is interlaced, and it's important to keep the hi-motion info, usaually- sports, or wedding clips  )

1. encode your video interlaced (be aware of your vertical resizing method, it's crucial when the video is interlaced). i.e. xvid can suport interlaced material.

2. playback with a system that can deinterlace in real time. in win32 i recommend ffdshow ( http://ffdshow.sf.net ) using the DScaler plugins (start with the simplest and most theoretically correct method: bob). i know that mplayer (*nix/win32) can support interlaced material, but i haven't tried deinterlacing video with it yet.

what do you gain by using the above method?
1. the clip stays closer to the original.

2. usually less bitrate, since preserving the whole content while deinterlacing generates either extra distortions or extra bits.

3. you'll still be able to play your interlaced content on tv natively.

good luck
avih

Smart deinterlace filters for VirtualDub

Reply #24
I capture with a DC-10+ at 6000kbps mjpeg.

For true interlaced material I fing deinterlace MAP to work the best with the default settings.

Its a bit slower but so are all the filters I have tried. It has worked perfectly for me in circumstances where smart de-interlace has failed.

I even use it  on some telecined material with what I think are pretty good results.

It works well with smart smoother especially as long as the thresholds are set low. Trying to sweep out all the noise always leaves me with something tha looks too digitized and obviously processed.

$.o2