View Full Version : New IVTC for Avisynth
Guest
17th January 2002, 04:26
I have just released the first really good version of my new IVTC for Avisynth. It performs extremely well with default parameters, even on difficult anime such as "Cowboy Bebop". Please be sure to get Decomb Version 1.5 if you have already obtained an earlier version.
Here is a filter chain to use for tough anime:
LoadPlugin("decomb.dll")
AVISource("bebop1.avi") [or mpeg2source]
ConvertToYUY2()
Telecide
Decimate15
FieldDeinterlace
Note that the last step just catches any stray combed fields that might stray through due to input clip problems. It DOES NOT TOUCH clean progressive frames and can be omitted for clean source material (Cowboy bebop is not clean!). The help file in the distribution gives extensive instructions and tips. I think you will find the results to be truly stunning.
MMX/SSE optimizations are under way.
Tom Daniel (manono) assisted extensively with testing.
Get the software at http://sauron.mordor.net/dgraft/
Feedback will be gratefully received.
Nic
17th January 2002, 12:13
Im going to try & add this to DVD2AVI if thats ok...As with everything you create Donald....Very Impressive :)
Cheers,
-Nic
Guest
17th January 2002, 14:11
@Nic
What would adding it to DVD2AVI entail? Do you just invoke the DLL?
My only concern is if there would be proper credit for my work and that of Tom Daniel who was an important contributor.
Also, the optimized version is under development. Would you be able to upgrade to that easily?
trbarry
17th January 2002, 17:00
Originally posted by neuron2
@Nic
What would adding it to DVD2AVI entail? Do you just invoke the DLL?
Donald -
Congrats, I'll check that out.
If you are branching out into Avisynth filters you might want to consider the leverage of also adding the DVD2AVI versions and it could certainly use your talent. DVD2AVI may be going to CVS/Sourceforge. See the DVD2AVI CVS (http://rilanparty.com/vbb/showthread.php?s=&threadid=11442) thread.
- Tom
TactX
17th January 2002, 22:00
Thanks Donald.
I've tested Decomp and the result was better than any other IVTC-filter I've tested so far. Great !
Thanks once again :)
Tri
17th January 2002, 22:27
Impressive! I tested it on a short part of Gasaraki and it performes extremely well, the image quality is higher than with GreedyHMA! Decomb also doesn't produce choppy output, playback is very smooth.
Good work, I'm waiting for MMX and SSE optimizations :)
daxab
17th January 2002, 23:04
Good stuff -- Decomb 1.5 seems to handle some cases that trip up my current favorite, GreedyHMA. But it does seem to have trouble with mostly static scenes where the only movement is an actors lips, during dialog. GreedyHMA is really good with that.
Guest
18th January 2002, 01:33
I'm glad to hear that this early version is producing good results. But there is still a lot of room for improvement. So, daxab, can you please make a short clip available to me that shows the problem?
daxab
18th January 2002, 04:13
I trimmed things down and recompressed using HuffyYUV. You can get it here:
(=EDIT: Dead link removed=)
(Please let me know when you have the clip so I can free up the space.)
I hope this helps. Also if you want me to do any beta testing for you I'd be happy to -- I am IVTC'ing noisy source material (you'll see what I mean) every week.
b0b0b0b
18th January 2002, 04:45
Thanks for your work, I'm really looking forward to trying it out!
Guest
18th January 2002, 14:53
I've released a new version of Decomb that does better with small moving mouths, etc. Get Version 1.6 at
http://sauron.mordor.net/dgraft/
Tri
18th January 2002, 16:44
OK, there is a problem. After some time of encoding, Windows closes all applications reporting there is too little virtual memory. This happened a several times.
Having a look into the task manager, I see the swapfile is constantly increasing. I have made a swapfile of 700 MB now (with 512 MB RAM) but this still happens.
This is definitely related to Decomb, because it didn't occur with GreedyHMA. It would be great if you could fix that, Donald, as the quality of Decomb is very impressive.
Nic
18th January 2002, 17:14
Sounds like a memory leak, but I'd never accuse Donald of anything so scandalous :)
Erm..I'd add DVD2AVI to allow DVD2AVI to have some proper IVTC code. I don't use it personally (I live in UK & only rip PAL stuff) but many people have asked for IVTC in DVD2AVI. You could have any sort of recognition you wanted (Splash Screen, MessageBox, something in the about, etc)
Unfortunatley it wouldn't be easy...id have to do a lot of fiddling with the code (& I know the source is pending so I guess i'd have to wait :) (there isn't a nice easy ->GetFrame(n) in DVD2AVI that I can use, (but im trying to make DVD2AVI more AVISynth friendly)
But if you'd really rather that I didn't try to add it to DVD2AVI than I more than respect that...
Take Care,
-Nic
Guest
18th January 2002, 20:16
Version 1.7 with the fix for the memory leak can be obtained from my web site http://sauron.mordor.net/dgraft/
Sorry for the inconvenience. I'm normally not like this. :-)
dvd2svcd
18th January 2002, 20:34
Hi neuron2 aka Donald,
It seems to work very well indeed, and I have added support for it in dvd2svcd. I wanted to ask you, if it was ok with you, if I add Decomb to my software bundle. You will ofcourse be given full credits for the software and I will include the entire Decomb package.
DDogg
18th January 2002, 20:37
"OK, like, gag me, where's the attachment? I feel oh so newbie. :-("
Not your problem. Attachments have to be approved due to the the problems other boards had with cracks and such. Sorry for the cramp. :)
Tri
18th January 2002, 20:49
It works now! Great job! :)
Guest
18th January 2002, 21:40
DON'T USE THE ATTACHED ONE!!! It is bad, bad, bad.
Use the one from my web site. Thank you.
daxab
18th January 2002, 21:42
Question: What will Decomb do in NTSC IVTC mode (Telecide.Decimate15 and possibly FieldDeinterlace) if given interlaced source? In other words, if I have some source that is 90% real film, but 10% video or whatever, what will Decomb do with that 10%?
Guest
18th January 2002, 21:43
@dvd2svcd
That is OK. But realize the package is evolving fast. Keep an eye on it so you always have the latest and greatest. :-)
Guest
18th January 2002, 21:47
@daxab
It will detect those frames as interlaced and then perform a smart deinterlace on just those frames. Please let me know if this is not working as advertised or if you want something different.
daxab
18th January 2002, 21:52
It will detect those frames as interlaced and then perform a smart deinterlace on just those frames.Cool. Will the Decimate15 then pick 'the two most similar' frames in a group of 5, and delete one of them? I know it won't be perfect -- you can't go from 60 fields/s to 24 frames/s without some consequence -- I'm just curious.
daxab
18th January 2002, 23:07
Wow, I just checked out version 1.7 and it catches all of the stray interlaced frames that were sneaking through with version 1.5.
My source material is noisy NTSC TV capture, not the easiest stuff to handle, and Decomb does a great job -- perhaps better than GreedyHMA now. When I combine this with a low-threshold deinterlace -- FieldDeinterlace(false, 3) -- I get very nice results.
Guest
18th January 2002, 23:26
@daxab
I don't recommend the low threshold on FieldDeinterlace after
Telecide. You'll touch clean frames doing that. The default of
20 should be OK. You might lower or raise that a bit, but 3 is going to touch most of your good frames. Use the debug option on FieldDeinterlace together with the DebugView utility to see the effect of setting such a low threhsold. It'll tell you that most of the frames are combed when they are not.
In fact, manono found that with Cowboy Bebop he had to raise it to 30.
Yes to your question about Decimate.
Tonight or tomorrow I'll release a version that integrates Telecide and FieldDeinterace, improving peformance and making things a little cleaner for the user.
Guest
19th January 2002, 08:08
I've released a new version of Decomb, version 2.0, that integrates the deinterlace postprocessing into Telecide. Forget about FieldDeinterlace; it is gone. Please refer to the help file for the new usage syntax and instructions. Get the filter at:
http://sauron.mordor.net/dgraft/
Note that the threshold is no longer problematic. It is treated exactly the same as the threshold in Smart Deinterlacer.
Your script for dirty source will now look like this:
Telecide(false,true)
Decimate15
Guest
19th January 2002, 10:35
Sorry, people, Version 2.0 was bad. It had a blurry look. Get Version 2.1. That is a good release. The default threshold is a bit high, though. If you see interlacing come through, reduce the threshold to 15. I'll make that the default in the next release. I'll let this one sit for a while and get feedback.
dvd2svcd
19th January 2002, 10:42
Hi neuron2,
In the past you have made some extremely good VirtualDUB plugins, and I have used some of them quite a lot in the past. It now seems you're moving on to making Avinsynth Plugins. I for one would like to thank you for this. I have never had any problems with your VirtualDUB plugins, and I know that the Avisynth Plugins will be great (as your Decomb already has turned out to be).
I just had a quick look on your homepage, I was searching for a way to donate some money to you, as I find your software developments really deserves it (and since I have used it so much too). Is this possible?
Guest
19th January 2002, 10:54
@dvd2svcd
Hi. Please use version 2.1 and threshold 15 for your DVD2SVCD package.
Regarding donations: I appreciate the thought but I do this stuff for my own pleasure and seeking after truth. :-) I am not in need of any funds to continue the efforts.
You can help by sending your feedback and ideas. Thank you.
jarthel
19th January 2002, 12:18
Is Convert2YUV line needed if I use a .d2v file? (.d2v file is already YUV)
Guest
19th January 2002, 15:05
@jarthel
You can omit the ConvertToYUY2 call in that situation, yes.
Guest
19th January 2002, 16:57
I've made my last release for this weekend. :-)
Version 2.2 enables postprocessing by default, changes the default threshold to 15, and adds an option for cubic interpolating the first and last fields if needed. Note that the Telecide parameters have changed, so edit your script files appropriately.
yangus
20th January 2002, 03:36
ok this is a really stupid question but how do i use your plugin? i never used avisynth before and so i'm kinda stuck. please give a newbe a helping hand :) and btw is this way better than tmpenc?
Mentar
20th January 2002, 10:16
Yangus: Learn to use Gordian Knot and read the HTML helpfile included in the decomb package, it's fairly easy then. And yes, it's way better than having it done by TMPGenc.
Donald, AMAZING filter. Just plain amazing. My kudos, I'm thoroughly impressed. Please keep it up and good luck with the speed optimizations ;)
Guest
20th January 2002, 13:48
@yangus
It's really very simple. Download the version of Avisynth linked from my Decomb page at my web site. Put the avisynth DLL in windows\system (or equivalent). Then right click on the .reg file that came with Avisynth and select Install (or Merge). Now Avisynth is installed and
ready to go. Now make a file called test.avs as follows:
LoadPlugin("your_path\Decomb.dll")
AVISource("your_path\video.avi")
ConvertToYUY2()
Telecide
Decimate15
Now simply open that file with VirtualDub. Voila, you have the filtered output of video.avi.
Blight
20th January 2002, 15:40
And the last step should be moving decimate into telecide ;)
Save the re-loading of the frame buffer by doing the decimate checksum within telecide and save a few more CPU cycles.
Taranli Maren
21st January 2002, 05:08
Excuse my ignorance if this is a dumb question...
If you use this on a pure ntsc source, does it deinterlace each frame seperately, or will it actually reconstruct the film with duplicate frames. My confusion is whether or not it would be a good idea to use the decimate15 to drop it to 24 fps. if it deinterlaces each frame seperately, then each frame would end up different, with no duplicate frames. It seems that it might look smoother (and not give too much of a compression loss) to leave it at 30 fps instead of dropping a random frame every 5. But if there are actually duplicate frames, it seems that it would be better to just get rid of them. Also, if there are duplicates, does the decimate drop the duplicate, or does it just drop an arbitrary frame.
I do recall that the web site said not to use this for pure ntsc video, but I want to see if its possible to use it for this anyway, since its supposed to work so well.
Taran'li Maren
yangus
21st January 2002, 08:10
hey yall, thanks for answering the question. btw Mentar, u said learn 2 use gnot and i already do! so are u implying that i can use this in gnot? i thought it got its own seperate ivtc deal. and also neuron2, correct me if i'm wrong, but after installing avisynth, do i make a text file with the script u perscribed ("load dll, etc)? i read this on nicky's guide and i thought this might be what u're refering 2. and one last thing, what do u mean move decimate into telecide? okey-dokey, that's about all. later!
Mentar
21st January 2002, 10:16
Hi yangus, please don't take my comment as degrading, it honestly wasn't intended this way :) ... if you're using GK already, here is how to use decomb in GK:
After you hit "Save and Encode" you get the option to apply different filters like resize, noise filter etc. On the bottom of this window there's a "Edit" button. When the rest of your choices are made, hit "Edit", and it will open up a small editor with the avisynth script to edit.
First thing to do here is to comment out any ivtc commands you might have accidentally selected. Then, insert these lines (assuming that you use decomb2.2)
LoadPlugin("your_path\Decomb.dll")
Telecide
Decimate15
To verify that everything is fine, hit "Preview". If it shows clean frames, you're done. Just click on Save&Encode and everything is fine.
Good luck!
PS: Yes, in my humble opinion you should prefer decomb to the standard ivtc. It's slower, but the results tend to be significantly superior.
dragonlz
21st January 2002, 10:48
Has anybody tried decomb with anime? It's usually the hardest type of source to IVTC. From what I read about decomb so far, it sounds like it'll handle anime better than anything else.
Mentar
21st January 2002, 10:57
Yes, I did. Ran it over BGC2033 first episode and Video Girl Ai for 2 tough nuts to crack. Based on these experiences, it seems that decomb retains at least the sharpness of Greedy HMA without the occasional interlace errors which occur in it. Decomb is slow yet, but it definitely produced the best output of all three.
Everything IMHO of course.
manono
21st January 2002, 11:31
Hi boys and girls-
yangus- Do what Mentar said. I threw Decomb.dll in with the other .dlls in the GKnot file. Then you can just cut and paste the correct path for the LoadPlugin("......)Decomb.dll") from the GreedyHMA.dll or Wizard's IVTC or MPEG.dll. Skip that AVI Source and Convert To YUV stuff-that doesn't apply to us DVD conversion-GKnot users. AviSynth was installed when you installed the GKnot Rippack. Then put:
Telecide
Decimate15 (if Region 1 or some other NTSC area)
down in the IVTC area.
Decimate into Telecide-It's not implemented yet (as Blight said, it'll speed things up), but should be before too long (I believe).
dragonlz-I've tried it a lot. It's the best so far (not perfect)-unless the source is simple to IVTC, you'll almost certainly have to keep the deinterlacer(default in Telecide), but its beauty is that it won't screw up good frames while deinterlacing the few interlaced frames that slipped through Telecide.
Mentar-yes it's still a bit slow. It's way slower than GreedyHMA, and about as fast as the default IVTC in GKnot (since you'll need to add a deinterlacer because so many interlaced frames slip through). But if you've looked closely, you've noticed that panning and scrolling scenes are way smoother than the default IVTC, as well as allowing fewer interlaced frames through. And neuron2 hasn't begun work on the speed optimizations yet.
triffid
21st January 2002, 12:23
wooohoo! ive been looking forward to this!
i havent tried it yet but this looks like it may finally be the way to knock out IVTC and stray interlaced scenes at once. Like i'm sure many anime encoders are, I am tired of having to both IVTC in TMPG (averaging about 1:30 for every 1hr of video) and then run a deinterlace filter that halves the encode speed.
I haven't used Avisynth yet, as currently i use the standard Nandub method according to the official guide with a few anime-related changes. However, I'm always looking for a better and/or faster way to do things.
Mr. Graft, your v-dub filters are essential to my encode method...please make your avisynth filters essential too. :D
-triffid of DALnet, who is happy today
ppera2
22nd January 2002, 01:11
I downloaded latest version (2.2) and recommended AVISynth 1.05b.
But I can't use plugin. It always causes access violation.
Here is AVISynth script:
LoadPlugin("F:\WinUtils\AVISynth\MPEG2DEC.DLL")
LoadPlugin("F:\WinUtils\AVISynth\Decomb.dll")
mpeg2source("F:\Tar.d2v")
Crop(24,62,672,360)
Telecide
Decimate15
Machine is OK, everything other work fine...
dragonlz
22nd January 2002, 02:09
thanks for the info manono & Mentar. I'm encoding some anime right now using decomb to ivtc. From what I can tell by watching the .avs, it produces sharp-looking results and no interlaced artifacts have been left.
This is a really promising program, good work Donald!!
LotharZ
22nd January 2002, 02:14
Originally posted by ppera2
I downloaded latest version (2.2) and recommended AVISynth 1.05b.
But I can't use plugin. It always causes access violation.
Here is AVISynth script:
LoadPlugin("F:\WinUtils\AVISynth\MPEG2DEC.DLL")
LoadPlugin("F:\WinUtils\AVISynth\Decomb.dll")
mpeg2source("F:\Tar.d2v")
Crop(24,62,672,360)
Telecide
Decimate15
Machine is OK, everything other work fine...
This is the correct format:
--------------
LoadPlugin("F:\WinUtils\AVISynth\MPEG2DEC.DLL")
LoadPlugin("F:\WinUtils\AVISynth\Decomb.dll")
mpeg2source("F:\Tar.d2v")
Telecide
Decimate15
Crop(24,62,672,360)
------------------
Crop after of Telecide and Decimate.
ooze_21
22nd January 2002, 02:31
So, I live in PAL country. Is there any way of using this plugin to make 25 fps PAL (film) go back to it's original 24 fps? Look at this topic if you don't know what I mean --> http://forum.doom9.org/showthread.php?threadid=14391
Thanks
HJ
manono
22nd January 2002, 02:49
Hi ppera2-
I don't know where Land Of Confusion is (I'm weak on Geography-near to Germany?), but for the European readers, of course you don't need the Decimate15 line, as it looks for and drops the 1 frame in 5 looking most like a duplicate. But this thing will rebuild the original frames (the way GreedyHMA can) and therefore is way better than a straight deinterlacer.
Also-do you have a Resize line in there somewhere after Crop?
As for going back from 25fps to 24fps-I don't know-maybe neuron2 can answer that one, or modify it to handle what you want, but have you tried Decimate125? I don't know if that'll work, though.
Edit: I just tried that-Access violation. So, as of now, you can't go from 25fps to 24fps. I'm not sure you want to anyway, as you'll be dropping an original frame out of every 25, and it may become a bit jerky (I think).
Guest
22nd January 2002, 04:24
First, the entire 2.x line of revisions was simply a bad idea and I withdraw them! Please get version 1.75 from my web site. The quality on the 2.x line was simply not up to snuff. I have to confess that I implemented a new and improved algorithm for 2.x that was in fact new and degraded.
An important note on color spaces: YUV and YUY2 are not the same! The YUV you get from DVDs and the default mode of HUFYUV has the following byte ordering:
U Y1 V Y2
whereas YUY2 has:
Y1 U Y2 V
This is really unfortunate for the current code. If you feed your YUV into Decomb, it will start working on color when it should be working on luma and vide versa. Therefore, 1.75 enforces YUY2, and this will continue until I recode for native YUV and YUY2.
Finally, I plan to integrate the functions (as I had started in the 2.x line), but using the better 1.7 algorithm.
Sorry for leading people astray with 2.x, but if you think *you* went astray, think about me! For days I've been unaware of the color space issue and you can imagine what that did to my debugging.
ooze_21
22nd January 2002, 04:34
Well, The reason I want to go from 25-24 is that I'm not happy with the quality of current deinterlacers. Ghosting and artifacts. The picture gets jerky when I use them. Don't know if converting the frame rate to it's original would help much but...
HJ
Guest
22nd January 2002, 04:35
@ooze_21
Yes, I know about the requirement as I do support it in the VirtualDub Decimate filter. There are two ways to show 25 fps from 24 fps: you can just speed it up or you can add two extra fields per 24 frames. The latter requires a 1-in-25 frame decimation.
The problem in doing this for the Avisynth version is that I would have to look ahead 25 frames, which is rather a lot. (The VirtualDub filter does two passes and so only needs too look ahead one frame, storing all the comparison results and then deciding every 25th frame what to output to the script.) I am thinking about possibilites here. But for now it is not supported.
Changing the frame rate to 24 would not remove the stutter.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.