Commit Graph
34 Commits
Author SHA1 Message Date
diodiogod caee9dbcd1 Version 4.11.23
Fix PyTorch installation syntax error

Invalid pip requirement syntax with local version labels in version specifiers.
The +cu121 suffix is only valid with == or != operators, not with >= operators.
Now correctly passes CUDA version via --index-url instead.

Also add graceful error handling for RVC monotonic-alignment-search installation
on systems without C++ build tools.
2025-10-26 19:58:14 -03:00
diodiogod 45c7e52aef Skip WeTextProcessing on Windows to avoid confusing install errors
Windows users see failed WeTextProcessing install due to missing build tools,
even though our code has graceful fallback. This causes user confusion.

Changes:
- Detect Windows and skip WeTextProcessing installation on Windows
- Use fallback text processing instead (slower for Chinese but works fine)
- Add explanatory message in install summary for Windows users
- No functional impact - all TTS generation still works normally

Now Windows users will see a clean install without error messages about
WeTextProcessing, while still getting full IndexTTS-2 functionality.
2025-10-22 10:43:45 -03:00
diodiogod ed0888bea4 Version 4.10.8
Fix install.py Python version detection and emoji encoding issues

Technical details:
- Fix Windows py launcher bypassing venv detection
- Add clear warnings for Python version mismatches
- Remove emojis from install script to prevent encoding issues
- Improve error messaging for py vs python command usage
2025-09-25 21:50:50 -03:00
diodiogod 045f724219 Version 4.9.22
Fix IndexTTS-2 text normalization dependency handling

Technical implementation:
- Move WeTextProcessing from standard requirements to smart installer
- Add graceful fallback from WeTextProcessing to wetext package
- Implement proper testing for text normalization packages
- Handle Windows pynini compilation failures elegantly
2025-09-18 15:06:02 -03:00
diodiogod 21854b7fae Version 4.9.19
Fix WeTextProcessing package name for IndexTTS-2 text normalization

Technical fix:
- Change from wetext>=0.0.9 to WeTextProcessing (correct package name)
- WeTextProcessing is the actual PyPI package for Chinese/English text normalization
- Keep tn as fallback dependency for Linux systems
- Fix import compatibility issues with IndexTTS-2 text processing
2025-09-18 01:08:18 -03:00
diodiogod 2ad3e95db5 Version 4.9.15
Add missing tn text normalization dependency for IndexTTS-2

Technical fix:
- Add tn package as fallback dependency for IndexTTS-2 text processing
- IndexTTS-2 uses wetext as primary and tn as fallback normalizer
- Some Linux systems fail wetext import and need tn fallback
- Prevents ModuleNotFoundError for tn.chinese module
2025-09-17 20:53:41 -03:00
diodiogod c1dbb0992e Version 4.9.9
Fix install.py numpy downgrade and requirements parsing

Technical fixes:
- Move opencv-python to problematic packages with --no-deps installation
- Fix requirements.txt comment parsing to handle inline comments
- Prevent numpy downgrade from opencv-python dependency conflicts
- Improve ensure_requirements_installed comment handling
2025-09-17 13:43:10 -03:00
diodiogod 13f1f14ac9 Version 4.9.8
Fix install script numpy downgrade issue with faiss-gpu

Technical details:
- Install faiss-gpu-cu12 with --no-deps to prevent numpy downgrade
- faiss-gpu has numpy<2 constraint that forces downgrade from numpy 2.x to 1.26.4
- All other faiss-gpu dependencies already satisfied in environment
- Preserves RVC GPU acceleration while respecting numpy compatibility logic
2025-09-17 00:29:23 -03:00
diodiogod 89aeb223a9 Version 4.9.5
Fix missing julius dependency for Higgs Audio and RVC components

