Quote:
Here you go: First define these lines, right after the MaxTreshold line. Like this: Code:
MaxTreshold = 1.50 ScriptClip("bb_noise && nf > 0.001 ? BlockBuster(method=bb_method, detail_min=1, detail_max=6, variance=((1/nf)*8 ), seed=0) : \ BlockBuster(method=bb_method, detail_min=100, detail_max=100, variance=0, seed=0 ) ") That's it :D Play with the "8" in the variance, and also the detail_min. :wink: If you don't want BlockBuster, you don't need to delete the functions :!: Just edit bb_noise=True to read bb_noise=False Enjoy!, -kwag |
Much appreciated, thank you KleverWag... 8)
|
Ok, I raised the Min. Bitrate Value to 450, which is VERY high in my eyes... however, I don't see a difference in picture quality compared to the 100 kb min. Bitrate that I use... :cry:
I still see that the current script, seems to enhance artifacts around objects for some reason... well it's a matter of taste maybe... I'll try to play a little around with blockbuster and aSharp... if you're interested in the results just drop me a PM... :roll: BtW: I just ordered myself the Cyberhome DV-CH 505 Player, to see if that wonderful picture that this player's supposed to have is for real... Well even if not, the player was a bargain for 105 Euro's, and it looks sooo cool 8) here's a pic: http://cgi.ebay.de/ws/eBayISAPI.dll?...&category=8329 |
Quote:
-kwag |
Quote:
Edit: I know this didn't help at all, but I just wanted to say something :lol: |
Haven't had any luck with Blockbuster either, to get rid of those blocks... It seems pretty difficult to adjust the noise in the adaptive script...
I actually thought that blockbuster was already kind of adaptive, because noise was only added to areas where detail was below a certain value. so now the amount of noise added to those areas is linear adaptive right? well are the values you posted your standard values? Very agressive, as far as I can tell... I tried to lower the amount of noise by changing the 8 into a 5... am I on the right track? :roll: |
I'm using the latest script, but for some reason my letterboxing is not working..here is the script from tok.
## DLL Section ## # LoadPlugin("C:\Filters25\MPEG2Dec3.dll") LoadPlugin("C:\Filters25\STMedianFilter.dll") LoadPlugin("C:\Filters25\UnFilter.dll") LoadPlugin("C:\Filters25\asharp.dll") LoadPlugin("C:\Filters25\undot.dll") # #### ## Defined Variables and Constants ## # MaxTreshold = 1.50 scd_trigger = 15 # Scene change trigger value. nf = 0 # Current frame. # #### ## Main section and static filters ### # Mpeg2Source("C:\DVD\longkiss.d2v") # undot() Limiter() asharp(2, 4) BicubicResize(352,240,0,0.6,8,0,704,480) STMedianFilter(8, 32, 0, 0 ) MergeChroma(blur(MaxTreshold)) MergeLuma(blur(0.2)) # # ## Dynamic Linear Adaptive Filtering and Scene Change Detection ## # # ( Portions from AviSynth's manual ) - This will apply temporalsoften to # very static scenes, and apply variable blur on moving scenes. # We also assign a variable - and this is why a line break is inserted: ScriptClip("nf = YDifferenceToNext()"+chr(13)+ "nf > 2.5 ? asharp( -(fmin((nf/35), 1)), 0 ) : \ TemporalSoften(2,7,7,3,2) ") # # Scene change detection ( kwag ) - If a scene change is detected, we # blur heavily. This affects the scene before and the one after the # scene change, thus providing a softer transition for the encoder instead # of a sharp "spike". # If it's not a scene change, then we just blur dynamically, depending on # the action. ScriptClip("nf > scd_trigger ? asharp( -2,0) : asharp( -(fmin((nf/35), 1)), 0) ") # # # #LetterBox(16,16,16,16) # Depends on situation. Use MovieStacker! #AddBorders(0,0,0,0) # Depends on situation. Use MovieStacker! Limiter() # # ## Functions ### function fmin(float f1, float f2) { return (f1<f2) ? f1 : f2 } # #### AssumeFPS(23.976) LoadPlugin("C:\TOK\ToK_EXTRAS\Sampler\Sampler-2.5.dll") oldfps = framerate interval = round((FrameCount/24)/59.940)/10 nFrames = round(24) SelectRangeEvery( (round(framecount/interval)),nFrames) David |
Quote:
Code:
LetterBox(16,16,16,16) # Depends on situation. Use MovieStacker! |
Yep your right :D ..just tested it out and its working again..thanks
David |
Quote:
I've been playing with your script, and I have seen the horizon :mrgreen: I just tried this: Code:
aa=Crop(0*width/4,0*height/4,1*width/4,1*height/4).asharp(4,0) Now we just need to grab the YDifferenceToNext function to actually return ONLY the corresponding quadrant from the following frame. If this is possible, we're gonna be rocking :mrgreen: -kwag |
@ Tenra
Nice result , man , Your script will give us new addaptive filter in very soon future :lol: :lol: :lol: @Kwag Script rocks and results are cool too but are sure that deviding frame for 4 quadrants is enough ??? I think For battle scenes with many moving parts it'll be just not enough to get same effect as in the pictures above . Maybe it makes sence to make more quadrants : lets say 16 or even 25 ,36 .... So we can blur just small part of whole frame and sharpen the other pars :?: :?: :?: Or maybe to make it flexible , to be dinamic number that will change according the movement on frame : more moveing parts bigger number and still picture just 4 . It probably be not easy to program this kind or script but with our " Brilliant " minds I think it's quite possible to get . Sorry for long blah,blah but when I see progress of this very same tread I get more appetite (I hope i wrote right) Regards bman |
On some sources I've found that filesize can grow when adaptive filtering is applied. Encoding a fairly low movement - mostly people talking - AVI source at 480x480 my test samples grow by about 1.2Mb out of 50Mb when adaptive filtering from the latest optimal script is applied, where other higher action sources shrink by a similar amount, all compared to base non-adaptive filtered encodes.
Anyone else noticed this or have I stuffed the tests? Here's the dynamic part of the script. I know it looks different to Kwag's but the filters applied to each frame should be the same. Code:
ScriptClip( "ydp = YDifferenceFromPrevious()" + chr(13) |
On some sources I've found that filesize can grow when adaptive filtering is applied. Encoding a fairly low movement - mostly people talking - AVI source at 480x480 my test samples grow by about 1.2Mb out of 50Mb when adaptive filtering from the latest optimal script is applied, where other higher action sources shrink by a similar amount, all compared to base non-adaptive filtered encodes.
Anyone else noticed this or have I stuffed the tests? Here's the dynamic part of the script. Anything wrong? Code:
ScriptClip( "ydp = YDifferenceFromPrevious()" + chr(13) |
Hi Girv !
Did u compared clips resulted yours and Kwag's script on the same source by size and visual quality ??? Did u tested DVD sources too ??? bman |
sorry if this was already mentioned in this long thread but has anyone tried the Motion Adaptive Mixer by MarcFD :?:
from the readme: Code:
MAM Motion Adaptive Mixer by MarcFD |
@ rendal
Quote:
bman |
I already tried that MAM filter a long time ago with avisynth 2.07 and the quality was poor... It took extremely long and I remember I was really surprised how bad the result actually looked... :cry:
|
Quote:
But on the full encoded film, the total file size should be smaller than without the adaptive filtering. Unless the complete movie is a drama that there's barely any action :roll: If that's the case, then I would lower the line: "nf > 2.5 ?" To read: "nf > 1.0 ?" So that bluring starts at a lower activity. -kwag |
Well my friends, my quadrant adaptive motion tests are over, at least for some time :roll:
I did it, but the result is unacceptable. I divided the screen in 32 quadrants, and applied the same filters that are on the current script to each quadrant. The result in an encoding speed is 1 second every ~1 minute, 30 seconds on my P4 @1.6Ghz 8O So obviously, this is a no no situation. So the current script is about as far as we can go, that is, we can add more stuff but on a complete frame by frame basis. Forget about slicing each frame :!: Now I'm going to look at ren's recommendation on Motion Adaptive Mixer and see what it's all about. The description looks like it would fill in some gaps. So I'll take a look at that now. Edit: MAM is a 2.0x filter. Bye! :x -kwag |
I already thought that it would take a LONG time to do all these kinds of calculations!!
I think we're already pretty well-off with the current script... However I'm still searching for a way to get rid of artifacts around objects and DCT Blocks in dark areas... I know it's not bitrate related, because they're visible in every resolution I tested... :? |
Site design, images and content © 2002-2024 The Digital FAQ, www.digitalFAQ.com
Forum Software by vBulletin · Copyright © 2024 Jelsoft Enterprises Ltd.