Lvsfunc

Latest version: v0.8.1

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

Scan your dependencies

Page 2 of 3

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

0.3.9

**Changelog**

* Revert vsdpir as hard-dependency.
- This dependency was removed from the `requirements.txt` due to it forcing you to install the `pytorch` library, which is positively massive. If you want to use `autodb_dpir`, you should `pip install vsdpir` yourself.

0.3.8

**Changelog**

* Update stubs
* Update docs
* Update requirements
* Minor typehinting updates
* Minor internal call changes

**New additions**
* `autodb_dpir`
- A rewrite of fvsfunc.AutoDeblock that uses vspdir instead of dfttest to deblock.
- Thanks Ichunjo, louis3939, Setsugennoao for helping out!

* `deemphasize`
- A function that attempts to deemphasize ringing common to SD video signals resulting from a playback device in the transfer chain poorly compensating for pre-emphasis baked into the source signal.

* `Matrix`
- New IntEnum Matrix class to represent matrix coefficients following ITU-T H.265 Table E.5

**Updates**
* `__init__`
- Add render export (61)
* `find_scene_changes`
- Remove duplicate progress callback
* `nneedi3_clamp`
- Remove Kirsch as a dependency, replace with Prewitt
* `TIVTC_VFR`
- Free filter, should no longer require a forced preview refresh
* `SIVTC`
- Add `pattern` frameprop

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.