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

Closed Thread
 
Thread Tools Search this Thread Display Modes
Old 2nd August 2016, 19:50   #261  |  Link
lansing
Registered User
 
Join Date: Sep 2006
Posts: 1,657
the adjust.py file should be included in the required plugin in the readme
lansing is offline  
Old 2nd August 2016, 19:55   #262  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,555
Quote:
Originally Posted by lansing View Post
the adjust.py file should be included in the required plugin in the readme
Or even better, just copy a cut down version of the function used. It's only like 10 lines of code after you realize that saturation adjustment is the only function ever used in it.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline  
Old 2nd August 2016, 23:35   #263  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,555
Would it be possible to adapt the vinverse and vinverse2 functions for higher bitdepths? I think all that's needed is to make amnt change its default value depending on input.

...for integer formats at least.
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline  
Old 3rd August 2016, 04:38   #264  |  Link
HolyWu
Registered User
 
Join Date: Aug 2006
Location: Taiwan
Posts: 392
Quote:
Originally Posted by Myrsloik View Post
Would it be possible to adapt the vinverse and vinverse2 functions for higher bitdepths? I think all that's needed is to make amnt change its default value depending on input.

...for integer formats at least.
The included two functions in the script already support 8-16 bits...?
HolyWu is offline  
Old 3rd August 2016, 10:27   #265  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,555
Quote:
Originally Posted by HolyWu View Post
The included two functions in the script already support 8-16 bits...?
The problem is the defaults. By default the maximum change will br smaller the higher the bitdepth. Not what most users would expect...
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline  
Old 13th August 2016, 07:47   #266  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 7,277
@HolyWu: Do all the functions in havsfunc support all color formats, or are there restrictions?
If there are could you please note which?

I saw for that LUTDeRainbow and LUTDeCrawl 'Requires YUV input, frame-based only' so that would mean that:
Code:
YUV420P8
YUV422P8
YUV444P8
YUV410P8
YUV411P8
YUV440P8

YUV420P9
YUV422P9
YUV444P9

YUV420P10
YUV422P10
YUV444P10

YUV420P16
YUV422P16
YUV444P16

YUV444PH
YUV444PS
are all supported right?

Do all other functions work with all color formats?
__________________
Hybrid here in the forum, homepage

Last edited by Selur; 13th August 2016 at 08:08.
Selur is offline  
Old 13th August 2016, 10:37   #267  |  Link
feisty2
I'm Siri
 
feisty2's Avatar
 
Join Date: Oct 2012
Location: void
Posts: 2,633
PH = half precision, I don't think any plugin except zimg takes such format..
and half precision is simply useless imho
feisty2 is offline  
Old 13th August 2016, 13:09   #268  |  Link
Myrsloik
Professional Code Monkey
 
Myrsloik's Avatar
 
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,555
Quote:
Originally Posted by Selur View Post
@HolyWu: Do all the functions in havsfunc support all color formats, or are there restrictions?
If there are could you please note which?

I saw for that LUTDeRainbow and LUTDeCrawl 'Requires YUV input, frame-based only' so that would mean that:
Code:
YUV420P8
YUV422P8
YUV444P8
YUV410P8
YUV411P8
YUV440P8

YUV420P9
YUV422P9
YUV444P9

YUV420P10
YUV422P10
YUV444P10

YUV420P16
YUV422P16
YUV444P16

YUV444PH
YUV444PS
are all supported right?

Do all other functions work with all color formats?
Spoiler: that's not all possible formats
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet
Myrsloik is offline  
Old 17th August 2016, 04:13   #269  |  Link
hydra3333
Registered User
 
Join Date: Oct 2009
Location: crow-land
Posts: 540
Just noting for posterity per http://forum.doom9.org/showthread.ph...66#post1776066 and the posts around it a recommendation to change the definition of the TemporalSoften function within havsfunc.py to use the stock standard TemporalSoften rather than a custom TemporalSoften2.

Code:
def TemporalSoften(clip, radius=4, luma_threshold=4, chroma_threshold=8, scenechange=15, mode=2):
    core = vs.get_core()
    
    if not isinstance(clip, vs.VideoNode):
        raise TypeError('TemporalSoften: This is not a clip')
    
    if scenechange:
        clip = set_scenechange(clip, scenechange)

    # edit to change from TemporalSoften2 to vanilla VapourSynth TemoporalSoften
    # http://forum.doom9.org/showthread.ph...66#post1776066
    #return core.focus2.TemporalSoften2(clip, radius, luma_threshold, chroma_threshold, scenechange)
    return core.focus.TemporalSoften(clip, radius, luma_threshold, chroma_threshold, scenechange)
