Files
FloyoAI-ComfyUI-Seed-API/README.md
T
pixelworld AI 309ee84f56 Initial commit: ComfyUI BytePlus API Integration
- Video generation nodes (Seedance Lite & Pro)
- Image generation nodes (Seedream & SeedEdit)
- Video URL to frames utility node
- Comprehensive README with usage guide
- Base64 image handling (no external hosting required)
2025-09-04 11:30:01 -05:00

162 lines
6.8 KiB
Markdown

# ComfyUI BytePlus API Integration
This ComfyUI custom node provides comprehensive integration with BytePlus (ByteDance) AI APIs, including both video generation (Seedance) and image generation (Seedream/SeedEdit) models.
## Features
### Video Generation (Seedance)
- **Text-to-Video Generation**: Create videos from text descriptions
- **Image-to-Video Generation**: Generate videos using input images as first frames
- **First+Last Frame Generation**: Create videos between two specific frames
- **Reference Images Generation**: Generate videos based on multiple reference images
- **High-Quality Pro Models**: Access to BytePlus's premium Seedance Pro model
### Image Generation
- **Text-to-Image Generation**: Create high-quality images from text prompts using Seedream 3.0
- **Image-to-Image Editing**: Edit and transform existing images with text descriptions using SeedEdit 3.0
- **Frame Extraction**: Convert video URLs to individual frames for further processing
## Installation
1. Clone this repository into your ComfyUI custom_nodes directory:
```bash
cd ComfyUI/custom_nodes/
git clone https://github.com/FloyoAI/ComfyUI-BytePlus-API.git
```
2. Install requirements:
```bash
cd ComfyUI-BytePlus-API
pip install -r requirements.txt
```
3. Configure your BytePlus API key:
- Get your API key from: https://www.byteplus.com/
- Edit `config.ini` and replace `<your_byteplus_api_key_here>` with your actual API key
- Or set the environment variable: `export BYTEPLUS_API_KEY="your_key_here"`
4. Restart ComfyUI
## Available Nodes
### Video Generation Nodes (BytePlus/VideoGeneration)
- **Seedance Lite Text-to-Video**: Generate videos from text prompts only
- Input: Text prompt, resolution, ratio, duration, FPS, seed, camera settings
- Output: Video URL (STRING)
- Use case: Create videos from scratch using descriptive text
- **Seedance Lite Image-to-Video**: Generate videos from a starting image
- Input: Text prompt, input image, resolution, ratio, duration, FPS, seed, camera settings
- Output: Video URL (STRING)
- Use case: Animate static images or create videos with specific starting frames
- **Seedance Lite First+Last Frame**: Generate videos between two keyframes
- Input: Text prompt, first frame image, last frame image, resolution, ratio, duration
- Output: Video URL (STRING)
- Use case: Create smooth transitions between two specific images
- **Seedance Lite Reference Images**: Generate videos using multiple reference images
- Input: Text prompt, 2-4 reference images, resolution, ratio, duration
- Output: Video URL (STRING)
- Use case: Generate videos that maintain style/appearance consistency with reference materials
- **Seedance Pro Text/Image-to-Video**: High-quality video generation
- Input: Text prompt, mode selection, optional input image, resolution, ratio, duration
- Output: Video URL (STRING)
- Use case: Premium quality video generation for professional use
### Image Generation Nodes (BytePlus/ImageGeneration)
- **Seedream Text-to-Image**: Generate images from text descriptions
- Input: Text prompt, size selection, optional seed
- Output: Generated image (IMAGE)
- Use case: Create high-quality images from detailed text descriptions
- **SeedEdit Image-to-Image**: Edit and transform existing images
- Input: Text prompt, input image, size selection, guidance scale, optional seed
- Output: Edited image (IMAGE)
- Use case: Modify existing images based on text instructions (change colors, add/remove objects, style transfer)
### Utility Nodes (BytePlus/Video)
- **Video URL to Frames**: Extract all frames from a video URL
- Input: Video URL (STRING)
- Output: Frame batch (IMAGE), frame count (INT), FPS (FLOAT)
- Use case: Convert generated videos into individual frames for further image processing
## Usage Guide
### Video Generation Workflow
1. **Choose the appropriate video node** based on your input type:
- Text only → Seedance Lite Text-to-Video
- Single image → Seedance Lite Image-to-Video
- Two images → Seedance Lite First+Last Frame
- Multiple references → Seedance Lite Reference Images
- High quality → Seedance Pro
2. **Configure parameters**:
- **Prompt**: Describe what you want in the video
- **Resolution**: 480p, 720p, or 1080p
- **Ratio**: Aspect ratio (16:9, 1:1, 9:16, etc.)
- **Duration**: 3-12 seconds
3. **Connect the output** to other nodes:
- Use output URL directly with video preview nodes
- Connect to "Video URL to Frames" to extract individual frames
- Save video using external video saving nodes
### Image Generation Workflow
1. **For new images**: Use Seedream Text-to-Image
- Write detailed prompts for best results
- Experiment with different sizes for various use cases
- Use seed values for reproducible results
2. **For image editing**: Use SeedEdit Image-to-Image
- Load your source image
- Describe the changes you want in the prompt
- Adjust guidance scale (higher = more prompt adherence)
- Size can be "adaptive" to maintain original dimensions
3. **Process results**:
- Images output as standard ComfyUI IMAGE tensors
- Compatible with all ComfyUI image processing nodes
- Can be saved, edited, or used as input for video generation
## Requirements
- ComfyUI
- Python 3.8+
- BytePlus API key
- Required packages (see requirements.txt)
## Key Features
- **No External Dependencies**: Base64 image conversion means no external hosting required
- **Automatic Task Polling**: Video generation waits until completion automatically
- **Comprehensive Error Handling**: Graceful degradation with detailed error messages
- **ComfyUI Integration**:
- Video outputs as URL strings compatible with video preview nodes
- Image outputs as standard IMAGE tensors compatible with all image nodes
- **Flexible Sizing**: Support for various aspect ratios and resolutions
- **Seed Control**: Reproducible results with optional seed parameters
## Tips for Best Results
### Video Generation
- **Be specific in prompts**: Include details about movement, camera angles, and style
- **Use appropriate ratios**: Match your intended use case (16:9 for landscape, 9:16 for mobile, etc.)
- **Leverage reference images**: For consistent character/style appearance across videos
### Image Generation
- **Detailed prompts work better**: Include style, lighting, composition details
- **Use SeedEdit for modifications**: Better than text-to-image for specific edits
- **Guidance scale tuning**: Start with default 5.5, increase for more prompt adherence
- **Size selection**: Use "adaptive" for SeedEdit to maintain original proportions
## Troubleshooting
- **API Key Issues**: Ensure your BytePlus API key is correctly set in config.ini or environment variables
- **Empty Results**: Check ComfyUI console for detailed error messages
- **Image Quality**: Try different prompts, seeds, or guidance scale values for better results