Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 7th August 2003, 00:36   #1  |  Link
moon1234
Registered User
 
Join Date: Oct 2002
Posts: 58
Dust and interlaced NTSC sources

I have been learning via this site for over 2 years now. Many thanks to all the very informative posts.

I have alot of older NTSC VHS and Hi-8 analog material that I am digitizing using the Canopus ADVC 1394. Once on the PC I am cleaning and Transcoding to MPEG2 using CCE. Most of the material has noise as some of it is almost 20 years old. The newer Hi-8 stuff is even starting to degrade after just 4 years of storage.

I have used faerydust after deinterlacing and I am getting fantastic results. This has to be the best noise filter available right now. For the DVD archived stuff I would really like to keep it interlaced. The drawback to this is I can't call any version of dust twice in my scripts. The second call to the dust filter results in an output of an all black screen.

I want to use the temporal capabilities of dust as it is an amazing filter. I have tried Convolution3d, but the results are no where near as good as the dust results.

My question is:
How do I use dust to process both the top and bottom fields independently so that the pixel locations are correct? Is there a way to process just the even fields and output that result to a HuffYUV file? Then do the same for the odd fields and then weave the two files together?

Any help would be greatly appreciated! I ahve tried just separating the fields and running pixiedust and faerydust and it does improve the noisy video quite a bit, but there are Chroma artifacts that I can see in any fast motion scenes. It also seems that dust handles scene transitions quite well. Very little blurring.

Thanks,
Moon1234
moon1234 is offline   Reply With Quote
Old 7th August 2003, 04:20   #2  |  Link
stickboy
AviSynth Enthusiast
 
Join Date: Jul 2002
Location: California, U.S.
Posts: 1,267
I wrote a function for use with spatial-temporal smoothers such as Dust on interlaced material. UnfoldFieldsVertical shifts all the even scanlines to the top half of the frame and all odd scanlines to the bottom. (Simon Walters has a plug-in to do something similar.) An optional "flip" parameter vertically flips the bottom half; the idea is to prevent the smoothing of scanlines that originated from the top of the frame with scanlines that originated from the bottom.

FoldFieldsVertical undoes the unfolding.

