Skip to content

Releases: chaiNNer-org/chaiNNer

Alpha v0.9.3

08 Jul 04:37
Compare
Choose a tag to compare

I decided to release this patch since I have had multiple users report this interpolation bug. This bug has been fixed for a while now, but it has been held back by the other big changes we've made that we're waiting to release. That update should be out soon (hopefully), but for now at least it can be fixed in v0.9.

Changelog:

Bug Fixes:

  • Fixed PyTorch interpolation not working when in GPU mode.

Alpha v0.9.2

23 Jun 21:43
Compare
Choose a tag to compare

This is a minor update to fix a few things and add a couple new things as well.

Bug Fixes:

  • Fixed the Dark Mode setting. Now Dark Mode is truly the default, and the toggle should be far more reliable than it used to be.
  • Fixed cursor jumping to end of Note node text area (thanks @RunDevelopment)
  • Fixed PyTorch model preview causing a {} error to show up. It now displays a message in the node (thanks @RunDevelopment)
  • Fixed an issue that would cause toggling the FP16 setting to cause an error for already used models
  • Fixed incorrect search results in the selector panel (thanks @RunDevelopment)

New Features:

  • Slightly increased the area around each handle that you can start or stop a connection on
  • Image previews now use a checkered background for transparent images
  • When collapsed, the node selector panel now has extra tooltip information (thanks @theflyingzamboni)

New Nodes:

  • Combine RGBA (thanks @RunDevelopment)
    • This node works similarly to the existing Merge Channels node, except it specifically takes in single channels in the RGBA order.

Changes to Existing Features:

  • Possibly optimized PyTorch upscaling a bit (unconfirmed)
  • Split Channels has been renamed to Separate RGBA (thanks @RunDevelopment)
  • GIFs are now supported by the video frame iterator
  • Convert Colorspace node's options which contained "BGR" are now labeled as "RGB" instead, for consistency (thanks @RunDevelopment)

P.S, this update also comes with a bit of extra logging for PyTorch upscaling that now predicts the split depth (for avoiding out of memory errors). I'd love for people to share how accurate that estimation is with me, as if I cannot find a case where it is inaccurate I may switch to it instead of the somewhat of a brute-force approach I currently take.

Alpha v0.9.1

18 Jun 05:40
Compare
Choose a tag to compare

This is a small update that addresses a few bugs that were found in 0.9.0, but it does add a few things as well.

Bug Fixes:

  • Fixed iterator child nodes being locked into a position outside of the iterator's bounds
  • Fixed edges disappearing behind iterators (thanks @RunDevelopment)
  • Fixed NCNN fp16 model interpolation
  • Fixed Linux icon for .deb and .rpm builds (untested, but should be fixed)
  • Fixed settings not saving properly sometimes

New Features:

  • Startup template
    • Select a chain to load on startup. Configured in settings
  • Node Selector Panel single click warning (thanks @RunDevelopment)
    • Single clicking a node in the selector panel will now let you know how to properly add a node to the canvas

New Nodes:

  • Blend Mode (thanks @theflyingzamboni)
    • This node performs the same action as blend modes between layers in traditional image editors. It's also now a replacement for the overlay node.
  • Opacity (thanks @theflyingzamboni)
    • This node allows you to adjust the opacity of any image. This now replaces the opacity settings of the overlay node (which is now also the Blend Mode node)

Changes to Existing Features:

  • Rotation Node now supports arbitrary rotation amounts, rather than just 90/180/270 (thanks @theflyingzamboni)
  • Sliders now show trailing zeros (thanks @theflyingzamboni)

Alpha v0.9.0

13 Jun 03:07
Compare
Choose a tag to compare

It's been a while, but I'm back again with another update. This is the largest changelog I've ever had to make. A lot has changed, added, and fixed in this update. Enjoy!

EDIT: This version was initially released with an issue that caused chaiNNer to not start up properly, which has since been fixed and the builds replaced. Please re-download if you are having trouble with chaiNNer starting.

Dependency Updates:

  • NumPy, OpenCV, and Pillow are now considered required dependencies. This means they will be automatically installed from now on, and they are no longer visible from the Dependency Manager window. This significantly improves the way we are able to program chaiNNer's backend as we can now rely on functionality that was considered optional before.
  • ONNX, onnxruntime, and protobuf are now optional dependencies (packaged together under the "ONNX" dependency).

