This page contains functions and plug-ins that I have written for AviSynth, an open-source, script-based, non-linear video editor.
My goals are to write functions and plug-ins that improve the expressiveness and readability of the scripting language; I want to make it easier for other people to write AviSynth scripts.
Documentation for each function is included in the script file itself. To use these functions, either download the .avsi script and copy it to your AviSynth plug-ins directory, or copy and paste the functions you want into your own script.
Some functions may require using the latest stable version of AviSynth and also may require jdl-util.avsi.
General-purpose, utility
functions.
My other scripts are dependent on this file.
Min,
Max, ClampQuote,
EndlAssertEvalThrowUndefinedNullClipJDL_ImageSource
(rationale
and discussion)Trim2,
Trim3 (rationale
and discussion)Trim in
your own user-defined functions. JDL_LengthenClipSetParityAssumeScaledFPSJDL_ShiftFrameNoArgFunctionWrapper
(rationale
and discussion)Animate or ApplyRange
with functions or filters that take no arguments. JDL_FunctionDefinedHasVideo,
HasAudio Functions that operate on ranges in a clip.
JDL_ApplyRange,
JDL_ApplyRangeOld
JDL_ApplyFrameJDL_ApplyEveryJDL_SimpleApplyEveryJDL_DeleteRangeJDL_SingleFrameJDL_ReplaceRangeJDL_FreezeRegionJDL_FreezeLoopFunctions for use with telecined material.
JDL_TelecineJDL_IVTCPattern,
JDL_IVTCPattern2,
JDL_IVTCPatternSegment
JDL_DecimatePattern,
JDL_DecimatePattern2
JDL_ShowFrameOffsetFunctions for use with interlaced material.
JDL_SelectField,
JDL_SelectTopField,
JDL_SelectBottomField
JDL_ReverseFieldDominanceJDL_UnfoldFieldsVertical,
JDL_FoldFieldsVertical
(rationale
and discussion)JDL_InterlacedResizeJDL_SimpleBobJDL_DupeFieldJDL_InterlaceFunctions for creating effects. Also includes miscellaneous, exotic, and specialized functions.
JDL_BlackoutJDL_SilenceJDL_FadeIO,
JDL_FadeVideo,
JDL_FadeAudio JDL_InvertJDL_Wipe
(discussion)JDL_MaskTransition
(discussion)JDL_FillJDL_SlowJDL_ReplaceFirstScanlineJDL_SplitYUV,
JDL_MergeYUV, JDL_SplitRGB JDL_SplitScreenCompareVarious wrapper functions.
AudioGraphWrapper
(rationale
and discussion)TemporalSoftenPresetLevelsWrapperCropWrapperAssumeFPS/ChangeFPS/ConvertFPS
(rationale
and discussion)Documentation for each plug-in is included. Source code also is included under a BSD-style license.
(v0.3.1) A collection of AviSynth functions that operate at regular intervals in a clip.
ApplyEveryDeleteEverySelectEvery
function. DeleteFramesDeleteFrame
function. InterleaveEverySelectEvery
and DeleteEvery. RepeatEveryFrameLengthenClipWhileEval(v0.3.0) Retrieves system environment variables.
GetSystemEnvGetWorkingDirSetWorkingDirGetFileInfo (v0.1.1) Min/Max
functions that can take variable numbers of arguments.
(v0.3.1) A collection of
functions to rearrange frames between clips. Remaps the frame indices
in a clip or from a second clip as specified by an input text file or
by an input string. Efficient alternatives to long chains of FreezeFrame,
DeleteFrame, or ApplyRange.
RemapFramesRemapFramesSimpleReplaceFramesSimple (v0.3.0) A version of
AviSynth's Select function that operates on
strings
(v0.1.5) Randomly shuffles the frames in a clip.
(v0.1.1) Provides simple logging and testing functions. Intended primarily for use by developers.
LogOpen,
LogClose, LogString SetCacheHintsScanClipCompareFiles(v0.1.2) Threshold and coring functions. They map pixels darker than a specified threshold to pure black; all other pixels can be mapped to pure white or can be left untouched.
ApplyEvery
or JDL_ApplyEvery above)") within AviSynth strings
(by WarpEnterprises)?:) with multiple statements| 2010-11-26 |
|
| 2008-10-16 |
|
| 2008-09-13 |
|
| 2008-07-08 |
|
| 2008-06-28 |
|
| 2008-06-09 |
|
| 2006-09-24 |
|
| 2006-01-02 |
|
| 2005-08-26 |
|
| 2005-04-03 |
|
| 2005-01-23 |
|
| 2005-01-10 |
|
| 2004-12-24 |
|
| 2004-12-19 |
|
| 2004-12-07 |
|
| 2004-09-26 |
|
| 2004-08-14 |
|
| 2004-07-26 |
|
| 2004-07-07 |
|
| 2004-07-03 |
|
| 2004-06-26 |
|
| 2004-06-13 |
|
| 2004-06-02 |
|
| 2004-05-31 |
|
| 2004-04-13 |
|
| 2004-04-10 |
|
| 2004-04-08 |
|
| 2004-04-03 |
|
| 2004-04-01 |
|
| 2004-03-31 |
|
| 2004-03-20 |
|
| 2004-03-20 |
|
| 2004-03-19 |
|
| 2004-03-16 |
|
| 2004-03-15 |
|
| 2004-03-14 |
|
| 2004-03-12 |
|
| 2004-03-10 |
|
| 2004-03-09 |
|
| 2004-03-07 |
|
| 2004-03-03 |
|
| 2004-03-02 |
|
| 2004-02-29 |
|
| 2004-02-02 |
|
| 2004-01-24 |
|
| 2003-12-23 |
|
| 2003-11-21 |
|
| 2003-11-03 |
|
| 2003-09-21 |
|
| 2003-09-13 |
|
| 2003-09-06 |
|
| 2003-08-31 |
|
| 2003-08-20 |
|
| 2003-08-16 |
|
| 2003-08-13 |
|
| 2003-08-09 |
|
Written by James D. Lin (stickboy) and assigned to the public domain.