Selur's Little Message Board

Full Version: Vapoursynth filter color space restrictions
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Here's a list on what filter currently is restricted to what color spaces in Hybrid:
  • AddGrain: no color space restriction
  • AAF: no color space restriction
  • DAA: no color space restriction
  • DAAmod: no color space restriction
  • EdiAA: no color space restriction
  • MAA: no color space restriction
  • NNEDIAA: no color space restriction
  • SangnomMod: ALLYUV8
  • Santiag: no color space restriction
  • AAmbk: ALLYUV8, ALLYUV10, ALLYUV16, GRAY8, GRAY16
  • DeSpot: ALLYUV
  • EdgeFixer: ALLYUV
  • FixChromaBleeding: ALLYUV
  • Vinverse: no color space restriction
  • Vinverse2: no color space restriction
  • HDR10ToSDR: no color space restriction
  • HDR10ToSDRDG: YUV420P16
  • TimeCube: ALLRGBX
  • Levels: VS::ALLRGBX when Gamma is used (+ force RGB), no restriction otherwise
  • Limiter: no color space restriction
  • Retinex:
    when MSRCP is used: ALLGRAYX, FULLYUV, ALLRGBX
    otherwise: ALLRGBX
  • SmoothGrad: no color space restriction
  • ToneMap: no color space restriction
  • Tweak: ALLYUV
  • Flash3KDeband: ALLYUV
  • GradFun3Mod: ALLYUV
  • Deblock: ALLYUV
  • DeblockPP7: ALLYUV
  • DeblockQED: ALLYUV
  • DeDot: ALLYUV8, GRAY8
  • DotKill: ALLYUV8
  • LutDeCrawl: ALLYUV8, ALLYUV9, ALLYUV10
  • DeGrainMedian: ALLYUVX
  • MCDegrainSharp: ALLYUVX, ALLGRAYX
  • MLDegrain: ALLYUV8
  • SMDegrain: ALLYUVX, ALLGRAYX
  • STPresso: no color space restriction
  • TemporalDegrain: ALLYUV8, :GRAY8
  • BlindDeHalo3: ALLYUVX
  • DeHaloAlpha: ALLYUVX
  • EdgeCleaner: ALLYUVX, ALLGRAYX
  • FineDehalo: ALLYUVX
  • LGhost: ALLYUVX, ALLRGBX
  • YAHR: ALLYUVX
  • Bwdif: ALLYUVX
  • FixCombed: ALLYUVX
  • FTF: no color space restriction
  • IT: only YUV420P8 with width < 8192
  • QTGMC: ALLYUVX except YUV411P8, GRAY8
  • TDeintMod: ALLYUV, ALLRGBX, ALLGRAYX
  • VIVTC: no color space restriction
  • Yadifmod: ALLYUVX, YUV444PS
  • FluxSmooth: ALLYUVX
  • MiniDeen: ALLYUVX
  • Cnr2: ALLYUV8
  • CTMF: ALLYUVX
  • DFTTest: ALLYUVX, YUV444PS
  • FFT3DFilter/NEO_FFT3DFilter: ALLYUV, GRAY8, ALLRGB
  • HQDN3D: ALLYUV8
  • KNLMeansCL: no color space restriction
  • mClean: ALLYUVX
  • MCTemporalDenoise: ALLYUVX, YUV444PS
  • TemporalSoften: no color space restriction
  • TTempSmooth: ALLYUVX, ALLGRAYX
  • VagueDenoiser: ALLYUVX, ALLGRAYX
  • LUTDeRainbow: YUV420P8, YUV420P9, YUV420P10
  • BiFrost: ALLYUV8
  • DeCross: YUV420P8, YUV422P8
  • SSIQ: YUV420P8
  • HQDering: ALLYUVX
  • MDering: ALLYUVX
  • Stab: no color space restriction
  • VFM: no color space restriction
  • SVP/Interframe: YUV420P8
  • MVToolsFPS: no color space restriction
  • VFRToCFR: no color space restriction
  • ColorMatrix: ALLYUVX
  • Crop: no color space restriction
  • Fade: no color space restriction
  • Letterbox: no color space restriction
  • Native resizers: no color space restriction, but output 16bit variant of used color space
  • Rotate/FlipH/FlipV: no color space restriction
  • SelectEvery: no color space restriction
  • SelectRangeEvery: no color space restriction
  • FastLineDarken: ALLYUV, ALLGRAY
  • Hysteria: YUV420P8, YUV420P9, YUV420P10, YUV420P16
  • Toon: ALLYUV, ALLGRAY
  • AddLogo: ALLYUVX
  • (z)NNEDI3(CL): no color space restriction
  • ResampleHQ: no color space restriction
  • Anime4KCPP:
    when ACNet is used: YUV44P8
    otherwise: RGB24
  • SRMD: RGBS
  • Waifu2x-w2xc: no color space restriction
  • Waifu2x-nvk: no color space restriction
  • sRestore: no color space restriction
  • FineSharp: ALLYUV, ALLGRAY
  • AWarpSharp2: ALLGRAYX, YUV420P8, YUV422P8, YUV444P8, YUV440P8, YUV420P9, YUV422P9, YUV444P9, YUV420P10, YUV422P10, YUV444P10, YUV420P16, YUV422P16, YUV444P16
  • CAS: no color space restriction
  • LimitedSharpenFasterMod: ALLGRAYX, ALLYUVX
  • MSmooth/Sharpen: no color space restriction
  • PSharpen: ALLYUVX
  • VSFilterMod: YUV420P8, RGB24

