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 Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 25th September 2017, 15:51   #401  |  Link
burfadel
Registered User
 
Join Date: Aug 2006
Posts: 2,229
Sounds good. MysteryX might also be interested in it for FrameRateConverter.

EDIT: Thanks Pinterf for the test build, it works much better! I presume you got the reply pm I wrote. After testing I was short on time and sent it in a hurry.

Last edited by burfadel; 28th September 2017 at 12:06.
burfadel is offline   Reply With Quote
Old 12th October 2017, 14:05   #402  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
New build: MvTools2 2.7.23 with depans

Download:
https://github.com/pinterf/mvtools/releases/tag/2.7.23

Code:
- 2.7.23 (20171012)
  Fix: MScaleVect wrong rounding of scaled motion vectors with negative components.
  e.g. proper scaling (-1;-2) to (-2;-4) instead of (-1,-3)
Thanks for the patience.
pinterf is offline   Reply With Quote
Old 12th October 2017, 15:21   #403  |  Link
Taurus
Registered User
 
Taurus's Avatar
 
Join Date: Mar 2002
Location: Krautland
Posts: 903
Thank You,Sir!
Taurus is offline   Reply With Quote
Old 12th October 2017, 16:48   #404  |  Link
burfadel
Registered User
 
Join Date: Aug 2006
Posts: 2,229
Yes, thankyou
burfadel is offline   Reply With Quote
Old 12th October 2017, 18:58   #405  |  Link
FranceBB
Broadcast Encoder
 
FranceBB's Avatar
 
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,883
Thank you!
FranceBB is offline   Reply With Quote
Old 31st October 2017, 05:28   #406  |  Link
nhope
partially-informed layman
 
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
Does MVTools-pfmod in itself require libfftw3f-3.dll? If so, is it just for certain functions? The requirements section of the QTGMC wiki says it does, but I don't find that stated in any MVTools documentation.
nhope is offline   Reply With Quote
Old 31st October 2017, 08:57   #407  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
Quote:
Originally Posted by nhope View Post
Does MVTools-pfmod in itself require libfftw3f-3.dll? If so, is it just for certain functions? The requirements section of the QTGMC wiki says it does, but I don't find that stated in any MVTools documentation.
Used in MAnalyze when dct parameter is not 0. 8x8 block size in 8-bit clips is an exception, because it uses integer fft instead
pinterf is offline   Reply With Quote
Old 31st October 2017, 10:25   #408  |  Link
nhope
partially-informed layman
 
Join Date: Jan 2002
Location: Bangkok, Thailand
Posts: 314
Thank you for the clarification pinterf.
nhope is offline   Reply With Quote
Old 15th November 2017, 06:35   #409  |  Link
MysteryX
Soul Architect
 
MysteryX's Avatar
 
Join Date: Apr 2014
Posts: 2,559
I was wondering, is it possible to calculate the vectors on a 8-bit clip and then apply them on a 16-bit? King of like the ScaleVect function but that scales the bit depth. Analyzing vectors in 16-bit takes WAY longer.
MysteryX is offline   Reply With Quote
Old 15th November 2017, 09:32   #410  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
Quote:
Originally Posted by MysteryX View Post
I was wondering, is it possible to calculate the vectors on a 8-bit clip and then apply them on a 16-bit? King of like the ScaleVect function but that scales the bit depth. Analyzing vectors in 16-bit takes WAY longer.
It could work like MScaleVect, but bit-depth difference (instead of blocksize) should affect SAD readjustment.

On the other hand, I planned to revise 10-16 bit SAD functions, now they are simd intrinsics, which can be changed into faster hand written asm. And it can be even faster for 10 or 12 bits, taking into consideration of possible sum overflows.
pinterf is offline   Reply With Quote
Old 15th November 2017, 18:03   #411  |  Link
MysteryX
Soul Architect
 
MysteryX's Avatar
 
Join Date: Apr 2014
Posts: 2,559
and there was the addition of STAR search method which would be interesting when you have time for that
MysteryX is offline   Reply With Quote
Old 5th December 2017, 05:39   #412  |  Link
MysteryX
Soul Architect
 
MysteryX's Avatar
 
Join Date: Apr 2014
Posts: 2,559
btw it has been a while now... any chance for the bug regarding DCT=1 being slow with MT to be fixed?
MysteryX is offline   Reply With Quote
Old 5th December 2017, 06:10   #413  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
How do you know it's a bug and not something that is inevitable when using floating point fft from this external library?
pinterf is offline   Reply With Quote
Old 5th December 2017, 18:59   #414  |  Link
MysteryX
Soul Architect
 
MysteryX's Avatar
 
Join Date: Apr 2014
Posts: 2,559
The VapourSynth version works perfectly fine and is using the same library AFAIK.
MysteryX is offline   Reply With Quote
Old 5th December 2017, 19:07   #415  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
New release.

Download MvTools2 2.7.24 with depans

A fix for a crash (see topic) in MFlowBlur. I think it was there from the beginnings.

And there is a smart speedup upon MysteryX idea: generate vectors in 8 bits, then use MScaleVect to make it usable for an e.g. 16 bit MDegrain. On my pre-AVX2 PC it gave me more than 50% speedup for a basic MDegrain3 scenario. Try and give feedback.

Code:
- 2.7.24 (20171205)
  Fix: MFlowBlur: possible access violation crash when nPel>1
  New: MScaleVect parameter 'bits'. e.g. Analyze 8 bit clips, use their vectors for 16 bits
  Move project to VS2017
For MScaleVect see documentation in the release pack, in the Documentation folder: mvtools2.html.

