Lvsfunc

Latest version: v0.8.4

Safety actively analyzes 723158 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 3

0.4.3

What's Changed
* Minor updates by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/103
* Source: Fix d2v files not working by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/105
* Update vsdpir with new `zones` parameter, update typing by Setsugennoao in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/106
* add downloads counter by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/107
* Fix doc typing by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/108
* chickendream: Update warning, make it so res is used by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/109
* Update workflows by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/112
* Fine dehalo update by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/113
* Minor fixes by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/114
* pick_rgvs/rgsf: Fix wrong plugin call by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/117
* Rfs updates by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/116
* ivtc_crdits: Rename to `pulldown_credits` by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/118
* Flake8 docstrings by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/119
* Deprecate .kernels in favour of vs-kernels by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/111
* Update get_matrix, other related updates by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/122
* source: Rewrite function by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/123
* Update matrices by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/124
* check_patterns: New function by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/125
* vsdpir: Fix strength clip size error by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/126
* vsdpir: Default args for Backend if not in kwargs by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/127
* source: `tail_lines` params, check if FILM/ORDER exists by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/128
* Fix vsmlrt stubs by Setsugennoao in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/129
* Fix trim shift in replace_ranges by Setsugennoao in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/132
* Rework and speed up vsdpir function by Setsugennoao in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/130
* setsu made flake8 upset by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/134
* Update release.yml by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/136
* Source updates by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/137
* Doc updates electric boogaloo + bonus fixes by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/138
* Pre-v0.4.3 by LightArrowsEXE in https://github.com/Irrational-Encoding-Wizardry/lvsfunc/pull/139


**Full Changelog**: https://github.com/Irrational-Encoding-Wizardry/lvsfunc/compare/v0.4.2...v0.4.3

0.4.2

**lvsfunc now requires Python 3.10 and VapourSynth 58!**

**Changelog**
* setup.py updates, should now show extra info on pypi
* Docs overhaul
* Lots of docstrings updated to include additional information and warnings
* Add shields to README
* Create unittests for most lvsfunc functions
* Move around certain functions (mainly to `types` and `util`)
* `denoise` renamed to `noise`. Temporary alias still exists.

