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 > VapourSynth

Reply
 
Thread Tools Search this Thread Display Modes
Old 16th October 2019, 21:33   #3661  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,279
R48 RC1

Go test it everywhere. Once again all known regressions have been fixed. Mask all the things!

Code:
r48:
it's now possible to select which optimized code path is used for internal filters (sekrit-twc)
avx2 optimization in many filters, previously the internal ones were mostly sse2 (sekrit-twc)
expr filter can now better optimize expressions (sekrit-twc)
the 7zip executable is now bundled with vsrepo
the portable version now includes the documentation as well
the portable version now includes all the plugins bundled with the normal installer again
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 20th October 2019, 20:13   #3662  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,440
Now that python 3.8 is final, will R48 support it?
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database || https://github.com/avisynth-repository
ChaosKing is offline   Reply With Quote
Old 20th October 2019, 20:18   #3663  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,279
Quote:
Originally Posted by ChaosKing View Post
Now that python 3.8 is final, will R48 support it?
Nope, there's no cython release with proper 3.8 support yet.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 21st October 2019, 17:55   #3664  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,279
R48-RC2

More bugs and minor issues fixed. Should be the final RC unless someone finds a serious bug within a week. Test the new add to PATH option a bit extra.

Code:
r48:
it's now possible to select which optimized code path is used for internal filters (sekrit-twc)
avx2 optimization in many filters, previously the internal ones were mostly sse2 (sekrit-twc)
expr filter can now better optimize expressions (sekrit-twc)
the 7zip executable is now bundled with vsrepo
the portable version now includes the documentation as well
the portable version now includes all the plugins bundled with the normal installer again
fixed deadlock when setMessageHandler is called a second time
added an option to add vspipe, avfs and vsrepo to path in the installer
added registry entries for the path to vspipe and vsrepo
imwri is now included in the installer
the overwrite argument in imwri now also disables the requirement for output filesnames to contain a number
fixed corrupt output from imwri when requesting alpha output but the read image doesn't have an alpha channel
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 21st October 2019, 18:15   #3665  |  Link
ChaosKing
Registered User
 
Join Date: Dec 2005
Location: Germany
Posts: 1,440
The PATH stuff works for me (vspipe, vsrepo, avfs). Green stripes are fixed too.
__________________
AVSRepoGUI // VSRepoGUI - Package Manager for AviSynth // VapourSynth
VapourSynth Portable FATPACK || VapourSynth Database || https://github.com/avisynth-repository
ChaosKing is offline   Reply With Quote
Old 21st October 2019, 18:25   #3666  |  Link
l00t
Where's my loot?
 
Join Date: May 2019
Posts: 43
Unfortunately I still have the pink borders, when bbmod (from latest havsfunc) is used. See sample pics:

R47.2:
https://images2.imgbox.com/21/ee/LCxpNQn8_o.png

R48-RC2:
https://images2.imgbox.com/f0/df/Nlp16rcQ_o.png

Relevant part of the VS code:
Code:
clip = core.std.SetFieldBased(clip, 0)
clip = core.std.CropRel(clip=clip, left=0, right=0, top=20, bottom=20)
clip = core.fb.FillBorders(clip, left=0, right=0, top=1, bottom=1, mode="fillmargins") 
clip = havsfunc.bbmod(clip, cTop = 2, cBottom = 2, cLeft = 0, cRight = 0, thresh = 128, blur = 999)
clip = core.resize.Spline36(clip, width=clip.width-0-0, height=clip.height-1-1, src_left=0, src_top=1, src_width=clip.width-0-0, src_height=clip.height-1-1)
I used the portable version of R47.2 and R48-RC2 (both x64) with VSEditor r19 and Python 3.7.5 (embedded). Video is loaded with dgdecodenv.DGSource, most recent version.

Last edited by l00t; 21st October 2019 at 18:44.
l00t is offline   Reply With Quote
Old 21st October 2019, 18:35   #3667  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,279
Quote:
Originally Posted by l00t View Post
Unfortunately I still have the pink borders, when bbmod (from latest havsfunc) is used. See sample pics:

R47.2:
https://images2.imgbox.com/21/ee/LCxpNQn8_o.png

R48-RC2:
https://images2.imgbox.com/f0/df/Nlp16rcQ_o.png

