Thanks for those details, jagabo. Anyway, to fuel the debate for those who haven't yet tired of it. . .
This is the script I used for the mpg of VOB #1 posted. It's about the 14th version of this script and I've changed it yet again -- but below is the script I used for the post, so later changes at this point are moot. One change: I later replaced gradfun2DBmod with one or another deblock filters (still playing with that), but this is the script I posted with:
I used two gradation curves in working with the mpg posted earlier. One of those curves, the 2nd in a chain of 2, tweaks the results of curve #1. So if you want darker deep blacks but keep detail at around RGB25 or higher, you can tweak one of the panels in curve2. Here is frame 20 as it appearted in the earlier mpg, and the "RGB" panel that was used:Code:vpath="E:\forum\colors\" ppath="D:\Avisynth 2.5\plugins\" Import(ppath+"RemoveSpots.avs") Import(ppath+"ReplaceFramesMC.avs") Import(ppath+"sRestore.avs") Import(ppath+"QTGMC-3.32.avs") MPEG2Source(vpath+"VTS_01.d2v",CPU=3) ColorYUV(cont_y=-25) in1=last.AssumeBFF().SeparateFields() e=in1.SelectEven().RemoveSpots() o=in1.SelectOdd().RemoveSpots() eo=Interleave(e,o).Weave() eo AssumeBFF().QTGMC(preset="slow") srestore(frate=24) # ---- clean up some of the worst ---- # ---- spots, flashes, bad frames ---- # ---- (Requires RemapFrames.dll) ---- a1=last a2=a1 b0=a1 b01=a2.FreezeFrame(11,11,13).BadFrames(10,blend=true).Crop(472,62,-238,-406) b02=Overlay(b0,b01,x=472,y=62) a2a=ReplaceFramesSimple(a1,b02,mappings="10 11") b0=a2a b01=a2.FreezeFrame(222,222,220).Crop(0,386,0,0) b02=Overlay(b0,b01,x=0,y=386) a2b=ReplaceFramesSimple(a2a,b02,mappings="222") b0=a2b b01=a2.FreezeFrame(223,223,219).Crop(0,386,0,0) b02=Overlay(b0,b01,x=0,y=386) a2c=ReplaceFramesSimple(a2b,b02,mappings="223") b0=a2c b01=a2.FreezeFrame(366,366,365).BadFrames(367,blend=true).Crop(452,98,-258,-370) b02=Overlay(b0,b01,x=452,y=98) a2d=ReplaceFramesSimple(a2c,b02,mappings="366 367") b0=a2d b01=a2.BadFrames(518,blend=true).Crop(354,164,-354,-300) b02=Overlay(b0,b01,x=354,y=164) a2e=ReplaceFramesSimple(a2d,b02,mappings="518") b0=a2e b01=a2.FreezeFrame(41,41,38).BadFrames(40,blend=true).Crop(686,276,-18,-186) b02=Overlay(b0,b01,x=686,y=276) a2f=ReplaceFramesSimple(a2e,b02,mappings="40 41") b0=a2f b01=a2.FreezeFrame(163,163,161).FreezeFrame(165,165,167).BadFrames(164,blend=true) b02=b01.Crop(14,246,-700,-174) # < up.left spot b03=b01.Crop(14,348,-700,-114) # < lo.left spot b04=Overlay(b0,b02,x=14,y=246) b05=Overlay(b04,b03,x=14,y=348) a2g=ReplaceFramesSimple(a2f,b05,mappings="[163 165]") b0=a2g b01=a2.FreezeFrame(449,449,446).BadFrames(448,450,blend=true).Crop(414,186,-300,-286) b02=Overlay(b0,b01,x=414,y=186) a2h=ReplaceFramesSimple(a2g,b02,mappings="[448 450]") a2h ReplaceFramesMC(245,2) GradFun2DBmod() AddGrainC(var=0.5) TTempSmooth() ConvertToRGB32(matrix="Rec601",interlaced=false) Crop(0,44,0,-44).AddBorders(0,44,0,44) return last
[Attachment 14624 - Click to enlarge]
Below, I changed a couple of the anchor points: 2 changes near the bottom of the line, one slight change in the center. Click the images to load into the forum's viewer, then switch back and forth between the two. Very slight changes can make a big difference.
[Attachment 14625 - Click to enlarge]
The deepest blacks are lowered form RGB 14 or 15 or so, down to RGB 8 to 11. A TV isn't going to reproduce darker than that with any accuracy. One downside is that the sharper cutoff in the region RGB 16 and up can be seen in the bottom image. Look at the guy on the right-hand side, and toward his left at the dark shadow on the wall. You should see more clearly how crushing/compression loses data that should form smoother gradations, but the result here is clumpy, banded noise. It will look worse when encoded. I'd have to get into the dither plugin and various deblockers, hoping to clean that up.
The attached .zip file contains "VOB1_try3_posted.vcf" with the filter settings used in VirtualDub. The filters were gradation curves, ColorMill, and ColorTools. After the results of that processing, I added a final tweak step using a gradation curve and low-power NeatVideo. The .zip includes the vcf for that step, "VOB1_try3a_posted.vcf". That vcf doesn't have NeatVideo in it. So if you want NV's settings, I've included the NeatVideo noise profile (.dnp) and filter settings (.nfp) in the .zip . In VirtualDub you can replaced NV with various smoothers and sharpeners, but I think low-octane NeatVideo does cleaner work.
+ Reply to Thread
Results 31 to 54 of 54
-
Last edited by sanlyn; 23rd Mar 2014 at 12:34.
-
thanx a lot, i just cant wait to try it
meanwhile i was playing with qtgmc MT
SetMTMode(2,0)
MPEG2Source("C:\Users\baunduley\Desktop\bc\work\VT S_01_1.d2v", cpu=0)
QTGMC( Preset="Slower", Sigma=2.5, Noiseprocess=1, NoiseRestore=0.0, sharpness=4)
SRestore(frate=23.976)
FFT3DFilter (sigma=3, sharpen=1)
can u spot the fault please!!! -
I don't use it. Read the multi-threaded section of the main thread for more information:
http://forum.doom9.org/showthread.php?t=156028
Better than the encoding framerate is to check on the percentage of your CPUs being used. -
Cleaned some bluish darks, purple hair, drowned detail, hidden eyeballs, neon brights, skin problems, grimy contrast, and a few elements that could burn holes in TV screens and make encoders vomit. Too many spots, flashes, stripes, cherry bombs, blotches, and bad frames to keep going.
[Attachment 14634 - Click to enlarge]
[Attachment 14635 - Click to enlarge]
[Attachment 14636 - Click to enlarge]Last edited by sanlyn; 23rd Mar 2014 at 12:35.
-
I could never expected in my wildest dreams, that such outcome could be possible from the vid
i just cant wait for the entire script/settings
is it just the same u have given earlier?????? -
-
yeah! i could assume that
may be i'll not be able to adapt it for the whole movie, but as i'm a newbie it will help me a lot
i'll come to know the usages of different filters, and how effective they really are under different circumstances
may be i'll make compromises to speed it up, ignoring many flaws.......but in future when i'll face same situations then i'll be able to point out that "oh! i need the '.......' filter this time. for me thats d most important thing
endless thanx to all of you, for ur constant help, and patience -
I'd use a fairly simple script. I'm not willing to put an effort in to fixing every frame with a spot, a jerk, fix colors on a shot-by-shot basis, or whatever. This is a compromise that works fairly well on the two clips:
Code:Mpeg2Source("VTS_01_1.d2v", CPU=6, Info=3) # deblock and dering Crop(0,44,-0,-44) # remove black borders ColorYUV(gamma_y=100, off_y=-10, off_u=1, off_v=2, cont_u=25, cont_v=25) # bring out some dark detail, fix colors a bit QTGMC(preset="fast") # smart bob SRestore(frate=25) # remove most blended frames, restore original 25 fps RemoveSpots() # remove many spots, streaks, etc McTemporalDenoise(settings="very low") # light noise removal
-
quite impressive, simple but effective script jagabo,
tried and and liked it very much..... speed is not bothering at all...thousand hugs
would u mind to explain some points?
1. how do this lineMpeg2Source("VTS_01_1.d2v", CPU=6, Info=3)
2. if can bear some more pain, will it be really worth to use other presets of QTGMC? like medium or slow?
3. why frame rate 25? if i choose 23.976 fps then i could save more processing time! (less frame= less time)
4. would it be advisable to use fft3d instead of McTemporalDenoise? i like the sharpening feature of the former one.
do u think sharpening this would ruin the video? or you've just figured out to restore the video
can i use seesaw here? if yes, then what would be ur personal choice
(basically i haven't got impressive results with seesaw ever, however i heard that its a powerful tool......browsed many thread of both forum vedio help and doom9, but they've just left me confused. the main problem the DVD s what we get here, is completely different from yours.....these are are complete mess. as sanlyn said, the cinematography of this particular film was superb, the DVD company couldn't do a justice with the DoP's hard work)Last edited by baunduley; 8th Nov 2012 at 14:44.
-
You should read the DGDecode Manual and the other docs included in the DGMPGDec package. They're very helpful and very complete. Copying:
cpu: 0 to 6 (default: 0)
Post-Processing Quickset Options.
(Y=luma, C=chroma, H=horizontal, V=vertical)
- 0: DISABLE POST-PROCESSING
- 1: DEBLOCK_Y_H
- 2: DEBLOCK_Y_H, DEBLOCK_Y_V
- 3: DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H
- 4: DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H, DEBLOCK_C_V
- 5: DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H, DEBLOCK_C_V, DERING_Y
- 6: DEBLOCK_Y_H, DEBLOCK_Y_V, DEBLOCK_C_H, DEBLOCK_C_V, DERING_Y, DERING_C
2. if can bear some more pain, will it be really worth to use other presets of QTGMC? like medium or slow?
3. why frame rate 25? if i choose 23.976 fps then i could save more processing time! (less frame= less time)
4. would it be advisable to use fft3d instead of McTemporalDenoise? i like the sharpening feature of the former one. -
couldn't load RemoveSpots()
it says " there is no function called removespots"
installed RemoveGrain but didn't work
should i install visual c++ as described here? http://forum.doom9.org/showthread.php?t=165714Last edited by baunduley; 8th Nov 2012 at 15:56.
-
Sorry, the storm Athena knocked me offline again for a day. The colors in the 2nd sample aren't bad except for the over-pumped contrast and almost crushed darks. The images I posted are similar to jagabo's earlier mkv, I just added some color balance work and smoothed some of the grainy shadows. It might need a little more denoising.
The script:
Code:ColorYUV(cont_y=-40) ColorYUV(off_u=-4) AssumeBFF().QTGMC(preset="medium") srestore(frate=23.976) MergeChroma(TTempSmooth().TTempSmooth()) LSFMod(strength=125) FineSharp(sstr=1.0) # ------ Convert To RGB32 for VirtualDub work. ------ # ------ (Otherwise, save as original YV12) ------ ConvertToRGB32(matrix="Rec601",interlaced=false) Crop(4,44,-2,-46).AddBorders(4,44,2,46) return last function FineSharp(clip c, int "mode", float "sstr", float "cstr", float "xstr", float "lstr", float "pstr", float "ldmp") { mode = default(mode, 1 ) # 1 to 3, weakest to strongest. When negative -1 to -3, a broader kernel for equalisation is used. sstr = default(sstr, 2.0 ) # strength of sharpening, 0.0 up to ?? _cstr = spline(sstr, 0,0, 0.5,0.1, 1.0,0.6, 2.0,0.9, 2.5,1.00, 3.0,1.09, 3.5,1.15, 4.0,1.19, 8.0,1.249, 255.0,1.5) _cstr = (mode>0) ? _cstr : pow(_cstr,1./1.25) cstr = default(cstr, _cstr) # strength of equalisation, 0.0 to ? 2.0 ? (recomm. 0.5 to 1.25, default AUTO) xstr = default(xstr, 0.19 ) # strength of XSharpen-style final sharpening, 0.0 to 1.0 (but, better don't go beyond 0.249 ...) # Viscera parameters lstr = default(lstr, 1.49 ) # modifier for non-linear sharpening pstr = default(pstr, 1.272) # exponent for non-linear sharpening ldmp = default(ldmp, sstr+0.1) # "low damp", to not overenhance very small differences (noise coming out of flat areas) str1 = sstr str2 = cstr SSTR = string(sstr) CSTR = string(cstr) LSTR = string(lstr) PSTR = string(pstr) LDMP = string(ldmp) rg=mode>0?11:20 b = (abs(mode)==1) ? c.removegrain(11,-1).removegrain(4,-1) \ : (abs(mode)==2) ? c.removegrain(4,-1).removegrain(11,-1) \ : (abs(mode)==3) ? c.removegrain(4,-1).removegrain(11,-1).removegrain(4,-1) : c shrpD = mt_lutxy(c,b,"x y - abs "+LSTR+" / 1 "+PSTR+" / ^ "+SSTR+" * x y - x y - abs 0.001 + / * x y - 2 ^ x y - 2 ^ "+LDMP+" + / * 128 +") shrp = (str1<0.01) ? c : c.mt_adddiff(shrpD,U=2,V=2) shrp = (str2<0.01) ? shrp : shrp.mt_makediff(shrpD.mt_lut("x 128 - "+CSTR+" * 128 +").removegrain(rg,-1),U=2,V=2) shrp = (xstr<0.01) ? shrp \ : mt_lutxy(shrp,shrp.removegrain(20,-1),"x x y - 9.9 * +",U=2,V=2).repair(shrp,12,0).mergeluma(shrp,1.0-xstr) return(shrp) }
VirtualDub .vcf settings attached. I used ColorMill, gradation curves, and ColorTools.Last edited by sanlyn; 23rd Mar 2014 at 12:37.
-
Last edited by sanlyn; 23rd Mar 2014 at 12:37.
-
I haven't actually taken a look at the sample myself. I was just going by what jagabo said (and the fact that this is from an Indian DVD). If for NTSC DVD you can do one of two things. You encode for 25fps and run DGPulldown afterwards set for 25->29.97fps. Or you slow both the audio and video to 23.976fps speed, encode for 23.976fps and apply regular 3:2 pulldown. That's what I do most of the time.
-
Thanks, manono. I made a quick run with DGPulldown as you suggested. I just now noticed, it has a choice for "25 > 29.97" that's been there all the time I've been using that app !!!! OMG, even in a small dialog window my memory and peripheral vision must be getting shot to hell.
Last edited by sanlyn; 23rd Mar 2014 at 12:38.
-
now, a new problem has arrived
tried to install MCTemporaldenoise as described as here http://avisynth.org/mediawiki/MCTemporalDenoise
and it did a complete mess
after that installation whenever i try to open avsp, an error msg pops up, saying "error loading avisynth. make sure you have AviSynth installed and that there are no unstable plugins or avsi files in the AviSynth plugins directory."
what am i supposed to do now? how will i detect the particular unstable plugin/avsi file?
i use x64 os win7
my total plugin folder is here.........please help me out
http://www.mediafire.com/?58xatnyyk3ptb7hLast edited by baunduley; 9th Nov 2012 at 07:18.
-
I haven't yet had time to look at every entry in your plugins folder. But the first thing I noticed is that you have bloated the folder with files that Avisynth won't use there. avs, avsi, and dll's are plugins; the .cpp, .txt, .h., and other files are not plugins. Most people keep the original .zip and other downloads and documentation in a different area. All you need in the plugins folder are plugins and the original files that came with the Avisynth installation. Avisynth takes longer to load if it has to parse unnecessary files.
You also have dual versions of some plugins (such as an avs and an avsi of the same filter). Also check that if you're using Win64, you must use all-32bit or all-64-bit versions of the plugins depending on whether you're running 32bit or 64-bit apps. Multiple versions of the same plugins will create problems. Note that some updated versions of filters such as mvtools have multiple versions of dll's but with different names, which is acceptable. When problems do occur, you should keep different versions in different folders if necessary and use the "import" or "LoadPlugin" statements to help Avisynth locate the proper version.
I have many plugins that originally download as "avsi" files. Filling up the plugins folder with all those avsi's is a big load for Avisynth, because all avsi's in that folder are loaded automatically whether you need them or not. So many of those less-used avsi's are renamed as "avs" and I import these explicity when needed (such as RemoveSpots.avs as opposed to RemoveSpots.avsi). But some complex plugins like MCTemporalDenoise require auto-loaded avsi's; you just have to check to see what those multipurpose plugins require.
The problem could be anywhere. At one point some time ago I simply made a copy of my entire plugins folder and stored it elsewhere, then cleaned the original folder of all non-plugins and duplicate plugins. Within a short time I had to move a few things back to the original folder, but this didn't take long.Last edited by sanlyn; 23rd Mar 2014 at 12:38.
-
i'm not so pro....... it occurred yesterday
and i tried to solve it for myself, as i didn't want to bother you with another problem
i wasted 5-6 hrs, tried many ways...... but all in vain
now i'm thinking to delete all the plugins, and reload it. can u please provide me a link where i can find all the important plugins in a pack?
i've serached a lot but google refused me to show such one stop weblink
please save me! -
This is what many people do: most AVisynth and VirtualPlugins download as a package with the plugin, documentation, source code, and other goodies. Downloaded the package to its own subfolder in a bigger folder dedicated entirely to plugin downloads. Each package gets unzipped and the contents and documentation are examined to see what is required. True, some of the docs are so convoluted and technical it's difficult to comprehend it all. But the docs do tell you what goes where and what additional support is required. I keep those downloads in their own folders, along with other posts or articles I find concerning their use; it makes it convenient to find everything in one place for specific filters.
One way to clean up everything is to uninstall and reinstall Avisynth. First, make a copy of your entire current Avisynth program folder. Keep it in a separate place somewhere for future reference. Then go to Control Panel -> Programs and Features, and uninstall. Reboot, then reinstall. Yes, this is a big headache (I've done 2 or 3 times over several years), but I had no problems once everything was organized.
Look over the documentation for plugins. You don't have to memorize it, or even understand all of it. MCTemporalDenoise alone has most of its "documentation" in the comments portion of the avsi itself, which is a lot of verbiage. Some of this stuff is intimidating, but one can learn much from even a brief reading.
Attached are MCTD files that were downloaded elsewhere, but I can't find the old thread. The .zip has three folders:
1. "Copy_To_Avisynth_Plugins" contains Avisynth plugins required by MCTemporalDenoise. 1 or 2 might not be needed, but they are used by other filters.
2. "docs" has documentation on several of the plugins, but not all.
3. "FFTW3DLL_to_System32_or_SysWOW64" has fftw3.DLL. In your system, that dll goes in the SysWOW64 folder.
Any problems, let us know.Last edited by sanlyn; 23rd Mar 2014 at 12:38.
-
I finally had a chance to make an mpg effort with the 2nd sample posted earlier. The script and .vcf for VirtualDub are attached. Some posterization in darker areas is beginning to appear, so a fine balance between denoisers and sharpeners has to determined.
I removed 6 spots that RemoveSpots missed because the spotted object was in motion. Couldn't get them all but removed the most annoying ones with ReplaceFramesMC. Two bad frames shown below were fixed by "borrowing" a clean section of frame from a previous frame and overlaying that section over the bad frame. Neither repair is perfect, but they move fast during play and are difficult to notice. The two frames are 1040 and 1102 in the de-blended version. Unfortunately 1101 and 1102 have a frame hop that couldn't be fixed. They precede a scene change that defies image interpolation.
Caution: The 25fps 32MB mpg is not DVD compliant for NTSC. You'd have to use DGPulldown to get the frame rate up to 29.972
Similar Threads
-
how to fix a color issue on bright areas
By mathmax in forum RestorationReplies: 9Last Post: 19th Nov 2012, 15:29 -
Remove Blank areas from a video
By xstoanurag in forum Video ConversionReplies: 4Last Post: 16th Jun 2011, 20:37 -
Simulate green areas of bad compression
By elmuz in forum EditingReplies: 5Last Post: 24th Mar 2011, 06:28 -
Understanding Why Internet Service BandwidthUsage in Some areas is limited
By Moontrash in forum ComputerReplies: 6Last Post: 19th Feb 2011, 05:55 -
Blocks in dark areas
By santosx in forum Video ConversionReplies: 22Last Post: 12th Oct 2010, 18:54