291fa65a7bad6084f843ac53bd9d34b69b8def5c
This change modifies `DiscordSendSaveVideo.INPUT_TYPES` to check for `ffmpeg_path` existence. - If FFmpeg is missing: The default format is set to "video/gif" (the only available fallback), and the tooltip is updated to explicitly warn the user and explain that FFmpeg installation is required for other formats. - If FFmpeg is present: The behavior remains unchanged with the full list of formats and detailed tooltip. This improves UX by preventing confusion when users see MP4 options in the tooltip but can't select them, and provides a clear call to action.
ComfyUI-DiscordSend
Send your AI-generated images and videos directly to Discord from ComfyUI!
Features • Installation • Settings • Technical Details • Contributing • Changelog
What's New in v1.1.0 (January 10, 2026)
🚀 Core Updates
- Structured Logging: Implemented comprehensive logging for better debugging and stability.
- Testing Suite: Added initial test framework to ensure reliability.
- Enhanced Stability: Various improvements to image and video handling logic.
📄 See CHANGELOG.md for the complete version history.
✨ Features
📥 Installation
Option 1: Using ComfyUI Manager
- Install ComfyUI Manager if you don't have it already
- Open ComfyUI, go to the Manager tab
- Search for "ComfyUI-DiscordSend" and install
Option 2: Manual Installation
cd /path/to/ComfyUI/custom_nodes
git clone https://github.com/AEmotionStudio/ComfyUI-DiscordSend
cd ComfyUI-DiscordSend
pip install -r requirements.txt # Installs the minimal requirements (only the requests library)
Important
- For video functionality, ffmpeg must be installed on your system. The node will automatically detect its presence.
- This extension has minimal dependencies, requiring only the 'requests' library which is included in the requirements.txt file.
⚙️ Settings
Discord Webhook Setup
Step 1: Access Webhook Settings
|
|
Step 2: Create and Copy Webhook
|
|
Step 3: Configure the Node
|
|
🖼️ Image Node Options (Click to Expand)
| Option | Description |
|---|---|
| Required Parameters | |
images |
The images to save and/or send to Discord |
filename_prefix |
Prefix for saved files (default: "ComfyUI-Image") |
overwrite_last |
Enable to overwrite last image instead of incrementing filenames |
| File Options | |
file_format |
PNG, JPEG, or WebP |
quality |
1-100 for JPEG/WebP formats |
lossless |
Use lossless compression when available |
save_output |
Whether to save images to disk |
show_preview |
Show preview in ComfyUI interface |
| Filename Options | |
add_date |
Add current date to filenames |
add_time |
Add current time to filenames |
add_dimensions |
Add width and height to filenames |
resize_to_power_of_2 |
Resize to nearest power of 2 dimensions |
resize_method |
Method for resizing (nearest, bilinear, etc.) |
| Discord Options | |
send_to_discord |
Enable Discord webhook integration |
webhook_url |
Discord webhook URL |
discord_message |
Text message to accompany images |
include_prompts_in_message |
Include generation prompts in Discord message |
include_format_in_message |
Include image format details in message |
group_batched_images |
Group batch images into one Discord message (max 9 images) |
send_workflow_json |
Send workflow JSON for reproducibility |
| GitHub Options | |
save_cdn_urls |
Save the Discord CDN URLs as a text file and attach to Discord message |
github_cdn_update |
Update a GitHub repository with Discord CDN URLs |
github_repo |
GitHub repository in format "username/repo" |
github_token |
GitHub personal access token (with repo permissions) |
github_file_path |
Path to file in repository to update (default: "cdn_urls.md") |
🎬 Video Node Options (Click to Expand)
| Option | Description |
|---|---|
| Required Parameters | |
images |
Image sequence to convert to video |
filename_prefix |
Prefix for saved files (default: "ComfyUI-Video") |
overwrite_last |
Enable to overwrite last video instead of incrementing filenames |
| Video Options | |
format |
Various formats including GIF, MP4, WebM, ProRes |
frame_rate |
Frames per second (0.1-120), values below 1 make images stay longer |
quality |
Quality setting for compression (1-100) |
loop_count |
Number of loops for GIF (0=infinite) |
lossless |
Use lossless compression when available |
pingpong |
Create forward-backward looping effect |
save_output |
Whether to save video to disk |
audio |
Optional audio to embed in video |
| Filename Options | |
add_date |
Add current date to filenames |
add_time |
Add current time to filenames (DO NOT DISABLE for Discord uploads - see known issues) |
add_dimensions |
Add width and height to filenames |
| Discord Options | |
send_to_discord |
Enable Discord webhook integration |
webhook_url |
Discord webhook URL |
discord_message |
Text message to accompany videos |
include_prompts_in_message |
Include generation prompts in Discord message |
include_video_info |
Include video format details in message (disable if you don't want time/format info) |
send_workflow_json |
Send workflow JSON for reproducibility |
| GitHub Options | |
save_cdn_urls |
Save the Discord CDN URLs as a text file and attach to Discord message |
github_cdn_update |
Update a GitHub repository with Discord CDN URLs |
github_repo |
GitHub repository in format "username/repo" |
github_token |
GitHub personal access token (with repo permissions) |
github_file_path |
Path to file in repository to update (default: "cdn_urls.md") |
🔧 Technical Details
| Component | Description |
|---|---|
| Video Processing | Discord reprocesses all uploaded videos. Quality settings may be modified, and videos compressed. |
| Max Resolution | Typically limited to 1080p by Discord. |
| Max Bitrate | Reduced based on server boost level. |
| Image Limit | Max 9 images per message/gallery. Images >10MB may be refused. |
Troubleshooting
- Videos not playing in Discord: Try h264-MP4 format, reduce quality, enable
add_time. - "ffmpeg not found": Install system ffmpeg and restart ComfyUI.
- Webhook errors: Verify URL validity and channel existence.
- UUID Conflicts: Ensure unique output directories for multiple users.
- GitHub Issues: Check token permissions (
public_repo) and repo access.
Warning
Critical Issue: Do NOT disable
add_timefor videos sent to Discord. They may appear as a single frame due to Discord's processing. Disableinclude_video_infoinstead if you want to hide details.
🤝 Contributing
Contributions are welcome! Please see the CONTRIBUTING.md for guidelines on how to get started. Whether it's bug reports, feature suggestions, or pull requests, your help is appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
📜 License
This project is licensed under the GPL-3.0 License - see the LICENSE file for details.
Languages
Python
99.7%
Shell
0.3%





