ComfyPilotComfyPilot
工作流 / 视频工具 / 帧插值: FILM or RIFE
帧插值: FILM or RIFE

帧插值: FILM or RIFE

Frame Interpolation: FILM or RIFE

上传视频并选择RIFE或FILM帧插值模型,以生成更流畅、更高帧率的视频输出。

视频工具 4 个节点 1 个输入 45 次使用 ComfyUI ≥ 0.20.0 ComfyUI 25 KB

下载工作流 JSON 查看官方来源

下载后把文件拖进 ComfyUI 窗口即可打开。

需要的权重

这个工作流引用了 1 个权重文件,其中 1 个能在本站模型库里找到。

film_net_fp16.safetensors 在模型库查看

节点构成

LoadVideo × 1
SaveVideo × 1
MarkdownNote × 1
022693be-2baa-4009-870a-28921508a7ef × 1

官方标注的模型

FILMRIFE

工作流 JSON

和上面「下载工作流 JSON」是同一份文件。

1{
2 "id": "4218cc85-e8c1-4b6d-a29c-254db71ee1a4",
3 "revision": 0,
4 "last_node_id": 17,
5 "last_link_id": 28,
6 "nodes": [
7 {
8 "id": 4,
9 "type": "LoadVideo",
10 "pos": [
11 -3550,
12 -3240
13 ],
14 "size": [
15 520,
16 410
17 ],
18 "flags": [],
19 "order": 0,
20 "mode": 0,
21 "inputs": [],
22 "outputs": [
23 {
24 "name": "VIDEO",
25 "type": "VIDEO",
26 "links": [
27 20
28 ]
29 }
30 ],
31 "properties": {
32 "enableTabs": false,
33 "tabWidth": 65,
34 "tabXOffset": 10,
35 "hasSecondTab": false,
36 "secondTabText": "Send Back",
37 "secondTabOffset": 80,
38 "secondTabWidth": 65,
39 "cnr_id": "comfy-core",
40 "ver": "0.19.3",
41 "Node name for S&R": "LoadVideo"
42 },
43 "widgets_values": [
44 "white_armored_warrior.mp4",
45 "image"
46 ]
47 },
48 {
49 "id": 7,
50 "type": "SaveVideo",
51 "pos": [
52 -2520,
53 -3240
54 ],
55 "size": [
56 690,
57 570
58 ],
59 "flags": [],
60 "order": 3,
61 "mode": 0,
62 "inputs": [
63 {
64 "name": "video",
65 "type": "VIDEO",
66 "link": 27
67 }
68 ],
69 "outputs": [],
70 "properties": {
71 "enableTabs": false,
72 "tabWidth": 65,
73 "tabXOffset": 10,
74 "hasSecondTab": false,
75 "secondTabText": "Send Back",
76 "secondTabOffset": 80,
77 "secondTabWidth": 65,
78 "cnr_id": "comfy-core",
79 "ver": "0.19.3",
80 "Node name for S&R": "SaveVideo"
81 },
82 "widgets_values": [
83 "video/ComfyUI",
84 "auto",
85 "auto"
86 ]
87 },
88 {
89 "id": 17,
90 "type": "MarkdownNote",
91 "pos": [
92 -4120,
93 -3240
94 ],
95 "size": [
96 540,
97 820
98 ],
99 "flags": [],
100 "order": 1,
101 "mode": 0,
102 "inputs": [],
103 "outputs": [],
104 "title": "Model Link",
105 "properties": [],
106 "widgets_values": [
107 "**Input Assets**\n- [white_armored_warrior.mp4](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/refs/heads/main/input/white_armored_warrior.mp4) — required workflow input (`input/white_armored_warrior.mp4`)\n\nRelated PR: [#13258](https://github.com/Comfy-Org/ComfyUI/pull/13258)\n## Model Links\n\n- [Hugging Face:Comfy-Org/frame_interpolation](https://huggingface.co/Comfy-Org/frame_interpolation)\n\n**ModelScope mirrors** (alternative repo location)\n\n- [ModelScope:Comfy-Org/frame_interpolation](https://modelscope.cn/models/Comfy-Org/frame_interpolation)\n\n**frame_interpolation**\n\n- [film_net_fp16.safetensors](https://huggingface.co/Comfy-Org/frame_interpolation/resolve/main/frame_interpolation/film_net_fp16.safetensors) (65.7 MB)\n\n## Model Storage Location\n\n```\n📂 ComfyUI/\n├── 📂 models/\n│ ├── 📂 frame_interpolation/\n│ │ ├── film_net_fp16.safetensors (current template)\n│ │ ├── rife_v4.25.safetensors\n│ │ ├── rife_v4.25_heavy.safetensors\n│ │ ├── rife_v4.25_lite.safetensors\n│ │ ├── rife_v4.26.safetensors\n│ │ └── rife_v4.26_heavy.safetensors\n```\n\n## Report Issue\n\nNote: Please update ComfyUI first ([guide](https://docs.comfy.org/installation/update_comfyui)) and prepare required models. Desktop/Cloud updates follow stable releases, so some nightly-supported models may not be available yet.\n\n- Cannot run / runtime errors: [ComfyUI/issues](https://github.com/comfyanonymous/ComfyUI/issues)\n- UI / frontend issues: [ComfyUI_frontend/issues](https://github.com/Comfy-Org/ComfyUI_frontend/issues)\n- Workflow issues: [workflow_templates/issues](https://github.com/Comfy-Org/workflow_templates/issues)\n"
108 ],
109 "color": "#222",
110 "bgcolor": "#000"
111 },
112 {
113 "id": 16,
114 "type": "022693be-2baa-4009-870a-28921508a7ef",
115 "pos": [
116 -2990,
117 -3240
118 ],
119 "size": [
120 410,
121 200
122 ],
123 "flags": [],
124 "order": 2,
125 "mode": 0,
126 "inputs": [
127 {
128 "name": "video",
129 "type": "VIDEO",
130 "link": 20
131 },
132 {
133 "label": "multiplier",
134 "name": "value",
135 "type": "INT",
136 "widget": {
137 "name": "value"
138 },
139 "link": null
140 },
141 {
142 "label": "enable_fps_multiplier",
143 "name": "value_1",
144 "type": "BOOLEAN",
145 "widget": {
146 "name": "value_1"
147 },
148 "link": null
149 }
150 ],
151 "outputs": [
152 {
153 "label": "VIDEO",
154 "name": "VIDEO_1",
155 "type": "VIDEO",
156 "links": [
157 27
158 ]
159 },
160 {
161 "name": "IMAGE",
162 "type": "IMAGE",
163 "links": null
164 }
165 ],
166 "title": "Frame Interpolation",
167 "properties": {
168 "proxyWidgets": [
169 [
170 "9",
171 "value"
172 ],
173 [
174 "13",
175 "value"
176 ],
177 [
178 "1",
179 "model_name"
180 ]
181 ],
182 "enableTabs": false,
183 "tabWidth": 65,
184 "tabXOffset": 10,
185 "hasSecondTab": false,
186 "secondTabText": "Send Back",
187 "secondTabOffset": 80,
188 "secondTabWidth": 65,
189 "cnr_id": "comfy-core",
190 "ver": "0.19.3"
191 },
192 "widgets_values": []
193 }
194 ],
195 "links": [
196 [
197 20,
198 4,
199 0,
200 16,
201 0,
202 "VIDEO"
203 ],
204 [
205 27,
206 16,
207 0,
208 7,
209 0,
210 "VIDEO"
211 ]
212 ],
213 "groups": [],
214 "definitions": {
215 "subgraphs": [
216 {
217 "id": "022693be-2baa-4009-870a-28921508a7ef",
218 "version": 1,
219 "state": {
220 "lastGroupId": 0,
221 "lastNodeId": 17,
222 "lastLinkId": 28,
223 "lastRerouteId": 0
224 },
225 "revision": 0,
226 "config": [],
227 "name": "Frame Interpolation",
228 "inputNode": {
229 "id": -10,
230 "bounding": [
231 -2810,
232 -3070,
233 159.7421875,
234 120
235 ]
236 },
237 "outputNode": {
238 "id": -20,
239 "bounding": [
240 -1270,
241 -3075,
242 120,
243 80
244 ]
245 },
246 "inputs": [
247 {
248 "id": "05e31c51-dcb6-4a1e-9651-1b9ad4f7a287",
249 "name": "video",
250 "type": "VIDEO",
251 "linkIds": [
252 2
253 ],
254 "localized_name": "video",
255 "pos": [
256 -2670.2578125,
257 -3050
258 ]
259 },
260 {
261 "id": "feecb409-7d1c-4a99-9c63-50c5fecdd3c9",
262 "name": "value",
263 "type": "INT",
264 "linkIds": [
265 22
266 ],
267 "label": "multiplier",
268 "pos": [
269 -2670.2578125,
270 -3030
271 ]
272 },
273 {
274 "id": "0b8a861b-b581-4068-9e8c-f8d15daf1ca6",
275 "name": "value_1",
276 "type": "BOOLEAN",
277 "linkIds": [
278 23
279 ],
280 "label": "enable_fps_multiplier",
281 "pos": [
282 -2670.2578125,
283 -3010
284 ]
285 },
286 {
287 "id": "a22b101e-8773-4e17-a297-7ee3aae09162",
288 "name": "model_name",
289 "type": "COMBO",
290 "linkIds": [
291 24
292 ],
293 "pos": [
294 -2670.2578125,
295 -2990
296 ]
297 }
298 ],
299 "outputs": [
300 {
301 "id": "ef2ada05-d5aa-492a-9394-6c3e71e39ebb",
302 "name": "VIDEO_1",
303 "type": "VIDEO",
304 "linkIds": [
305 26
306 ],
307 "label": "VIDEO",
308 "pos": [
309 -1250,
310 -3055
311 ]
312 },
313 {
314 "id": "5aacc622-2a07-4983-b31c-e04461f7f953",
315 "name": "IMAGE",
316 "type": "IMAGE",
317 "linkIds": [
318 28
319 ],
320 "pos": [
321 -1250,
322 -3035
323 ]
324 }
325 ],
326 "widgets": [],
327 "nodes": [
328 {
329 "id": 1,
330 "type": "FrameInterpolationModelLoader",
331 "pos": [
332 -2510,
333 -3370
334 ],
335 "size": [
336 370,
337 90
338 ],
339 "flags": [],
340 "order": 0,
341 "mode": 0,
342 "inputs": [
343 {
344 "localized_name": "model_name",
345 "name": "model_name",
346 "type": "COMBO",
347 "widget": {
348 "name": "model_name"
349 },
350 "link": 24
351 }
352 ],
353 "outputs": [
354 {
355 "localized_name": "INTERP_MODEL",
356 "name": "INTERP_MODEL",
357 "type": "INTERP_MODEL",
358 "links": [
359 1
360 ]
361 }
362 ],
363 "properties": {
364 "enableTabs": false,
365 "tabWidth": 65,
366 "tabXOffset": 10,
367 "hasSecondTab": false,
368 "secondTabText": "Send Back",
369 "secondTabOffset": 80,
370 "secondTabWidth": 65,
371 "cnr_id": "comfy-core",
372 "ver": "0.19.3",
373 "Node name for S&R": "FrameInterpolationModelLoader",
374 "models": [
375 {
376 "name": "film_net_fp16.safetensors",
377 "url": "https://huggingface.co/Comfy-Org/frame_interpolation/resolve/main/frame_interpolation/film_net_fp16.safetensors",
378 "directory": "frame_interpolation"
379 }
380 ]
381 },
382 "widgets_values": [
383 "film_net_fp16.safetensors"
384 ]
385 },
386 {
387 "id": 2,
388 "type": "FrameInterpolate",
389 "pos": [
390 -2040,
391 -3370
392 ],
393 "size": [
394 270,
395 110
396 ],
397 "flags": [],
398 "order": 1,
399 "mode": 0,
400 "inputs": [
401 {
402 "localized_name": "interp_model",
403 "name": "interp_model",
404 "type": "INTERP_MODEL",
405 "link": 1
406 },
407 {
408 "localized_name": "images",
409 "name": "images",
410 "type": "IMAGE",
411 "link": 3
412 },
413 {
414 "localized_name": "multiplier",
415 "name": "multiplier",
416 "type": "INT",
417 "widget": {
418 "name": "multiplier"
419 },
420 "link": 8
421 }
422 ],
423 "outputs": [
424 {
425 "localized_name": "IMAGE",
426 "name": "IMAGE",
427 "type": "IMAGE",
428 "links": [
429 4,
430 28
431 ]
432 }
433 ],
434 "properties": {
435 "enableTabs": false,
436 "tabWidth": 65,
437 "tabXOffset": 10,
438 "hasSecondTab": false,
439 "secondTabText": "Send Back",
440 "secondTabOffset": 80,
441 "secondTabWidth": 65,
442 "cnr_id": "comfy-core",
443 "ver": "0.19.3",
444 "Node name for S&R": "FrameInterpolate"
445 },
446 "widgets_values": [
447 2
448 ]
449 },
450 {
451 "id": 5,
452 "type": "CreateVideo",
453 "pos": [
454 -1600,
455 -3370
456 ],
457 "size": [
458 270,
459 110
460 ],
461 "flags": [],
462 "order": 3,
463 "mode": 0,
464 "inputs": [
465 {
466 "localized_name": "images",
467 "name": "images",
468 "type": "IMAGE",
469 "link": 4
470 },
471 {
472 "localized_name": "audio",
473 "name": "audio",
474 "shape": 7,
475 "type": "AUDIO",
476 "link": 5
477 },
478 {
479 "localized_name": "fps",
480 "name": "fps",
481 "type": "FLOAT",
482 "widget": {
483 "name": "fps"
484 },
485 "link": 12
486 }
487 ],
488 "outputs": [
489 {
490 "localized_name": "VIDEO",
491 "name": "VIDEO",
492 "type": "VIDEO",
493 "links": [
494 26
495 ]
496 }
497 ],
498 "properties": {
499 "enableTabs": false,
500 "tabWidth": 65,
501 "tabXOffset": 10,
502 "hasSecondTab": false,
503 "secondTabText": "Send Back",
504 "secondTabOffset": 80,
505 "secondTabWidth": 65,
506 "cnr_id": "comfy-core",
507 "ver": "0.19.3",
508 "Node name for S&R": "CreateVideo"
509 },
510 "widgets_values": [
511 30
512 ]
513 },
514 {
515 "id": 9,
516 "type": "PrimitiveInt",
517 "pos": [
518 -2500,
519 -2970
520 ],
521 "size": [
522 270,
523 90
524 ],
525 "flags": [],
526 "order": 4,
527 "mode": 0,
528 "inputs": [
529 {
530 "localized_name": "value",
531 "name": "value",
532 "type": "INT",
533 "widget": {
534 "name": "value"
535 },
536 "link": 22
537 }
538 ],
539 "outputs": [
540 {
541 "localized_name": "INT",
542 "name": "INT",
543 "type": "INT",
544 "links": [
545 8,
546 19
547 ]
548 }
549 ],
550 "title": "Int (Multiplier)",
551 "properties": {
552 "enableTabs": false,
553 "tabWidth": 65,
554 "tabXOffset": 10,
555 "hasSecondTab": false,
556 "secondTabText": "Send Back",
557 "secondTabOffset": 80,
558 "secondTabWidth": 65,
559 "cnr_id": "comfy-core",
560 "ver": "0.19.3",
561 "Node name for S&R": "PrimitiveInt"
562 },
563 "widgets_values": [
564 2,
565 "fixed"
566 ]
567 },
568 {
569 "id": 10,
570 "type": "ComfySwitchNode",
571 "pos": [
572 -1610,
573 -3120
574 ],
575 "size": [
576 270,
577 130
578 ],
579 "flags": [],
580 "order": 5,
581 "mode": 0,
582 "inputs": [
583 {
584 "localized_name": "on_false",
585 "name": "on_false",
586 "type": "FLOAT",
587 "link": 11
588 },
589 {
590 "localized_name": "on_true",
591 "name": "on_true",
592 "type": "FLOAT",
593 "link": 13
594 },
595 {
596 "localized_name": "switch",
597 "name": "switch",
598 "type": "BOOLEAN",
599 "widget": {
600 "name": "switch"
601 },
602 "link": 15
603 }
604 ],
605 "outputs": [
606 {
607 "localized_name": "output",
608 "name": "output",
609 "type": "FLOAT",
610 "links": [
611 12
612 ]
613 }
614 ],
615 "properties": {
616 "enableTabs": false,
617 "tabWidth": 65,
618 "tabXOffset": 10,
619 "hasSecondTab": false,
620 "secondTabText": "Send Back",
621 "secondTabOffset": 80,
622 "secondTabWidth": 65,
623 "cnr_id": "comfy-core",
624 "ver": "0.19.3",
625 "Node name for S&R": "ComfySwitchNode"
626 },
627 "widgets_values": [
628 true
629 ]
630 },
631 {
632 "id": 13,
633 "type": "PrimitiveBoolean",
634 "pos": [
635 -2500,
636 -2770
637 ],
638 "size": [
639 310,
640 90
641 ],
642 "flags": [],
643 "order": 7,
644 "mode": 0,
645 "inputs": [
646 {
647 "localized_name": "value",
648 "name": "value",
649 "type": "BOOLEAN",
650 "widget": {
651 "name": "value"
652 },
653 "link": 23
654 }
655 ],
656 "outputs": [
657 {
658 "localized_name": "BOOLEAN",
659 "name": "BOOLEAN",
660 "type": "BOOLEAN",
661 "links": [
662 15
663 ]
664 }
665 ],
666 "title": "Boolean (Apply multiplier to FPS?)",
667 "properties": {
668 "enableTabs": false,
669 "tabWidth": 65,
670 "tabXOffset": 10,
671 "hasSecondTab": false,
672 "secondTabText": "Send Back",
673 "secondTabOffset": 80,
674 "secondTabWidth": 65,
675 "cnr_id": "comfy-core",
676 "ver": "0.19.3",
677 "Node name for S&R": "PrimitiveBoolean"
678 },
679 "widgets_values": [
680 true
681 ]
682 },
683 {
684 "id": 3,
685 "type": "GetVideoComponents",
686 "pos": [
687 -2500,
688 -3170
689 ],
690 "size": [
691 230,
692 100
693 ],
694 "flags": [],
695 "order": 2,
696 "mode": 0,
697 "inputs": [
698 {
699 "localized_name": "video",
700 "name": "video",
701 "type": "VIDEO",
702 "link": 2
703 }
704 ],
705 "outputs": [
706 {
707 "localized_name": "images",
708 "name": "images",
709 "type": "IMAGE",
710 "links": [
711 3
712 ]
713 },
714 {
715 "localized_name": "audio",
716 "name": "audio",
717 "type": "AUDIO",
718 "links": [
719 5
720 ]
721 },
722 {
723 "localized_name": "fps",
724 "name": "fps",
725 "type": "FLOAT",
726 "links": [
727 11,
728 18
729 ]
730 }
731 ],
732 "properties": {
733 "enableTabs": false,
734 "tabWidth": 65,
735 "tabXOffset": 10,
736 "hasSecondTab": false,
737 "secondTabText": "Send Back",
738 "secondTabOffset": 80,
739 "secondTabWidth": 65,
740 "cnr_id": "comfy-core",
741 "ver": "0.19.3",
742 "Node name for S&R": "GetVideoComponents"
743 },
744 "widgets_values": []
745 },
746 {
747 "id": 11,
748 "type": "ComfyMathExpression",
749 "pos": [
750 -2090,
751 -3070
752 ],
753 "size": [
754 400,
755 210
756 ],
757 "flags": {
758 "collapsed": false
759 },
760 "order": 6,
761 "mode": 0,
762 "inputs": [
763 {
764 "label": "a",
765 "localized_name": "values.a",
766 "name": "values.a",
767 "type": "FLOAT,INT",
768 "link": 18
769 },
770 {
771 "label": "b",
772 "localized_name": "values.b",
773 "name": "values.b",
774 "shape": 7,
775 "type": "FLOAT,INT",
776 "link": 19
777 },
778 {
779 "label": "c",
780 "localized_name": "values.c",
781 "name": "values.c",
782 "shape": 7,
783 "type": "FLOAT,INT",
784 "link": null
785 }
786 ],
787 "outputs": [
788 {
789 "localized_name": "FLOAT",
790 "name": "FLOAT",
791 "type": "FLOAT",
792 "links": [
793 13
794 ]
795 },
796 {
797 "localized_name": "INT",
798 "name": "INT",
799 "type": "INT",
800 "links": null
801 }
802 ],
803 "properties": {
804 "enableTabs": false,
805 "tabWidth": 65,
806 "tabXOffset": 10,
807 "hasSecondTab": false,
808 "secondTabText": "Send Back",
809 "secondTabOffset": 80,
810 "secondTabWidth": 65,
811 "cnr_id": "comfy-core",
812 "ver": "0.19.3",
813 "Node name for S&R": "ComfyMathExpression"
814 },
815 "widgets_values": [
816 "min(abs(b), 16) * a"
817 ]
818 }
819 ],
820 "groups": [],
821 "links": [
822 {
823 "id": 1,
824 "origin_id": 1,
825 "origin_slot": 0,
826 "target_id": 2,
827 "target_slot": 0,
828 "type": "INTERP_MODEL"
829 },
830 {
831 "id": 3,
832 "origin_id": 3,
833 "origin_slot": 0,
834 "target_id": 2,
835 "target_slot": 1,
836 "type": "IMAGE"
837 },
838 {
839 "id": 8,
840 "origin_id": 9,
841 "origin_slot": 0,
842 "target_id": 2,
843 "target_slot": 2,
844 "type": "INT"
845 },
846 {
847 "id": 4,
848 "origin_id": 2,
849 "origin_slot": 0,
850 "target_id": 5,
851 "target_slot": 0,
852 "type": "IMAGE"
853 },
854 {
855 "id": 5,
856 "origin_id": 3,
857 "origin_slot": 1,
858 "target_id": 5,
859 "target_slot": 1,
860 "type": "AUDIO"
861 },
862 {
863 "id": 12,
864 "origin_id": 10,
865 "origin_slot": 0,
866 "target_id": 5,
867 "target_slot": 2,
868 "type": "FLOAT"
869 },
870 {
871 "id": 11,
872 "origin_id": 3,
873 "origin_slot": 2,
874 "target_id": 10,
875 "target_slot": 0,
876 "type": "FLOAT"
877 },
878 {
879 "id": 13,
880 "origin_id": 11,
881 "origin_slot": 0,
882 "target_id": 10,
883 "target_slot": 1,
884 "type": "FLOAT"
885 },
886 {
887 "id": 15,
888 "origin_id": 13,
889 "origin_slot": 0,
890 "target_id": 10,
891 "target_slot": 2,
892 "type": "BOOLEAN"
893 },
894 {
895 "id": 18,
896 "origin_id": 3,
897 "origin_slot": 2,
898 "target_id": 11,
899 "target_slot": 0,
900 "type": "FLOAT"
901 },
902 {
903 "id": 19,
904 "origin_id": 9,
905 "origin_slot": 0,
906 "target_id": 11,
907 "target_slot": 1,
908 "type": "INT"
909 },
910 {
911 "id": 2,
912 "origin_id": -10,
913 "origin_slot": 0,
914 "target_id": 3,
915 "target_slot": 0,
916 "type": "VIDEO"
917 },
918 {
919 "id": 22,
920 "origin_id": -10,
921 "origin_slot": 1,
922 "target_id": 9,
923 "target_slot": 0,
924 "type": "INT"
925 },
926 {
927 "id": 23,
928 "origin_id": -10,
929 "origin_slot": 2,
930 "target_id": 13,
931 "target_slot": 0,
932 "type": "BOOLEAN"
933 },
934 {
935 "id": 24,
936 "origin_id": -10,
937 "origin_slot": 3,
938 "target_id": 1,
939 "target_slot": 0,
940 "type": "COMBO"
941 },
942 {
943 "id": 26,
944 "origin_id": 5,
945 "origin_slot": 0,
946 "target_id": -20,
947 "target_slot": 0,
948 "type": "VIDEO"
949 },
950 {
951 "id": 28,
952 "origin_id": 2,
953 "origin_slot": 0,
954 "target_id": -20,
955 "target_slot": 1,
956 "type": "IMAGE"
957 }
958 ],
959 "extra": []
960 }
961 ]
962 },
963 "config": [],
964 "extra": {
965 "ds": {
966 "scale": 0.7095551807209254,
967 "offset": [
968 4126.534997419815,
969 3732.4156749103313
970 ]
971 },
972 "frontendVersion": "1.42.15",
973 "VHS_latentpreview": false,
974 "VHS_latentpreviewrate": 0,
975 "VHS_MetadataImage": true,
976 "VHS_KeepIntermediate": true
977 },
978 "version": 0.4
979}