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.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 14th August 2008, 04:03   #1001  |  Link
josey_wells
Registered User
 
Join Date: Dec 2007
Location: VA, USA
Posts: 116
Quote:
Originally Posted by Boulder View Post
Actually I have not played around with dct settings at all
I should have posted one more post to get that magic 1000 which you just got.
josey_wells is offline   Reply With Quote
Old 14th August 2008, 12:43   #1002  |  Link
josey_wells
Registered User
 
Join Date: Dec 2007
Location: VA, USA
Posts: 116
Quote:
There is an issue with MVFlowFps!
Ok, I have confirmed there is a problem.

Can someone do compares of the motion vectors produced from V1.9.6.2 and V1.9.5.7 for MVAnalyse? This will give me and idea where to start looking.
josey_wells is offline   Reply With Quote
Old 14th August 2008, 14:07   #1003  |  Link
moviefan
Registered User
 
Join Date: Jul 2005
Posts: 438
Just a little basic question compared to current discussions: How do I efficiently use the block- and overlap size? What settings make sense for which situation? (maybe also discussing SD vs. HD)
moviefan is offline   Reply With Quote
Old 15th August 2008, 00:30   #1004  |  Link
mikeytown2
Resize Abuser
 
mikeytown2's Avatar
 
Join Date: Apr 2005
Location: Seattle, WA
Posts: 623
@josey_wells
Rename the 1.9.5.7 Dll from mvtools.dll to mvtoolsOLD.dll, have the 1.9.6.2 mvtools.dll as is, and then run this code. It could be a little unstable but it does work.

Code:
a = ColorBars(320,240).Trim(0,29)

KenBurnsEffect(a, startAlign=5, endAlign=5, endZoomFactor=50)
last + KenBurnsEffect(a, startZoomFactor=50, startAlign=5, endAlign=1, endZoomFactor=50)
last + KenBurnsEffect(a, startZoomFactor=50, startAlign=1, endAlign=3, endZoomFactor=50)
last + KenBurnsEffect(a, startZoomFactor=50, startAlign=3, endAlign=9, endZoomFactor=50)
last + KenBurnsEffect(a, startZoomFactor=50, startAlign=9, endAlign=7, endZoomFactor=50)
last + KenBurnsEffect(a, startZoomFactor=50, startAlign=7, endAlign=1, endZoomFactor=50)
last + KenBurnsEffect(a, startZoomFactor=50, startAlign=1, endAlign=5)

ConvertToYV12()


vectors=mvtools_MVAnalyseMulti(refframes=1, idx=1)
bw1_vec1=vectors.mvtools_MVMultiExtract(0)
fw1_vec1=vectors.mvtools_MVMultiExtract(1)
a=last.mvtools_MVFlowFps(bw1_vec1,fw1_vec1, idx=2).Subtitle("1.9.6.2").ConvertFPS("ntsc_video")
b=last.mvtools_MVShow(bw1_vec1).Subtitle("1.9.6.2 Backwards")
c=last.mvtools_MVShow(fw1_vec1).Subtitle("1.9.6.2 Forwards")

bw1_vec2=mvtoolsOLD_MVAnalyse(isb=true, idx=3)
fw1_vec2=mvtoolsOLD_MVAnalyse(isb=false, idx=4)
d=last.mvtools_MVFlowFps(bw1_vec2,fw1_vec2, idx=5).Subtitle("1.9.6.2 MVFlowFps w/ 1.9.5.7 MVAnalyse").ConvertFPS("ntsc_video")
e=last.mvtoolsOLD_MVShow(bw1_vec2).Subtitle("1.9.5.7 Backwards")
f=last.mvtoolsOLD_MVShow(fw1_vec2).Subtitle("1.9.5.7 Forwards")

g=last.mvtoolsOLD_MVFlowFps(bw1_vec2,fw1_vec2, idx=8).Subtitle("1.9.5.7").ConvertFPS("ntsc_video")
h=StackComparer(last.mvtools_MVShow(bw1_vec1),last.mvtoolsOLD_MVShow(bw1_vec2),"1.9.6.2 Backwards - 1.9.5.7 Backwards")