Relevant part of the VS code:
Code:
clip = core.fb.FillBorders(clip, left=0, right=0, top=1, bottom=1, mode="fillmargins") 
clip = havsfunc.bbmod(clip, cTop = 2, cBottom = 2, cLeft = 0, cRight = 0, thresh = 128, blur = 999)
clip = core.resize.Spline36(clip, width=clip.width-0-0, height=clip.height-1-1, src_left=0, src_top=1, src_width=clip.width-0-0, src_height=clip.height-1-1)
I used the portable version of R47.2 and R48-RC2 (both x64) with VSEditor r19 and Python 3.7.5 (embedded). Video is loaded with dgdecodenv.DGSource, most recent version.
Can't reproduce. CPU and input video format+resolution?
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet

Last edited by Myrsloik; 21st October 2019 at 18:40.
Myrsloik is offline   Reply With Quote
Old 21st October 2019, 18:43   #3668  |  Link
l00t
Where's my loot?
 
Join Date: May 2019
Posts: 43
Quote:
Originally Posted by Myrsloik View Post
Can't reproduce. CPU and input video format+resolution?
CPU: Intel i7-9750H
Video format: YUV420P8; 25fps; input resolution: 1920x1080; final resolution: 1920x1038

(added 2 more lines, which might be important as well...)

Last edited by l00t; 21st October 2019 at 18:47.
l00t is offline   Reply With Quote
Old 21st October 2019, 18:47   #3669  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,279
Quote:
Originally Posted by l00t View Post
CPU: Intel i7-9750H
Video format: YUV420P8; 25fps; resolution: 1920x1038

(added 2 more lines, which might be important as well...)
Added how? Ideally I want a way to reproduce it using blankclip as the source and a complete script.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 21st October 2019, 18:52   #3670  |  Link
l00t
Where's my loot?
 
Join Date: May 2019
Posts: 43
Quote:
Originally Posted by Myrsloik View Post
Added how? Ideally I want a way to reproduce it using blankclip as the source and a complete script.
Sorry for being a bit misleading, these were already in the script, when the pictures were taken... (I just wanted to emphasize, that something is happening in bbmod, the script looks fine without it). Nevermind, here's the complete script:

Code:
clip = core.dgdecodenv.DGSource(r'some_hd_video.dgi')
clip = core.resize.Spline36(clip, matrix_in_s="709", transfer_in_s="709", primaries_in_s="709", range_s="limited")
clip = core.std.AssumeFPS(clip, fpsnum=25000, fpsden=1000)
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
clip = core.std.SetFieldBased(clip, 0)
clip = core.std.CropRel(clip=clip, left=0, right=0, top=20, bottom=20)
clip = core.fb.FillBorders(clip, left=0, right=0, top=1, bottom=1, mode="fillmargins")
clip = havsfunc.bbmod(clip, cTop = 2, cBottom = 2, cLeft = 0, cRight = 0, thresh = 128, blur = 999)
clip = core.resize.Spline36(clip, width=clip.width-0-0, height=clip.height-1-1, src_left=0, src_top=1, src_width=clip.width-0-0, src_height=clip.height-1-1)
clip = core.remap.ReplaceFramesSimple(baseclip=clip, sourceclip=core.f3kdb.Deband(clip, range=20, grainy=32, grainc=24, sample_mode=2, dither_algo=3, keep_tv_range=1, blur_first=1, dynamic_grain=0), mappings="[0 1070]")
clip.set_output()

Last edited by l00t; 21st October 2019 at 18:54.
l00t is offline   Reply With Quote
Old 22nd October 2019, 16:49   #3671  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,279
R48-RC3

Fixes the aformentioned pink line at top and bottom (general expr bug) and another 32bit bug in expr as well. Keep testing it.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 22nd October 2019, 18:12   #3672  |  Link
l00t
Where's my loot?
 
Join Date: May 2019
Posts: 43
Wow, so fast, thank you very much! The pinkies are now gone, hooray
l00t is offline   Reply With Quote
Old 22nd October 2019, 20:05   #3673  |  Link
Jukus
Registered User
 
Join Date: Jul 2019
Location: Russia
Posts: 63
Is there any way to use spline144 with Vapour?
Is it true that this is the best resizer for any situation?
Jukus is offline   Reply With Quote
Old 22nd October 2019, 21:35   #3674  |  Link
poisondeathray
Registered User
 
