File size: 11,605 Bytes
76d1eaf
 
de398b7
615f794
de398b7
 
fe8e9b5
 
 
d828b13
5c2edbd
d828b13
 
0c8f366
d828b13
5f12e71
d873458
32dd66e
 
5c2edbd
32dd66e
d828b13
5c2edbd
c63245c
5c2edbd
 
 
 
 
 
 
 
 
 
 
c63245c
5c2edbd
 
 
 
 
c63245c
 
 
5c2edbd
 
 
 
 
 
 
 
c63245c
 
 
 
 
 
 
 
 
 
 
 
 
 
d828b13
5c2edbd
d828b13
 
 
 
 
5c2edbd
d828b13
c63245c
d828b13
 
5c2edbd
d828b13
 
 
 
 
5caabf1
d828b13
 
 
 
 
 
 
 
 
 
5c2edbd
d828b13
 
5f12e71
 
d828b13
 
5c2edbd
d828b13
 
 
 
 
5c2edbd
 
0c8f366
 
 
 
 
 
 
5c2edbd
d828b13
 
 
32dd66e
5c2edbd
 
d828b13
5c2edbd
c63245c
5c2edbd
c63245c
5c2edbd
 
 
d828b13
 
 
5c2edbd
 
c63245c
d828b13
5c2edbd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d828b13
c63245c
d828b13
 
5c2edbd
d828b13
5c2edbd
d828b13
5c2edbd
d828b13
5c2edbd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d828b13
5c2edbd
0c8f366
5c2edbd
 
 
 
 
c63245c
5c2edbd
 
 
 
 
 
de398b7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
---
license: apache-2.0
pipeline_tag: video-to-video
library_name: diffusers
tags:
- art
base_model:
- ByteDance-Seed/SeedVR2-7B
- ByteDance-Seed/SeedVR2-3B
---

# ComfyUI-SeedVR2_VideoUpscaler

