Crate vapoursynth4_sys
source ·Expand description
Raw bindings to VapourSynth.
Modules
- VSHelper4.h
Structs
- This giant struct is the way to access
VapourSynth
’s public API. - Describes the format of a clip.
- Contains information about a clip.
- The core represents one instance of VapourSynth. Every core individually loads plugins and keeps track of memory.
- Contains information about a
VSCore
instance. - Contains information about a
VSCore
instance. - A frame that can hold audio or video data.
- Opaque type representing the current frame request in a filter.
- Holds a reference to a function that may be called. This type primarily exists so functions can be shared between the scripting layer and plugins in the core.
- Opaque type representing a registered logger.
VSMap
is a container that stores (key, value) pairs. The keys are strings and the values can be (arrays of) integers, floating point numbers, arrays of bytes,VSNode
,VSFrame
, orVSFunction
.- A reference to a node in the constructed filter graph. Its primary use is as an argument to other filter or to request frames from.
- This struct is used to access
VapourSynth
’s API when a plugin is initially loaded. - A VapourSynth plugin. There are a few of these built into the core, and therefore available at all times: the basic filters (identifier
com.vapoursynth.std
, namespacestd
), the resizers (identifiercom.vapoursynth.resize
, namespaceresize
), and the Avisynth compatibility module, if running in Windows (identifiercom.vapoursynth.avisynth
, namespaceavs
). - A function belonging to a Vapoursynth plugin. This object primarily exists so a plugin’s name, argument list and return type can be queried by editors.
- VSSCRIPTAPI
vsscript
This struct is the way to access VSScript’s public API. - VSScript
vsscript
A script environment. All evaluation and communication with evaluated scripts happens through aVSScript
object. - Describes the format of a clip.
- Contains information about a clip.
Enums
- See
VSFilterGetFrame
. - Audio channel positions as an enum. Mirrors the
FFmpeg
audio channel constants in older api versions. - Describes how the output of a node is cached.
- Options when creating a core.
- Since the data type can contain both pure binary data and printable strings, the type also contains a hint for whether or not it is human readable. Generally the unknown type should be very rare and is almost only created as an artifact of API3 compatibility.
- Controls how a filter will be multithreaded, if at all.
- Controls the behaviour of
mapSetInt()
and friends. - When a
mapGet*
function fails, it returns one of these in the err parameter. - See
addLogHandler()
. - Options when loading a plugin.
- The presets suffixed with H and S have floating point sample type. The H and S suffixes stand for half precision and single precision, respectively. All formats are planar.
- Types of properties that can be stored in a
VSMap
. - Describes the upstream frame request pattern of a filter.
Constants
- Major API version.
- Minor API version. It is bumped when new functions are added to
VSAPI
or core behavior is noticeably changed. - API version. The high 16 bits are
VAPOURSYNTH_API_MAJOR
, the low 16 bits areVAPOURSYNTH_API_MINOR
. - VSSCRIPT_API_MAJOR
vsscript
- VSSCRIPT_API_MINOR
vsscript
- VSSCRIPT_API_VERSION
vsscript
- The number of audio samples in an audio frame. It is a static number to make it possible to calculate which audio frames are needed to retrieve specific samples.
Functions
- getVSScriptAPI⚠
vsscript
Returns a struct containing function pointer for the api. Will returnNULL
is the specified version isn’t supported. - Returns a pointer to the global
VSAPI
instance. - Used to create version numbers. The first argument is the major version and second is the minor.
Type Aliases
- A filter’s “free” function.
- A filter’s “getFrame” function. It is called by the core when it needs the filter to generate a frame.
- Function of the client application called by the core when a requested frame is ready, after a call to
getFrameAsync()
. - Core entry point
- A plugin’s entry point. It must be called
VapourSynthPluginInit2
. This function is called after the core loads the shared library. Its purpose is to configure the plugin and to register the filters the plugin wants to export. - Arguments
- User-defined function called by the core to create an instance of the filter. This function is often named
fooCreate
.