church_archive_script/Programs/doc/functions/general/loadpluginavs.html
2023-11-29 16:12:35 +00:00

177 lines
No EOL
9.6 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>LoadPlugin (Avisynth Compatibility) &mdash; VapourSynth R64 documentation</title>
<link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../../_static/css/custom.css" type="text/css" />
<!--[if lt IE 9]>
<script src="../../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script src="../../_static/jquery.js"></script>
<script src="../../_static/_sphinx_javascript_frameworks_compat.js"></script>
<script data-url_root="../../" id="documentation_options" src="../../_static/documentation_options.js"></script>
<script src="../../_static/doctools.js"></script>
<script src="../../_static/sphinx_highlight.js"></script>
<script src="../../_static/js/theme.js"></script>
<link rel="index" title="Index" href="../../genindex.html" />
<link rel="search" title="Search" href="../../search.html" />
<link rel="next" title="SetMaxCPU" href="setmaxcpu.html" />
<link rel="prev" title="LoadPlugin" href="loadplugin.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../../index.html" class="icon icon-home">
VapourSynth
</a>
<div class="version">
R64
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../introduction.html">Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../installation.html">Installation</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../gettingstarted.html">Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../pythonreference.html">Python Reference</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../../functions.html">Function Reference</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="../../functions.html#general-functions">General Functions</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="loadallplugins.html">LoadAllPlugins</a></li>
<li class="toctree-l3"><a class="reference internal" href="loadplugin.html">LoadPlugin</a></li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">LoadPlugin (Avisynth Compatibility)</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#avs.LoadPlugin"><code class="docutils literal notranslate"><span class="pre">LoadPlugin()</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="setmaxcpu.html">SetMaxCPU</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../functions.html#video-functions">Video Functions</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../functions.html#audio-functions">Audio Functions</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../output.html">Output</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../applications.html">Applications and Libraries</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../apireference.html">VapourSynth C API Reference</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../index.html">VapourSynth</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="../../index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item"><a href="../../functions.html">Function Reference</a></li>
<li class="breadcrumb-item active">LoadPlugin (Avisynth Compatibility)</li>
<li class="wy-breadcrumbs-aside">
<a href="../../_sources/functions/general/loadpluginavs.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="loadplugin-avisynth-compatibility">
<h1>LoadPlugin (Avisynth Compatibility)<a class="headerlink" href="#loadplugin-avisynth-compatibility" title="Permalink to this heading"></a></h1>
<dl class="py function">
<dt class="sig sig-object py" id="avs.LoadPlugin">
<span class="sig-prename descclassname"><span class="pre">avs.</span></span><span class="sig-name descname"><span class="pre">LoadPlugin</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">string</span> <span class="pre">path</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#avs.LoadPlugin" title="Permalink to this definition"></a></dt>
<dd><p>Load an Avisynth 2.5 (32 bit only), 2.6 (32 and 64 bit) or Avisynth+ (32 and 64 bit) plugin.
If successful, the loaded plugins functions will end up in the avs namespace. Note that
in the case of Avisynth+ theres no way to use the formats combined with alpha or
higher bitdepth packed RGB. Coincidentally there are no plugins that use this in a
meaningful way yet.</p>
<p>The compatibility module can work with a large number of Avisynths plugins.
However, the wrapping is not complete, so the following things will cause
problems:</p>
<blockquote>
<div><ul class="simple">
<li><p>The plugin expects YUY2 or RGB32 input. In this case provide input in
either YUV422P8 or RGB24 format pass compatpack=True as an argument
to the Avisynth function.</p></li>
<li><p>The plugin tries to call env-&gt;invoke().
These calls are ignored when it is safe to do so, but otherwise they
will most likely trigger a fatal error.</p></li>
<li><p>Plugins trying to read global variables.
There are no global variables.</p></li>
</ul>
</div></blockquote>
<p>If there are function name collisions functions will have a number appended
to them to make them distinct. For example if three functions are named
<em>func</em> then they will be named <em>func</em>, <em>func_2</em> and <em>func_3</em>. This means
that Avisynth functions that have multiple overloads (rare) will give
each overload a different name.</p>
<p>Note that if you are really insane you can load Avisynths VirtualDub plugin
loader and use VirtualDub plugins as well. Function overloads are very common
when dealing with VirtualDub.</p>
<p>Beware of Pythons escape character, this will fail:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">LoadPlugin</span><span class="p">(</span><span class="n">path</span><span class="o">=</span><span class="s1">&#39;c:\plugins</span><span class="se">\f</span><span class="s1">ilter.dll&#39;</span><span class="p">)</span>
</pre></div>
</div>
<p>Correct ways:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">LoadPlugin</span><span class="p">(</span><span class="n">path</span><span class="o">=</span><span class="s1">&#39;c:/plugins/filter.dll&#39;</span><span class="p">)</span>
<span class="n">LoadPlugin</span><span class="p">(</span><span class="n">path</span><span class="o">=</span><span class="sa">r</span><span class="s1">&#39;c:\plugins\filter.dll&#39;</span><span class="p">)</span>
<span class="n">LoadPlugin</span><span class="p">(</span><span class="n">path</span><span class="o">=</span><span class="s1">&#39;c:</span><span class="se">\\</span><span class="s1">plugins</span><span class="se">\\</span><span class="s1">filter.dll&#39;</span><span class="p">)</span>
</pre></div>
</div>
</dd></dl>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="loadplugin.html" class="btn btn-neutral float-left" title="LoadPlugin" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="setmaxcpu.html" class="btn btn-neutral float-right" title="SetMaxCPU" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2012-2023, Fredrik Mellbin.</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>