[![View Code](https://img.shields.io/badge/πŸ“‚_View_Code-GitHub-181717?style=for-the-badge&logo=github)](https://github.com/numz/ComfyUI-SeedVR2_VideoUpscaler)

Official release of [SeedVR2](https://github.com/ByteDance-Seed/SeedVR) for ComfyUI that enables Upscale Video/Images generation.

<img src="https://raw.githubusercontent.com/numz/ComfyUI-SeedVR2_VideoUpscaler/refs/heads/main/docs/demo_01.jpg">
<img src="https://raw.githubusercontent.com/numz/ComfyUI-SeedVR2_VideoUpscaler/refs/heads/main/docs/demo_02.jpg">

<img src="https://raw.githubusercontent.com/numz/ComfyUI-SeedVR2_VideoUpscaler/refs/heads/main/docs/usage.png">

## πŸ“‹ Quick Access

- [πŸ†™ Note and futur releases](#-note-and-futur-releases)
- [πŸš€ Updates](#-updates)
- [🎯 Features](#-features)
- [πŸ”§ Requirements](#-requirements)
- [πŸ“¦ Installation](#-installation)
- [πŸ“– Usage](#-usage)
- [πŸ“Š Benchmarks](#-benchmarks)
- [⚠️ Limitations](#-Limitations)
- [🀝 Contributing](#-contributing)
- [πŸ™ Credits](#-credits)
- [πŸ“„ License](#-license)

## πŸ†™ Note and futur releases

- Improve FP8 integration, we are loosing some FP8 advantages during the process.
- Tile-VAE integration if it works for video, I have test to do or if some dev want help, you are welcome.
- 7B FP8 model seems to have quality issues, use 7BFP16 instead (If FP8 don't give OOM then FP16 will works) I have to review this.

## πŸš€ Updates

**2025.06.30**

- πŸš€ Speed Up the process and less VRAM used (see new benchmark).
- πŸ› οΈ Fixed leak memory on 3B models.
- ❌ Can now interrupt process if needed.
- βœ… refactored the code for better sharing with the community, feel free to propose pull requests.
- πŸ› οΈ Removed flash attention dependency

**2025.06.24**

- πŸš€ Speed up the process until x4 (see new benchmark)

**2025.06.22**

- πŸ’ͺ FP8 compatibility !
- πŸš€ Speed Up all Process
- πŸš€ less VRAM consumption (Stay high, batch_size=1 for RTX4090 max, I'm trying to fix that)
- πŸ› οΈ Better benchmark coming soon

**2025.06.20**

- πŸ› οΈ Initial push

## 🎯 Features

- High-quality Upscaling
- Suitable for any video length once the right settings are found
- Model Will Be Download Automatically from [Models](https://huggingface.co/numz/SeedVR2_comfyUI/tree/main)

## πŸ”§ Requirements

- A Huge VRAM capabilities is better, from my test, even the 3B version need a lot of VRAM at least 18GB.
- Last ComfyUI version with python 3.12.9 (may be works with older versions but I haven't test it)

## πŸ“¦ Installation

1. Clone this repository into your ComfyUI custom nodes directory:

```bash
cd ComfyUI/custom_nodes
git clone https://github.com/numz/ComfyUI-SeedVR2_VideoUpscaler.git
```

2. Install the required dependencies:

load venv and :

```bash
pip install -r ComfyUI-SeedVR2_VideoUpscaler/requirements.txt
```

install flash_attn/triton, 6% faster on process, not a mandatory.

```bash
pip install flash_attn
pip install triton
```

or

```bash
python_embeded\python.exe -m pip install -r flash_attn
```

check here from https://github.com/loscrossos/lib_flashattention/releases and https://github.com/woct0rdho/triton-windows

3. Models

   Will be automtically download into :
   `models/SEEDVR2`

   or can be found here ([MODELS](https://huggingface.co/numz/SeedVR2_comfyUI/tree/main))

## πŸ“– Usage

1. In ComfyUI, locate the **SeedVR2 Video Upscaler** node in the node menu.

<img src="https://raw.githubusercontent.com/numz/ComfyUI-SeedVR2_VideoUpscaler/refs/heads/main/docs/node.png" width="100%">

2. ⚠️ **THINGS TO KNOW !!**

**temporal consistency** : at least a **batch_size** of 5 is required to activate temporal consistency. SEEDVR2 need at least 5 frames to calculate it. A higher batch_size give better performances/results but need more than 24GB VRAM.

**VRAM usage** : The input video resolution impacts VRAM consumption during the process. The larger the input video, the more VRAM will consume during the process. So, if you experience OOMs with a batch_size of at least 5, try reducing the input video resolution until it resolves.

Of course, the output resolution also has an impact, so if your hardware doesn't allow it, reduce the output resolution.

3. Configure the node parameters:

   - `model`: Select your 3B or 7B model
   - `seed`: a seed but it generate another seed from this one
   - `new_resolution`: New desired short edge in px, will keep ratio on other edge
   - `batch_size`: VERY IMPORTANT!, this model consume a lot of VRAM, All your VRAM, even for the 3B model, so for GPU under 24GB VRAM keep this value Low, good value is "1" without temporal consistency, "5" for temporal consistency, but higher is this value better is the result.
   - `preserve_vram`: for VRAM < 24GB, If true, It will unload unused models during process, longer but works, otherwise probably OOM with

## πŸ“Š Benchmarks

**7B models on NVIDIA H100 93GB VRAM** (values in parentheses are from the previous benchmark):

| nb frames | Resolution          | Batch Size | execution time fp8 (s) | FPS fp8     | execution time fp16 (s) | FPS fp16           | perf progress since start |
| --------- | ------------------- | ---------- | ---------------------- | ----------- | ----------------------- | ------------------ | ------------------------- |
| 15        | 512Γ—768 β†’ 1080Γ—1620 | 5          | 23.75 (26.71)          | 0.63 (0.56) | 24.23 (27.75)           | 0.61 (0.54) (0.10) | x6.1                      |
| 27        | 512Γ—768 β†’ 1080Γ—1620 | 9          | 27.75 (33.97)          | 0.97 (0.79) | 28.48 (35.08)           | 0.94 (0.77) (0.15) | x6.2                      |
| 39        | 512Γ—768 β†’ 1080Γ—1620 | 13         | 32.02 (41.01)          | 1.21 (0.95) | 32.62 (42.08)           | 1.19 (0.93) (0.19) | x6.2                      |
| 51        | 512Γ—768 β†’ 1080Γ—1620 | 17         | 36.39 (48.12)          | 1.40 (1.06) | 37.30 (49.44)           | 1.36 (1.03) (0.21) | x6.4                      |
| 63        | 512Γ—768 β†’ 1080Γ—1620 | 21         | 40.80 (55.40)          | 1.54 (1.14) | 41.32 (56.70)           | 1.52 (1.11) (0.23) | x6.6                      |
| 75        | 512Γ—768 β†’ 1080Γ—1620 | 25         | 45.37 (62.60)          | 1.65 (1.20) | 45.79 (63.80)           | 1.63 (1.18) (0.24) | x6.8                      |
| 123       | 512Γ—768 β†’ 1080Γ—1620 | 41         | 62.44 (91.38)          | 1.96 (1.35) | 62.28 (92.90)           | 1.97 (1.32) (0.28) | x7.0                      |
| 243       | 512Γ—768 β†’ 1080Γ—1620 | 81         | 106.13 (164.25)        | 2.28 (1.48) | 104.68 (166.09)         | 2.32 (1.46) (0.31) | x7.4                      |
| 363       | 512Γ—768 β†’ 1080Γ—1620 | 121        | 151.01 (238.18)        | 2.40 (1.52) | 148.67 (239.80)         | 2.44 (1.51) (0.33) | x7.4                      |
| 453       | 512Γ—768 β†’ 1080Γ—1620 | 151        | 186.98 (296.52)        | 2.42 (1.53) | 184.11 (298.65)         | 2.46 (1.52) (0.33) | x7.4                      |
| 633       | 512Γ—768 β†’ 1080Γ—1620 | 211        | 253.77 (406.65)        | 2.49 (1.56) | 249.43 (409.44)         | 2.53 (1.55) (0.34) | x7.4                      |
| 903       | 512Γ—768 β†’ 1080Γ—1620 | 301        | OOM (OOM)              | (OOM)       | OOM (OOM)               | (OOM) (OOM)        |                           |
| 149       | 854x480 β†’ 1920x1080 | 149        |                        |             | 450.22                  | 0.41               |                           |

**3B FP8 models on NVIDIA H100 93GB VRAM** (values in parentheses are from the previous benchmark):

| nb frames | Resolution          | Batch Size | execution time fp8 (s) | FPS fp8 | execution time fp16 (s) | FPS fp16 |
| --------- | ------------------- | ---------- | ---------------------- | ------- | ----------------------- | -------- |
| 149       | 854x480 β†’ 1920x1080 | 149        | 361.22                 | 0.41    |                         |          |

**NVIDIA RTX4090 24GB VRAM**

| Model   | nb frames | Resolution          | Batch Size | execution time (seconds) | FPS         | Note                                     |
| ------- | --------- | ------------------- | ---------- | ------------------------ | ----------- | ---------------------------------------- |
| 3B fp8  | 5         | 512x768 β†’ 1080x1620 | 1          | 14.66 (22.52)            | 0.34 (0.22) |                                          |
| 3B fp16 | 5         | 512x768 β†’ 1080x1620 | 1          | 17.02 (27.84)            | 0.29 (0.18) |                                          |
| 7B fp8  | 5         | 512x768 β†’ 1080x1620 | 1          | 46.23 (75.51)            | 0.11 (0.07) | preserve_memory=on                       |
| 7B fp16 | 5         | 512x768 β†’ 1080x1620 | 1          | 43.58 (78.93)            | 0.11 (0.06) | preserve_memory=on                       |
| 3B fp8  | 10        | 512x768 β†’ 1080x1620 | 5          | 39.75                    | 0.25        | preserve_memory=on                       |
| 3B fp8  | 100       | 512x768 β†’ 1080x1620 | 5          | 322.77                   | 0.31        | preserve_memory=on                       |
| 3B fp8  | 1000      | 512x768 β†’ 1080x1620 | 5          | 3624.08                  | 0.28        | preserve_memory=on                       |
| 3B fp8  | 20        | 512x768 β†’ 1080x1620 | 1          | 40.71 (65.40)            | 0.49 (0.31) |                                          |
| 3B fp16 | 20        | 512x768 β†’ 1080x1620 | 1          | 44.76 (91.12)            | 0.45 (0.22) |                                          |
| 3B fp8  | 20        | 512x768 β†’ 1280x1920 | 1          | 61.14 (89.10)            | 0.33 (0.22) |                                          |
| 3B fp8  | 20        | 512x768 β†’ 1480x2220 | 1          | 79.66 (136.08)           | 0.25 (0.15) |                                          |
| 3B fp8  | 20        | 512x768 β†’ 1620x2430 | 1          | 125.79 (191.28)          | 0.16 (0.10) | preserve_memory=off (preserve_memory=on) |
| 3B fp8  | 149       | 854x480 β†’ 1920x1080 | 5          | 782.76                   | 0.19        | preserve_memory=on                       |

## ⚠️ Limitations

- Use a lot of VRAM, it will take all!!
- Processing speed depends on GPU capabilities

## 🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

### How to contribute:

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

### Development Setup:

1. Clone the repository
2. Install dependencies
3. Make your changes
4. Test your changes
5. Submit a pull request

### Code Style:

- Follow the existing code style
- Add comments for complex logic
- Update documentation if needed
- Ensure all tests pass

### Reporting Issues:

When reporting issues, please include:

- Your system specifications
- ComfyUI version
- Python version
- Error messages
- Steps to reproduce the issue

## πŸ™ Credits

- Original [SeedVR2](https://github.com/ByteDance-Seed/SeedVR) implementation

# πŸ“œ License

- The code in this repository is released under the MIT license as found in the [LICENSE file](LICENSE).