To understand the restriction here is how Hybrid maps them:

The currently known and supported:
  • GRAY8, GRAY16, GRAYH, GRAYS
  • YUV420P8, YUV422P8, YUV444P8, YUV410P8, YUV411P8, YUV440P8,
  • YUV420P9, YUV422P9, YUV444P9, YUV420P10, YUV422P10, YUV444P10,
  • YUV420P16, YUV422P16, YUV444P16, YUV444PH, YUV444PS,
  • RGB24, RGB27, RGB30, RGB32, RGB48, RGBH, RGBS
  • COMPATBGR32, COMPATYUY2
The groups:
  • ALLGRAYX: GRAY8, GRAY16
  • ALLGRAYFLOAT: GRAYH, GRAYS
  • ALLGRAY: ALLGRAYX, ALLGRAYFLOAT
  • ALLYUV8: YUV420P8, YUV422P8, YUV444P8, YUV410P8, YUV411P8, YUV440P8
  • ALLYUV9: YUV420P9, YUV422P9, YUV444P9
  • ALLYUV10: YUV420P10, YUV422P10, YUV444P10
  • ALLYUV16: YUV420P16, YUV422P16, YUV444P16
  • ALLYUVX: ALLYUV8, ALLYUV9, ALLYUV10, ALLYUV16
  • ALLYUVFLOAT: YUV444PH, YUV444PS
  • ALLYUV: ALLYUVX, ALLYUVFLOAT
  • ALLRGBX: RGB24, RGB27, RGB30, VSRGB32, RGB48
  • ALLRGBFLOAT: RGBH, RGBS
  • ALLRGB: ALLRGBX, ALLRGBFLOAT, COMPATBGR32
  • ALLCOMPAT: COMPATBGR32, COMPATYUY2
  • ALL: ALLGRAY, ALLYUV, ALLRGB, ALLCOMPAT
  • FULLYUV: YUV440P8, YUV444P8, YUV444P9, YUV444P10, YUV444P16


There are probably discrepancies to the actual capabilities of the filter due to mistakes or changes in the filters I missed or simply that there was no documentation when about the filters capabilities when I added support for it.
In example Hybrid might restrict a filter that doesn't need to be restricted or doesn't restrict the filter enough or too much.
-> if you find a mistake let me know and I'll fix it.

Cu Selur