In brief: MScaleVect has a new parameter: 'bits'. When specified, the default value of the scale parameter is 1.0 instead of 2.0. So when you use 'bits' only, then the vectors won't be scaled by default by 2.

Example: basic process, analyze in 16 bits
Code:
a=..source
bit=16
blksize = 16
blksizeV = 16
a8=a
a=a.ConvertBits(bit)

sup = a.MSuper(pel=2) #pel=2

fv1 = sup.MAnalyse(isb=false, delta=1, overlap=ov, blksize = blksize, blksizev = blksizev)
bv1 = sup.MAnalyse(isb=true, delta=1, overlap=ov, blksize = blksize, blksizev = blksizev)
fv2 = sup.MAnalyse(isb=false, delta=2, overlap=ov, blksize = blksize, blksizev = blksizev)
bv2 = sup.MAnalyse(isb=true, delta=2, overlap=ov, blksize = blksize, blksizev = blksizev)
fv3 = sup.MAnalyse(isb=false, delta=3, overlap=ov, blksize = blksize, blksizev = blksizev)
bv3 = sup.MAnalyse(isb=true, delta=3, overlap=ov, blksize = blksize, blksizev = blksizev)

a.MDegrain3(Sup, bv1, fv1, bv2, fv2, bv3, fv3, thSAD=1000)
faster way resulting in almost similar result

Code:
a=..source
ov=8
bit=16
blksize = 16
blksizeV = 16
a8=a
a=a.ConvertBits(bit)

sup = a.MSuper(pel=2)
sup8 = a8.MSuper(pel=2)

fv1 = sup8.MAnalyse(isb=false, delta=1, overlap=ov, blksize = blksize, blksizev = blksizev)
bv1 = sup8.MAnalyse(isb=true, delta=1, overlap=ov, blksize = blksize, blksizev = blksizev)
fv2 = sup8.MAnalyse(isb=false, delta=2, overlap=ov, blksize = blksize, blksizev = blksizev)
bv2 = sup8.MAnalyse(isb=true, delta=2, overlap=ov, blksize = blksize, blksizev = blksizev)
fv3 = sup8.MAnalyse(isb=false, delta=3, overlap=ov, blksize = blksize, blksizev = blksizev)
bv3 = sup8.MAnalyse(isb=true, delta=3, overlap=ov, blksize = blksize, blksizev = blksizev)
fv1 = fv1.MScalevect(bits=16)
bv1 = bv1.MScalevect(bits=16)
fv2 = fv2.MScalevect(bits=16)
bv2 = bv2.MScalevect(bits=16)
fv3 = fv3.MScalevect(bits=16)
bv3 = bv3.MScalevect(bits=16)

a.MDegrain3(Sup, bv1, fv1, bv2, fv2, bv3, fv3, thSAD=1000)
pinterf is offline   Reply With Quote
Old 5th December 2017, 21:57   #416  |  Link
real.finder
Registered User
 
Join Date: Jan 2012
Location: Mesopotamia
Posts: 2,587
Quote:
Originally Posted by pinterf View Post
New release.

Download MvTools2 2.7.24 with depans
thanks, now we can use MAnalyze with high bit without need to filtering all things in high bit for 8 bit clips especially when chroma=false, I think this can make it more accurate for filtering 8 bit clips since the motion Analyze done in HBD

aside form that, when masktools turn come for update?
__________________
See My Avisynth Stuff

Last edited by real.finder; 6th December 2017 at 00:25.
real.finder is offline   Reply With Quote
Old 6th December 2017, 02:40   #417  |  Link
MysteryX
Soul Architect
 
MysteryX's Avatar
 
Join Date: Apr 2014
Posts: 2,559
Great job on the update!

Quality-wise, I'd be curious as to the difference between analyzing vectors in 8-bit or 16-bit, but since 16-bit processing was prohibitively slow and we were always better off using a slower preset in 8-bit, the real comparison should be between 8-bit processing and 8-bit analysis + 16-bit motions, both in terms of quality and performance.

Quote:
Originally Posted by pinterf View Post
How do you know it's a bug and not something that is inevitable when using floating point fft from this external library?
Perhaps you could give it a try with VapourSynth to be sure?

Other people have reported it was perfectly stable with 100% CPU usage.

Other great feature would be STAR search method. You can't use that library for that but you can copy/paste it from x265 library.
MysteryX is offline   Reply With Quote
Old 6th December 2017, 09:02   #418  |  Link
pinterf
Registered User
 
Join Date: Jan 2014
Posts: 2,309
Quote:
Originally Posted by MysteryX View Post
Other great feature would be STAR search method. You can't use that library for that but you can copy/paste it from x265 library.
Copy-paste??? Have you seen the source in mvtools and the one in x265? Spent quite a few hours on investigating the feature but couldn't get a grip on it. I found no common points between the two sources. Right now I don't feel like spending days or weeks on the problem.
pinterf is offline   Reply With Quote
Old 6th December 2017, 12:33   #419  |  Link
MysteryX
Soul Architect
 
MysteryX's Avatar
 
Join Date: Apr 2014
Posts: 2,559
Quote:
Originally Posted by pinterf View Post
Copy-paste??? Have you seen the source in mvtools and the one in x265? Spent quite a few hours on investigating the feature but couldn't get a grip on it. I found no common points between the two sources. Right now I don't feel like spending days or weeks on the problem.
Ya copy/paste seems to work better in Word than in C++, somehow
MysteryX is offline   Reply With Quote
Old 6th December 2017, 13:08   #420  |  Link
Groucho2004
 
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
Quote:
Originally Posted by MysteryX View Post
Ya copy/paste seems to work better in Word than in C++, somehow
Hilarious!
__________________
Groucho's Avisynth Stuff
Groucho2004 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 17:03.


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