17 Commits

Author SHA1 Message Date
CalamitousFelicitousness cce3a80b0c fix(video): correct codec option strings to the key=value form
parse_options reads : and , as separators and = as the only assignment, so a
segment without = becomes a valueless flag set to 1. The shipped strings used
ffmpeg command line spelling, which parses without error into other values.

- crf:16 parsed to {'crf': '1', '16': '1'}, encoding every api, framepack and
  seedvr video near lossless rather than at crf 16
- crf=23:b:v=0 pinned the generic bitrate option to 1 bit per second on vp8 and
  vp9, collapsing their output
- qscale:v=3 reached mpeg4 and mjpeg as nothing at all, replaced by an explicit
  quantizer range
- test-video-codecs.py asserts every preset segment carries an assignment
2026-08-17 03:04:59 +01:00
Vladimir Mandic 8018578059 video processing preserve audio
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-07-27 14:23:14 +02:00
Vladimir Mandic 53e69c7ec2 seedvr enhancements
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-07-21 15:59:45 +02:00
Vladimir Mandic 1281cf8132 add process video
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-07-20 21:44:43 +02:00
Vladimir Mandic 8c0cd148be fix seedvr-7b
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-07-19 12:07:34 +02:00
Vladimir Mandic 42cb4cf489 explicit seedvr implementation
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-07-18 10:35:07 +02:00
Vladimir Mandic 81437ff051 cleanup seedvr
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2026-06-23 13:55:47 +02:00
CalamitousFelicitousness 0769d423a7 fix(upscale): make SeedVR2 generation_step patch idempotent
UpscalerSeedVR.load_model() rebinds the module-global
generation.generation_step (called by name inside generation_loop) to
the instance's model_step wrapper, keeping the previous value to call
back into. That global was never restored, so the second pass through
load_model() saved the wrapper itself as the "original", making
model_step() call itself -> RecursionError.

The second pass is reached on any model (re)load: with upscaler_unload
enabled (self.model reset to None after each run) every subsequent run
recurses, and switching SeedVR variants (self.model_loaded != model_name)
triggers it even without unload.

Stash the pristine generation_step on the module once and have the
wrapper call that, so repeated loads never wrap the wrapper.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 10:18:21 +01:00
QualiaRain 8a8d99019a fix: dead hasattr-on-dict path, double video-vae normalization, undefined self.device, hyimage if/elif, attention-mask attr typo, wrong face logged
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-12 13:00:57 -04:00
vladmandic ccd3e2e489 cleanup settings
Signed-off-by: vladmandic <mandic00@live.com>
2026-02-12 10:30:39 +01:00
vladmandic da1cf2f996 refactor image methods
Signed-off-by: vladmandic <mandic00@live.com>
2026-02-11 12:29:00 +01:00
CalamitousFelicitousness 76aa949a26 refactor: integrate sharpfin for high-quality image resize
Vendor sharpfin library (Apache 2.0) and add centralized wrapper
module (images_sharpfin.py) replacing torchvision tensor/PIL
conversion and resize operations throughout the codebase.

- Add modules/sharpfin/ vendored library with MKS2021, Lanczos3,
  Mitchell, Catmull-Rom kernels and optional Triton sparse acceleration
- Add modules/images_sharpfin.py wrapper with to_tensor(), to_pil(),
  pil_to_tensor(), normalize(), resize(), resize_tensor()
- Add resize_quality and resize_linearize_srgb settings
- Add MKS2021 and Lanczos3 upscaler entries
- Replace torchvision.transforms.functional imports across 18 files
- to_pil() auto-detects HWC/BHWC layout, adds .round() before uint8
- Sparse Triton path falls back to dense GPU on compilation failure
- Mixed-axis resize splits into two single-axis scale() calls
- Masks and non-sRGB data always use linearize=False
2026-02-11 09:57:37 +01:00
Vladimir Mandic 85a58ed5bf seedvr enable quant
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-14 10:23:12 -04:00
Vladimir Mandic f3b4ef2551 simplify seedvr depedencies
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-13 10:20:42 -04:00
Vladimir Mandic 32014fbb9d seedvr requirements
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-13 10:04:01 -04:00
Vladimir Mandic 2e4e741d47 seedvt2
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-12 15:35:08 -04:00
Vladimir Mandic eaa7dc119b prototype seedvr
Signed-off-by: Vladimir Mandic <mandic00@live.com>
2025-10-11 18:35:43 -04:00