New Features:

  • ONNX support. While not necessarily recommended, it is now possible to run ONNX models directly in chaiNNer after installing the ONNX dependency bundle.
    • Unlike PyTorch and NCNN, the ONNX Upscale Image node requires you to pick a target tile size to avoid it going out of memory. To disable the tiling feature, you can simply set it to 0.
  • Swift-SRGAN support.
    • This isn't super useful as the provided pretrained models are not the best, but Swift-SRGAN models are now supported by chaiNNer (via PyTorch). More commonly used SR networks are planned on being added soon as well.
  • Added an "expand/collapse all" button at the top of the node selector panel (thanks @theflyingzamboni)
  • Added unsaved changes warning to file open (thanks @theflyingzamboni)
  • Added Cut/Copy/Paste shortcuts
  • Added Cut/Copy/Paste menu entries (thanks @RunDevelopment)
  • Added "Open in File Explorer" menu option in file selection nodes
    • To access this, right click on a file or directory selection box (thanks @RunDevelopment)

New Nodes:

  • Added Flip node for flipping images vertically and horizontally
  • Added Rotate node for rotating an image
  • Added Difference node to help compare two images by getting the difference between them (thanks @xpscyho)
  • Added Tile Fill node for tiling an image to a desired resolution (thanks @RunDevelopment)
  • Added Image Metrics node (thanks @theflyingzamboni)
    • Can be used for getting various image similarity metrics for qualifying upscale results
  • Added Box Blur node (thanks @theflyingzamboni)
  • Added Median Blur node (thanks @theflyingzamboni)
  • Added new nodes related to the new ONNX functionality

Changes to Existing Features:

  • Overall slight redesign of the UI
  • Revamped overlay node slightly (thanks @theflyingzamboni)
  • Added the new units label to sliders (thanks @theflyingzamboni)
  • Changed scales of adjustment node sliders (thanks @theflyingzamboni)
  • Added a tooltip delay (thanks @RunDevelopment)
  • Improved favorites icon and section (thanks @RunDevelopment)
  • Replaced the collapse button with one on the side of the node selector panel (thanks @theflyingzamboni)
  • Improved search bar functionality (thanks @RunDevelopment)
  • Made Load Image node constant dimensions to help avoid chain organization issues (thanks @theflyingzamboni)
  • Improvements to context menus (thanks @RunDevelopment)
  • Added an animation for node selection panel collapse
  • Widened node selection panel scroll bar (thanks @theflyingzamboni)
  • Dark mode is now the default mode regardless of system setting (as light mode is less developed). Light mode can still be toggled in settings.