j=last.mvtoolsOLD_MVFlowFps(bw1_vec1,fw1_vec1, idx=10).Subtitle("1.9.5.7 MVFlowFps w/ 1.9.6.2 MVAnalyse").ConvertFPS("ntsc_video")
k=StackComparer(last.mvtools_MVShow(fw1_vec1),last.mvtoolsOLD_MVShow(fw1_vec2),"1.9.6.2 Forwards - 1.9.5.7 Forwards")


w=StackHorizontal(a,b,c)
x=StackHorizontal(d,e,f)
y=StackHorizontal(g,h)
z=StackHorizontal(j,k)
StackVertical(w,x,y,z)


Function StackComparer(clip x, clip y, string s)
{
	sb1=Subtract(x,y)
	sb1=Overlay(sb1.Levels(128,1,130,0,255), 
	\ sb1.Levels(126,1,128,0,255).PointResize(320*4,240*4).ConvertToYUY2().Invert("y").ConvertToRGB32().PointResize(320,240)
	\ ,mode="add").Levels(23,1,255,0,255).Subtitle("Black pixels means less/no change")
	s5=Compare(x,y)
	stackhorizontal(s5,sb1).Subtitle(String(s), Align=2)
}
My bet is the problem lies with 1.9.6.2 MVFlowFps.

Last edited by mikeytown2; 15th August 2008 at 00:58.
mikeytown2 is offline   Reply With Quote
Old 15th August 2008, 07:58   #1005  |  Link
mikeytown2
Resize Abuser
 
mikeytown2's Avatar
 
Join Date: Apr 2005
Location: Seattle, WA
Posts: 623
Quote:
Originally Posted by josey_wells View Post
Boulder, since you have a lot more testing than I do. What value of iDct seems to give the best denoise and detection of scene change. I normally use iDct=1 but was wondering what other experience is.
I wrote a little YUY2 test script
Code:

Function mover(clip a)
{
	KenBurnsEffect(a, startZoomFactor=50, startAlign=1, endAlign=5)
}
b = ColorBars(640,480).ConvertToYUY2()
b.Trim(0,29).mover()


vectors=mvtools_MVAnalyseMulti(blksize=16, overlap=8, divide=2, refframes=1, idx=1, dct=4, truemotion=true, pel=2)
bw1_vec1=vectors.mvtools_MVMultiExtract(0)
fw1_vec1=vectors.mvtools_MVMultiExtract(1)

#~ bw1_vec1=mvtoolsOLD_MVAnalyse(isb=true,  blksize=16, overlap=8, divide=2, idx=2, dct=4, truemotion=true, pel=2)
#~ fw1_vec1=mvtoolsOLD_MVAnalyse(isb=false, blksize=16, overlap=8, divide=2, idx=2, dct=4, truemotion=true, pel=2)


c=mvtoolsOLD_MVFlowFps(last, bw1_vec1, fw1_vec1, num=60000,den=1001)
b= mover(b.Trim(0,58)).AssumeFPS("ntsc_double")
Compare(c, b)
StackHorizontal(b)
StackVertical(StackHorizontal(Overlay(b,c,opacity=0.5), StackComparer(c,b,""))).Trim(2,56)

Function StackComparer(clip x, clip y, string s)
{
	sb1=Subtract(x,y)
	sb1=Overlay(sb1.Levels(128,1,130,0,255), 
	\ sb1.Levels(126,1,128,0,255).PointResize(640*4,480*4).ConvertToYUY2().Invert("y").ConvertToRGB32().PointResize(640,480)
	\ ,mode="add").Levels(34,1,255,0,255).Subtitle("Black pixels means less/no change")
	sb1
}
for YUY2 dct=4 is the best (PSNR 53.11), followed by dct=1 (PSNR 53.10)

This gave me the best (PSNR 53.11) results with MVFlowFps.
(blksize=16, overlap=8, divide=2, idx=1, dct=4, truemotion=true, pel=2)



