Commit Graph
21 Commits
Author SHA1 Message Date
diodiogod b3678bf513 Version 4.22.2
Improve ChatterBox community model loading and Russian model handling

Technical details:
- preserve language context when loading local ChatterBox models
- repair missing files in existing ChatterBox model folders before fallback
- infer ChatterBox T3 text vocabulary size from checkpoint weights for community finetunes
- adapt bundled tokenizer wrapper to community tokenizer space and case conventions
- remove unsupported Russian classic Cyrillic experimental dropdown entry after validation
2026-03-10 09:30:59 -03:00
diodiogod 363553ecf9 Version 4.21.11: Fix model unloading GC crash and manager lazy import 2026-02-20 21:45:55 -03:00
diodiogodandNicolas Martel 6195d5407a Merge true lazy node PR 262 but keep instant check_dependencies
Co-authored-by: Nicolas Martel <teoxysoft@gmail.com>
2026-02-20 17:45:50 -03:00
diodiogod 1adaa1a22c Version 4.10.15
Fix VibeVoiceDownloader missing download_huggingface_model method

Technical details:
- Add missing download_huggingface_model method to VibeVoiceDownloader class
- Fix method delegation to unified_downloader in both real and dummy classes
- Resolve AttributeError when VibeVoice tokenizer download fails to cache
2025-09-29 08:28:18 -03:00
diodiogod d1974c511f Version 4.8.34
Implement ComfyUI extra_model_paths.yaml support

Technical implementation:
- Add TtsExtraPathsManager for shared model directory integration
- Update unified downloader to respect configured model paths
- Enhance voice discovery with multi-path fallback support
- Integrate model manager with extra_model_paths.yaml system
- Support shared storage across multiple ComfyUI installations
- Maintain backward compatibility with existing setups
- Reference: GitHub issue #63
2025-09-10 13:06:22 -03:00
diodiogod e6b9a5ab80 Version 4.8.27
Centralize numba compatibility system with smart testing

Technical implementation:
- Replace 15+ duplicate JIT workaround blocks with unified system
- Add utils/compatibility/numba_compat.py with startup testing
- Implement fallback for environments without compatibility module
- Test librosa.stft() at startup and apply workarounds only when needed
- Eliminate contradictory startup messages between init and nodes
- Maintain backward compatibility with legacy Python 3.13 fixes
2025-09-09 00:40:06 -03:00
diodiogod 79f43d470f Version 4.8.17
Fix ChatterboxVC import issue causing 'NoneType' object is not callable

Technical fixes:
- Add null checks in model manager before calling ChatterboxVC methods
- Make perth import optional with graceful fallback for Python 3.13 compatibility
- Update watermarking code to handle missing perth dependency
- Improve error messages for better debugging
2025-09-06 15:22:13 -03:00
diodiogod e86be32b1a Fix ChatterBox VC language support and improve error handling
- Add VC component detection system to check s3gen availability for all languages
- Implement universal ChatterBox model loading with component mixing fallback
- Fix VC download system to handle subdirectories (German havok2 model)
- Add graceful handling of optional files (conds.pt) vs required files (s3gen)
- Propagate 401 authentication errors properly through download system
- Add intelligent fallback: German variants → German base → English
- Return silent audio for unsupported VC languages instead of crashing
- Remove misleading claims about unverified VC language support
- Fix file format detection (.pt vs .safetensors) in VC downloads

Resolves VC crashes with Japanese/incomplete models and improves German model support
2025-09-04 16:06:18 -03:00
diodiogod 1605b06b59 Version 4.6.16
Refactor VibeVoice to use ComfyUIModelWrapper

Technical details:
- Replace custom model caching with unified ComfyUI wrapper system
- Remove custom unload hooks in favor of automatic ComfyUI integration
- Implement VibeVoiceModelContainer for proper model/processor handling
- Eliminate manual CPU movement code and global flag management
- Achieve architectural consistency with other TTS engines
2025-08-30 14:13:51 -03:00
diodiogod c2b9b222fd Version 4.6.15
Fix VibeVoice unload button and VRAM management

Technical details:
- Hook VibeVoice models into ComfyUI's 'Unload Models' button
- Move models to CPU during unload to actually free VRAM
- Invalidate engine caches to prevent tensor corruption errors
- Fix 'Inference tensors do not track version counter' after unload
- Ensure fresh model recreation after unload for proper functionality
2025-08-30 12:41:50 -03:00
diodiogod 6e32362dc4 Integrate VibeVoice with ModelManager caching system
Technical details:
- Add VibeVoice model loading and caching to ModelManager class
- Modify VibeVoice adapter to use ModelManager instead of creating own engine instances
- Add load_vibevoice_model() and unload_vibevoice_models() methods to ModelManager
- Import VibeVoice components into ModelManager with availability checking
- Update adapter to cache model and processor instances via ModelManager
- Follow ChatterBox pattern for persistent model caching across node executions
2025-08-30 12:26:06 -03:00
diodiogod 0d754c9ce9 Fix VC model loading fallback for corrupted local files
Technical details:
- Always include huggingface fallback even when local language path exists
- Resolve issue where partial/corrupted local VC models prevent fallback
- Add better cache error logging and source summary diagnostics
- Maintain cache checking functionality for users with HF cache
2025-08-30 10:03:05 -03:00
diodiogod 6857c7437e Version 4.5.10: Fix Higgs Audio seed parameter cache bug and implement ComfyUI model management integration 2025-08-25 13:34:38 -03:00
diodiogod a5f90bf169 Fix ChatterBox VC model discovery to respect user language choice
- Voice Changer now uses language-specific model discovery like TTS
- Finds correct language subfolder (e.g., /chatterbox/English/) instead of parent directory
- Ensures VC models load with proper conds.pt file for voice conversion
- Maintains backward compatibility with generic discovery fallback
2025-08-22 02:04:42 -03:00
diodiogod 2acb9be259 Fix Higgs Audio 2 engine integration issues
- Fixed engine initialization issue where adapter never called initialize_engine
- Fixed model configuration key mismatch (generation_repo vs generation_model)
- Fixed tokenizer download file name (model.pth vs pytorch_model.bin)
- Fixed tensor dimension issues for ComfyUI audio output format
- Added comprehensive multi-speaker mode system with three options:
  * Custom Character Switching: Use [Alice], [Bob] with character voice files
  * Native Multi-Speaker (System Context): Use [SPEAKER0], [SPEAKER1] with opt_second_narrator
  * Native Multi-Speaker (Conversation): Same as above but conversation history mode