**New additions**
* `get_matrix_curve`
- Returns a `TransferCharacteristics` based on a given `matrix`.
* `chickendream`
- A wrapper around the graining plugin, chickendream, a plug-in that implements a realistic film grain generator.
* `check_variable_format`
* `check_variable_resolution`
- Separated functionality from `check_variable` into their own functions. `check_variable` still checks both.
* New custom exceptions. Please check [the documentation for a full list](https://lvsfunc.encode.moe/en/latest/submodules/exceptions.html).

**Updates**
* All masking functions now automatically limit their output (This means no weird masking shenanigans because of out-of-range values)
* `get_matrix`: New option to return `types.Matrix` instead of an int. This will at some point become the default behaviour.
* `tivtc_vfr`: Should now properly allow users to do an analysis pass without erroring (See: 90. Thanks Setsugennoao and RivenSkaye!)
* `tivtc_vfr`: `mode=4` during the analysis pass can now be overridden
* `ssim_downsample`: Automatically determine `curve` if None is passed
* `taa`: Fix the wrong width being passed
* `overlay_sign`: Fix float clip range issues
* Remove the following aliases: `misc.get_matrix`, `misc.replace_ranges`, `misc.scale_thresh`, `recon.ChromaReconstruct`, `recon.crecon`, `recon.demangle`.
* A lot of other minor changes and fixes

* Move the following functions to `util`:
- misc.get_matrix
- misc.allow_variable
- misc.colored_clips
- misc.frames_since_bookmark
- misc.load_bookmarks
- misc.get_prop
- misc.check_variable
- misc.chroma_injector
- misc.get_neutral_value

* Move the following types to `types`:
- CURVES
- CreditMask
- CustomScaler
- Direction
- F
- RegressClips
- Resolution
- ScaleAttempt
- SceneChangeMode
- T
- VideoProp

0.4.1

**Changelog**

* Fix docs building
* Remove decorators in favour of a simple function. This makes the docs build again, and will be a bit easier to maintain myself.
* Add some missing functions to the docs
* Set all the outputs per submodule (`__all__`). This means that if you were relying on lvsfunc to import your vsutil functions, stop it. Just import vsutil.
* Docstring updates
* Changed some ALLCAPS function names to camel case. These will remain for the time being, but be deprecated before 0.5.0.

**New additions**

* `vinverse`
* Setsugennoao's implementation of `vinverse`
* `get_neutral_value`
* kernels (91)
* Add a *lot* of new kernels. See the documentation for a full list.
* `get_kernel` and `get_all_kernels`
* This should allow for developers using the lvsfunc `kernel` setup to allow its users to fall back on strings.
* `check_variable`
* Checks whether the clip has a variable format or resolution, and returns an error if so. Replaces the decorators.
* `mixed_rescale`
* WIP scaling function that mimics some of the ideas of `insaneAA` while trying to limit the amount of damage caused by its default options. This should also be easier to modify to your needs.
* `fine_dehalo`
* Ported over the module floating around to use lvsfunc functions and style. Has the added `ref` parameter as well.
* `mt_xxpand_multi`

**Updates**

* Use lambdas or `None` for params where necessary
* `decomb`: Use `lvsfunc.deinterlace.vinverse` instead of `havsfunc.vinverse`
* `stack_planes`: Fix `split` call referencing `comparison.split`
* `upscaled_sraa`: Generalize `supersampler` param (89)
* `vsdpir`: Fix error on non mod8 clips (88)
* `unsharpen`: Add `GRAY` support
* `TIVTC_VFR`: Add main file name to output filenames
* Multiple functions: Add string support for calling `kernels`
* `masked_dha`: Add `ref` param
* `replace_ranges`: Call Remap plugin if possible
* Other minor updates I forgot about

**Deprecations**

* SIVTC, TIVTC_VFR: both use camel case now. The FULLCAPS calls will be support for the time being, but support will be dropped before 0.5.0.

0.4.0

**Changelog**
* Update stubs
* Update requirements.txt
* Other miscellaneous fixes and speed-ups
* Docstring and typing updates
* Remaining ports to APIv4.0

**New additions**
* `descale_fields`
- Simple descaling wrapper for interwoven upscaled fields.
* `ssim_downsample`
- muvsfunc.ssim_downsample rewrite taken from a Vardë gist. Unlike muvsfunc's implementation, this function also works in float and does not use nnedi3_resample.
* `gamma2linear`
* `linear2gamma`
* `fix_telecined_fades`
- A filter that gives a mathematically perfect solution to fades made *after* telecining (which made perfect IVTC impossible). This is an improved version of the Fix-Telecined-Fades plugin that deals with overshoot/undershoot by adding a check.
* `overlay_sign`
- Wrapper to overlay a logo or sign onto another clip. Rewrite of fvsfunc.InsertSign.
* `comparative_descale`
- Easy wrapper to descale to SharpBicubic and an additional kernel, compare them, and then pick one or the other.
* `comparative_rescale`
- Companion function to go with comparative_descale to reupscale the clip for descale detail masking.
* `detail_mask_neo`
- A new detail mask aimed at preserving as much detail as possible within darker areas, even if it winds up being mostly noise.
* `seek_cycle`
- Purely visual tool to view telecining cycles.
* `bob`
- Very simple bobbing function. Shouldn't be used for regular filtering, but as a very cheap bobber for other functions.
* `ivtc_credits`
- Deinterlacing function for interlaced credits (60i/30p) on top of telecined video (24p). This is a combination of havsfunc's dec_txt60mc, ivtc_txt30mc, and ivtc_txt60mc functions. The credits are interpolated and decimated to match the output clip.
* `unsharpen`
- Diff'd unsharpening function. Performs one-dimensional sharpening as such: "Original + (Original - blurred) * Strength". It then merges back noise and detail that was prefiltered away,

**Updates**
* `kernels.lanczos`: Set taps to use the default zimg amount
* all named `kernels`: Default values added to docstring, allowing for easy checking what values are passed
* all `kernels`: Add `resample` and `shift` methods
* `based_aa`: Fix sclip, new lmask, tff param, set ssim_downsample as default downscaler
* `vsdpir`: Now uses `vs-mlrt` instead of `vs-dpir` internally, allowing users to force tensorrt usage

**Deprecations**
* dir_deshimmer
* dir_unsharpen
* deemphasize
* test_descale

0.3.11

**Changelog**
* Update stubs
* Update required packages
* Other miscellaneous fixes and speed-ups
* Docstring and typing updates
* APIv4.0 fixes (turns out I had a few things to change...)

**New additions**
* `based_aa`
- As the name implies, this is a based anti-aliaser. Thank you, based Zastin. This relies on FSRCNNX being very sharp, and as such it very much acts like the main “AA” here.
* `clamp_values`
- Forcibly clamps the given value x to a max and/or min value.
* `fun` submodule for dumb stuff
- These additions will be excluded from future changelogs.
* `BicubicDidee`
- Kernel inspired by a Didée post. See: https://forum.doom9.org/showthread.php?p=1748922#post1748922.

**Updates**
* `vsdpir`: Fix `matrix=None` behaviour, add a check for clip format, add a vsdpir version check, kwargs, etc.
* `masked_dha`: Fix darkstr range
* `diff`: Overloading, add `exclusion_ranges` and `return_ranges`
* aa functions: Change shifting kernel from `Spline36` to `Catrom`
* `tivtc_vfr`: Add decimation parameters (see docstrings for further info), allow overriding of `hybrid` and `vfrDec` for tdec,
* `deblend`: Add `start` option, `decimation` options
* `decomb`: Remove `sharpen` arg, individual kwargs for specific operations, replace vinverse plugin with havsfunc's Vinverse
* `source`: Add mp4 handling
* Other changes and fixes I probably forgot about.

**Notices**
I forgot to leave a warning for it in this version, but `dir_deshimmer` and `dir_unsharp` will *no longer be support in the next version*. If you're using them, first of all *why*, and second, you'll want to update your scripts.

0.3.10

**Changelog**

* Updated stubs
* Woke up to not needing to update anything for APIv4! \o/
* Minor typo fixes
* Deprecation warnings added to certain functions. The following functions are deprecated and will be removed for v0.4.0:
- deemphasize
- dir_deshimmer
* Future warnings added to certain functions. The following functions will likely receive an extensive rewrite in a future commit:
- dir_unsharp
- detail_mask ([see branch](https://github.com/Irrational-Encoding-Wizardry/lvsfunc/tree/detail_mask_rewrite))
- edgefixer

**New additions**
* `deblock.vsdpir`
- A simple vs-dpir wrapper for convenience. Converts to RGB -> runs vs-dpir -> converts back to original format.
* `dehalo.masked_dha`
- A combination of the best of DeHalo_alpha and BlindDeHalo3, plus a few minor tweaks to the masking. Adopted from G41Fun.
* `util.padder`
- New padding utility function. Pads out the pixels on the side by the given amount of pixels.
* `util.force_mod`
- Force output to fit a specific MOD. Minimum returned value will always be mod².
* `util.scale_peak`
- Full-range scale function that scales a value from [0, 255] to [0, peak]

**Updates**
* `mask.detail_mask`
- Remove unnecessary chroma params
* `util.quick_resample`
- Add float 32bit step

Page 2 of 3

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.