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. |
|
|
Thread Tools | Search this Thread | Display Modes |
27th February 2006, 11:38 | #1 | Link |
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 |
27th February 2006, 12:59 | #2 | Link |
Registered User
Join Date: Nov 2001
Posts: 9,770
|
__________________
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 |
28th February 2006, 02:50 | #3 | Link |
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.
|
28th February 2006, 08:56 | #4 | Link |
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 |
1st March 2006, 22:13 | #5 | Link |
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? |
2nd March 2006, 00:29 | #6 | Link |
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? |
4th March 2006, 19:01 | #7 | Link |
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") Code:
temped = field.TemporalSoften(2,255,255,25,2).converttoYUY2().Convolution3D(preset="movieHQ") 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 ) 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. |
5th March 2006, 01:33 | #8 | Link |
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. |
5th March 2006, 04:17 | #9 | Link |
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! |
Thread Tools | Search this Thread |
Display Modes | |
|
|