Bug Fixes:

  • Fixed a bug where loading invalid models would crash the UI
  • Fixed crash when PyTorch not installed (closes #393)
  • Fixed alpha (transparency) issues with the Average Color Fix node (thanks @RunDevelopment)
  • Fixed node duplication issue when duplicating a node more than once (thanks @RunDevelopment)
  • Fixed copy and paste issues (thanks @RunDevelopment)
  • Fixed re-saved RealESRGAN SRVGGNet models being unable to be loaded
  • Fixed bug with node deletion (thanks @RunDevelopment)
  • Fixed non-ASCII filenames when saving images (thanks @theflyingzamboni)
  • Fixed the Math node's inputs and number rounding (thanks @RunDevelopment)
  • Fixed issue with the minimum Shift node amount (thanks @theflyingzamboni)
  • Fixed node removal via context menu
  • Fixed an issue where nvidia-smi would sometimes cause a crash

Alpha v0.8.1

23 May 00:21
Compare
Choose a tag to compare

Shortly after releasing 0.8.0, we noticed a few bugs caused by some refactors we did. Those should now be fixed.

See the whole changelog for 0.8.0 here: https://github.com/joeyballentine/chaiNNer/releases/tag/v0.8.0

Bug Fixes:

  • Fixed issues that were preventing certain nodes from running

Alpha v0.8.0

22 May 19:33
Compare
Choose a tag to compare

This version ended up with a lot of new features and bug fixes, including some highly requested ones. Thanks again to everyone who contributed!

New Features:

  • Node Favoriting
    • You can now press a "star" icon on the right of each node in the selector panel, which allows you to favorite nodes and add them to a new Favorites category.
  • Undo/Redo history (thanks @RunDevelopment)
    • Now you can Undo & Redo any changes you make to your chain. It also supports the normal shortcuts!
  • Dragging and dropping files (thanks @RunDevelopment)
    • You can drop a chain file to open it, an image to make a new Load Image node, or a file into the file select box to load a file into an existing node.
  • Collapsable node selector panel
    • The node selector panel is now not resizable and is instead collapsable.
  • Prevent sleep mode when chaiNNer is processing.
    • Now when a chain is processing, chaiNNer will prevent your PC from going to sleep, to avoid interrupting work.
  • Added a confirmation dialog box when exiting with unsaved changes
  • New "Open Recent" menu option (thanks @RunDevelopment)
    • This menu contains chains you have previously opened. The last opened save directory will also now be remembered.
  • Get Dimensions Node
    • This node allows you to get the Width, Height, and Channel count of an image. Useful when combined with the Math node.
  • Added a Math node
    • Allows performing mathematical operations on numbers to use for inputs. Useful when combined with the Get Dimensions node.
  • Better interpolation slider labels (thanks @theflyingzamboni)
    • Adding to the change from the last version, the labels now make more sense when interpolating.
  • Better number input handling (thanks @theflyingzamboni)
    • Changed how number inputs and slider inputs handle number precision to be much more user-friendly.
  • Better context menu handling (thanks @RunDevelopment)
    • Context menus can now be opened by right clicking certain things, like nodes.
  • "Collect System Information" menu option
  • Show tooltip for full directory path in directory inputs (thanks @RunDevelopment)
  • More performance improvements (thanks @RunDevelopment)
  • The window size will now be remembered for the next opening. (thanks @RunDevelopment)
  • CPU & FP16 settings are now no longer locked behind whether you have an Nvidia GPU or not. However, they don't actually affect anything through NCNN or CPU PyTorch.

Bug Fixes:

  • Fixed NCNN black outputs due to fp32/fp16 discrepancy
    • NCNN will now follow the dtype of fp32/fp16 models, rather than attempting to convert. This was causing a black output issue. So, for the most part, the black output issue has been taken care of. If any black output issues remain, please let me know -- though I'm not sure if I can do anything else about it at this time.
  • Fixed error popup when installing dependencies
  • Fixed issue with deleting a node from the ... menu
  • Enhanced node/edge z-sorting (thanks @RunDevelopment)
    • The z-sorting for nodes and edges has been redone to avoid the previous issue of edges being on top of nodes and iterators not sorting correctly.
  • Prevent some invalid values from being used with some nodes (thanks @theflyingzamboni)
  • Fixed codec selection for mp4 video. Note: There seems to just be an issue on Linux with this. I will most likely have to add a new dependency to have full support for this in the future.
  • Created nodes are now auto-selected (thanks @RunDevelopment)
  • Fix an issue with Text Append not being able to append Frame Index in the Video Iterator node

Alpha v0.7.1

13 May 16:30
Compare
Choose a tag to compare

This update fixes a critical bug with all iterators that was missed before releasing v0.7.0. Please update if you want to use those.

Also, check the changelog for v0.7.0 here

Bug Fixes:

  • Fixes a bug that prevented iterators from working at all
  • Fixes a bug that caused the first startup after installing to display an odd error message

New Features:

Alpha v0.7.0

13 May 04:08
Compare
Choose a tag to compare

Tons of new features, bug fixes, and general optimizations in this release, as well as a bit of a makeover. Hopefully now the UI is a lot more responsive, and processing will be a lot less buggy. If you are currently using 0.6.2, I highly recommend updating to this version.

New Features:

  • Video Frame Iterator
    • Video upscaling is finally here! The Video Frame Iterator works similarly to the Image File Iterator, but runs on a video file, and has the ability to save right back to another video file. It's not too customizable yet, however. There's a bit of work that will need to be done, as well as some new dependencies that need to be added, to be able to allow full customization. But this should at least be good enough for now!
  • Complete node recategorization (thanks @theflyingzamboni)
    • To reduce clutter, we have now recategorized all the existing nodes into new categories, complete with their own new colors.
  • "Auto" interpolation mode for Resize Image (thanks @RunDevelopment)
    • There is now an "Auto" mode for the resize interpolation mode, which picks "good enough" settings for both resizing up and down.
  • Chain file size reduction
    • Drastically reduced the amount of data that gets saved to a chain file, which means chain files should be a bit less in filesize from now on.
  • New Shortcuts (thanks @RunDevelopment)
    • Added shortcuts for Open and Save As (to go along with the existing New and Save shortcuts) as well as added shortcut descriptions to the File menu section
  • Remember Last Directory (thanks @RunDevelopment)
    • File and directory selectors now specifically remember the last path you selected for that type of input, and will take you there in the open dialog.
  • More tooltips (thanks @RunDevelopment)
    • Tooltips now show for the Start/Pause/Stop buttons
  • Unsaved changes indicator (thanks @RunDevelopment)
    • A dot, along with the saved filepath for the chain, will now appear in the titlebar
  • Added clear button to search bar (thanks @RunDevelopment)

Bug Fixes:

  • Fixed Load Model's preview being broken when loading in RealESRGAN "SRVGGNet" models.
  • Fixed Nvidia GPU detection in settings which was preventing users without an RTX GPU from upscaling in GPU mode.
  • The backend now validates data more effectively, preventing certain crashes and incorrect outputs from happening.
  • Fixed NCNN interpolation as well as (hopefully) prevented more instances of the black output issue.
  • Fixed an issue with certain nodes that would cause rainbow artifacts to show up.
  • Fixed Overlay Images's output when overlaying images with transparency (thanks @theflyingzamboni)
  • Fixed some node descriptions (thanks @theflyingzamboni & @RunDevelopment)
  • Fixed the ... menu on nodes to have a much better user experience (thanks @RunDevelopment)
  • Fixed bugs with optional inputs and loading old chains (thanks @RunDevelopment)
  • Fixed a bug where iterators would not calculate their inner bounds correctly (thanks @RunDevelopment)
  • Fixed VRAM display on multi-gpu devices (thanks @RunDevelopment)
  • Many UI optimizations (thanks @RunDevelopment)

Alpha v0.6.2

08 May 03:50
Compare
Choose a tag to compare

This is a small update with a decent amount of bug fixes and some styling changes. A lot of refactoring has been done as well thanks to @RunDevelopment, which should make the code a bit more stable and prevent bugs from happening in the future.

New Features

  • Improved the styling of the nodes in the node selector panel to allow more to fit on the page at once.
  • Improved the styling of the control bar in the bottom left of the canvas (thanks @theflyingzamboni)
  • Made the image preview in the Load Image node much faster for larger images (thanks @RunDevelopment)

Bug Fixes:

  • Fixed one cause of black output in NCNN upscaling. If you are still running into issues with NCNN, please let me know.
  • Removed LUV mode from ColorTransferNode as it mathematically cannot function correctly (thanks @theflyingzamboni)
  • Fixed bugs in threshold nodes, such as the dropdown boxes containing incorrect options (thanks @theflyingzamboni)
  • Improved stability of the application by making lots of code refactors (thanks @RunDevelopment)
  • Fixed issue with new Pillow interpolation methods that would cause inconsistencies in the dropdown options depending on if you had Pillow installed or not. Note that this change might now cause your saved chains to use a different interpolation method than before (thanks @RunDevelopment)

Alpha v0.6.1

02 May 05:58
Compare
Choose a tag to compare

Bug Fixes:

  • Fixed a bug that would cause the frontend to crash when loading old chains that referenced files that no longer exist.
  • Fixed a bug that prevented the control+s shortcut for saving to not work.
  • Fixed a bug with iterators that would cause the UI to freeze if they processed too quickly.
  • Updated the Python version check to allow using system Python 3.10
  • Fixed image size check for average color fix (thanks @RunDevelopment)
  • Various stability improvements (thanks @RunDevelopment)

New Features:

  • Create Border node now allows transparency (thanks @theflyingzamboni)
  • Added Color Transfer node to allow transferring the overall color scheme of one image to another (thanks @theflyingzamboni)