Technical fix:
- Add julius to manual dependency list for descript-audiotools --no-deps installation
- Resolves missing julius import error when using Higgs Audio 2 engine
- Julius required by RVC demucs models for audio separation DSP operations
- References issue #82 julius dependency missing error
2025-09-16 19:33:48 -03:00
diodiogod b8264275dd Fix critical PyTorch installation bug causing CPU torchaudio
- Add CUDA suffixes to torchaudio and torchvision package names
- Prevents mixed GPU PyTorch + CPU torchaudio installation
- Fixes major performance degradation and VRAM issues
- Resolves user reports of slow IndexTTS-2 generation
2025-09-12 17:24:13 -03:00
diodiogod 51de42754f Complete IndexTTS-2 TTS engine integration with emotion disentanglement
Major Features:
• IndexTTS-2 engine with zero-shot voice cloning and emotion control
• Multi-modal emotion support (audio refs, text descriptions, manual vectors)
• Character switching with emotion references: [Alice:angry_bob]
• Native IndexTTS-2 token-based chunking integration
• Comprehensive parameter exposure with 25+ engine-specific options

Core Components:
• engines/processors/index_tts_processor.py - Main processor with emotion support
• nodes/engines/index_tts_engine_node.py - Engine configuration node
• Updated unified TTS Text node with IndexTTS-2 integration
• Node registration in main nodes.py

Dependencies:
• Added 8 safe IndexTTS-2 dependencies to install.py and requirements.txt
• Dependency testing confirmed only descript-audiotools conflicts (already handled)
• All new deps use flexible versioning (>=) to avoid lock conflicts

Character Parser Fix:
• Fixed circular import by moving CharacterSegment to separate types.py
• Maintains backward compatibility while supporting emotion references
• Modular structure preserved (4 modules under 500 lines each)

Technical Details:
• Emotion disentanglement separates speaker identity from emotional expression
• Supports [character:emotion] syntax for per-segment emotion control
• IndexTTS-2 native chunking overrides character-based chunking when enabled
• Full caching integration and pause tag support included
• Error handling with graceful fallbacks for missing voices/emotions
2025-09-11 21:59:19 -03:00
diodiogod 663c790073 Version 4.8.38
Fix pkg_resources deprecation warning in installer

- Replace deprecated pkg_resources with importlib.metadata
- Add fallback support for Python < 3.8 compatibility
- Suppress warnings when using legacy fallback
2025-09-10 19:27:24 -03:00
diodiogod 2405b0eaf5 Version 4.8.35
Fix critical Windows installation issues

Technical fixes:
- Fix Windows UTF-8 encoding errors in subprocess calls
- Fix PyTorch version parsing failure on CUDA suffix (+cu124)
- Fix PyTorch 2.6.0 availability issues with graceful fallback
- Improve CUDA version detection and compatibility logic
2025-09-10 13:46:16 -03:00
diodiogod 450e7c80d3 Version 4.8.24
Fix VibeVoice model reloading and transformers compatibility

Technical changes:
- Fix unified model interface cache key missing additional_params
- Add transformers>=4.51.3 requirement for VibeVoice compatibility
- Remove excessive debug prints from VibeVoice engine
- Fix RVC numba JIT disable logic for correct Python version detection
- Fix attention_mode and quantize_llm_4bit not triggering model reloads
2025-09-07 10:13:23 -03:00
diodiogod e17ff15736 Version 4.8.14
Fix transformers 4.56+ compatibility for VibeVoice and Higgs Audio engines

Technical implementation:
- Add DynamicCache compatibility properties for VibeVoice (.key_cache/.value_cache)
- Fix StaticCache access patterns in Higgs Audio modeling and serve engine
- Patch _prepare_cache_for_generation signature changes in transformers 4.56+
- Add comprehensive null checking for cache layer access
- Update install.py to allow newer transformers versions

Resolves: #44, #46
2025-09-06 14:28:21 -03:00
diodiogod c23930912a Version 4.8.7
Fix ChatterBox transformer compatibility issue

Technical changes:
- Set attention implementation to eager mode
- Fix output_attentions conflict with sdpa in transformers 4.36+
- Maintain alignment analyzer functionality
2025-09-06 08:38:08 -03:00
diodiogod d9d7dcb3e3 Version 4.6.27
Fix numpy compatibility and VibeVoice installation