EDIT:
search=3 & dct=1 gives better (PSNR 53.36) results...
baised off of my PSNR tests, I'll use
(blksize=16, overlap=8, divide=2, idx=1, dct=4, truemotion=true, pel=2, search=0)
It's what I like to call best bang for your buck (PSNR 53.12).

Going to pel=4 i get PSNR=48.62
Going to pel=1 i get PSNR=49.50

Edit2:
(blksize=16, overlap=8, divide=2, idx=1, dct=4, truemotion=true, pel=2, search=0, searchparam=0, lambda=2700, sadx264=7, pnew=9)
PSNR=53.29

Last edited by mikeytown2; 15th August 2008 at 10:41.
mikeytown2 is offline   Reply With Quote
Old 15th August 2008, 16:50   #1006  |  Link
Mutant_Fred
Registered User
 
Join Date: Jul 2008
Posts: 4
Quote:
Originally Posted by Fizick View Post
josey_wells,
As I understand, ...Multi functions is now free from thead locking. Other (non-multi) functions (MVFlowFPS, etc) is still not, right ?
In this case, we should use for these (other) functions the v.1.9.5.7 threading implementation (it works fine for most people besides Mutant_Fred).
Hi Fizick,
I don't have much time these days as I was on vacation far from my computer(and still am next week actually, just passing by), but I really ought to try with newest versions from Josey_Wells. Then I can tell if I still encounter same issues. I have hope that these do correct them.

Mutant_Fred
Mutant_Fred is offline   Reply With Quote
Old 15th August 2008, 16:55   #1007  |  Link
moviefan
Registered User
 
Join Date: Jul 2005
Posts: 438
@ mikeytown2: How do you calculate the PSNR?
moviefan is offline   Reply With Quote
Old 15th August 2008, 18:08   #1008  |  Link
Gavino
Avisynth language lover
 
Join Date: Dec 2007
Location: Spain
Posts: 3,405
Quote:
Originally Posted by moviefan View Post
How do you calculate the PSNR?
You don't have to - the Compare filter writes it out on top of its resulting clip.

For details of the calculation, see for example here.
Gavino is offline   Reply With Quote
Old 15th August 2008, 19:59   #1009  |  Link
moviefan
Registered User
 
Join Date: Jul 2005
Posts: 438
Which clips do you compare exactly? The processed (by MVTools from josey_wells) and which other one?
moviefan is offline   Reply With Quote
Old 15th August 2008, 21:14   #1010  |  Link
mikeytown2
Resize Abuser
 
mikeytown2's Avatar
 
Join Date: Apr 2005
Location: Seattle, WA
Posts: 623
@moviefan
I generate the clip using KenBurnsEffect(). By adjusting trim I have 2 clips, one at 30fps the other at 60fps. I then use MVTools to to bring the 30fps up to 60fps and compare the 2.
mikeytown2 is offline   Reply With Quote
Old 15th August 2008, 21:35   #1011  |  Link
scharfis_brain
brainless
 
scharfis_brain's Avatar
 
Join Date: Mar 2003
Location: Germany
Posts: 3,632
that is not a valid test.
you don't have differntial motion (several objects with different speed and trajetories moving and also showing occlusions or transparency).

just take any natural video as reference... that will be better
__________________
Don't forget the 'c'!

Don't PM me for technical support, please.
scharfis_brain is offline   Reply With Quote
Old 15th August 2008, 22:25   #1012  |  Link
mikeytown2
Resize Abuser
 
mikeytown2's Avatar
 
Join Date: Apr 2005
Location: Seattle, WA
Posts: 623
@scharfis_brain just did a test on one of my DV clips. In short my results from above almost correlate with "real" footage. I will admit that this footage isn't a car crash, in that there isn't a lot going on.