- Removed audio_priority widget, now follows standard TTS priority logic
- Fixed mode selection bug where config was read from wrong object
- Added proper audio format handling for Character Voices in native modes
- Fixed pause tag support in all modes including native multi-speaker
- Improved tooltips to clarify mode requirements and text formats
2025-08-19 16:25:44 -03:00
diodiogod 30da2ba370 Version 4.3.7: Fix TTS Audio Suite model organization and RVC Hubert compatibility issues 2025-08-13 13:43:14 -03:00
diodiogod a27bd95811 Clean up debug logging: remove temporary investigation messages
Removed debug logging added during multilingual model switching investigation:
- Cache debug messages showing model type and directory
- Generation debug showing model path information

Kept essential operational messages like cache hits, model loading progress,
and error messages for user visibility.
2025-08-12 20:17:41 -03:00
diodiogod 3da5a2a6b2 Add debug logging to diagnose model caching issue in non-streaming mode
Added debug output to show:
- Which cached model is being used for each language
- Model type and attributes
- Model directory path to verify correct model instances

This will help identify why German model shows 'no_model_dir' in non-streaming
but works correctly in streaming mode.
2025-08-12 19:23:20 -03:00
diodiogod 208a1f5846 Add multilingual voice conversion support with detailed debugging output
- Implement language-aware VC model loading for German/Norwegian models
- Voice Changer now uses language parameter from TTS Engine input
- Add multilingual support to ChatterboxVC.from_pretrained() method
- Update model manager to cache VC models separately by language
- Enhanced conversion_info output with detailed model information:
  - Language model being used (English/German/Norwegian)
  - Model source (huggingface/local/bundled)
  - Repository name for HuggingFace models
  - Device and refinement pass information
- Smart fallbacks when requested language models aren't available
- Backward compatibility maintained for existing workflows
2025-08-07 15:03:53 -03:00
diodiogod a440cd05b0 Fix model loading efficiency and language mapping issues
- Implement generic local-first fallback utility for all TTS engines
- Fix ChatterBox and F5-TTS duplicate model loading during language fallback
- Add F5-TTS language grouping to load models once per language group
- Fix pt-br language mapping support in language mapper
- Add model tracking to prevent redundant loading in multilingual engine
- Optimize SRT nodes to use unified language-grouped processing

This ensures efficient model loading with proper local model reuse,
eliminating unnecessary downloads and duplicate model loading for
low-VRAM scenarios while maintaining full language support.
2025-08-06 23:01:20 -03:00
diodiogod b21d0212fb Major refactoring: Reorganize project structure for better maintainability
🔧 ENGINES SEPARATION:
- Move chatterbox/ → engines/chatterbox/ (TTS/VC engine + models)
- Move chatterbox/f5tts/ → engines/f5tts/ (F5-TTS engine)
- Move adapters/ → engines/adapters/ (engine adapters for multilingual system)

📁 NODES ORGANIZATION:
- Create nodes/chatterbox/ for ChatterBox nodes (TTS, VC, SRT)
- Create nodes/f5tts/ for F5-TTS nodes (TTS, SRT, Edit, Options)
- Create nodes/audio/ for audio processing nodes (analyzer, recorder)
- Create nodes/base/ for base classes
- Rename node files for clarity (tts_node.py → chatterbox_tts_node.py)

🗂️ UTILITIES RESTRUCTURE:
- Replace core/ with organized utils/ structure
- utils/audio/ - Audio processing, analysis, caching
- utils/text/ - Text processing, character parsing, chunking
- utils/voice/ - Voice discovery, multilingual engine
- utils/timing/ - SRT timing logic (from chatterbox_srt/)
- utils/models/ - Model management (ChatterBox + F5-TTS)
- utils/system/ - System utilities, import management

🔄 IMPORT PATH UPDATES:
- Update all import paths to use new organized structure
- Fix lazy imports in nodes for runtime compatibility
- Restore missing F5-TTS edit engine from git history
- Fix path resolution for voice discovery and character aliases

🎯 KEY IMPROVEMENTS:
- Engine-centric organization with clear separation
- Purpose-driven folder grouping for better navigation
- Self-documenting file names indicating ownership
- Scalable structure for future engine additions
- Maintains backward compatibility for existing workflows

All 10 nodes loading successfully with complete functionality preserved.
2025-08-02 18:50:26 -03:00