Technical improvements:
- Update install script to support numpy 1.26.4 for Python 3.12
- Add Python version detection for numpy requirements
- Fix VibeVoice installation using FushionHub fork
- Improve audio-separator conditional installation
- Better numpy version constraint handling
2025-09-03 22:52:19 -03:00
diodiogod 5b5f8d603c Version 4.6.13
Fix MelBandRoFormer architecture compatibility issues

Technical details:
- Implement proper MelBandRoFormer model loading with correct config
- Add Kijai's safetensors model support and auto-download
- Fix tensor size mismatch in instrumentals calculation
- Add model-specific output inversion handling
- Prevent incompatible RVC fallback for MelBand models
2025-08-30 10:53:22 -03:00
diodiogod 2ba5f0a1b4 Add VibeVoice TTS engine integration with full unified architecture support
Implemented complete VibeVoice engine integration following unified modular architecture:

Engine Infrastructure:
- VibeVoice engine wrapper with model management and generation
- Engine adapter for standardized interface integration
- Proper ComfyUI model management integration
- Support for both 1.5B and 7B models (Microsoft + community)

Core Features:
- Two generation modes: Custom Character Switching and Native Multi-Speaker
- Character voice management with [CharacterName] tag support
- Pause tag processing with [pause:xx] syntax
- Time-based chunking UI (minutes converted to characters internally)
- Unified cache system following ChatterBox patterns with 💾 indicators
- Full integration with Character Voices node
- 90-minute generation capability and 4-speaker native mode

Technical Implementation:
- Engine configuration node with ⚙️ emoji consistency
- Unified TTS node integration via processor delegation
- Proper parameter validation and device management
- Dependency management with --no-deps installation approach
- Fixed name collision issues (vibevoice/ → vibevoice_engine/)
- Comprehensive error handling and fallback systems

Architecture Compliance:
- Follows exact Higgs Audio integration patterns
- Uses unified streaming infrastructure
- Maintains modular design under 600 lines per file
- No code duplication, reuses all existing utilities
- Proper separation: Engine → Adapter → Processor → Unified Node

Installation & Dependencies:
- Added VibeVoice to install.py with dependency conflict resolution
- Updated nodes.py with conditional imports and diagnostics
- Comprehensive PROJECT_INDEX.md documentation

Tested and verified:
- Model downloading and loading
- Voice reference handling (dropdown and Character Voices)
- Cache functionality with proper hit indicators
- Multi-character generation and pause processing
2025-08-29 01:15:16 -03:00
diodiogod b371c11b95 Version 4.5.27
Fix Higgs Audio model management with CUDA Graph compatibility toggle

Technical implementation:
- Add enable_cuda_graphs parameter to resolve CUDA Graph vs model unloading conflict
- Implement DynamicCache support for safe memory management mode
- Fix DynamicCache compatibility issues (reset, seq_length, copying)
- Add conditional cache creation and cleanup logic
- Update tooltip with accurate performance trade-offs (12 vs 55+ tok/s)
2025-08-28 17:41:42 -03:00
diodiogod 7e96d3a899 Add Linux system dependency detection and documentation
- Add automatic detection for libsamplerate0-dev and portaudio19-dev in install script
- Display helpful error messages with specific install commands for Ubuntu/Debian and Fedora/RHEL
- Update README with comprehensive system dependency documentation
- Explain why these dependencies are needed (audio resampling and voice recording)
- Windows users unaffected (packages come pre-compiled)