Results
33.35016: (blksize=4, overlap=2, divide=0, idx=1, dct=4, truemotion=true, pel=2, search=0, searchparam=0, lambda=2700, sadx264=7, pnew=9)
33.48795: (blksize=8, overlap=4, divide=2, idx=1, dct=4, truemotion=true, pel=4)
33.49406: (idx=1, pel=4)
33.60581: (blksize=16, overlap=8, divide=2, idx=1, dct=4, truemotion=true, pel=4)
33.98558: (blksize=8, overlap=4, divide=2, idx=1, dct=4, truemotion=true, pel=2)
34.02027: (blksize=8, overlap=4, divide=2, idx=1, dct=1, truemotion=true, pel=2, search=3, sadx264=7)
34.02353: (idx=1, dct=1)
34.03998: (idx=1)
34.04628: (idx=1, dct=4)
34.05154: (blksize=16, overlap=8, divide=2, idx=1, dct=4, truemotion=true, pel=2, search=3, searchparam=0, lambda=2700, sadx264=7, pnew=9)
34.05336: (blksize=16, overlap=8, divide=2, idx=1, dct=4, truemotion=true, pel=2)
34.07283: (blksize=16, overlap=8, divide=2, idx=1, dct=0, truemotion=true, pel=2, search=0, searchparam=0, lambda=2700, sadx264=7, pnew=9)
34.07558: (idx=1, dct=1, search=3)
34.08640: (blksize=16, overlap=8, divide=2, idx=1, dct=4, truemotion=true, pel=2, search=0, searchparam=0, lambda=2700, sadx264=7, pnew=9)
34.09980: (blksize=16, overlap=8, divide=2, idx=1, dct=1, truemotion=true, pel=2, search=3, sadx264=7) - Very SLOW

Code:
AVISource("DV-Cam-Test.avi").ConvertToYUY2(interlaced=true)
SeparateFields()
SelectEven()
BicubicResize(320,240)
b=last
SelectEven()


vectors=mvtools_MVAnalyseMulti(blksize=16, overlap=8, divide=2, idx=1, dct=4, truemotion=true, pel=4)
bw1_vec1=vectors.mvtools_MVMultiExtract(0)
fw1_vec1=vectors.mvtools_MVMultiExtract(1)

#~ bw1_vec1=mvtoolsOLD_MVAnalyse(isb=true,  blksize=16, overlap=8, divide=2, idx=2, dct=4, truemotion=true, pel=2)
#~ fw1_vec1=mvtoolsOLD_MVAnalyse(isb=false, blksize=16, overlap=8, divide=2, idx=2, dct=4, truemotion=true, pel=2)


c=mvtoolsOLD_MVFlowFps(last, bw1_vec1, fw1_vec1, num=30000,den=1001)
Compare(c, b, logfile="u.txt")
StackHorizontal(b)
StackVertical(StackHorizontal(Overlay(b,c,opacity=0.5), StackComparer(c,b,"")))
Trim(2,framecount()-2)
SelectOdd()

Function StackComparer(clip x, clip y, string s)
{
	sb1=Subtract(x,y)
	sb1=Overlay(sb1.Levels(128,1,130,0,255), 
	\ sb1.Levels(126,1,128,0,255).PointResize(320*4,240*4).ConvertToYUY2().Invert("y").ConvertToRGB32().PointResize(320,240)
	\ ,mode="add").Levels(34,1,255,0,255).Subtitle("Black pixels means less/no change")
	sb1
}
Load the txt file into excel and do an average on the PSNR column. The odd thing is pel=4 seems to be worse then pel=2 and large blocks are better.

Last edited by mikeytown2; 16th August 2008 at 00:05. Reason: changed position of ConvertToYUY2
mikeytown2 is offline   Reply With Quote
Old 15th August 2008, 23:36   #1013  |  Link
josey_wells
Registered User
 
Join Date: Dec 2007
Location: VA, USA
Posts: 116
OK, here is V1.9.6.5.

http://rapidshare.com/files/13762011...9.6.5.rar.html

I found out that I broke it between V1.9.6.1 Final and V1.9.6.2 Final.

I have compared, MVFlow, MVFlowBlur, MVFlowFPS, MVFlowIter, MVDegrain, MVAnalyse, MVCompensate, etc. between this version and FZick's V1.9.5.7

This contains all the enhancements listed in the previous post. Plus the MT flag for MVAnalyseMulti, and MVDegrainX, and MVDegrainMulti. Default is true which will run functions multithreaded. If set false then will run threads singurlarly.

