Commit Graph
10 Commits
Author SHA1 Message Date
PXL8D fb43e7ccbb Add MetaMan Load Image node - preserves PNG metadata during loading
- Create MetaManLoadImage node that loads images with metadata preserved
- Extracts ComfyUI workflow/prompt data directly from PNG files
- Returns both image tensor and metadata JSON
- Update MetaManUniversalNodeV2 to accept optional metadata_json input
- Prioritize metadata from load image node over PIL extraction
- Register new node in both metaman.py and __init__.py

Solves metadata stripping issue by reading files before ComfyUI processing.
2025-08-12 15:28:09 -07:00
PXL8D b605de8de9 Add direct file reading to bypass ComfyUI metadata stripping
- Implement _try_read_original_file() to search for source PNG files
- Search ComfyUI input/output/temp directories for matching images
- Match files by dimensions and modification time
- Open original files directly with PIL to preserve PNG chunks
- Extract ComfyUI workflow/prompt metadata from original files
- Fallback when ComfyUI processed images have no metadata

Fixes issue where Load Image node strips PNG text chunks.
2025-08-12 15:03:36 -07:00
PXL8D c8c9193baf Add enhanced image debugging - analyze PIL image object structure
- Show image type, mode, format, size details
- Check for filename attribute from file loading
- Show PNG chunk sizes and content info
- Try alternative image.info access for metadata
- Identify potential metadata in different locations

Debug why PNG text chunks are not being found.
2025-08-12 14:11:34 -07:00
PXL8D 857646faf4 Fix metadata extraction bugs and add comprehensive debugging
- Implement missing _extract_params_from_comfyui_prompt() method
- Extract core parameters from ComfyUI workflow nodes (KSampler, CheckpointLoader, etc.)
- Enhanced service detection with multiple ComfyUI indicators
- Add comprehensive debug logging throughout extraction pipeline
- Preserve all source metadata in universal format conversion
- Detailed A1111 output formatting with parameter tracking

Fixes critical issue where ComfyUI workflow data returned empty metadata {}
2025-08-12 13:55:29 -07:00
PXL8D 20a4a15ba1 Force ComfyUI node cache refresh - rename to V2
- Rename MetaManUniversalNode to MetaManUniversalNodeV2
- Forces ComfyUI to reload node definition completely
- Eliminates cached 4-output interface from previous version
- Clean 2-output interface: image_workflow + json_workflow
- Display name: "MetaMan Universal V2"
2025-08-09 23:01:57 -07:00
PXL8D 2ffce1f514 Fix output connector naming 2025-08-09 22:47:00 -07:00
PXL8D ddfa1b49dc Simplify MetaMan Universal node based on user feedback
BREAKING CHANGE: Simplified node interface for better usability

Changes:
- Removed complex operation dropdown - node now has single focused purpose
- Reduced inputs to just: image + target_service selection
- Streamlined outputs to: processed image + comprehensive JSON metadata
- Integrated Civitai API for real-time dependency resolution
- Automatic metadata embedding in target service format
- Single workflow: extract → convert → embed → return

Features:
✅ Automatic source service detection
✅ Universal metadata conversion
✅ Target service format embedding in PNG chunks
✅ Live Civitai dependency lookup with download URLs
✅ Comprehensive JSON output with all conversion data
✅ Proper rate limiting for API calls

Technical improvements:
- Real Civitai API integration with hash matching
- Intelligent PNG chunk embedding per service
- Enhanced error handling with JSON error responses
- Optimized workflow for single-purpose efficiency

The node is now much simpler to use while providing more powerful functionality.
2025-08-09 21:27:46 -07:00
PXL8D 781ce38fe1 Fixed object reference 2025-08-09 14:23:21 -07:00
PXL8D 3c7b5658f0 Fix Python 3.10+ type hints compatibility
- Updated all type hints to use built-in types (dict, list, tuple) instead of typing imports
- Removed Dict, List, Tuple from typing imports since they're not needed in Python 3.10+
- Fixed NameError: name 'Dict' is not defined in specialized_nodes.py
- Modernized type annotations throughout codebase for better compatibility
- Resolves ComfyUI import error when loading MetaMan nodes

Files updated:
- specialized_nodes.py: Fixed all Dict/List/Tuple type hints
- metaman.py: Updated type annotations to modern syntax
- metadata_parser.py: Modernized type hints for consistency

Tested: ✅ Nodes now load successfully in ComfyUI without import errors
2025-08-09 14:18:57 -07:00
PXL8D 8722ae61dd Initial commit: MetaMan universal metadata management system
- Universal metadata extraction and conversion across AI platforms
- Support for A1111, ComfyUI, Civitai, Forge, Tensor.AI, Leonardo.AI
- Template-driven architecture for easy platform extension
- Model dependency resolution with download URLs
- Custom 'meta' PNG chunk standard for cross-platform compatibility
- Comprehensive validation and testing system
2025-08-08 19:21:10 -07:00