hydra3333 is offline  
Old 24th August 2016, 03:03   #270  |  Link
hydra3333
Registered User
 
Join Date: Oct 2009
Location: crow-land
Posts: 540
Also, a link to what seems to possibly updates arising from vapoursynth R33 ?
http://forum.doom9.org/showthread.ph...97#post1778397
(uses of removegrain and fmtconv)
hydra3333 is offline  
Old 24th August 2016, 14:41   #271  |  Link
hydra3333
Registered User
 
Join Date: Oct 2009
Location: crow-land
Posts: 540
A link showing QTGMC breaks with v9 of nnedi3 (v8 still works) http://forum.doom9.org/showthread.ph...46#post1778446
hydra3333 is offline  
Old 24th August 2016, 22:38   #272  |  Link
AzraelNewtype
Registered User
 
AzraelNewtype's Avatar
 
Join Date: Oct 2007
Posts: 135
It's updated on github already, since about three hours after you reported it. Also the removegrain and resize changes were committed days before you mentioned them. Just grab the current master, don't worry so much about a "release" for a single file repo.
AzraelNewtype is offline  
Old 25th August 2016, 11:39   #273  |  Link
hydra3333
Registered User
 
Join Date: Oct 2009
Location: crow-land
Posts: 540
OK, beaut. Thank you AzraelNewtype !!

Tested and worked fine (still had to edit it per the below, but that's OK).
Code:
def TemporalSoften(clip, radius=4, luma_threshold=4, chroma_threshold=8, scenechange=15, mode=2):
    core = vs.get_core()
    
    if not isinstance(clip, vs.VideoNode):
        raise TypeError('TemporalSoften: This is not a clip')
    
    if scenechange:
        clip = set_scenechange(clip, scenechange)
    # edit to change from TemporalSoften2 to vanilla VapourSynth TemoporalSoften
    # http://forum.doom9.org/showthread.php?p=1776066#post1776066
    #return core.focus2.TemporalSoften2(clip, radius, luma_threshold, chroma_threshold, scenechange)
    return core.focus.TemporalSoften(clip, radius, luma_threshold, chroma_threshold, scenechange)

Last edited by hydra3333; 25th August 2016 at 12:02.
hydra3333 is offline  
Old 26th August 2016, 00:00   #274  |  Link
STJAM
Registered User
 
Join Date: Oct 2012
Posts: 20
Seems that HQDeringmod still needs updating from vapoursynth R33.
fmask = core.generic.Hysteresis(core.std.Median(sobelm, planes=[0]), sobelm, planes=[0])
File "src\cython\vapoursynth.pyx", line 1105, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20799)
AttributeError: No attribute with the name generic exists. Did you mistype a plugin namespace?
STJAM is offline  
Old 26th August 2016, 08:55   #275  |  Link
jackoneill
unsigned int
 
jackoneill's Avatar
 
Join Date: Oct 2012
Location: 🇪🇺
Posts: 760
Quote:
Originally Posted by STJAM View Post
Seems that HQDeringmod still needs updating from vapoursynth R33.
fmask = core.generic.Hysteresis(core.std.Median(sobelm, planes=[0]), sobelm, planes=[0])
File "src\cython\vapoursynth.pyx", line 1105, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20799)
AttributeError: No attribute with the name generic exists. Did you mistype a plugin namespace?
You can extract genericfilters.dll from the R32 portable archive.
__________________
Buy me a "coffee" and/or hire me to write code!
jackoneill is offline  
Old 26th August 2016, 18:52   #276  |  Link
STJAM
Registered User
 
Join Date: Oct 2012
Posts: 20
Thank you jackoneill it works wonderfully.
STJAM is offline  
Old 10th September 2016, 17:28   #277  |  Link
HolyWu
Registered User
 
Join Date: Aug 2006
Location: Taiwan
Posts: 392
Update r24.
  • Replace some RemoveGrain modes with std.Median or std.Convolution.
  • santiag: Use the newer SangNom port.
  • HQDeringmod: Set chroma planes to gray when outputting mask clip.
  • QTGMC: Use the planes parameter instead of the deprecated ones for nnedi3.
  • srestore: Replace MinMax property with separate Min and Max for std.PlaneStats.
  • Overlay: Fix variable referenced before assignment error.