This one should be pretty much bulletproof. But alas I can be proven wrong.
josey_wells is offline   Reply With Quote
Old 16th August 2008, 00:23   #1014  |  Link
mikeytown2
Resize Abuser
 
mikeytown2's Avatar
 
Join Date: Apr 2005
Location: Seattle, WA
Posts: 623
@josey_wells Bug in MVAnalyse/MVAnalyseMulti with blksize=16 and overlap!=0. So far everything else seems to be ok.

Crash report from VDub
Code:
VirtualDub crash report -- build 29958 (release)
--------------------------------------

Disassembly:
012b2360: 43              inc    ebx
012b2361: 3a5c446f        cmp    bl, [esp+eax*2+6fh]
012b2365: 63756d          arpl   [ebp+6dh], si
012b2368: 656e            outsb  
012b236a: 7473            jz     012b23df
012b236c: 20616e          and    [ecx+6eh], ah
012b236f: 64205365        and    fs:[ebx+65h], dl
012b2373: 7474            jz     012b23e9
012b2375: 696e67735c4d69  imul   ebp, [esi+67h], 694d5c73
012b237c: 6b652043        imul   esp, [ebp+20h], 43h
012b2380: 61              popad  
012b2381: 7270            jc     012b23f3
012b2383: 65725c          jc     012b23e2
012b2386: 44              inc    esp
012b2387: 65736b          jnc    012b23f5
012b238a: 746f            jz     012b23fb
012b238c: 705c            jo     012b23ea
012b238e: 56              push   esi
012b238f: 6964656f20546f  imul   esp, [ebp+6fh], 6f6f5420
          6f              
012b2397: 6c              insb   
012b2398: 735c            jnc    012b23f6
012b239a: 56              push   esi
012b239b: 69727475616c44  imul   esi, [edx+74h], 446c6175
012b23a2: 7562            jnz    012b2406
012b23a4: 2d312e382e      sub    eax, 2e382e31
012b23a9: 345c            xor    al, 5ch
012b23ab: 56              push   esi
012b23ac: 69727475616c44  imul   esi, [edx+74h], 446c6175
012b23b3: 7562            jnz    012b2417
012b23b5: 2e7664          jbe    012b241c
012b23b8: 6900c05bc38d    imul   eax, [eax], 8dc35bc0
012b23be: 7600            jbe    012b23c0
012b23c0: 53              push   ebx
012b23c1: 8b442408        mov    eax, [esp+08h]
012b23c5: 8b4c240c        mov    ecx, [esp+0ch]
012b23c9: 8b542410        mov    edx, [esp+10h]
012b23cd: 8b5c2414        mov    ebx, [esp+14h]
012b23d1: 0f1002          movups xmm0, [edx]
012b23d4: 0f100c1a        movups xmm1, [edx+ebx]
012b23d8: 8d145a          lea    edx, [edx+ebx*2]
012b23db: 0f1012          movups xmm2, [edx]
012b23de: 0f101c1a        movups xmm3, [edx+ebx]
012b23e2: 8d145a          lea    edx, [edx+ebx*2]
012b23e5: 660ff600        psadbw xmm0, [eax]      <-- FAULT
012b23e9: 660ff60c08      psadbw xmm1, [eax+ecx]
012b23ee: 8d0448          lea    eax, [eax+ecx*2]
012b23f1: 0f1022          movups xmm4, [edx]
012b23f4: 660ffdc1        paddw  xmm0, xmm1
012b23f8: 660ff610        psadbw xmm2, [eax]
012b23fc: 660ff61c08      psadbw xmm3, [eax+ecx]
012b2401: 8d0448          lea    eax, [eax+ecx*2]
012b2404: 0f102c1a        movups xmm5, [edx+ebx]
012b2408: 8d145a          lea    edx, [edx+ebx*2]
012b240b: 660ffdd3        paddw  xmm2, xmm3
012b240f: 0f1032          movups xmm6, [edx]
012b2412: 0f103c1a        movups xmm7, [edx+ebx]
012b2416: 8d145a          lea    edx, [edx+ebx*2]
012b2419: 660ffdc2        paddw  xmm0, xmm2
012b241d: 660ff620        psadbw xmm4, [eax]
012b2421: 660ff62c08      psadbw xmm5, [eax+ecx]
012b2426: 8d0448          lea    eax, [eax+ecx*2]
012b2429: 0f100a          movups xmm1, [edx]
012b242c: 660ffde5        paddw  xmm4, xmm5
012b2430: 660ff630        psadbw xmm6, [eax]
012b2434: 660ff63c08      psadbw xmm7, [eax+ecx]
012b2439: 8d0448          lea    eax, [eax+ecx*2]
012b243c: 0f10141a        movups xmm2, [edx+ebx]
012b2440: 8d145a          lea    edx, [edx+ebx*2]
012b2443: 660ffdf7        paddw  xmm6, xmm7
012b2447: 0f101a          movups xmm3, [edx]
012b244a: 660ffdc4        paddw  xmm0, xmm4
012b244e: 0f10241a        movups xmm4, [edx+ebx]
012b2452: 8d145a          lea    edx, [edx+ebx*2]
012b2455: 660ffdc6        paddw  xmm0, xmm6
012b2459: 660ff608        psadbw xmm1, [eax]
012b245d: 660f            db     0fh
012b245f: f6              db     0f6h

