VapourSource

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
(update documentation to lastest version)
m (Requirements)
Line 13: Line 13:
 
<br>
 
<br>
 
== Requirements ==
 
== Requirements ==
* [x86]: [[AviSynth+]] or [http://forum.doom9.org/showthread.php?t=168764 AviSynth 2.6]
+
* [x86]: [[AviSynth+]] or [https://sourceforge.net/projects/avisynth2/ AviSynth 2.6]
 
* [x64]: [[AviSynth+]]
 
* [x64]: [[AviSynth+]]
 
* [http://www.vapoursynth.com/ VapourSynth] R32 or greater (x86 or x64)
 
* [http://www.vapoursynth.com/ VapourSynth] R32 or greater (x86 or x64)

Revision as of 06:41, 22 May 2020

Abstract
Author Chikuzen, DJATOM
Version 0.2
Download Releases
Category Source filters
License GPLv2
Discussion Doom9 Thread

Contents

Description

VapourSource is a VapourSynth script reader for AviSynth+ / AviSynth 2.6.


Requirements

*** vcredist_x86.exe is required for VapourSource-x86
*** vcredist_x64.exe is required for VapourSource-x64


Supported Formats

VapourSource supports the following formats:

VapourSynth colorspace AviSynth colorspace AviSynth+ colorspace
RGB24 RGB24 RGB24
COMPATBGR32 RGB32 RGB32
COMPATYUY2 YUY2 YUY2
GRAY8 Y8 Y8
GRAY16/H Y8 (x2 width) Y16
GRAYS Y8 (x4 width) Y32
YUV420P8 YV12 YV12
YUV420P9/10/16 YV12 (x2 width) YUV420P16
YUV422P8 YV16 YV16
YUV422P9/10/16 YV16 (x2 width) YUV422P16
YUV444P8 YV24 YV24
YUV444P9/10/16 YV24 (x2 width) YUV444P16
YUV444PS YV24 (x4 width) YUV444PS
YUV411P8 YV411 YV411
Only constant format/resolution/framerate clips are supported.
*Y8/YV12/16/24 allow bit depths >8 using the Stack16 format.


Syntax and Parameters


VSImport

Imports an external VapourSynth script (*.vpy).

VSImport (string source, bool "stacked", int "index", int "prefetch")


string  source =
Path to VapourSynth script (*.vpy); path can be omitted if the script is in the same folder as the AviSynth script (*.avs).


bool  stacked = false
If this is set to true, MSB/LSB will be separated and be stacked vertically (Stack16).


int  index = 0
Index of input clip.


int  prefetch = 0
Request given amount of frames in advance (MT behaviour). If you have 4 physical cores, set it to 4.
If AviSynth part of script is too easy in comparison with VS one, It might be good idea to set prefetch to 5. Anyway you can tune it and seek for better performance.




VSEval

Evaluates a VapourSynth script inside an AviSynth script, no need for an external script.

VSEval (string source, bool "stacked", int "index", bool "utf8", int "prefetch")


string  source =
VapourSynth script to be evaluated.


bool  stacked = false
If this is set to true, MSB/LSB will be separated and be stacked vertically.


int  index = 0
Index of input clip.


bool  utf8 = false
If this is set to true, source is assumed to be UTF-8 encoded (default: false).


int  prefetch = 0
Request given amount of frames in advance (MT behaviour). If you have 4 physical cores, set it to 4.
If AviSynth part of script is too easy in comparison with VS one, It might be good idea to set prefetch to 5. Anyway you can tune it and seek for better performance.


Examples

VSImport:

VSImport("script.vpy", stacked=false, index=0, prefetch=4)


VSEval:

script = """
import vapoursynth as vs
bc = vs.get_core().std.BlankClip
clip0 = bc(format=vs.YUV422P8, color=[0, 128, 128])
clip1 = bc(format=vs.YUV422P8, color=[255, 128, 128])
clip0.set_output(index=0)
clip1.set_output(index=1)
"""
VSEval(source=script, index=1, prefetch=4)


Changelog

Version      Date            Changes
0.2 2020/04/06 - reworked prefetch code - re-formatted source
0.1.1 2018/07/19 - add prefetch parameter for multithreading from VapourSynth.
0.1.0 2016/07/05 - support high bit depth formats of AviSynth+ - requires Microsoft Visual C++ 2015 Redistributable Package
0.0.4 2016/05/07 - VS2010 to VS2015 - update avisynth.h, VapourSynth.h and VSScript.h - add 64bit binary
0.0.2 2013/08/06 - fix vertical flip issue on COMPATBGR32. - allow to input a RGB24 clip.
0.0.1 2013/07/31 - initial release


External Links

  • GitHub - Source code repository (v0.1.0 by Chikuzen)
  • GitHub - Source code repository (v0.2 by DJATOM)



Back to External Filters

Personal tools