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 > DV

Reply
 
Thread Tools Search this Thread Display Modes
Old 27th February 2006, 11:38   #1  |  Link
hvj
Registered User
 
Join Date: Apr 2005
Location: Hungary
Posts: 5
DVfilter: avisynth script for high quality noisefiltering of DV AVIs

DVfilter is an AviSynth script designed to filter DV shots.

The design goal was to remove the CCD noise while keeping as many details on the non-moving and also on the moving parts as possible.
The filter is extremly slow, but the design goal was maximal quality without speed compromises.

Who should use this filter:

* quality enthusiasts ;-)
* if speed does not matter only quality
* filter tweakers: you have absolute control!

Why should you use this filter:

* Special spatiotemporal filter solution:
* It uses MVTools for motion detection in two special ways. Never misses moving parts while false positives are minimal.
* Non-moving background is filtered in an unusual 1x1x3 and 3x3x3 combined 3D algorithm.
* Spatialfiltering is done with the highest quality spatialfilter available for AviSynth at this time.
* Special removal of the noise introduced by the sharpening algorithms of DV cameras.

http://hvj.hu/en/dvfilter/index.html

This is v1.0 release after using the script for my DV AVIs almost a year and it worked perfectly.
But your DVs might have different noise, you might have different needs and the script might even not work.
I tried to document everything in detail but if something is not understandable or you have questions, just drop me a line!

The filter might be used on high quality DVD sources as well but I never tested this. I would be glad to here results on using DVfilter on DVDs.

Best regards,
hvj
hvj is offline   Reply With Quote
Old 27th February 2006, 12:59   #2  |  Link
bond
Registered User
 
Join Date: Nov 2001
Posts: 9,770
double post, already striked

http://forum.doom9.org/showthread.php?t=107936
__________________
Between the weak and the strong one it is the freedom which oppresses and the law that liberates (Jean Jacques Rousseau)
I know, that I know nothing (Socrates)

MPEG-4 ASP FAQ | AVC/H.264 FAQ | AAC FAQ | MP4 FAQ | MP4Menu stores DVD Menus in MP4 (guide)
Ogg Theora | Ogg Vorbis
use WM9 today and get Micro$oft controlling the A/V market tomorrow for free
bond is offline   Reply With Quote
Old 28th February 2006, 02:50   #3  |  Link
scilli
Registered User
 
Join Date: Dec 2003
Posts: 34
Hey, just wondering how I would use this with an NTSC source. The readme says only one thing must be changed and to check your website for more info, but the website doesn't offer any more. I'm willing to accept that you designed this for PAL but if you have any info on making it work for NTSC I would like to test it out.
scilli is offline   Reply With Quote
Old 28th February 2006, 08:56   #4  |  Link
hvj
Registered User
 
Join Date: Apr 2005
Location: Hungary
Posts: 5
NTSC version is here

Hi Scilli!

I created an NTSC version with an NTSC example script.
I'm not sure, that the example will work, because I cannot test it (no NTSC DV sources in Hungary).
If you have problem with the example script you have to modify the frame rate or audio parameters in line 2.

Download it from:
http://hvj.hu/en/dvfilter/index.html

Thank you for the testing!

You are right, the homepage do not has as many infos as needed but I'm still writing it :-)

Best regards,
hvj
hvj is offline   Reply With Quote
Old 1st March 2006, 22:13   #5  |  Link
bobcat56458
Registered User
 
Join Date: Feb 2005
Posts: 76
When I try using this method of DV filtering using a type 2 DV NTSC AVI file I get the following error message in VirtualDub-MPEG2 ver 1.6.11:

“Avisynth open failure: I don’t know what “temped” means (I:\Video Tests 2\Julie project\Dvfilter-NTSC-v1.0.avs, line 23) (I:\Video Tests 2\Julie project\Bobs custom, example-NTSC.avs, line 8)”

I am using a modified version of your “example-NTSC.avs” script that is only modified to point to the location of my DV video file, and the location of the Dvfilter-NTSC-v1.0.avs script. Here is the Avisynth script I’m using called “Bobs custom, example-NTSC.avs”:

Import("D:\Avisynth\Filters\plugins version 2.5\DVfilter\DVfilter-v1.0\DVfilter-NTSC-v1.0.avs")
blackness = BlankClip(length=2, width=720, height=480, fps=29.97, pixel_type="YUY2", color=$000000, audio_rate=48000, stereo=true)
avi = AviSource("I:\Video Tests 2\Julie project\DV test video.avi")
last = blackness + avi
ConvertToYV12(interlaced=true)
BlindPP(quant=2,cpu=6,iPP=true)
sep = SeparateFields()
even = sep.SelectEven().DVfilter_field()
odd = sep.SelectOdd().DVfilter_field()
Interleave(even,odd).Weave()

I have installed the 3 required Avisynth plugins. Anyone see any errors in my script that would prevent it from opening the *.avs script in VirtualDub?
bobcat56458 is offline   Reply With Quote
Old 2nd March 2006, 00:29   #6  |  Link
bobcat56458
Registered User
 
Join Date: Feb 2005
Posts: 76
Hvj: The version of Convolution3D you have on your webpage in the Downloadable zip file that contains the four Avisynth plugins, is listed as version 1.01 of Convolution3D. I don’t think that version is compatible with Avisynth version 2.5. When I was testing in my last post I was using another version I’m not sure of its version number but it was downloaded in a file called “convolution3d_25_dll_20030422” from: http://www.avisynth.org/warpenterprises/ this version works with Avisynth version 2.5 and above. When I tried to replace this version of Convolution3D with the one in your download of plugins I receive this error message in VirtualDub:

“Avisynth open failure:
Plugin E:\Program Files\Avisynth 2.5\plugins\convolution3d.dll is not an
AviSynth 2.5 plugin.
(I:\Video Tests 2\Julie project\Bobs custom, example-NTSC.avs, line 3)”

I also looked up the version 1.01 of Convolution3D that is for Avisynth version 2.0 and it is the same one as you have in your zipped plugins download, the link to that one is here, it is called "convolution3d_20_dll_20021019":
http://www.avisynth.org/warpenterprises/attic.html
Please correct me if I’m wrong. Are you using Avisynth version 2.0?
bobcat56458 is offline   Reply With Quote
Old 4th March 2006, 19:01   #7  |  Link
bira
Registered User
 
Join Date: Nov 2001
Posts: 210
I tried the script and found a few problems.

- The zipped convolution3d is not compatible with avisynth 2.5. You'll have to use convolution3d_25_dll_20030422 version. As mentioned above.

- The 20030422 build of convolution3d has no preset name "Movie" and it only support YUY2, so you'd have to make changes to DVfilter-NTSC-v1.0.avs

Where it reads:
Code:
temped = field.TemporalSoften(2,255,255,25,2).Convolution3D(preset="Movie")
It should read:
Code:
temped = field.TemporalSoften(2,255,255,25,2).converttoYUY2().Convolution3D(preset="movieHQ")
Also,

In my tests, I had to change the fps "blackclip" parameter to:

Code:
BlankClip(length=2, width=720, height=480, fps=30000, fps_denominator = 1001, pixel_type="YUY2", color=$000000, audio_rate=48000, stereo=true )
Otherwise, the frame rate of the two clips would not match.

After the changes, it worked.

I have yet to test its performance , but one thing I notice is that there is a lot of color conversions. So I wonder if it would be possible to elimitate any of them.
bira is offline   Reply With Quote
Old 5th March 2006, 01:33   #8  |  Link
bobcat56458
Registered User
 
Join Date: Feb 2005
Posts: 76
Hvj: In my initial tests with your filter (after I was able to get it to work) I have to say I’m impressed with the quality your filter produces! Although it is very slow like you have stated. In my estimation it would take 18 hours to process 1 hour of DV video on my not so fast 1.8GHz P4 computer with 512MB’s of RAM. However the method I’m using now is only twice as fast as yours, and does not produce the level of de-graining of the video yours does. I can see you have spent a lot of time tweaking your filtering method, and you have to be congratulated for that effort! I hope you continue your valued development of this method, consumer DV cams need all the help they can get to produce good looking video.

Bira: Thanks for helping me get a DVFilter NTSC script that would finally open in VirtualDub. I did however have to alter your modifications to get it to work on my computer. You state that there is no preset called “movie” in the 20030422 build of convolution3d. The “DVfilter-NTSC-v1.0.avs” file that I downloaded from hvj’s website states in the script that the “movieLQ” preset is used, which is one of the supported presets in the 20030422 build of convolution3d. I do not think you want to change it to “movieHQ” because that would lower the amount of filtering that will happen. Also if I change the script to:

“BlankClip(length=2, width=720, height=480, fps=30000, fps_denominator = 1001, pixel_type="YUY2", color=$000000, audio_rate=48000, stereo=true )”

As you show it, I receive the following error message when trying to open the modified script in VirtualDub:

“Avisynth open failure:
Splice: Video framerate doesn’t match
(I:Video Tests 2\Julie project\Bobs custom, example- NTSC.avs, line 4”

But if I leave it at the framerate of 29.97fps (which NTSC DV video is) the script will open in VirtualDub. So, below is the script that works for me:

Import("D:\Avisynth\Filters\plugins version 2.5\DVfilter\DVfilter-v1.0\DVfilter-NTSC-v1.0 customized.avs")
blackness = BlankClip(length=2, width=720, height=480, fps=29.970, pixel_type="YUY2", color=$000000, audio_rate=48000, stereo=true)
avi = AviSource("I:\Video Tests 2\Julie project\DV test video.avi")
last = blackness + avi
ConvertToYV12(interlaced=true)
BlindPP(quant=2,cpu=6,iPP=true)
sep = SeparateFields()
even = sep.SelectEven().DVfilter_field()
odd = sep.SelectOdd().DVfilter_field()
Interleave(even,odd).Weave()

So the only thing I’ve changed from the original downloaded script, “Dvfilter-NTSC-v1.0.avs” is to add “converttoYUY2()” to the line starting with, “tempted = ….” Where you show it on your last post, and I also use the 20030422 build of convolution3d.
bobcat56458 is offline   Reply With Quote
Old 5th March 2006, 04:17   #9  |  Link
bira
Registered User
 
Join Date: Nov 2001
Posts: 210
bobcat56458, you're right about the "movieLQ" preset. For some reason I changed the original zipped script to "movie". And then was when all the confusion began. Sorry.

I don't know why, but if I leave fps to 29.97 it gives me the "frame rate does not match" error. Go figure.

Thanks!
bira is offline   Reply With Quote
Old 28th May 2006, 18:05   #10  |  Link
ADLANCAS
Registered User
 
ADLANCAS's Avatar
 
Join Date: Apr 2003
Location: Brazil
Posts: 247
Hi,
Link from hvj is out.
Could someone post DVfilter_field() function (NTSC) ?
ADLANCAS 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:27.


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