Built on Aegis on Sat Aug 09 14:02:26 2008 using compiler version 1400

Windows 5.1 (Windows XP x86 build 2600) [Service Pack 3]

EAX = 01e9c918
EBX = 00000080
ECX = 00000080
EDX = 02410a98
EBP = 000003a3
ESI = 02457440
EDI = 00000800
ESP = 0238fd7c
EIP = 012b23e5
EFLAGS = 00010283
FPUCW = ffff027f
FPUTW = ffffaaaa

Crash reason: Access Violation

Crash context:
An out-of-bounds memory access (access violation) occurred in module 'mvtools'...

...reading address FFFFFFFF.

Pointer dumps:

EAX   01e9c918: 52565656 49494949 41414249 353e4141 35353535 2d2d2d2f 1f1f2a2d 151f1f1f
EDX   02410a98: 8b9b9b9b 80808080 70707280 586d7070 58585858 48484852 2e354848 2e2e2e2e
ESI   02457440: 00000004 00000003 00000010 00000010 0000000c 00000001 00000000 00000008
ESP   0238fd78: 00244cb0 02410898 012d69c4 01e9c918 00000080 02410898 00000080 00000000
      0238fd98: 00000000 02e0ffff 00000000 02457440 00000000 00000000 012d5862 00000014
      0238fdb8: 00000028 00000000 00000000 00000000 00000000 01b927b4 00000010 fffffff0
      0238fdd8: 00000008 00000004 00000004 00000000 00000000 00007d00 0000001e 01e9f950

Thread call stack:
012b23e5: mvtools!000123e5
012d69c4: mvtools!000369c4
012d5862: mvtools!00035862
012d4411: mvtools!00034411
012d4092: mvtools!00034092
7c910202: ntdll!RtlAllocateHeap [7c900000+100a4+15e]
0130b7c4: mvtools!0006b7c4
7c910202: ntdll!RtlAllocateHeap [7c900000+100a4+15e]
013396f8: mvtools!_AvisynthPluginInit2@4 [012a0000+6c5d0+2d128]
7c910202: ntdll!RtlAllocateHeap [7c900000+100a4+15e]
013397a0: mvtools!_AvisynthPluginInit2@4 [012a0000+6c5d0+2d1d0]
7c910202: ntdll!RtlAllocateHeap [7c900000+100a4+15e]
7c80b713: kernel32!GetModuleFileNameA [7c800000+b55f+1b4]
7c910202: ntdll!RtlAllocateHeap [7c900000+100a4+15e]

-- End of report

Last edited by mikeytown2; 16th August 2008 at 02:44.
mikeytown2 is offline   Reply With Quote
Old 16th August 2008, 02:32   #1015  |  Link
Spuds
dumber every day
 
Spuds's Avatar
 