Fixes Discord user feedback about missing libsamplerate0-dev requirement.
2025-08-27 01:00:59 -03:00
diodiogod cadee65a9c Version 4.5.19: Fix numba compatibility issues in install script 2025-08-26 22:58:20 -03:00
diodiogod 4cda81cf12 Version 4.5.15: Fix PyTorch CUDA detection and compatibility issues in install script 2025-08-26 14:30:58 -03:00
diodiogod bad1dd4a12 Version 4.5.13: Clean up excessive startup logging messages 2025-08-26 09:47:39 -03:00
diodiogod a1e2bd06bb Version 4.5.7: Fix Python 3.13 compatibility: Replace librosa with torchaudio in Higgs Audio engine 2025-08-25 10:17:26 -03:00
diodiogod ebb74b68b9 Add comprehensive missing dependencies for --no-deps packages
- Add all missing librosa dependencies: audioread, threadpoolctl, standard-aifc/sunau/chunk, audioop-lts
- Add all missing descript-audiotools dependencies: flatten-dict, ffmpy, importlib-resources, randomname, markdown2, pyloudnorm, pystoi, torch-stoi, ipython, tensorboard
- Add matplotlib for F5-TTS utils_infer.py
- Ensures all engines can load without missing import errors
2025-08-24 12:00:02 -03:00
diodiogod bb88d74b29 Fix protobuf conflict: Move descript-audiotools to --no-deps list
- descript-audiotools forces protobuf downgrade from 6.32.0 to 3.19.6
- This breaks google.protobuf.internal.builder import needed by engines
- Install descript-audiotools with --no-deps to prevent protobuf conflicts
- Maintains compatibility while fixing ChatterBox and F5-TTS engine failures
2025-08-22 14:24:14 -03:00
diodiogod c99a269d9f Comprehensive dependency fix: Add all missing sub-dependencies for --no-deps packages
- Based on PyPI metadata analysis of cached-path, descript-audio-codec, and librosa
- Added all required dependencies for packages installed with --no-deps flag
- Ensures F5-TTS, Higgs Audio, and ChatterBox engines work without missing imports
- Uses flexible version constraints to avoid conflicts with other custom nodes
- Fixes google.cloud.storage, einops, lazy_loader, and other missing imports
2025-08-22 14:12:28 -03:00
diodiogod 7de30d4ada Add missing dependencies for --no-deps packages
Add required dependencies for packages installed with --no-deps:
- google-api-core, google-auth, googleapis-common-protos (for cached-path)
- einops, torch-audiomentations (for descript-audio-codec)

This should fix:
- F5-TTS: No module named 'google.api_core'
- Higgs Audio: Missing dac (descript-audio-codec) dependencies
2025-08-22 13:55:09 -03:00
diodiogod bbe21f846a Fix missing SAFE dependencies based on DEPENDENCY_TESTING_RESULTS.md
Add all documented SAFE packages that were missed:
- s3tokenizer>=0.1.7 (ChatterBox - tested safe, no conflicts)
- vector-quantize-pytorch (Higgs Audio - clean install)
- resemble-perth (ChatterBox - works in ChatterBox)
- diffusers>=0.30.0 (ChatterBox - likely safe)
- audio-separator>=0.35.2 (vocal removal - heavy deps but no conflicts)
- hydra-core>=1.3.0 (F5-TTS - clean install, minimal dependencies)

Add missing dependencies for --no-deps packages:
- lazy_loader (required by librosa)
- filelock (required by cached-path)

This should resolve all missing module errors for ChatterBox, F5-TTS, and Higgs Audio engines.
2025-08-22 13:46:26 -03:00
diodiogod 578c006ee1 Improve install script visual design with ASCII-safe formatting
- Replace Unicode emojis with ASCII symbols ([+], [X], [!], [i], [*])
- Add professional terminal-style installation summary with boxes
- Fix Unicode encoding crashes on Windows systems completely
- Maintain visual appeal while ensuring universal compatibility
2025-08-22 13:37:42 -03:00
diodiogod 5c674cd16c Version 4.5.4: Version 4.5.4: Fix Windows Unicode encoding crash in install script 2025-08-22 13:30:31 -03:00
diodiogod 5f8b83f049 Version 4.5.3: Version 4.5.3: Complete installation system with Python 3.13 compatibility and dependency management 2025-08-22 12:56:53 -03:00
diodiogod cf3ad81c9f Version 4.5.2: Fix Higgs Audio transformers 4.46+ compatibility 2025-08-22 02:44:34 -03:00