Skip to content

B. ASICS

Alexander G. Morano edited this page Oct 17, 2024 · 6 revisions

There are a number of environment variables that can be used to affect how Jovimetrix itself functions within the ComfyUI environment.

LOGGER

The logger can be controlled via the JOV_LOG_LEVEL variable. It can be set to one of the following, by name or value:

  • TRACE (5)
  • DEBUG (10)
  • INFO (20)
  • SUCCESS (25)
  • WARNING (30)
  • ERROR (40)
  • CRITICAL (50)

The default is WARNING (30); i.e.:

SET JOV_LOG_LEVEL=WARNING

IGNORING NODES

Because there are a number of nodes that have overlapping functionality with other node packages, I have provided a mechanism to ignore loading of specific nodes.

If you create a file called ignore.txt inside the Jovimetrix root folder (.../ComfyUI/custom_nodes/Jovimetrix), it will skip loading any nodes included.

CUSTOM IGNORE FILE

If the JOV_IGNORE_NODE environment variable points to a valid text file, it will parse the file rows for <Node Class> names and attempt to skip loading those specific node class(es) at initialization.

This should be reflected in your ComfyUI log. Verify with the log any nodes ignored this way.

USAGE

SET JOV_IGNORE_NODE=ignore.txt

Each entry should be on a separate line using the full node class name (the default name of the node). For example, in ignore.txt:

CONSTANT (JOV) 🟪

Will ignore the Constant node for use in ComfyUI.

This will NOT prevent the module from loading the imports, but this can help reduce your visual space while working within ComfyUI if you do not require looking at an additional 60+ nodes.

SYSTEM DEVICE SCAN

Allows the system to auto-scan for any devices, so that it can populate the device list in the Stream Reader Node.

The STREAM READER📺 is able to load media from local media, web media dna also system devices such as (virtual) web cameras and monitors. By default, the scan for web cameras is off.

If you wish to engage the auto-scan on ComfyUI start-up, set the JOV_SCAN_DEVICES variable to 1 or True.

SET JOV_SCAN_DEVICES=1

MacOSX

On macOS, you need to ensure that your Python or application has permission to access the camera. Go to System Preferences → Security & Privacy → Camera and check whether your application has the necessary permissions.

LINUX

On Linux, ensure your user has permission to access /dev/video0. You can add yourself to the video group:

bash sudo usermod -aG video $USER

Restart your session for changes to take effect.

USING FFMPEG TO CAPTURE

By default the system will try to detect and use the most appropriate back-end for capture; however, you can also set the system to force FFMPEG to capture frames.

SET JOV_USE_FFMPEG=true

CUSTOM SHADERS

You are able to add your own shaders such that they compile into nodes at ComfyUI load time. Custom shaders that are local to your machine will have a 🧙🏽‍♀️ wizard icon at the end of their name. The default location for local shaders is to search a folder in the root of Jovimetrix:

<ComfyUI>/custom_nodes/Jovimetrix/glsl

If you want to change the search location, you can set the environment variable:

SET JOV_GLSL=<location to glsl shader files>

GIFSKI EXPORT

If you have GIFSKI installed you can enable the option for the Export Node to use GIFSKI when outputting frames.

You will need to add an environment var so it knows you have it installed and where:

SET JOV_GIFSKI=[path to gifski]

Once set the GIFSKI option should appear in the Export Node drop down list of output target formats.

SPOUT

(WINDOWS ONLY)

If you are on Linux or Mac, Spout will not be installed from the requirements.txt.

By default, Spout, a system for GPU accelerated sharing of graphics between applications, is on for all platforms.

If you are on Mac or Linux, this will only amount to a message at startup about Spout not being used. When Spout is not found, the SpoutWriter node will not showup. In addition, the StreamReader node will not have Spout as an option from which to read stream data.

If you want to fully turn off the initial startup attempt to import Spout, you can use the environment variable:

SET JOV_SPOUT=0

HELP SYSTEM

The main help system is made possible by Mel Massadian. It is located on the top right of each node (?). This will present a window which is loaded from the main help repository for Jovimetrix

LOCAL BUILD

You can build all the help locally by loading Comfy and surfing to the local URL:

http://127.0.0.1:8188/jovimetrix/doc

This will build all the help stub files (.md) inside the main Jovimetrix folder under a folder named _md

If you wish to re-direct those outputs, you can set the ENV variable JOV_DOC.

For example: SET JOV_DOC=C:/dev/jvx/help

You can also use the token: {name} in the path and it will be replaced with the name of the node, in case you wish to further categorize the output:

SET JOV_DOC=C:/dev/jvx/help/{name}