Compare commits

...
67 Commits
Author SHA1 Message Date
sakura1bgx 927f47d73b Update pyproject.toml 2025-09-05 19:53:00 +09:00
sakura1bgx 8b70e94d0c Update flipstreamviewer.py
- FlipStreamTextReplace: 'find' support multiple words by comma(,) separated.
- FlipStreamParseJson: igonre json error.
- FlipStreamViewer: show frame size console log
2025-09-05 19:52:06 +09:00
sakura1bgx 675ab1f3b6 Update README.md 2025-07-05 10:32:49 +09:00
sakura1bgx 38c85016cd Update README.md 2025-07-05 10:23:39 +09:00
sakura1bgx c5d89b6f5a Update pyproject.toml 2025-07-05 10:10:04 +09:00
sakura1bgx 9d08101663 Update README.md 2025-07-05 10:08:51 +09:00
sakura1bgx 6b1f89a229 Update flipstreamviewer.py
- Align MessageBox layout
- Add FlipStreamLogBox
- Clear old params when loading presets
- Add response_format to FlipStreamChat
- Change max_history behavior in FlipStreamChat
- Add FlipStreamParseJson
2025-07-05 09:55:43 +09:00
sakura1bgx 232d54440e Update pyproject.toml 2025-05-31 10:16:41 +09:00
sakura1bgx 78a887fba4 Update README.md
- Update "Toggle View" description.
2025-05-31 10:16:14 +09:00
sakura1bgx c5c0effed6 Update flipstreamviewer.py
- Refine status info to keep height and show update processing time.
- Change click behavior of the center panel to keep image shown.
2025-05-31 10:12:37 +09:00
sakura1bgx ad47db33ff Update flipstreamviewer.py
fix auto hide of previewbox
2025-05-25 05:09:39 +09:00
sakura1bgx b33c90dfee Update pyproject.toml 2025-05-24 08:23:52 +09:00
sakura1bgx 9af3f373a7 Update flipstreamviewer.py
- fix import path for custom_nodes
2025-05-24 08:23:21 +09:00
sakura1bgx 80992559d8 Update pyproject.toml 2025-04-19 08:59:08 +09:00
sakura1bgx 5d94d31ec7 Merge pull request #14 from sakura1bgx/develop
- Support utf8 in base64 encoding.
- Add message box at the bottom of center panel.
- Refine refresh view process.
- Add FlipStreamSetUpdateAndReload node.
- Add FlipStreamSetMessage node.
- Add FlipStreamChat node.
- Add FlipStreamSwitch node.
- Fix loraTagSelect.
2025-04-19 08:57:38 +09:00
sakura1bgx b742c7405e Update README.md 2025-04-19 08:46:05 +09:00
sakura1bgx a1da4dc4a3 Add files via upload 2025-04-19 08:43:25 +09:00
sakura1bgx 1828ed0b46 Update README.md 2025-04-19 08:13:33 +09:00
sakura1bgx a17ba97cfe Merge pull request #13 from ComfyNodePRs/update-publish-yaml
Update Github Action for Publishing to Comfy Registry
2025-04-19 05:38:49 +09:00
sakura1bgx 699e9459c1 Update flipstreamviewer.py
- Fix loraTagSelect.
2025-03-22 18:39:24 +09:00
sakura1bgx 488d59f0df Update flipstreamviewer.py
- Add FlipStreamSwitch node.
- Fix minor issues.
2025-03-10 04:34:43 +09:00
sakura1bgx 4e09723821 Update README.md
- Merge to FlipStreamChat
2025-03-07 04:51:36 +09:00
sakura1bgx 1881ad9eb6 Update flipstreamviewer.py
- Fix model management.
2025-03-07 04:48:29 +09:00
sakura1bgx 22d59bd44b Update flipstreamviewer.py
- Merge FlipStreamLoadChatModel to FlipStreamChat and add close_after_use option.
2025-03-07 04:12:22 +09:00
sakura1bgx 9ce270721c Update flipstreamviewer.py
- Refine FlipStreamChat parameters.
- Fix darker.
2025-03-07 03:25:23 +09:00
sakura1bgx 476602aa2f Update flipstreamviewer.py
- Rename FlipStreamChatLoad to FlipStreamLoadChatModel
2025-03-03 04:28:10 +09:00
sakura1bgx ab06b9d5f1 Update README.md
- Description for llama-cpp-python dependency.
2025-03-03 04:22:18 +09:00
sakura1bgx ee55a0affb Update README.md
- Add new nodes descriptions.
2025-03-03 04:09:46 +09:00
sakura1bgx ed8e98270e Update flipstreamviewer.py
- Support utf8 in base64 encoding.
- Add message box at the bottom of center panel.
- Refine refresh view process.
- Add FlipStreamSetUpdateAndReload node.
- Add FlipStreamSetMessage node.
- Add FlipStreamChatLoad node.
- Add FlipStreamChat node.
2025-03-03 03:51:17 +09:00
sakura1bgx 1f69a9cb78 Merge pull request #12 from sakura1bgx/main
main to develop
2025-02-27 21:11:19 +09:00
sakura1bgx 3d6d951c94 Merge pull request #11 from sakura1bgx/develop
Merge pull request #10 from sakura1bgx/main
2025-02-27 21:09:11 +09:00
sakura1bgx f49630d622 Update README.md 2025-02-27 21:03:31 +09:00
sakura1bgx 73044772e9 Update README.md 2025-02-27 21:03:05 +09:00
sakura1bgx 72e3ffe342 Update flipstreamviewer.py
- Remove print.
2025-02-27 21:01:36 +09:00
sakura1bgx 9267444da0 Add files via upload 2025-02-27 21:01:02 +09:00
sakura1bgx cf75bc7722 Merge pull request #10 from sakura1bgx/main
v3.2.0 to develop
2025-02-27 20:34:05 +09:00
sakura1bgx 14dc44a74d Update pyproject.toml
- Add FlipStreamGetPreviewRoi.
- Add FlipStreamGate.
- Add loramode option to FlipStreamViewer.
- Removed use_lora option from FlipStreamFileSelect.
2025-02-27 20:29:02 +09:00
sakura1bgx fe5f9c416b Update README.md
- Add FlipStreamGetPreviewRoi
- Add FlipStreamGate
2025-02-27 20:25:45 +09:00
sakura1bgx 3949a20047 Merge pull request #9 from sakura1bgx/develop
Develop to main
2025-02-27 20:16:32 +09:00
sakura1bgx 6a31483d47 Update flipstreamviewer.py
- Fix comfyui_tensorrt import
2025-02-27 20:14:29 +09:00
sakura1bgx c95e470fcc Update flipstreamviewer.py
- Prevent double execution during update.
- Improved FlipStreamGate for KSampler.
2025-02-24 10:52:17 +09:00
sakura1bgx 9edb0e9d99 Update README.md
- Update FlipStreamFileSelect_Checkpoints descriptions.
2025-02-23 01:58:44 +09:00
sakura1bgx c50f25580a Update README.md
- Update label input descriptions.
2025-02-23 01:40:12 +09:00
sakura1bgx 9e01d94d7d Update flipstreamviewer.py
- Remove use_lora options from FileSelect nodes.
- Move loramode param to loraMode state.
- Add loramode input to the Viewer node.
2025-02-23 01:38:50 +09:00
sakura1bgx 324bfb81fe Merge v3.1.5 to develop 2025-02-22 23:47:24 +09:00
sakura1bgx d606136136 Update flipstreamviewer.py
- Fix FileSelect folder path to support linux
2025-02-22 23:38:30 +09:00
sakura1bgx e1fc07d19e Update README.md
- Fix label input descriptions.
2025-02-22 23:02:37 +09:00
sakura1bgx c06b5b3154 Update pyproject.toml
- Fix to support Python 3.11 and linux
2025-02-22 22:29:49 +09:00
sakura1bgx cf33bed93f Update segmask.json
- Fix to support linux
2025-02-22 22:27:04 +09:00
sakura1bgx d0ce5a7941 Update quick_vid2vid.json
- Fix to support linux
2025-02-22 22:26:40 +09:00
sakura1bgx 190df55c88 Update grab_rembg_depth_animate.json
- Fix to support linux
2025-02-22 22:25:57 +09:00
sakura1bgx 2c7e0a42e8 Update dmd2_and_lora.json
- Fix to support linux
2025-02-22 22:24:33 +09:00
sakura1bgx fbd9d544e4 Update animate.json
- Fix to support linux
2025-02-22 22:24:08 +09:00
sakura1bgx c0a28913f6 Update simple.json
- Fix to support linux
2025-02-22 22:22:04 +09:00
sakura1bgx 0a43dd359d Update flipstreamviewer.py
- Fix to support python 3.11
2025-02-22 22:20:59 +09:00
sakura1bgx dd64a6ad2d Update flipstreamviewer.py
- Add FlipStreamGate.
- Change FlipStreamSource upscale method.
- Fix FlipStreamVideoInput.
2025-02-22 21:04:25 +09:00
sakura1bgx bae2d39701 Update flipstreamviewer.py
- Fix to set update flag on change PreviewRoi
- Fix to save all param.
2025-02-17 09:41:31 +09:00
sakura1bgx c31babf59d Update flipstreamviewer.py
- Add FlipStreamGetPreviewRoi.
2025-02-16 23:28:11 +09:00
sakura1bgx 131b0b93d3 Update pyproject.toml 2025-02-16 01:48:19 +09:00
sakura1bgx fe96226508 Update README.md 2025-02-16 01:46:12 +09:00
sakura1bgx 55d621d288 Update flipstreamviewer.py
- Improve status message.
- Enhance node flexibility.
- Optimize frame processing.
2025-02-16 01:44:25 +09:00
sakura1bgx 163a5da00d Add files via upload 2025-02-16 01:38:20 +09:00
sakura1bgx d433488062 Update pyproject.toml 2025-02-14 20:06:23 +09:00
sakura1bgx 466f08ea11 Update grab_rembg_depth_animate.json 2025-02-14 20:05:46 +09:00
sakura1bgx ef0e387e89 Update animate.json 2025-02-14 20:04:22 +09:00
sakura1bgx 76b80a0089 Update flipstreamviewer.py
- Reimplement FlipStreamVideoInput using imageio.
- Set default stream compression to 0.
2025-02-14 20:01:53 +09:00
snomiao df741f1dea chore(publish): update GitHub Actions workflow for node publishing
- Add permissions for issue writing
- Update condition to check repository owner instead of fork status
- Change action version from `main` to `v1` for stability and consistency
2025-01-25 06:26:26 +00:00
12 changed files with 9126 additions and 907 deletions
+5 -3
View File
@@ -7,17 +7,19 @@ on:
paths:
- "pyproject.toml"
permissions:
issues: write
jobs:
publish-node:
name: Publish Custom Node to registry
runs-on: ubuntu-latest
# if this is a forked repository. Skipping the workflow.
if: github.event.repository.fork == false
if: ${{ github.repository_owner == 'sakura1bgx' }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Publish Custom Node
uses: Comfy-Org/publish-node-action@main
uses: Comfy-Org/publish-node-action@v1
with:
## Add your own personal access token to your Github Repository secrets and reference it here.
personal_access_token: ${{ secrets.REGISTRY_ACCESS_TOKEN }}
+27 -4
View File
@@ -38,12 +38,24 @@ The following custom nodes may also be used within workflows:
- ComfyUI-AnimateDiff-Evolved
- ComfyUI-VideoHelperSuite
- ComfyUI-DepthAnythingV2
- ComfyUI-Advanced-ControlNet
## Optional Python Packages Dependencies
llama-cpp-python for FlipStreamChat:
```
cd python_embeded
python -m pip install scikit-build-core
python -m pip install cmake
set CMAKE_ARGS="-DGGML_CUDA=on"
python -m pip install llama-cpp-python
```
## UI Features
- **Customizable Left Panel**: The left panel UI is customizable with UI Nodes.
- **UI Node Ordering**: These UI nodes are ordered by their titles, and you can change the node titles to something like '10.steps' or '11.cfg'. You can also click on the title to compact the node on the workflow.
- **Label Input**: Each UI node has a 'label' input, which should be a unique identifier used as the parameter name. 'loramode', 'lora', 'offsetX', 'offsetY' and 'scale' are internally used, so they cannot be used for labels.
- **Label Input**: Each UI node has a 'label' input, which should be a unique identifier used as the parameter name. 'lora' is internally used, so they cannot be used for labels.
- **Enable Output**: Each UI node also has an 'enable' output to use with 'Control Bridge' for switching to bypass some nodes or FlipStreamSwitch* for switching input.
- **Right Panel**: You can operate several prepared functions such as Status, Darker, Tagger, Preset, and Lora.
- **Status**: The right panel shows ComfyUI status and error information.
@@ -53,8 +65,9 @@ The following custom nodes may also be used within workflows:
- **Preset**: You can save and load parameters that are set on viewer controls. The 'M' button means Move to another folder. It can also be set via query:
`http://localhost:8188/flipstreamviewer?showPresetDialog=1&presetFolder=folder_name&presetFile=file_name.json`
- **Lora**: You can select LoRA and choose tags. It can also choose random tags. The LoRA preview box can be clicked to jump to the Civitai LoRA page if found. The 'M' button means Move to another folder. The 'T' button means Toggle. The 'R' button means Random choose.
- **Toggle View**: You can click the center panel to hide the left and right panels, and a subsequent click will hide the image. It can also be set via query:
- **Toggle View**: You can click the center panel to hide the left/right panels and the message box, a subsequent click will show them. It can also be set via query:
`http://localhost:8188/flipstreamviewer?toggleView=1`
- **Message Box**: If a message is set by FlipStreamSetMessage, you can view it at the top left of the center panel.
- **Auto Hide**: Stream and preview in the viewer will automatically hide after 5 minutes if the page is not reloaded.
## UI Nodes
@@ -65,27 +78,34 @@ The following custom nodes may also be used within workflows:
- **FlipStreamInputBox**: An input box for various boxtype inputs. The 'U' button means update. You can choose special boxtype 'seed' or 'r4d' with the 'R' button, which means randomize. The boxtype 'r4d' can be used to generate a 4-digit part of a prompt like 'MOV_{num}'. In this case, FlipStreamTextReplace can help find '{num}' and replace with the output of the input box.
- **FlipStreamSelectBox_Samplers**: A select box for choosing samplers.
- **FlipStreamSelectBox_Scheduler**: A select box for choosing schedulers.
- **FlipStreamFileSelect_Checkpoints**: A file selector for checkpoints. 'mode' is used to select a subfolder such as 'sd15', 'sdxl', 'pony', or 'flux' in 'checkpoints'. If 'use_lora' is true, it will also affect the 'mode' for the Lora selector. 'use_sub' means using subfolders in the 'mode' folder. 'use_move' means using the move file selector.
- **FlipStreamFileSelect_Checkpoints**: A file selector for checkpoints. 'mode' is used to select a subfolder such as 'sd15', 'sdxl', 'pony', or 'flux' in 'checkpoints'. 'use_sub' means using subfolders in the 'mode' folder. 'use_move' means using the move file selector.
- **FlipStreamFileSelect_VAE**: A file selector for VAE models.
- **FlipStreamFileSelect_ControlNetModel**: A file selector for ControlNet models.
- **FlipStreamFileSelect_TensorRT**: A file selector for TensorRT models. It may be used with ComfyUI_TensorRT.
- **FlipStreamFileSelect_AnimateDiffModel**: A file selector for AnimateDiff models. It may be used with ComfyUI-AnimateDiff-Evolved.
- **FlipStreamFileSelect_Input**: A file selector for ComfyUI input folder.
- **FlipStreamFileSelect_Output**: A file selector for ComfyUI output folder.
- **FlipStreamPreviewBox**: A box for previewing input image.
- **FlipStreamPreviewBox**: A box for previewing the input image. You can select the ROI (Region of Interest) in the preview by dragging the mouse.
- **FlipStreamLogBox**: A box for displaying logs on the screen.
## Other Nodes
- **FlipStreamSetUpdateAndReload**: Updates parameters and reloads pages after a delay.
- **FlipStreamSetMessage**: Sets a message for the message box at the bottom of the center panel.
- **FlipStreamSetParam**: A node for setting parameters. However, it needs a reload to update the value in the viewer UI.
- **FlipStreamGetParam**: A node for getting parameters. 'lora' is a prepared parameter that contains text at the Lora input. Some prompts can contain '{lora}' and FlipStreamTextReplace can help find '{lora}' and replace it with the output of the get param node of 'lora'. 'b64dec' is true for 'lora' and other 'FlipStreamTextBox' parameters, because these multiline parameters are internally base64 encoded.
- **FlipStreamGetPreviewRoi**: A node for obtaining the preview ROI (Region of Interest) selection.
- **FlipStreamImageSize**: A node for getting image size.
- **FlipStreamTextReplace**: A node for replacing text. It will output the result of `text.replace(find, replace.format(value))`.
- **FlipStreamScreenGrabber**: A node for grab multiframe screenshots.
- **FlipStreamSource**: A node for prepare image or latent source.
- **FlipStreamSwitchImage**: A node for switching images.
- **FlipStreamSwitchLatent**: A node for switching latents.
- **FlipStreamGate**: A node for consolidating input timing to ensure that inputs to the sampler do not occur sequentially.
- **FlipStreamRembg**: A node for remove background. It depends on ComfyUI-Inspyrenet-Rembg.
- **FlipStreamSegMask**: A node for segmentation masks. The target can contain multiple words separated by commas for segmentation. It will use the 'microsoft/Florence-2-large' model, which you can download using the DownloadAndLoadFlorence2Model node of ComfyUI-Florence2. Segmentation sometimes fails, so you may need to try some other random seeds.
- **FlipStreamChat**: Loads an LLM (Large Language Model) and obtains chat responses. It only supports *.gguf files in the models/LLM folder and uses llama-cpp-python. The output format can be customized using the response_format parameter, which supports [JSON Schema](https://llama-cpp-python.readthedocs.io/en/latest/#json-schema-mode) for structured responses.
- **FlipStreamParseJson**: Extracts values for multiple keys from a JSON string and joins them using a specified delimiter.
- **FlipStreamBatchPrompt**: A node for simple batch prompting. Use the following format for the input prompt of this node. The 'pre text' and 'append text' sections apply to all frames. The separator `----` should consist of four hyphens, and each line of 'frame text' applies evenly to the number of frames specified in 'frames'. For example, if 'frames' is 8 and there are 2 'frame text' lines, they will be applied starting from frames 0 and 4.
```
pre text,
@@ -115,3 +135,6 @@ append text
- **segmask.json**: A 2-step process for generating frames using batch prompts and segmentation mask, followed by interpolation.
- **animate.json**: Using AnimateDiff with FlipStreamSource, FlipStreamBatchPrompt, and FlipStreamFilmVfi.
- **grab_rembg_depth_animate.json**: Using ControlNet and AnimateDiff with FlipStreamScreenGrabber, FlipStreamRembg.
- **quick_vid2vid.json**: Quick tuning workflow for vid2vid.
- **quick_vid2vid_roi.json**: An example demonstrating the use of FlipStreamGetPreviewRoi and FlipStreamGate.
- **visualnobel.json**: Visual nobel like UI using FlipStreamChat.
+595 -148
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,7 +1,7 @@
[project]
name = "comfyui_flipstreamviewer"
description = "ComfyUI_FlipStreamViewer is a tool that provides a customizable viewer interface for flipping images with frame interpolation."
version = "3.1.2"
version = "3.4.1"
license = {file = "LICENSE.txt"}
[project.urls]
+205 -314
View File
@@ -1,6 +1,6 @@
{
"last_node_id": 67,
"last_link_id": 128,
"last_node_id": 68,
"last_link_id": 131,
"nodes": [
{
"id": 26,
@@ -267,7 +267,7 @@
302
],
"flags": {},
"order": 29,
"order": 28,
"mode": 0,
"inputs": [
{
@@ -330,7 +330,7 @@
},
"widgets_values": [
"enable",
252278102229080,
563713513127162,
"randomize",
20,
1,
@@ -871,7 +871,7 @@
46
],
"flags": {},
"order": 30,
"order": 29,
"mode": 0,
"inputs": [
{
@@ -912,7 +912,7 @@
82
],
"flags": {},
"order": 31,
"order": 30,
"mode": 0,
"inputs": [
{
@@ -951,7 +951,7 @@
130
],
"flags": {},
"order": 32,
"order": 31,
"mode": 0,
"inputs": [
{
@@ -1055,7 +1055,7 @@
"checkpoints",
"sd_xl_base_1.0.safetensors",
"checkpoints",
"ComfyUI\\models\\checkpoints",
"ComfyUI/models/checkpoints",
"",
false,
false,
@@ -1218,258 +1218,6 @@
32
]
},
{
"id": 62,
"type": "VHS_LoadVideoPath",
"pos": [
1443.31005859375,
498.1907958984375
],
"size": [
231.8896484375,
238
],
"flags": {},
"order": 22,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"type": "VHS_BatchManager",
"link": null,
"shape": 7
},
{
"name": "vae",
"type": "VAE",
"link": null,
"shape": 7
},
{
"name": "video",
"type": "STRING",
"link": 117,
"widget": {
"name": "video"
}
},
{
"name": "frame_load_cap",
"type": "INT",
"link": 126,
"widget": {
"name": "frame_load_cap"
}
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
118
],
"slot_index": 0
},
{
"name": "frame_count",
"type": "INT",
"links": null
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_LoadVideoPath"
},
"widgets_values": {
"video": "",
"force_rate": 8,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 8,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "AnimateDiff",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "",
"type": "path",
"format": "video/",
"force_rate": 8,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 8,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 63,
"type": "ImpactControlBridge",
"pos": [
1199.62841796875,
538.4775390625
],
"size": [
210,
78
],
"flags": {},
"order": 19,
"mode": 0,
"inputs": [
{
"name": "value",
"type": "STRING",
"link": 124
},
{
"name": "mode",
"type": "BOOLEAN",
"link": 125,
"widget": {
"name": "mode"
}
}
],
"outputs": [
{
"name": "value",
"type": "STRING",
"links": [
117
],
"slot_index": 0,
"label": "STRING"
}
],
"properties": {
"Node name for S&R": "ImpactControlBridge"
},
"widgets_values": [
true,
"Bypass"
]
},
{
"id": 65,
"type": "FlipStreamFileSelect_Input",
"pos": [
929.029052734375,
517.6051025390625
],
"size": [
237.9093017578125,
266
],
"flags": {
"collapsed": false
},
"order": 10,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "file",
"type": "*",
"links": null
},
{
"name": "path",
"type": "*",
"links": [
124
],
"slot_index": 1
},
{
"name": "enable",
"type": "BOOLEAN",
"links": [
125
],
"slot_index": 2
}
],
"title": "15.input",
"properties": {
"Node name for S&R": "FlipStreamFileSelect_Input"
},
"widgets_values": [
"input",
"",
"input",
"ComfyUI\\input",
"",
false,
true,
true
]
},
{
"id": 32,
"type": "FlipStreamSlider",
"pos": [
1711.809326171875,
797.1196899414062
],
"size": [
210,
194
],
"flags": {
"collapsed": true
},
"order": 11,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "FLOAT",
"type": "FLOAT",
"links": null
},
{
"name": "INT",
"type": "INT",
"links": [
42,
123,
126
],
"slot_index": 1
},
{
"name": "BOOLEAN",
"type": "BOOLEAN",
"links": null
}
],
"title": "14.frames",
"properties": {
"Node name for S&R": "FlipStreamSlider"
},
"widgets_values": [
"frames",
8,
8,
24,
8
]
},
{
"id": 64,
"type": "FlipStreamSource",
@@ -1482,13 +1230,13 @@
114
],
"flags": {},
"order": 24,
"order": 22,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 118,
"link": 130,
"shape": 7
},
{
@@ -1563,7 +1311,7 @@
"flags": {
"collapsed": true
},
"order": 28,
"order": 24,
"mode": 0,
"inputs": [
{
@@ -1595,7 +1343,7 @@
"flags": {
"collapsed": true
},
"order": 12,
"order": 10,
"mode": 0,
"inputs": [],
"outputs": [
@@ -1644,7 +1392,7 @@
"flags": {
"collapsed": true
},
"order": 13,
"order": 11,
"mode": 0,
"inputs": [],
"outputs": [
@@ -1691,7 +1439,7 @@
200.3873748779297
],
"flags": {},
"order": 14,
"order": 12,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -1701,6 +1449,167 @@
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 32,
"type": "FlipStreamSlider",
"pos": [
1711.809326171875,
797.1196899414062
],
"size": [
210,
194
],
"flags": {
"collapsed": true
},
"order": 13,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "FLOAT",
"type": "FLOAT",
"links": null
},
{
"name": "INT",
"type": "INT",
"links": [
42,
123,
131
],
"slot_index": 1
},
{
"name": "BOOLEAN",
"type": "BOOLEAN",
"links": null
}
],
"title": "14.frames",
"properties": {
"Node name for S&R": "FlipStreamSlider"
},
"widgets_values": [
"frames",
8,
8,
24,
8
]
},
{
"id": 68,
"type": "FlipStreamVideoInput",
"pos": [
1404.503662109375,
513.1790771484375
],
"size": [
210,
102
],
"flags": {},
"order": 19,
"mode": 0,
"inputs": [
{
"name": "path",
"type": "STRING",
"link": 129,
"widget": {
"name": "path"
}
},
{
"name": "frames",
"type": "INT",
"link": 131,
"widget": {
"name": "frames"
}
}
],
"outputs": [
{
"name": "image",
"type": "IMAGE",
"links": [
130
],
"slot_index": 0
},
{
"name": "enable",
"type": "BOOLEAN",
"links": null
}
],
"properties": {
"Node name for S&R": "FlipStreamVideoInput"
},
"widgets_values": [
"",
0,
3,
1
]
},
{
"id": 65,
"type": "FlipStreamFileSelect_Input",
"pos": [
1254.388916015625,
546.2809448242188
],
"size": [
237.9093017578125,
266
],
"flags": {
"collapsed": true
},
"order": 14,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "file",
"type": "*",
"links": null
},
{
"name": "path",
"type": "*",
"links": [
129
],
"slot_index": 1
},
{
"name": "enable",
"type": "BOOLEAN",
"links": [],
"slot_index": 2
}
],
"title": "15.input",
"properties": {
"Node name for S&R": "FlipStreamFileSelect_Input"
},
"widgets_values": [
"input",
"",
"input",
"ComfyUI/input",
"",
false,
true,
true
]
}
],
"links": [
@@ -1936,22 +1845,6 @@
0,
"IMAGE"
],
[
117,
63,
0,
62,
2,
"STRING"
],
[
118,
62,
0,
64,
0,
"IMAGE"
],
[
119,
64,
@@ -1992,30 +1885,6 @@
4,
"INT"
],
[
124,
65,
1,
63,
0,
"STRING"
],
[
125,
65,
2,
63,
1,
"BOOLEAN"
],
[
126,
32,
1,
62,
3,
"INT"
],
[
127,
64,
@@ -2031,25 +1900,47 @@
39,
6,
"INT"
],
[
129,
65,
1,
68,
0,
"STRING"
],
[
130,
68,
0,
64,
0,
"IMAGE"
],
[
131,
32,
1,
68,
1,
"INT"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.6592783225746375,
"scale": 1.08802579313581,
"offset": [
-831.9544088713585,
208.34026153252205
-857.8204998699725,
-52.24686489922112
]
},
"node_versions": {
"ComfyUI_FlipStreamViewer": "c727b903bb52c60932d2cd2b3841c6248d25854c",
"comfyui_flipstreamviewer": "3837719be12d9a79128a7a9e1395320da5f14947",
"comfyui-animatediff-evolved": "94eb45621c7e5a5286968b3938b1b7689d34ced0",
"comfy-core": "0.3.14",
"comfyui_lora_tag_loader": "c1e1a061d42384e06ff6c547c4a00aef7cc96e59",
"comfyui-videohelpersuite": "8629188458dc6cb832f871ece3bd273507e8a766",
"comfyui-impact-pack": "1ae7cae2df8cca06027edfa3a24512671239d6c4"
"comfyui_lora_tag_loader": "c1e1a061d42384e06ff6c547c4a00aef7cc96e59"
},
"VHS_latentpreview": false,
"VHS_latentpreviewrate": 0,
@@ -2057,4 +1948,4 @@
"VHS_KeepIntermediate": true
},
"version": 0.4
}
}
+2 -2
View File
@@ -516,7 +516,7 @@
"checkpoints",
"sd_xl_base_1.0.safetensors",
"checkpoints",
"ComfyUI\\models\\checkpoints",
"ComfyUI/models/checkpoints",
"",
false,
false,
@@ -1391,4 +1391,4 @@
"VHS_KeepIntermediate": true
},
"version": 0.4
}
}
+323 -431
View File
@@ -1,6 +1,6 @@
{
"last_node_id": 97,
"last_link_id": 175,
"last_node_id": 99,
"last_link_id": 179,
"nodes": [
{
"id": 21,
@@ -67,7 +67,7 @@
82
],
"flags": {},
"order": 53,
"order": 52,
"mode": 0,
"inputs": [
{
@@ -106,7 +106,7 @@
130
],
"flags": {},
"order": 54,
"order": 53,
"mode": 0,
"inputs": [
{
@@ -349,7 +349,7 @@
"checkpoints",
"sd_xl_base_1.0.safetensors",
"checkpoints",
"ComfyUI\\models\\checkpoints",
"ComfyUI/models/checkpoints",
"",
false,
false,
@@ -501,7 +501,7 @@
46
],
"flags": {},
"order": 51,
"order": 50,
"mode": 0,
"inputs": [
{
@@ -591,7 +591,7 @@
74
],
"flags": {},
"order": 52,
"order": 51,
"mode": 4,
"inputs": [
{
@@ -752,7 +752,7 @@
186
],
"flags": {},
"order": 48,
"order": 47,
"mode": 0,
"inputs": [
{
@@ -1226,7 +1226,7 @@
302
],
"flags": {},
"order": 50,
"order": 49,
"mode": 0,
"inputs": [
{
@@ -1281,7 +1281,7 @@
},
"widgets_values": [
"enable",
126339181416491,
50787005682633,
"randomize",
20,
1,
@@ -1894,45 +1894,6 @@
true
]
},
{
"id": 66,
"type": "FlipStreamSection",
"pos": [
652.723388671875,
949.7792358398438
],
"size": [
210,
58
],
"flags": {
"collapsed": true
},
"order": 32,
"mode": 0,
"inputs": [
{
"name": "hook",
"type": "*",
"link": 160,
"shape": 7
}
],
"outputs": [
{
"name": "*",
"type": "*",
"links": null
}
],
"title": "20.Source",
"properties": {
"Node name for S&R": "FlipStreamSection"
},
"widgets_values": [
"Source"
]
},
{
"id": 77,
"type": "VHS_VideoCombine",
@@ -2003,60 +1964,11 @@
"format": "video/h264-mp4",
"frame_rate": 8,
"workflow": "sc_00001.png",
"fullpath": "C:\\work\\ComfyUI_windows_portable\\ComfyUI\\output\\sc_00001.mp4"
"fullpath": "ComfyUI/output/sc_00001.mp4"
}
}
}
},
{
"id": 13,
"type": "FlipStreamSlider",
"pos": [
708.4448852539062,
1002.5443725585938
],
"size": [
210,
194
],
"flags": {
"collapsed": true
},
"order": 17,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "FLOAT",
"type": "FLOAT",
"links": null
},
{
"name": "INT",
"type": "INT",
"links": [
121
],
"slot_index": 1
},
{
"name": "BOOLEAN",
"type": "BOOLEAN",
"links": null
}
],
"title": "21.width",
"properties": {
"Node name for S&R": "FlipStreamSlider"
},
"widgets_values": [
"width",
768,
256,
2048,
32
]
},
{
"id": 14,
"type": "FlipStreamSlider",
@@ -2071,7 +1983,7 @@
"flags": {
"collapsed": true
},
"order": 18,
"order": 17,
"mode": 0,
"inputs": [],
"outputs": [
@@ -2106,278 +2018,25 @@
32
]
},
{
"id": 32,
"type": "FlipStreamSlider",
"pos": [
703.9859619140625,
1115.26318359375
],
"size": [
210,
194
],
"flags": {
"collapsed": true
},
"order": 19,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "FLOAT",
"type": "FLOAT",
"links": null
},
{
"name": "INT",
"type": "INT",
"links": [
42,
123,
124
],
"slot_index": 1
},
{
"name": "BOOLEAN",
"type": "BOOLEAN",
"links": null
}
],
"title": "23.frames",
"properties": {
"Node name for S&R": "FlipStreamSlider"
},
"widgets_values": [
"frames",
8,
8,
24,
8
]
},
{
"id": 90,
"type": "FlipStreamFileSelect_Output",
"pos": [
704.6945190429688,
1170.5045166015625
],
"size": [
210,
266
],
"flags": {
"collapsed": true
},
"order": 20,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "file",
"type": "*",
"links": null
},
{
"name": "path",
"type": "*",
"links": [
157,
160
],
"slot_index": 1
},
{
"name": "enable",
"type": "BOOLEAN",
"links": [
158
],
"slot_index": 2
}
],
"title": "24.source",
"properties": {
"Node name for S&R": "FlipStreamFileSelect_Output"
},
"widgets_values": [
"source",
"",
"output",
"ComfyUI\\output",
"",
false,
true,
true
]
},
{
"id": 68,
"type": "ImpactControlBridge",
"pos": [
897.7296752929688,
957.0828857421875
],
"size": [
210,
78
],
"flags": {},
"order": 33,
"mode": 0,
"inputs": [
{
"name": "value",
"type": "STRING",
"link": 157
},
{
"name": "mode",
"type": "BOOLEAN",
"link": 158,
"widget": {
"name": "mode"
}
}
],
"outputs": [
{
"name": "value",
"type": "STRING",
"links": [
129
],
"slot_index": 0,
"label": "STRING"
}
],
"properties": {
"Node name for S&R": "ImpactControlBridge"
},
"widgets_values": [
true,
"Bypass"
]
},
{
"id": 62,
"type": "VHS_LoadVideoPath",
"pos": [
1141.4111328125,
951.986083984375
],
"size": [
231.8896484375,
238
],
"flags": {},
"order": 37,
"mode": 0,
"inputs": [
{
"name": "meta_batch",
"type": "VHS_BatchManager",
"link": null,
"shape": 7
},
{
"name": "vae",
"type": "VAE",
"link": null,
"shape": 7
},
{
"name": "video",
"type": "STRING",
"link": 129,
"widget": {
"name": "video"
}
},
{
"name": "frame_load_cap",
"type": "INT",
"link": 124,
"widget": {
"name": "frame_load_cap"
}
}
],
"outputs": [
{
"name": "IMAGE",
"type": "IMAGE",
"links": [
167
],
"slot_index": 0
},
{
"name": "frame_count",
"type": "INT",
"links": null
},
{
"name": "audio",
"type": "AUDIO",
"links": null
},
{
"name": "video_info",
"type": "VHS_VIDEOINFO",
"links": null
}
],
"properties": {
"Node name for S&R": "VHS_LoadVideoPath"
},
"widgets_values": {
"video": "",
"force_rate": 8,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 8,
"skip_first_frames": 0,
"select_every_nth": 1,
"format": "AnimateDiff",
"videopreview": {
"hidden": false,
"paused": false,
"params": {
"filename": "",
"type": "path",
"format": "video/",
"force_rate": 8,
"custom_width": 0,
"custom_height": 0,
"frame_load_cap": 8,
"skip_first_frames": 0,
"select_every_nth": 1
}
}
}
},
{
"id": 64,
"type": "FlipStreamSource",
"pos": [
1410.3553466796875,
950.7717895507812
1131.4171142578125,
957.3504638671875
],
"size": [
210,
114
],
"flags": {},
"order": 40,
"order": 37,
"mode": 0,
"inputs": [
{
"name": "image",
"type": "IMAGE",
"link": 167,
"link": 178,
"shape": 7
},
{
@@ -2442,15 +2101,15 @@
"id": 93,
"type": "ImpactControlBridge",
"pos": [
1658.464599609375,
949.6570434570312
1379.5263671875,
956.2357177734375
],
"size": [
210,
78
],
"flags": {},
"order": 44,
"order": 40,
"mode": 0,
"inputs": [
{
@@ -2490,8 +2149,8 @@
"id": 91,
"type": "FlipStreamRembg",
"pos": [
1904.7938232421875,
949.6563720703125
1625.8555908203125,
956.2350463867188
],
"size": [
140,
@@ -2500,8 +2159,8 @@
"flags": {
"collapsed": false
},
"order": 45,
"mode": 0,
"order": 44,
"mode": 4,
"inputs": [
{
"name": "image",
@@ -2533,15 +2192,15 @@
"id": 96,
"type": "ImpactControlBridge",
"pos": [
2091.6650390625,
947.5335693359375
1812.7269287109375,
954.1122436523438
],
"size": [
210,
82
],
"flags": {},
"order": 46,
"order": 45,
"mode": 0,
"inputs": [
{
@@ -2581,15 +2240,15 @@
"id": 94,
"type": "DownloadAndLoadDepthAnythingV2Model",
"pos": [
2337.994384765625,
1051.89013671875
2059.056884765625,
1058.4688720703125
],
"size": [
294,
58
],
"flags": {},
"order": 21,
"order": 18,
"mode": 0,
"inputs": [],
"outputs": [
@@ -2623,7 +2282,7 @@
"flags": {
"collapsed": true
},
"order": 22,
"order": 19,
"mode": 0,
"inputs": [],
"outputs": [
@@ -2672,7 +2331,7 @@
"flags": {
"collapsed": true
},
"order": 23,
"order": 20,
"mode": 0,
"inputs": [],
"outputs": [
@@ -2711,16 +2370,16 @@
"id": 95,
"type": "DepthAnything_V2",
"pos": [
2335.568603515625,
948.746826171875
2056.631103515625,
955.3255004882812
],
"size": [
214.20001220703125,
46
],
"flags": {},
"order": 47,
"mode": 0,
"order": 46,
"mode": 4,
"inputs": [
{
"name": "da_model",
@@ -2763,7 +2422,7 @@
"flags": {
"collapsed": true
},
"order": 49,
"order": 48,
"mode": 0,
"inputs": [
{
@@ -2793,7 +2452,7 @@
292.80987548828125
],
"flags": {},
"order": 24,
"order": 21,
"mode": 0,
"inputs": [],
"outputs": [],
@@ -2803,6 +2462,255 @@
],
"color": "#432",
"bgcolor": "#653"
},
{
"id": 32,
"type": "FlipStreamSlider",
"pos": [
703.9859619140625,
1115.26318359375
],
"size": [
210,
194
],
"flags": {
"collapsed": true
},
"order": 22,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "FLOAT",
"type": "FLOAT",
"links": null
},
{
"name": "INT",
"type": "INT",
"links": [
42,
123,
176
],
"slot_index": 1
},
{
"name": "BOOLEAN",
"type": "BOOLEAN",
"links": null
}
],
"title": "23.frames",
"properties": {
"Node name for S&R": "FlipStreamSlider"
},
"widgets_values": [
"frames",
8,
8,
24,
8
]
},
{
"id": 98,
"type": "FlipStreamVideoInput",
"pos": [
888.7310180664062,
961.8289794921875
],
"size": [
210,
102
],
"flags": {},
"order": 32,
"mode": 0,
"inputs": [
{
"name": "frames",
"type": "INT",
"link": 176,
"widget": {
"name": "frames"
}
},
{
"name": "path",
"type": "STRING",
"link": 177,
"widget": {
"name": "path"
}
}
],
"outputs": [
{
"name": "image",
"type": "IMAGE",
"links": [
178
],
"slot_index": 0
},
{
"name": "enable",
"type": "BOOLEAN",
"links": null
}
],
"properties": {
"Node name for S&R": "FlipStreamVideoInput"
},
"widgets_values": [
"",
0,
3,
8
]
},
{
"id": 99,
"type": "FlipStreamFileSelect_Input",
"pos": [
705.8632202148438,
1164.3529052734375
],
"size": [
210,
266
],
"flags": {
"collapsed": true
},
"order": 23,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "file",
"type": "*",
"links": null
},
{
"name": "path",
"type": "*",
"links": [
177
],
"slot_index": 1
},
{
"name": "enable",
"type": "BOOLEAN",
"links": null
}
],
"title": "24.input",
"properties": {
"Node name for S&R": "FlipStreamFileSelect_Input"
},
"widgets_values": [
"input",
"",
"input",
"ComfyUI/input",
"",
false,
true,
true
]
},
{
"id": 66,
"type": "FlipStreamSection",
"pos": [
652.723388671875,
949.7792358398438
],
"size": [
210,
58
],
"flags": {
"collapsed": true
},
"order": 33,
"mode": 0,
"inputs": [
{
"name": "hook",
"type": "*",
"link": 179,
"shape": 7
}
],
"outputs": [
{
"name": "*",
"type": "*",
"links": null
}
],
"title": "20.Source",
"properties": {
"Node name for S&R": "FlipStreamSection"
},
"widgets_values": [
"Source"
]
},
{
"id": 13,
"type": "FlipStreamSlider",
"pos": [
708.4448852539062,
1002.5443725585938
],
"size": [
210,
194
],
"flags": {
"collapsed": true
},
"order": 24,
"mode": 0,
"inputs": [],
"outputs": [
{
"name": "FLOAT",
"type": "FLOAT",
"links": null
},
{
"name": "INT",
"type": "INT",
"links": [
121,
179
],
"slot_index": 1
},
{
"name": "BOOLEAN",
"type": "BOOLEAN",
"links": null
}
],
"title": "21.width",
"properties": {
"Node name for S&R": "FlipStreamSlider"
},
"widgets_values": [
"width",
768,
256,
2048,
32
]
}
],
"links": [
@@ -3054,14 +2962,6 @@
4,
"INT"
],
[
124,
32,
1,
62,
3,
"INT"
],
[
125,
10,
@@ -3070,14 +2970,6 @@
0,
"*"
],
[
129,
68,
0,
62,
2,
"STRING"
],
[
130,
71,
@@ -3238,22 +3130,6 @@
6,
"FLOAT"
],
[
157,
90,
1,
68,
0,
"STRING"
],
[
158,
90,
2,
68,
1,
"BOOLEAN"
],
[
159,
72,
@@ -3262,14 +3138,6 @@
1,
"INT"
],
[
160,
90,
1,
66,
0,
"*"
],
[
163,
93,
@@ -3294,14 +3162,6 @@
0,
"IMAGE"
],
[
167,
62,
0,
64,
0,
"IMAGE"
],
[
170,
94,
@@ -3349,21 +3209,53 @@
80,
0,
"IMAGE"
],
[
176,
32,
1,
98,
0,
"INT"
],
[
177,
99,
1,
98,
1,
"STRING"
],
[
178,
98,
0,
64,
0,
"IMAGE"
],
[
179,
13,
1,
66,
0,
"*"
]
],
"groups": [],
"config": {},
"extra": {
"ds": {
"scale": 0.5993439296133066,
"scale": 0.9891143573961911,
"offset": [
-606.8898677437485,
271.3142816997852
-584.1981080410555,
-818.0687571940349
]
},
"node_versions": {
"comfy-core": "0.3.14",
"ComfyUI_FlipStreamViewer": "c727b903bb52c60932d2cd2b3841c6248d25854c",
"comfyui_flipstreamviewer": "3837719be12d9a79128a7a9e1395320da5f14947",
"comfyui-impact-pack": "1ae7cae2df8cca06027edfa3a24512671239d6c4",
"comfyui-animatediff-evolved": "94eb45621c7e5a5286968b3938b1b7689d34ced0",
"comfyui_lora_tag_loader": "c1e1a061d42384e06ff6c547c4a00aef7cc96e59",
@@ -3376,4 +3268,4 @@
"VHS_KeepIntermediate": true
},
"version": 0.4
}
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -96,7 +96,7 @@
"checkpoints",
"sd_xl_base_1.0.safetensors",
"checkpoints",
"ComfyUI\\models\\checkpoints",
"ComfyUI/models/checkpoints",
"",
false,
false,
@@ -1910,4 +1910,4 @@
"VHS_KeepIntermediate": true
},
"version": 0.4
}
}
+2 -2
View File
@@ -768,7 +768,7 @@
"checkpoints",
"sd_xl_base_1.0.safetensors",
"checkpoints",
"ComfyUI\\models\\checkpoints",
"ComfyUI/models/checkpoints",
"",
false,
false,
@@ -1004,4 +1004,4 @@
}
},
"version": 0.4
}
}
File diff suppressed because it is too large Load Diff