Join Date: Dec 2006
Location: Planet Earth
Posts: 154
I can't get anything to work correctly, multi or not, with the latest build. The resulting frames are completely corrupt. I tried the core2 and p4 compiles with the same results. The lower half of each frame appears to be a composite of two different frames and the top half seems to have some form of chroma corruption.
Spuds is offline   Reply With Quote
Old 16th August 2008, 02:35   #1016  |  Link
josey_wells
Registered User
 
Join Date: Dec 2007
Location: VA, USA
Posts: 116
This should fix.

http://rapidshare.com/files/13764584...9.6.6.rar.html

There was a problem with all YV12 frames, I only tested YUY2.
josey_wells is offline   Reply With Quote
Old 16th August 2008, 07:14   #1017  |  Link
Zep
Registered User
 
Join Date: Jul 2002
Posts: 587
Quote:
Originally Posted by josey_wells View Post
This should fix.

http://rapidshare.com/files/13764584...9.6.6.rar.html

There was a problem with all YV12 frames, I only tested YUY2.
MVFlowFps crashes instantly for me with this version with

An out-of-bounds memory access (access violation) occurred in module 'mvtools'...
...reading address 00000000.


if I comment out MVFlowFps line it runs fine. (the official release works fine)

backward_vec = video.MVAnalyse(blksize=16, truemotion=true, isb = true, chroma=true, pel=1, search=3, searchparam=1, idx=1)
forward_vec = video.MVAnalyse(blksize=16,truemotion=true,isb = false, chroma=true, pel=1, search=3, searchparam=1, idx=1)
video=video.MVFlowFps(backward_vec, forward_vec, num=4*FramerateNumerator(video),den=FramerateDenominator(video), mask=0, idx=1)

Last edited by Zep; 16th August 2008 at 18:06.
Zep is offline   Reply With Quote
Old 16th August 2008, 08:57   #1018  |  Link
IanB
Avisynth Developer
 
Join Date: Jan 2003
Location: Melbourne, Australia
Posts: 3,173
@mikeytown2,
Code:
...
012b23e5: 660ff600        psadbw xmm0, [eax]      <-- FAULT
...
EAX = 01e9c918   <-- This address is not Mod 16!
IanB is offline   Reply With Quote
Old 16th August 2008, 09:57   #1019  |  Link
map1742
Registered User
 
Join Date: Jan 2007
Posts: 6
@josey_wells

I was just documenting a bug report for YV12 chroma corruption in 1.9.6.2 when using a filtered clip in mvanalyse but you may already fixed it in 1.9.6.6 (at least for a blksize of 8).

However 1.9.6.5 and 1.9.6.6 both immediately crash for me with a blksize of 16 in the same code section as @mikeytown2 above. This for both YV12 and YUY2.

On a Q6600 with 1.9.6.6 and mvdegrain3 with a blksize of 8 on my test script I am seeing 10 to 11 fps with the multi versions compared to 1.9.5.7 at 2 to 3 fps.

Thank you for your work on threading this.
map1742 is offline   Reply With Quote
Old 16th August 2008, 17:06   #1020  |  Link
Boulder
Pig on the wing
 
Boulder's Avatar
 
Join Date: Mar 2002
Location: Hollola, Finland
Posts: 4,851
Using the multithreaded MVTools tends to eat up quite a lot of memory (with Avisynth 2.5.8RC3). I have had to set SetMemoryMax to 384 to cope with this on my 2GB RAM computer, running two encoders simultaneously. My regular processing script takes something like 700-800MB in HC with these settings. How's the memory usage on other users computers?

Even when running two encoders, I noticed that allowing MVTools to use multithreading is more efficient than using mt=false to disable multithreading With one encoder and mt=true, I got ~5.2 fps - with two encoders and mt=true, I get a total of ~7.0 fps. With mt=false in the latter case, I got 6.7-6.8 fps.
__________________
And if the band you're in starts playing different tunes
I'll see you on the dark side of the Moon...

Last edited by Boulder; 16th August 2008 at 19:10. Reason: Added mt=false result
Boulder is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 13:43.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.