Commit Graph
40 Commits
Author SHA1 Message Date
Meisoftcoltd 7187f783b4 feat: enforce 4n+1 frame rule for WanVideo VAE padding and calculations
Replaces the previous "multiple of 4" rule with the `4n + 1` logic across
the AutoLoopCalculatorWan and VAESafeFramePadder nodes. This prevents frame
loss / truncation inside the VAE and ensures absolute consistency for
long generation runs and video reconstruction. Mention of "múltiplo de 4"
in the primary README has also been updated to "regla de 4n + 1".
2026-04-12 19:02:40 +00:00
Meisoftcoltd 242ff772a5 fix: optimize VRAM purge order and remove conflicting environment variable
- Removed `PYTORCH_CUDA_ALLOC_CONF` from `__init__.py` to allow elastic VRAM expansion via `expandable_segments:True`.
- Swapped `torch.cuda.empty_cache()` and `torch.cuda.synchronize()` order in `vram_node.py` to ensure pending operations finish before purging cache.
- Added critical warnings in `README.md` and `README_EN.md` discouraging the use of `--highvram` flag when starting ComfyUI to prevent VRAM Defragmenter sabotage.
2026-04-12 12:46:33 +00:00
Meisoftcoltd 74238937dc docs: update README to version 1.6.0 with English translation
Updated README.md with the newly provided v1.6.0 presentation text.
Translated the updated text and updated README_EN.md accordingly.
Bumped __version__ in __init__.py to "1.6.0".
2026-04-12 02:38:05 +00:00
Meisoftcoltd ecd973b8e5 feat: implement deep VRAM defragmentation and update docs
- Enforced a strict memory cleanup sequence in `MeisoftVRAMDefragmenter` (including IPC cleanup and CUDA synchronization).
- Injected `PYTORCH_CUDA_ALLOC_CONF="max_split_size_mb:128"` in `__init__.py` to prevent VRAM micro-fragmentation.
- Added `unload_detector` option to `VideoAnalyzerWithAudio` to eagerly destroy the face detector model and free VRAM.
- Updated README.md with detailed explanations of the new features.
2026-04-08 12:04:56 +00:00
Meisoftcoltd 3f9c7cbee1 docs: update READMEs with MasterSwitch documentation
- Add Spanish and English descriptions for the new MasterSwitch node.
- Highlight Native Lazy Evaluation and Hot Graph Surgery features.
2026-04-07 20:11:40 +00:00
Meisoftcoltd a6d8ea88dc docs: add documentation for GPU-accelerated face scanning
- Added Spanish documentation block to `README.md` explaining how to use the new `bbox_detector` port with Impact Pack.
- Added English documentation block to `README_EN.md` with the same instructions.
2026-04-05 11:33:59 +00:00
Meisoftcoltd 8ae2905bb3 feat: modularize VideoAnalyzerWithAudio to accept external YOLO/ONNX models
- Add optional `bbox_detector` input to `VideoAnalyzerWithAudio`.
- Implement GPU-accelerated face detection using external BBOX_DETECTOR models.
- Support both ImpactPack and standard ONNX bounding box output formats.
- Retain CPU-based OpenCV face detection as a fallback.
- Rename node in UI to "🕵️ Video Analyzer Face detector + Audio".
- Update README.md and README_EN.md to reflect new architecture and wiring.
2026-04-04 23:56:51 +00:00
Meisoftcoltd e443ec7112 feat: rename ResTool32xLTX to ResTool64xLTX for IC-LoRA compatibility
- Renamed `ResTool32xLTX` to `ResTool64xLTX` and updated DIVISOR to 64 to prevent odd-dimension `ValueError`s when using latent downscale factors of 2.0 (IC-LoRA).
- Updated visual node name in `__init__.py` to accurately reflect the 64x divisor behavior to avoid technical debt.
- Updated documentation in `README.md` and `README_EN.md` to reflect the rename and explain the downscale compatibility logic.
2026-04-03 13:06:59 +00:00
Meisoftcoltd 1ffccc5599 feat: add native support for LTX 2.3 model
- Implemented `AutoLoopCalculatorLTX` node to enforce `8n + 1` frame chunks.
- Added `ResTool32xLTX` node for strict 32x divisible resolutions with proper minimum pixel scaling.
- Updated `IncrementalVideoStitcher` (in `image.py`) to correctly subtract the overlapping anchor frame from global frame progression when LTX mode is active.
- Added `global_ltx_mode` reset in `SequentialLoopStart` to prevent state leakage to other non-LTX workflows.
- Registered nodes in `__init__.py` and updated `README.md` & `README_EN.md` with new features.
2026-04-03 13:00:41 +00:00
Meisoftcoltd 634edbadc8 feat: Add Auto FPS Limiter node to prevent VRAM OOM on high framerate videos
- Added AutoFPSLimiter class in `tools.py` to calculate `select_every_nth` and proportional `new_fps`.
- Registered `AutoFPSLimiter` in `__init__.py` under NODE_DISPLAY_NAME_MAPPINGS.
- Updated `README.md` and `README_EN.md` Architecture sections with details about the new node.
2026-04-03 10:19:42 +00:00
Meisoftcoltd 95e2f0b8bd docs: Update README with missing node documentation
- Synced documented node names with actual UI titles in `__init__.py`.
- Added documentation for missing nodes: `Auto Loop Calculator (WanVideo 3dVAE)`, `Session Image Receiver`, `Session Image Sender`.
- Documented the `Megapixel Shield` / `ResTool` modules.
- Applied symmetric updates to both `README.md` and `README_EN.md`.
2026-04-02 08:20:01 +00:00
Meisoftcoltd 788ee2c084 docs: Actualizar README para incluir Auto-Limpieza de VRAM
- Añadida sección detallada sobre la nueva característica de Auto-Limpieza de VRAM en SequentialLoopTrigger.
- Añadidos detalles en Changelog (v1.5.3) en los README en español e inglés.
2026-04-02 07:14:22 +00:00
Meisoftcoltd 8ab37acb47 feat: Global Update v1.5.2
- Improve error handling in video.py to capture and display Torchaudio exceptions.
- Add explicit list of dependencies in requirements.txt.
- Introduce install.py for automated installation of Python and OS dependencies (FFmpeg).
- Complete redesign of Spanish and English READMEs with v1.5.2 Changelog, new features, and professional workflow setup.
2026-04-02 06:52:39 +00:00
Meisoftcoltd b67c0d12cc feat(tools): change base_resolution from dropdown to free numerical input
- Replaced the predefined dropdown list for `base_resolution` in `tools.py` with an open `INT` input (`min`: 128, `max`: 8192, `step`: 8) for the four Resolution Tools.
- Updated `README.md` and `README_EN.md` to reflect the new user interface change.
2026-03-30 21:45:50 +00:00
Meisoftcoltd bf7ed3305c docs: reestructurar y actualizar README a la versión 1.5.1
- Se actualizaron las versiones de 1.5.0 a 1.5.1.
- Se añadió documentación exhaustiva de las entradas (Inputs) y salidas (Outputs) de todos los nodos según el código (`__init__.py`).
- Se introdujo documentación detallada para el nuevo "Escudo de Megapíxeles" (Megapixel Shield) de la suite de Herramientas.
- Se redactó una guía de conexiones limpia para la Arquitectura Híbrida de Identidad.
- Se mantuvo la paridad entre README.md (Español) y README_EN.md (Inglés).
2026-03-30 20:11:12 +00:00
Meisoftcoltd 55dbf0b0b1 feat: Añadir Escudo de Megapíxeles a Tools (v1.5.1)
- Se ha refactorizado `tools.py` para incluir un "Escudo de Área" que evita artefactos visuales en resoluciones bajas extremas escalando matemáticamente usando `MIN_PIXELS`.
- Se han actualizado los archivos `README.md` y `README_EN.md` con la nueva característica en la sección Tools.
- La versión de la suite en `__init__.py` se ha incrementado a 1.5.1.
2026-03-30 20:01:00 +00:00
Meisoftcoltd 1c13d37fbc feat: implement Dynamic Engine and Tools suite for v1.5.0
This commit introduces the Hybrid Identity Architecture's Dynamic Engine:
- `tools.py`: Adds new Math constraint nodes (`ResTool 8x, 16x, 32x, 64x`) to calculate safe resolutions dynamically, preventing VRAM overflow.
- `loop.py`: Replaces the legacy static mathematical state machine with a dynamic performance-based state using `global_accumulated_frames` to progress accurately based on successful generations.
- `image.py`: Overhauls `SessionImageSender` to dynamically truncate generated image tensors using OpenCV if faces are lost, saving the last valid frame, and correctly adjusting the loop progression. `SessionImageReceiver` updated to log dynamic progression.
- `video.py`: Refactors `AutoLoopCalculator` and `IncrementalVideoStitcher` to work under the new dynamic state machine logic.
- `__init__.py`: Registered new nodes, updated imports to include `tools`, and bumped version to v1.5.0.
- `README.md` & `README_EN.md`: Updated documentation to detail the new Dynamic Engine functionality and Tools suite.
2026-03-30 19:03:16 +00:00
Meisoftcoltd 64172b5c64 feat: add dedicated ResTool suite for safe resolutions
This commit introduces a new `tools.py` module containing a `BaseResolutionTool` and its specific derived classes (`ResTool8x`, `ResTool16x`, `ResTool32x`, `ResTool64x`). These nodes calculate safe, model-specific dimensions that strictly conform to divisibility rules using provided aspect ratios and base resolutions.