[Edit: code moved to <http://www.avisynth.org/stickboy/>]

(Edit: typo corrected)

Last edited by stickboy; 17th August 2004 at 07:16.
stickboy is offline   Reply With Quote
Old 7th August 2003, 19:38   #3  |  Link
JuanC
Registered User
 
Join Date: May 2002
Posts: 220
Quote:
Originally posted by stickboy
...
Code:
...
....
function FoldFieldsVertical(clip c, bool "flip")
{
    assert(c.Height() % 2 == 0, "FoldFieldsVertical: unexpected frame height")
    flip = default(flip, false)
    oldParity = c.GetParity()
    originalHeight = c.Height() / 2
    evens = c.Crop(0, 0, c.Width(), originalHeight)
    odds = c.Crop(0, originalHeight, c.Width(), originalHeight)
    odds = flip ? odds.FlipVeritical() : odds
    c = Interleave(evens, odds).AssumeFieldBased().AssumeTFF().Weave()
    return c.SetParity(oldParity)
}
Works great for me, thanks, just to report a small typo...
JuanC is offline   Reply With Quote
Old 8th August 2003, 08:42   #4  |  Link
yup
Registered User
 
Join Date: Feb 2003
Location: Russia, Moscow
Posts: 854
Hi moom1234!
Try this way, not very easy, but result for interlaced video very good.
Yup.
Link
miniDV to CVD conversion
yup is offline   Reply With Quote
Old 8th August 2003, 21:44   #5  |  Link
moon1234
Registered User
 
Join Date: Oct 2002
Posts: 58
Thanks for the replys. I am going to try both versions. The first is appealing as it does not require creating separate files. The second is much easier to wrap my noggin around.

I will let you know what the results look like. Iterlaced video is a B*tch. I can't wait for affordable 3CCD, progressive scan digicams.

-Moon1234
moon1234 is offline   Reply With Quote
Old 9th August 2003, 09:35   #6  |  Link
moon1234
Registered User
 
Join Date: Oct 2002
Posts: 58
After testing both methods, I gotta say that the funtion calls win out big time. It doesn't take a very long clip to fill a hard driver completely.

All I can say is THANK YOU! I have been looking for a way to use temporal filters on interlaced source for a long time. This is excellent. I can't belive that this has never been posted before.

-Moon1234
moon1234 is offline   Reply With Quote
Old 9th August 2003, 10:51   #7  |  Link
moon1234
Registered User
 
Join Date: Oct 2002
Posts: 58
Well I am still not happy with the final output. I am converting the Hi-8 copy of my wedding. Digitizing using Canopus ADVC-1394. I just can;t seem to get rid of the pixel "dancing" on the walls.

Here is a link to 1 sec in HuffYUV.

I tried the following script:

AVISource("f:\capture\wedding.avi")
LoadPlugin("C:\Program Files\AviSynth 2.5\2Plugins\LoadPluginEX.dll")
Loadplugin("C:\Program Files\AviSynth 2.5\plugins\dustv5.dll")
FixBrokenChromaUpsampling()
SeparateFields()
Crop(8,4,-8,-4)
Weave()
Setparity(false)
UnFoldFieldsVertical(true)
Pixiedust()
#temporalsoften(4,4,8,mode=2,scenechange=5)
FoldFieldsVertical(true)
AddBorders(8,8,8,8)
Trim(110040,110070)

Both with and without the temporal smoother. The temporal smoother seems to cause a lot of bright dots against the blue wall.

Any Suggestions? Most of my tapes are starting to look like this. is this normal? Most of my SVHS doesn't even look this bad.

Thanks,
Moon1234
moon1234 is offline   Reply With Quote
Old 9th August 2003, 20:04   #8  |  Link
stickboy
AviSynth Enthusiast
 
Join Date: Jul 2002
Location: California, U.S.
Posts: 1,267
Quote:
Originally posted by moon1234
I have been looking for a way to use temporal filters on interlaced source for a long time.
Well, for purely temporal smoothers, there's nothing special you need to do for interlaced material. Scanline #n always gets smoothed against scanline #n from another frame, so you never smooth scanlines from one field against scanlines from another.

For purely spatial smoothers, you only need to call SeparateFields beforehand and Weave afterward, but that's it.

Spatial-temporal smoothers are the ones that are tricky.

(I'm sure you already know all that, though, and that you were just being a bit loose with language.)

Anyway.

Regarding your sample clip, I haven't noticed any bright dots with the TemporalSoften line that aren't also there without that line... With the TemporalSoften, yes, there's still some noise on the walls, but I think it still looks very good. I also think a little bit of noise is good; too much smoothing can make it look unnatural.
stickboy is offline   Reply With Quote
Old 10th August 2003, 04:38   #9  |  Link
JuanC
Registered User
 
Join Date: May 2002
Posts: 220
Quote:
Originally posted by moon1234
Well I am still not happy with the final output. I am converting the Hi-8 copy of my wedding. Digitizing using Canopus ADVC-1394. I just can;t seem to get rid of the pixel "dancing" on the walls.
So, are you capturing via ieee1394? I am recovering my old Video8 videos (10 years old) this way and they don't look that bad... Some weeks ago I used Composite and then S-video to capture them and got lots of help by using guavacomb. Personally I use this settings:
Code:
GuavaComb(Mode = "NTSC", Recall = 75, MaxVariation = 25, Activation = 90)
to get rid of dot crawl, rainbows and some kinds of shimmering.
Quote:
Originally posted by moon1234
... Both with and without the temporal smoother. The temporal smoother seems to cause a lot of bright dots against the blue wall.

Any Suggestions? Most of my tapes are starting to look like this. is this normal? Most of my SVHS doesn't even look this bad.
I didn't see any blue wall, but about the "dancing" pixels on the walls, I tried PeachSmoother on your clip (It is unprocessed, right?) I use Lindsey Dubb's filters a lot, and got reasonable results using the following script:
Code:
AVISource("samp.avi")
ConvertToYUY2(interlaced=true)
UnfoldFieldsVertical(flip=true)
#PeachSmoother(NoiseReduction=50, Stability=30, Spatial=200, ReadOut=true, Dot=true)
PeachSmoother(NoiseReduction=50, Stability=30, Spatial=200, NoiseLevel=5.5, BaseLine=4.07)
FoldFieldsVertical(flip=true)
You be the judge. I got the NoiseLevel and BaseLine settings using the ReadOut and Dot options and playing the script for about 4 times in VirtualDub. Hope that helps, ;J
JuanC is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 00:19.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.