VSFilterMod

From Avisynth wiki
Revision as of 18:48, 15 January 2023 by Reel.Deal (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Abstract
Author Gabest, guliverkli2, and others
Version r5.2.7b
Download VSFilterMod_bin_r527b_vmod.zip
Category Subtitling
License GPLv3
Discussion Doom9 Forum


Contents

Description

VSFilterMod is modification of original VSFilter subtitle renderer by Gabest. This mod brings up new features and some minor bugfixes.

VSFilterMod includes the following funtions:

  • VobSub
  • TextSubMod
  • MaskSubMod
  • TextSubModSwapUV


Requirements


Syntax and Parameters

TextSubMod

Adds subtitles from text-based subtitle formats.

Format name
Extension
SubStation Alpha / Advanced SubStation Alpha .ssa / .ass
SubRip .srt
MicroDVD .sub
SAMI .smi
PowerDivX .psb
Universal Subtitle Format .usf
Structured Subtitle Format .ssf


TextSubMod (clip, string "file", int "charset", float "fps", string "vfr")


clip   =
Input clip.


string  file =
Path to subtitles file.


int  charset = 1
charset is the encoding to assume the file is in, if it's not Unicode UTF-8 or UTF-16. (If you need to use this you're doing something wrong.)


float  fps = -1.0
fps is the FPS to assume the video is at. You could just as well just use AssumeFPS instead of using this. VFR overrides this.


string  vfr = ""
vfr is the path to the VFR timecodes file (format 1 or 2) to use for frame times. If set, overrides all other FPS specifications.


VobSub

Adds image-based subtitles in VobSub format. It consists of an *.idx file that stores the subtitle properties and a .sub file that contains the binary data..

VobSub (clip, string)


clip   =
Input clip.


string   =
Path to subtitles file, only .idx and .sub files supported.


MaskSubMod

Creates a subtitle mask clip. Output clip is RGB32 and it is flipped vertically, use FlipVertical() to correct it.

MaskSubMod (string "file", int "width", int "height", float "fps", int "length", int "charset", string "vfr")


string  file =
Path to subtitles file.


int  width =
int  height =
width and height specify the size of the generated clip, in pixels.


float  fps =
fps specifies the framerate of the generated clip.


int  length =
length is the number of frames to produce in the clip.


int  charset =
charset is the encoding to assume the file is in, if it's not Unicode UTF-8 or UTF-16. (If you need to use this you're doing something wrong.)


string  vfr = ""
vfr is the path to the VFR timecodes file (format 1 or 2) to use for frame times.


TextSubModSwapUV


TextSubModSwapUV (bool)


clip   =
Input clip.


bool   = false
Toggles (globally) whether to swap assume the U and V planes are swapped in YV12 video when rendering subtitles. Default is false.


Examples

AviSource("Blah.avi")
TextSubMod(file="subtitle.ass")
#Assume clip is 1280x720, 24fps, and 3,000 frames total
MaskSubMod(file="subtitle.ass", width=1280, height=720, fps=24, length=3000)

#or alternatively you can get the clip properties video = AviSource("Blah.avi") MaskSubMod(file="subtitle.ass", width=video.Width(), height=video.Height(), fps=video.FrameRate(), length=video.FrameCount())
AviSource("Blah.avi")
VobSub("subtitle.sub")


Changelog

r5.2.7b                       - See changes here: https://github.com/computerfan/VSFilterMod/releases
r5.2.7                        - Correctly handle luma values for full range yuv during alpha blending
                              - Fix wrong LSB when working with 10/16 bit clips
                              - Fix yoffset of $img texture being affected when using clip/iclip
                              - Fix repeated scaling of opaque box
                              - Fix $va: body part of outline should not be drawn when va is applied
                              - by @computerfan
r5.2.6        2022/05/21      - Fix use of iclip and movevc with larger values causing content invisible
r5.2.5        2021/05/30      - fix: render for internal subtitles
r5.2.4        2021/02/26      - fix possible crashes of invaild drawing
                              - fix wrong handle of frx fry tag in different resolutions
                              - fix the problem of drawing accuracy
                              - fix crash when update details is empty
                              - changes by Masaiki
r5.2.3        2020/08/08      - fix default value of matrix and range
                              - add YCbCr Matrix (TV601 TV709 TV2020) support
r5.2.2        2020/04/03      - Fix \frx and \fry reversed
r5.2.1        2019/07/07      - Add support for Unicode SMP
r5.2          2018/08/14      - enable non-ascii filename.
r5            2018/04/09      - support YUV420P10 and YUV420P16 for vapoursynth.


External Links




Back to External Filters

Personal tools