The `__init__.py` file is updated to import and register these tools along with emojis for UI display. Both the English and Spanish READMEs are updated to document the new `Tools` suite.
2026-03-30 18:16:48 +00:00
Meisoftcoltd b91831ab11 feat: apply +/- 10% dynamic margin to AutoLoopCalculator
Update `calculate` method in `video.py` to dynamically adjust loop lengths
by a 10% margin, absorbing remainders safely and preventing inefficient
micro-cycles at the end of videos. Update both README.md and README_EN.md
to reflect this new capability and bump the version to 1.4.3.
2026-03-30 17:24:45 +00:00
Meisoftcoltd 51a3f58bf1 docs: update documentation to reflect VideoAnalyzerWithAudio v1.4.1 changes
- Bumped version number in README.md and README_EN.md from 1.4.0 to 1.4.1.
- Updated the "Explorer" (`VideoAnalyzerWithAudio`) node description to highlight its new clean interface, native VHS widget integration, and visual Reference Frame generation.
2026-03-30 15:18:24 +00:00
Meisoftcoltd e9dda4f3e2 docs: update README to reflect the new Hybrid Identity Architecture
- Updates README.md and README_EN.md.
- Replaces legacy loader references with the new "Explorer", "Brain", and "Worker" logic.
- Adds OpenCV dependency requirement instructions.
- Provides step-by-step setup guides to connect the updated 3-node structure.
2026-03-30 13:04:29 +00:00
Meisoftcoltd c9187b69ef feat: Implement lazy evaluation Cycle 0 architecture and update READMES
- Introduced global state memory (`global_source_frame_count`, `global_target_frames`, `global_stride`) in `loop.py`.
- Removed visual `source_frame_count` wire from `AutoLoopCalculator` in `video.py`
- Upgraded `AutoLoopCalculator` to execute as a blind "Explorer" in Cycle 0.
- Updated `LoadVideoWithSourceAudio` to intercept real `source_frame_count` directly from VHS payloads.
- Added dynamic calculation of total cycles based on intercepted frames at the end of Cycle 0.
- Updated both README.md and README_EN.md with v1.3.1 documentation reflecting the new Cycle 0 features.
2026-03-29 16:19:02 +00:00
Meisoftcoltd d6d29f998e feat: Add AutoLoopCalculator and remove circular loop wires\n\n- Replace WanFrameValidator with AutoLoopCalculator in video.py\n- Introduce global_total_loops in loop.py to track loops implicitly\n- Eliminate total_loops parameter from SequentialLoopStart, SequentialLoopTrigger, IncrementalVideoStitcher, SessionImageReceiver, and SessionImageSender to prevent ComfyUI wire clutter and avoid circular dependencies.\n- Add support for striding (select_every_nth) in frame distribution calculations.\n- Update README.md and README_EN.md to match the new architecture. 2026-03-29 14:58:28 +00:00
Meisoftcoltd 1bed6fbcbb Refactor LoadVideoWithSourceAudio to inherit from VHS_LoadVideo.
Implement safe audio passthrough in `IncrementalVideoStitcher`.
Update README files to reflect VHS as a mandatory dependency.
2026-03-28 19:36:51 +00:00
Meisoftcoltd 2f4a329478 Actualizar READMEs y restablecer tests
- Se actualizaron las descripciones en README.md y README_EN.md para reflejar las nuevas capacidades de LoadVideoWithSourceAudio (widget UI intacto, upload directo) y el Stitcher (INPUT_IS_LIST=False, passthrough directo de audio al último frame).
- Se restauraron los scripts de testing en `tests/` que se habían eliminado accidentalmente.
2026-03-28 15:08:50 +00:00
Meisoftcoltd def18e6390 Update README documentation for new video capabilities
Changes:
- Documented zero-OOM tensor handling and audio passthrough for IncrementalVideoStitcher in README.md and README_EN.md.
- Added documentation for the new LoadVideoWithSourceAudio node explaining dynamic VHS integration and uncropped audio extraction.
2026-03-28 14:34:05 +00:00
Meisoftcoltd bfe40b1b65 Update README documentation to v1.1.0 and add new features
Updated README.md and README_EN.md to version 1.1.0. Documented the new
Anti-Cache Injection mechanism in the Loop Trigger, progressive keyframe
and MP4 saving features, and audio multiplexing using torchaudio and
FFmpeg. Also updated the setup instructions with the new wiring requirements.
2026-03-23 20:09:36 +00:00
Meisoftcoltd e68d9026d1 Update READMEs to set Spanish as primary language
- Replaced README.md with the Spanish translation.
- Renamed the old English README to README_EN.md.
- Added cross-links between the two versions.
- Updated documentation to include the new Seed Mutator feature for v1.0.1.
2026-03-23 17:35:24 +00:00
Meisoftcoltd 1a28034baf docs: update readme files to reflect v1.0.0 recursive self-queuing architecture
- Rewrite README.md and README_ES.md.
- Document the shift to the "Formula 1" engine architecture with the 6 core nodes.
- Remove references to deprecated batch, sequence, and debug nodes.
- Add setup and usage instructions for the new autonomous machine.
2026-03-22 19:37:11 +00:00
Meisoftcoltd 9a2b4beebc Update documentation for current_loop_index reset logic
Updated `README.md` and `README_ES.md` to document the change from boolean
reset flags to using `current_loop_index` for internal session resets in
the `Incremental Auto-Stitcher` and `Session Image Receiver` nodes.
2026-03-22 17:56:24 +00:00
Meisoftcoltd e4e92e4f08 Add Wan Frame Validator and Visual UI Debugging to Image Nodes
- Added WanFrameValidator node in video.py to ensure 4k+1 frame logic.
- Registered WanFrameValidator in __init__.py with "WanFrameValidator": "🛡️ Wan Frame Validator".
- Updated both README.md and README_ES.md to document the Wan Frame Validator.
- Modified SessionImageReceiver and SessionImageSender in image.py to return a UI object mapping for Visual UI Debugging in ComfyUI frontend.
2026-03-22 16:33:49 +00:00
Meisoftcoltd 20eeaf00dc Update READMEs with SessionImageSender/Receiver docs
- Documented the `SessionImageSender` and `SessionImageReceiver` nodes under the "Image & Latent Category" in both `README.md` and `README_ES.md`.
- Described the "Sender/Receiver" pattern functionality: transferring the final frame from one Auto Queue cycle as the first frame to the next without generating ComfyUI cyclic dependency errors.
- Both language versions maintain accurate context regarding infinite/continuous video loop generation.
2026-03-22 12:37:21 +00:00
Meisoftcoltd bcaa17981b Update documentation for Incremental Auto-Stitcher
- Updated README.md and README_ES.md descriptions for the Incremental Auto-Stitcher node.
- Replaced mention of `video_prefix` search (globbing) with strict JSON path extraction (`reset_list` added).
- Explained the session memory behavior that clears on restart and guarantees immunity against old files in the ComfyUI output directory.
2026-03-22 12:14:05 +00:00
Meisoftcoltd c0b1fcbea9 docs(video): update READMEs with IncrementalVideoStitcher details
- Added description for "🎞️ Incremental Auto-Stitcher" node in README.md.
- Added equivalent description in Spanish for README_ES.md.
- Explains the expected input behavior and how it differs from the FFmpeg Video Stitcher.
2026-03-21 22:32:15 +00:00
Meisoftcoltd 8351c21219 docs: update READMEs with FFmpegVideoStitcher details
Updated both README.md and README_ES.md to include the newly implemented
FFmpegVideoStitcher node under a new "Video Category" in the Detailed Node Reference section.
2026-03-21 17:01:30 +00:00
Meisoftcoltd 0773b958cb Add FFmpeg Video Stitcher node and update documentation
- Created `video.py` introducing the `FFmpegVideoStitcher` node to concatenate video chunks generated via sequential batch loops.
- Registered the node into ComfyUI's standard mapping dictionaries in `__init__.py`.
- Added check for FFmpeg installation using `shutil.which` and raising a ComfyUI-friendly error if it's missing.
- Updated node output file saving logic to utilize ComfyUI's native `folder_paths.get_output_directory()`.
- Revised `README.md` and `README_ES.md` with explicit instructions on how to set up the workflow (VHS Combine integration) and provided warnings emphasizing the need for `easy cleanGpuUsed` after VAE decoders to prevent PyTorch OOM exceptions during iterative batching loops.
2026-03-21 14:30:16 +00:00
google-labs-jules[bot] b6f8c16b0b feat: add CSV table preview and Preview Batch node
- Implemented a text-based table formatter for batches.
- Updated Load CSV node to show a table preview in the workflow.
- Added a new Preview Batch node for visualizing any batch data.
- Added a JavaScript extension to handle node visualization.
- Updated English and Spanish documentation.
2026-01-26 17:52:22 +00:00
google-labs-jules[bot] 27bf0d70e3 Rename 'Job' to 'Batch' and add LoadCSV node
- Renamed all 'Job' terminology to 'Batch' across the codebase.
- Renamed job.py to batch.py.
- Added LoadCSV node to support loading batch parameters from CSV files.
- Maintained backward compatibility for existing workflows using legacy names.
- Updated README.md and README_ES.md with new version and documentation.
- Fixed a potential index-out-of-bounds bug in GetBatchStep clamping logic.
2026-01-26 02:50:13 +00:00
Meisoft ecc6836a41 Add files via upload 2026-01-26 03:32:33 +01:00
Meisoft ef6d30e6a5 Initial commit 2026-01-26 03:30:41 +01:00