Skip to content

Avisynth+ r2632-MT

Compare
Choose a tag to compare
@pinterf pinterf released this 01 Mar 18:50
· 283 commits to MT since this release

Avisynth+ r2632 (20180301)

https://forum.doom9.org/showthread.php?t=168856

##Fix

  • Fix: IsInterleaved returned false for RGB48 and RGB64 (raffriff42)
  • Fix: SubTitle for Planar RGB/RGBA: wrong text colors (raffriff42)
  • Fix: Packed->Planar RGB conversion failed on SSE2-only computers (SSSE3 instruction used)
  • Fix: Resizers for 32 bit float rare random garbage on right pixels (simd code NaN issue)

##Enhanced

  • Blur, Sharpen
    AVX2 for 8-16 bit planar colorspaces (>1.35x speed on i7-7770)
    SSE2 for 32 bit float formats (>1.5x speed on i7-7770)
  • Completely rewritten 16bit and float resizers, much faster (and not only with AVX2)
  • 8 bit resizers: AVX2 support
  • Speed up converting from RGB24/RGB48 to Planar RGB(A) - SSSE3, approx. doubled fps
  • Enhanced: VfW: exporting Y416 (YUV444P16) to SSE2.

##New/Modded

  • ConvertFPS supports 10-32 bits, planar RGB(A), YUV(A)
  • New script function: int BitSetCount(int[, int, int, ...])
  • Modded script function: Hex(int , int "width"=0), new "width" parameter
  • Modded script function: HexValue(String, "pos"=1) new pos parameter
  • Modded script function: ReplaceStr(String, String, String[, Boolean "sig"=false]) New parameter: sig for case - insensitive search (Default false: exact search)
  • New script functions: TrimLeft, TrimRight, TrimAll for removing beginning/trailing whitespaces from a string.
  • New in ColorYUV: New parameter: bool f2c="false". When f2c=true, the function accepts the Tweak-like parameters for gain, gamma and contrast
  • New/Fixed in ColorYUV: Parameter "levels" accepts "TV". (can be "TV->PC", "PC->TV", "PC->TV.Y")
  • New: now gamma calculation is TV-range aware when either levels is "TV->PC" or coring = true or levels is "TV"
    New in ColorYUV: 32 bit float support.
  • ColorYUV: can specify bits=32 when showyuv=true -> test clip in YUV420PS format
  • Modded: remove obsolate "scale" parameter from ConvertBits.
  • Internal: 8-16 bit YUV chroma to 32 bit float: keep middle chroma level (e.g. 128 in 8 bits) at 0.5. Calculate chroma as (x-128)/255.0 + 0.5 and not x/255.0
    (Note: 32 bit float chroma center will be 0.0 in the future)
  • New: Histogram parameter "keepsource"=true (raffriff42) for "classic", "levels" and "color", "color2"
  • New: Histogram type "color" to accept 8-32bit input and "bits"=8,9,..12 display range
  • New: Histogram parameter "markers"=true. Markers = false disables extra markers/coloring for "classic" and "levels"

Avisynth+ r2580 (20171226)

Fix

  • (workaround): Merge: Visual Studio 2017 15.5.1/2 generated invalid AVX2 code (x86 crashed)
  • Temporalsoften 10-14 bits: an SSE 4.1 instruction was used for SSE2-only CPU-s (Illegal Instruction on Athlon XP)

Avisynth+ r2574 (20171219)

Fixes

  • MaskHS created inverse mask. Regression after r2173
  • jitasm code generation at specific circumstances

modification, additions

  • Expr:
    • new: Indexable source clip pixels by relative x,y positions like x[-1,1]
    • new functions: sin cos tan asin acos atan
    • new operator: % (modulo)
    • new: Variables: uppercase letters A..Z for storing and reuse temporary results, frequently used computations.
    • new: predefined expr variables 'frameno', 'time', 'width', 'height'
    • fix: jitasm code generation at specific circumstances

Other

  • Build: changed avisynth.h, strict C++ conformity with Visual Studio 2017 /permissive- flag
  • Installer (finally)