HolyWu is offline  
Old 10th September 2016, 17:29   #278  |  Link
Boulder
Pig on the wing
 
Boulder's Avatar
 
Join Date: Mar 2002
Location: Finland
Posts: 5,733
Thanks!
__________________
And if the band you're in starts playing different tunes
I'll see you on the dark side of the Moon...
Boulder is offline  
Old 24th September 2016, 08:08   #279  |  Link
Sm3n
Registered User
 
Join Date: Jul 2012
Posts: 94
Quote:
Originally Posted by asarian View Post
Hmm, QTGMC is supposed to be a native part of the hav tools, right?! Cuz I'm getting some error about the name scd not existing:

Code:
Script evaluation failed:
Python exception: No attribute with the name scd exists. Did you mistype a plugin namespace?
Traceback (most recent call last):
  File "src\cython\vapoursynth.pyx", line 1489, in vapoursynth.vpy_evaluateScript (src\cython\vapoursynth.c:26885)
  File "f:\jobs\neela.vpy", line 10, in <module>
    vid = haf.QTGMC (vid, InputType=0, Preset="Very Slow", TR2=3, TFF=True)
  File "C:\Program Files\Python35\lib\site-packages\havsfunc.py", line 978, in QTGMC
    if TR0 > 0: ts1 = TemporalSoften(bobbed, 1, 255 << shift, CMts << shift, 28 << shift, 2) # 0.00  0.33  0.33  0.33  0.00
  File "C:\Program Files\Python35\lib\site-packages\havsfunc.py", line 4287, in TemporalSoften
    clip = set_scenechange(clip, scenechange)
  File "C:\Program Files\Python35\lib\site-packages\havsfunc.py", line 4319, in set_scenechange
    sc = core.scd.Detect(sc, thresh)
  File "src\cython\vapoursynth.pyx", line 1103, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20711)
AttributeError: No attribute with the name scd exists. Did you mistype a plugin namespace?
Quote:
Originally Posted by Mystery Keeper View Post
Looks like you're missing the scene detection plugin.
Hello guys,

I got the same issue and I don't get what "scene detection plugin" is.
I'm running python and vapoursynth both 64 on windows machine also 64.

Code:
Failed to evaluate the script:
Python exception: No attribute with the name scd exists. Did you mistype a plugin namespace?
Traceback (most recent call last):
  File "src\cython\vapoursynth.pyx", line 1491, in vapoursynth.vpy_evaluateScript (src\cython\vapoursynth.c:26905)
  File "H:\Untitled.vpy", line 5, in <module>
    video = haf.QTGMC(video, Preset='Medium', TFF=True, FPSDivisor=2)
  File "C:\Users\XXX\AppData\Local\Programs\Python\Python35\lib\site-packages\havsfunc.py", line 958, in QTGMC
    if TR0 > 0: ts1 = TemporalSoften(bobbed, 1, 255 << shift, CMts << shift, 28 << shift, 2) # 0.00  0.33  0.33  0.33  0.00
  File "C:\Users\XXX\AppData\Local\Programs\Python\Python35\lib\site-packages\havsfunc.py", line 4313, in TemporalSoften
    clip = set_scenechange(clip, scenechange)
  File "C:\Users\XXX\AppData\Local\Programs\Python\Python35\lib\site-packages\havsfunc.py", line 4345, in set_scenechange
    sc = core.scd.Detect(sc, thresh)
  File "src\cython\vapoursynth.pyx", line 1105, in vapoursynth.Core.__getattr__ (src\cython\vapoursynth.c:20799)
AttributeError: No attribute with the name scd exists. Did you mistype a plugin namespace?
Is that something to do with "src\cython\vapoursynth.pyx" or "C:\Users\XXX\AppData\Local\Programs\Python\Python35\lib\site-packages\havsfunc.py"?

cheers
Sm3n is offline  
Old 24th September 2016, 09:20   #280  |  Link
Mystery Keeper
Beyond Kawaii
 
Mystery Keeper's Avatar
 
Join Date: Feb 2008
Location: Russia
Posts: 724
Quote:
Originally Posted by Sm3n View Post
Python exception: No attribute with the name scd exists. Did you mistype a plugin namespace?
"scd" is namespace registered by scenchange plugin.
__________________
...desu!
Mystery Keeper is offline  
Closed Thread

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 03:07.


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