View Single Post
Old 30th November 2008, 17:45   #51  |  Link
Sagekilla
x264aholic
 
Join Date: Jul 2007
Location: New York
Posts: 1,752
You could futz something in like this, (in pseudo code):

luma = getLuminance(clip2)
strength = (luma < thr1) ? value1 : (luma < thr2) ? value2: (luma < thr3) ? value3: value4
Gaussianblur(strength)

replace thr1-4, value1-4 with appropriate thresholds/strengths, and then find some function that would get the luminance level of second clip and return a number.

All very easy.


Edit: If I could figure out why the hell my avisynth throws an error every time I try to call AverageLuma(), I could make a better script but here's an example for you:
Code:
Avisource("..")
clip1 = last
clip2 = clip1.SomeFilter() # or another source clip.
luma = AverageLuma(clip2)

thresh1 = 30
thresh2 = 60
thresh3 = 120
thresh4 = 200
str1 = 5
str2 = 4
str3 = 3
str4 = 4
str5 = 6

strength = (luma <= 30) ? str1 : (luma <= 60) ? str2 : (luma <= 120) ? str3 : (luma <= 200) ? str4 : str5
GaussianBlur(strength)
__________________
You can't call your encoding speed slow until you start measuring in seconds per frame.

Last edited by Sagekilla; 30th November 2008 at 18:03.
Sagekilla is offline   Reply With Quote