AviSynth2.5核心滤镜
这里列出了AviSynth2.5中的核心滤镜,按照他们的功能进行了分类,并附有简介和他们所支持的颜色空间(音频滤镜附有其支持的采样类型)。其中一部分滤镜可以将两个(或更多)剪辑进行不同方式的组合,简介中分别描述了他们各自处理剪辑的方式,您也可以参考这里看看他们之间的对比。
本页编译:dgwxx 秋月くれは。
媒体文件滤镜
媒体文件滤镜可以用过来读/写媒体文件。他们可以用来创建原始剪辑。要了解不通过文件创建原始剪辑的滤镜,请参见调试用滤镜。
滤镜 | 简介 | 颜色空间 |
---|---|---|
AviSource / AviFileSource / OpenDMLSource | 打开AVI文件。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
DirectShowSource | 通过DirectShow打开媒体文件。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
ImageReader / ImageSource | 通过读取图片创建剪辑。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
ImageWriter | 将视频帧保存为图片。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Import | 在当前脚本中导入另一个AVS脚本。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
SegmentedAviSource / SegmentedDirectShowSource | 自动序列导入最多100个视频文件。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
WavSource | 打开WAV文件或打开AVI文件中的音轨。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
色彩变换和调整滤镜
以下滤镜用于改变颜色空间类型或者调整一段视频中的颜色。
滤镜 | 简介 | 颜色空间 |
---|---|---|
ColorYUV | 此滤镜用于独立地调节色度和亮度。 | YUY2, Y8, YV411, YV12, YV16, YV24 |
ConvertBackToYUY2 | 此滤镜用于将一段RGB格式视频转换回YUY2格式。 | RGB24, RGB32 |
ConvertToRGB | 此滤镜用于将视频转换成RGB32格式,除非源已是RGB24格式。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
ConvertToRGB24 / ConvertToRGB32 / ConvertToYUY2 / ConvertToY8 / ConvertToYV411 / ConvertToYV12 / ConvertToYV16 / ConvertToYV24 | 此滤镜将视频转换成 RGB24 / RGB32 / YUY2 / Y8 / YV411 / YV12 / YV16 (YUY2的平面版) / YV24 (完整YUV)。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
FixLuminance | 此滤镜用于校正垂直亮度分量的漂移。 | YUY2 |
GreyScale | 此滤镜用于将视频转换成灰阶形式。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Invert | 此滤镜用于翻转所选色彩通道的颜色。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Levels | 此滤镜用于调整黑电平(blacklevel)和白电平(whitelevel)的数值,该滤镜也可以调整视频的Gamma值。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Limiter | 此滤镜将视频中像素的色度亮度数值限制到CCIR-601标准的范围内。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
MergeARGB / MergeRGB | 此滤镜可以将每个输入的视频中选择一个颜色通道并将它们整合。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
MergeChroma / MergeLuma | 此滤镜可以将一个视频剪辑的色度/亮度合并到另一个视频中。有一个可选参数用于调整权重,也就是说可以自由分配两段视频的色度/亮度在新视频中所占的百分比。 | YUY2, Y8, YV411, YV12, YV16, YV24 |
Merge | 此滤镜可以将一个视频剪辑的亮度和色度合并到另一个视频中。有一个可选参数用于调整权重,也就是说可以自由分配两段视频的亮度和色度在新视频中所占的百分比。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
RGBAdjust | 此滤镜用于独立地改变视频中的每个色彩通道。 | RGB24, RGB32 |
ShowAlpha / ShowRed / ShowGreen / ShowBlue | 此滤镜用于显示(A)RGB格式视频中被选择的色彩通道。 | RGB24, RGB32 |
SwapUV | 此滤镜用于交换一个视频的色度通道。 | YUY2, Y8, YV411, YV12, YV16, YV24 ? |
Tweak | 此滤镜用于调整色彩、饱和度、亮度和对比度。 | YUY2, Y8, YV411, YV12, YV16, YV24 |
UToY / VToY | 将色度平面U/V的信息复制到Y平面。(图像尺寸会缩小一半) | YUY2, Y8, YV411, YV12, YV16, YV24 |
UToY8 / VToY8 | UToY.ConvertToY8 / VToY.ConvertToY8的简化形式 | YUY2, YV411, YV12, YV16, YV24 |
YToUV | 此滤镜将指定两段视频中的亮度通道为新视频的U、V通道。新视频的图像尺寸变为源的两倍,亮度降为源的一半。如需增加亮度值,请使用MergeLuma滤镜。 | YUY2, YV12 ? |
交叠和遮罩滤镜
These filters can be used to layer clips with or without using masks and to create masks.
滤镜 | 简介 | 颜色空间 |
---|---|---|
ColorKeyMask | Sets the alpha-channel (similar as Mask does) but generates it by comparing the color. | RGB32 |
Layer | 此滤镜用于层叠(Layering)两段视频。 | RGB32, YUY2 |
Mask | Applies an alpha-mask to a clip. | RGB32 |
MaskHS | This filter returns a mask (as Y8) of clip using a given hue and saturation range. | YUY2, Y8, YV411, YV12, YV16, YV24 |
Overlay | 此滤镜将一段视频交叠在另一段已知视频上,可以选择交叠图像的偏移量,也可以选择不同的交叠方法。另外,还可以设置交叠视频的透明度。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
ResetMask | Applies an "all-opaque" alpha-mask to clip. | RGB32 |
Subtract | Produces an output clip in which every pixel is set according to the difference between the corresponding pixels. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16 (?), YV24 |
几何变形滤镜
以下滤镜用于改变图像尺寸、处理图像边缘或对视频进行其他几何变化。
滤镜 | 简介 | 颜色空间 |
---|---|---|
AddBorders | 此滤镜在图像四周添加黑边 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Crop | 此滤镜用于裁剪每帧图像四周的超量像素。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
CropBottom | 此滤镜用于裁剪每帧图像下部的超量像素。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
FlipHorizontal / FlipVertical | 此滤镜用于左右/上下翻转图像。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Letterbox | 此滤镜仅用于将每帧视频的上下部分(亦可选左右部分)黑化。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
HorizontalReduceBy2 / VerticalReduceBy2 / ReduceBy2 | 此滤镜将每帧图像的水平/垂直或两者尺寸缩小一半。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
BicubicResize / BilinearResize / BlackmanResize / GaussResize / LanczosResize / Lanczos4Resize / PointResize / SincResize / Spline16Resize / Spline36Resize / Spline64Resize | 这些滤镜使用不同的采样算法将输入视频的分辨率调整到任意指定大小。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
TurnLeft / TurnRight / Turn180 | 将视频顺时针/逆时针旋转90° | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
像素重建滤镜
以下滤镜用于重建一段视频中因为除噪、锐化等原因丢失的图像细节(像素)。
滤镜 | 简介 | 颜色空间 |
---|---|---|
Blur / Sharpen | 这是一个简易的基于3x3卷积核矩阵的柔化/锐化滤镜。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
GeneralConvolution | 此滤镜用于生成3x3或5x5的卷积矩阵。 | RGB32 |
SpatialSoften / TemporalSoften | 这两个滤镜分别使用空间/时间选择合并像素方式除去视频剪辑中的噪点。 | YUY2 (SpatialSoften), Y8, YV411, YV12, YV16, YV24 |
FixBrokenChromaUpsampling | 使用免费版本的Canpus DV Codec v1.00采集的视频会存在不正确的提高色度通道采样率的问题(虽然新的非免费版本不存在此问题),此滤镜的作用是为了补偿不正确的色度值已恢复原效果。 | YUY2 |
时间轴编辑滤镜
以下滤镜被用于以时间为纲调整视频中的各帧(视频裁剪、合并和其它操作)。
滤镜 | 简介 | 颜色空间 |
---|---|---|
AlignedSplice / UnalignedSplice | 此滤镜用于将两段或多段视频前后相接成一段视频。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
AssumeFPS / AssumeScaledFPS / ChangeFPS / ConvertFPS | 这些滤镜采用不同方式改变帧率。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
DeleteFrame | 此滤镜用于删除参数所指定的单帧。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Dissolve | 此滤镜的作用与AlignedSplice类似,不同的是此滤镜整合后的视频允许有交叠。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
DuplicateFrame | 此滤镜用于复制参数所指定的单帧。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
FadeIn0 / FadeIn / FadeIn2 / FadeOut0 / FadeOut / FadeOut2 / FadeIO0 / FadeIO / FadeIO2 | FadeIn 和 FadeOut 滤镜可以让视频在开头和结尾处产生线性淡入淡出效果。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
FreezeFrame | 此滤镜用于替换所选区域内的所有帧(闭区间)。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Interleave | 此滤镜基于帧对帧方式交织一组视频中的各帧。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Loop | 此滤镜根据设定的次数循环指定段的视频。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Reverse | 此滤镜用于倒放一段视频。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
SelectEven / SelectOdd | 此滤镜用于输出一段视频的偶数/奇数帧。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
SelectEvery | 此滤镜输出指定时间段内的视频,是诸如SelectEven和SelectOdd滤镜的一般化形式。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
SelectRangeEvery | 此滤镜用于输出选择特定时间区间内的指定帧。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Trim | 此滤镜用于剪切并生成选择帧区间内的视频。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
交错视频滤镜
以下滤镜用于创建和处理基于场格式的视频素材(由于基于帧格式的素材被拆成了场格式而产生的)。虽然AviSynth能处理逐行和交错视频,但主要问题是它经常不能分辨从源滤镜获得视频剪辑的形式。这就是场标志(Field-based Flag)存在并被用于处理交错视频素材的原因。关于场格式视频的更多信息请参见[Interlaced and Field-based video|here]。
滤镜 | 简介 | 颜色空间 |
---|---|---|
AssumeFrameBased / AssumeFieldBased | AviSynth会自动判断视频是基于场格式的还是基于帧格式的。这些滤镜用于将某段视频强制识别为场格式或帧格式。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
AssumeBFF / AssumeTFF | 此滤镜强制指定场序。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Bob | 此滤镜用于将一段视频进行Bob解交错(Bob-deinterlaceing)。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
ComplementParity | 此滤镜用于对场(适用于场格式field-based视频)或帧(适用于帧格式frame-based视频)进行位置求补(上部元素和下部元素交换位置)。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
DoubleWeave | 此滤镜工作方式类似于Weave滤镜,不同点在于此滤镜用合并奇数和偶数对场的方式生成了两倍与Weave滤镜的帧数量。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
PeculiarBlend | 此滤镜用特殊方式合成相邻两帧。 | YUY2 |
Pulldown | 此滤镜简单地将每5帧中的2帧从源视频中去掉。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
SeparateFields | 此滤镜将帧格式视频中的每帧所包含的两个场分离成两个独立的视频。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
SwapFields | 此滤镜将一个交错帧中的两个场进行空间位置交换。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Weave | 此滤镜从已分离场的输入视频中选取奇数编号的场,并将其合并生成交错帧。 | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
音频处理滤镜
以下滤镜用于处理音频。从一段剪辑中获取的音频样本将会被自动转换成某些滤镜需要的特殊形式。这意味着如果某个滤镜不支持输入音频样本的格式,它将自动转换成某种被支持的格式。每个滤镜内置的支持格式在下表中的样本格式栏中给出。如需指定某种特殊的格式,可以使用ConvertAudio函数强制转换。
如果某样本格式是浮点型,当AviSynth需要输出数据时,它将被自动转换成16位整形,因为浮点型不是AVI数据的合法输出。
滤镜 | 简介 | Sample type |
---|---|---|
Amplify / AmplifydB | 此滤镜用于倍率音频样本。 | 16 bit, Float |
AssumeSampleRate | 此滤镜用于调整音频的回放速度。 | All |
AudioDub / AudioDubEx | AudioDub将函数第一个参数中提取的视频和第二个参数中提取的音频整合成一个剪辑。AudioDubEx与其相仿,但如果剪辑中不包含视频或音频流时此滤镜不会产生异常。 | All |
ConvertAudioTo8bit / ConvertAudioTo16bit / ConvertAudioTo24bit / ConvertAudioTo32bit / ConvertAudioToFloat | 此滤镜用于将音频样本转换成8/16/24/32位整形或浮点格式。 | All |
ConvertToMono | 此滤镜用于将所有声道混合成单音。 | 16 bit, Float |
DelayAudio | 此滤镜用于将音频延迟指定秒。 | All |
EnsureVBRMP3Sync | 此滤镜用于纠正因搜寻?(seeking)或裁剪而导致声音视频无法同步的MP3-AVI剪辑。 | All |
GetChannel / GetLeftChannel / GetRightChannel | 此滤镜用于从剪辑中返回音频声道的信息。 | All |
KillAudio / KillVideo | 此滤镜用于完全移除一段剪辑中的音频或视频。 | All |
MergeChannels | 此滤镜用于合并两段音频剪辑的声道。 | All |
MixAudio | 此滤镜用于将两段视频做混音处理。 | 16 bit, Float |
MonoToStereo | 此滤镜用于将两段单声道信号转换成一个立体声信号。 | 16 bit, Float |
Normalize | Amplifies the entire waveform as much as possible, without clipping. | 16 bit, Float |
ResampleAudio | Performs a high-quality change of audio sample rate. | 16 bit |
SuperEQ | High quality 16 band sound equalizer. | Float |
SSRC | Very high quality samplerate conversion. | Float |
TimeStretch | This filter can change speed of the sound without changing the pitch, and change the pitch of a sound without changing the length of a sound. | Float |
条件滤镜和其它元滤镜
元滤镜可以用来控制其他滤镜的执行。条件滤镜的基本特征是它们只对每一帧而不是对整段视频起作用。这允许您能处理使用一般AviSynth脚本很难或不可能完成的复杂视频处理任务。
滤镜 | 简介 | 颜色空间 |
---|---|---|
ConditionalFilter / FrameEvaluate / ScriptClip | ConditionalFilter returns source1 if some condition is met, otherwise it returns source2. ScriptClip/FrameEvaluate returns the clip which is returned by the function evaluated on every frame. | YUY2 ?, YV12 |
ConditionalReader | ConditionalReader allows you to import information from a text file, with different values for each frame - or a range of frames. | YUY2 ?, YV12 |
WriteFile / WriteFileIf / WriteFileStart / WriteFileEnd | These filters evaluate expressions and output the results to a text-file. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 ? |
Animate / ApplyRange | Animate (ApplyRange) is a meta-filter which evaluates its parameter filter with continuously varying (the same) arguments. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 ? |
TCPServer / TCPSource | This filter will enable you to send clips over your network. You can connect several clients to the same machine. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
调试滤镜
滤镜 | 简介 | 颜色空间 |
---|---|---|
BlankClip / Blackness | This filter produces a solid color, silent video clip of the specified length (in frames). | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
ColorBars | This filter produces a video clip containing SMPTE color bars scaled to any image size. | RGB32, YUY2, YV12 |
Compare | Compares two clips and prints out information about the differences. | RGB24, RGB32, YUY2, YV12 |
Histogram | Adds a histogram. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Info | Prints out image and sound information. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
MessageClip | Produces a clip containing a text message. | RGB32 |
ShowFiveVersions | Takes five video clips and combines them in a staggered arrangement from left to right. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16 (?), YV24 |
ShowFrameNumber / ShowSMPTE / ShowTime | Draws text on every frame indicating what number AviSynth thinks it is. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
StackHorizontal / StackVertical | Takes two or more video clips and displays them together in left-to-right/up-to-down order. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Subtitle | Adds a single line of anti-aliased text to a range of frames. | RGB24, RGB32, YUY2, Y8, YV411, YV12, YV16, YV24 |
Tone | This will generate sound. | Float |
Version | Generates a video clip with a short version and copyright statement. | RGB24 |