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. |
12th February 2017, 21:13 | #601 | Link | |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
Quote:
|
|
12th February 2017, 21:22 | #602 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
O.K. yv411 is supported, even in the merge luma=true sse2 speedups. Regarding XP: a special build works under XP for me but I had to omit boost library (there is a conditional directive for this), I don't know what else is affected if I switch it off. Functions mt_infix and mt_polish are giving error message. But I will wait a bit more, to have other issues for a hotfix.
Last edited by pinterf; 12th February 2017 at 21:35. |
12th February 2017, 22:23 | #603 | Link | |
Registered User
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 377
|
Quote:
Code:
v1=DGSource("I:\KEIJO_3\BDMV\STREAM\00001.dgi").ConvertBits(16) v2=DGSource("I:\KEIJO_3\BDMV\STREAM\00000.dgi").ConvertBits(16) mask=v1.masktools2_z_mt_edge("prewitt",u=3,v=3) masktools2_z_mt_merge16(v1,v2,mask,true,false).ConvertToStacked() Ah, I just renamed new dll to masktools2_z.dll for having old one. CPU - i5-4670k. |
|
12th February 2017, 23:10 | #604 | Link | |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
Quote:
|
|
13th February 2017, 22:35 | #605 | Link | |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
Quote:
Code:
8 bit: new_x = (x - 16) / 219 * 255, where 219 = 235-16 10 bit: new_x = (x - 64) / 876 * 1023 where 876= 940-64 16 bit: new_x = (x - 4096) / 56064 * 65535 where 56064 = 60160-4096 Code:
expr8 = "x 16 - 219 / 255 *" expr10 = "x 64 - 876 / 1023 *" expr16 = "x 4096 - 56064 / 65535 *" New#1: With the next masktools version you can use a new #B (or #F) operator that autoscales a 8 bit value for the current bit depth Code:
expr_luma = "x 16 #B - 219 #B / 255 #F *" expr_chroma = "x 16 #B - 224 #B / 255 #F *" Code:
expr_luma = "x ymin - ymax ymin - / range_max *" expr_chroma = "x cmin - cmax cmin - / range_max *"
And there are two autoscale operators: #B Method: bit shifts (use this for YUV) e.g. "235 #B" -> always results in max luma #F Method: full-span stretch e.g. x/255*65535 for 16 bit rgb) other samples Code:
expr = "x 40 #B +" expr = "210 #B" # scale const 210! expr = "x 16 #B - 219 #B / 255 #B *" expr = "x ymin - ymax ymin - / range_max *" expr = "x ymin - ymax ymin - / range_max * range_half 2 / +" Last edited by pinterf; 13th February 2017 at 22:54. Reason: typo |
|
14th February 2017, 07:37 | #606 | Link |
Registered User
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
|
pinterf, that seems good to me (but you should wait for others as I don't have many experiences with lut)
I see TheFluff said that vs expr is fast even in 8 bit, did you have look at expr? and another thing, cretindesalpes did mt_xxpand_multi.avsi back then, can this be in masktools.dll? I think this will be faster than what cretindesalpes did in .avsi
__________________
See My Avisynth Stuff |
17th February 2017, 09:55 | #607 | Link |
Registered User
Join Date: Jan 2014
Posts: 2,314
|
I'm in the middle of porting lut functions for high bit depth, and had to do the realtime calculation for them, which is default when lut tables are too big (but nevertheless implemented optional 16 bit lutxy for hardcore x64 users with plenty of RAM :-) )
Now I know what a JIT could help speedwise, because realtime computing is really not a speed champion. Obviously using JIT would be the next logical evolution step. |
25th February 2017, 11:16 | #610 | Link |
Registered User
Join Date: Mar 2007
Posts: 407
|
Just for all readers reference:
New masktools2a.48 successor (masktools2 pfmod) thread here |
Thread Tools | Search this Thread |
Display Modes | |
|
|