Join Date: Sep 2007
Posts: 4,477
Quote:
Originally Posted by Jukus View Post
Is there any way to use spline144 with Vapour?
With fmtconv kernel="spline", taps=6

Quote:
"spline"

Generic splines, number of sample points is twice the taps parameter, so you can use taps = 6 to get a Spline144Resize equivalent.


Quote:
Is it true that this is the best resizer for any situation?
Probably not. Likely some ringing artifacts, oversharpen halos
poisondeathray is offline   Reply With Quote
Old 22nd October 2019, 21:50   #3675  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,279
Quote:
Originally Posted by Myrsloik View Post
R48-RC3

Fixes the aformentioned pink line at top and bottom (general expr bug) and another 32bit bug in expr as well. Keep testing it.
Keep testing it! So far the only discovered bug in RC3 is in Convolution with float input, everything else should work fine. I'll probably do daily builds from now on until every single regression is gone.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 22nd October 2019, 22:02   #3676  |  Link
poisondeathray
Registered User
 
Join Date: Sep 2007
Posts: 4,477
If you have RGBS and use Expr to add 1 to channel R , is it suppose to round the value ? Or is this the same thing as the Convolution with float input issue ?

clip2 = core.std.Expr(clip, ["x 1 +", "", ""])

e.g. in vsedit, the color picker shows R=0.921468 for clip, R=1.92147 for clip2

I would have expected 1.921468 (G, B remain unchanged at 0.921468)

core.std.SetMaxCPU("none") does not affect the result, R48-RC3 x64

Last edited by poisondeathray; 22nd October 2019 at 22:21.
poisondeathray is offline   Reply With Quote
Old 22nd October 2019, 22:26   #3677  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Ikea Chair
Posts: 2,279
Quote:
Originally Posted by poisondeathray View Post
If you have RGBS and use Expr to add 1 to channel R , is it suppose to round the value ? Or is this the same thing as the Convolution with float input issue ?

clip2 = core.std.Expr(clip, ["x 1 +", "", ""])

e.g. in vsedit, the color picker shows R=0.921468 for clip, R=1.92147 for clip2

I would have expected 1.921468 (G, B remain unchanged at 0.921468)

core.std.SetMaxCPU("none") does not affect the result, R48-RC3 x64
That's how floating point math works. It's not exact.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline   Reply With Quote
Old 22nd October 2019, 22:42   #3678  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 8,853
From VS2008 Float.h

Code:
#define FLT_DIG         6                       /* # of decimal digits of precision */
#define FLT_EPSILON     1.192092896e-07F        /* smallest such that 1.0+FLT_EPSILON != 1.0 */
#define FLT_GUARD       0
#define FLT_MANT_DIG    24                      /* # of bits in mantissa */
#define FLT_MAX         3.402823466e+38F        /* max value */
#define FLT_MAX_10_EXP  38                      /* max decimal exponent */
#define FLT_MAX_EXP     128                     /* max binary exponent */
#define FLT_MIN         1.175494351e-38F        /* min positive value */
#define FLT_MIN_10_EXP  (-37)                   /* min decimal exponent */
#define FLT_MIN_EXP     (-125)                  /* min binary exponent */
#define FLT_NORMALIZE   0
#define FLT_RADIX       2                       /* exponent radix */
#define FLT_ROUNDS      1                       /* addition rounding: near */
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???
StainlessS is offline   Reply With Quote
Old 22nd October 2019, 22:50   #3679  |  Link
poisondeathray
Registered User
 
Join Date: Sep 2007
Posts: 4,477
Thanks Myrsloik, StainlessS ; If it's using FLT_DIG 6 , shouldn't it round to 1.921468 ? Or does it count decimal digits differently ? Or was this covered in grade school math that I might have slept through?
poisondeathray is offline   Reply With Quote
Old 22nd October 2019, 22:52   #3680  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 8,853
Its really the binary digits that count, and 10 is not a power of 2, so it works (rounds) a bit weird.

EDIT: If it were viewed in binary, it would make sense.
__________________
I sometimes post sober.
StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace

"Some infinities are bigger than other infinities", but how many of them are infinitely bigger ???

Last edited by StainlessS; 22nd October 2019 at 22:56.
StainlessS is offline   Reply With Quote
Reply

Tags
speed, vaporware, vapoursynth

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 08:06.


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