Skip to content

Image Quality Enhance

Node name
BytePlus Image Quality Enhance
Node ID
BytePlusImageEnhance
Find it
Double-click the canvas and search for “Image Quality Enhance”, or browse BytePlus ModelArk/MediaKit
Keys needed
AI MediaKit API key
Runs when
Its output is used by another node, such as Save Image or Save Video. It is not an output node.

Upscales and cleans up images with BytePlus VOD AI MediaKit, for AIGC post-processing, old photos, OCR input and product images. Pick a tool_version, then scale by a factor or set a target size. It needs the separate AI MediaKit API key (Singapore region only, see API keys). The node bills for every image, with pricing that differs per version (see the tool_version tooltip), and saves nothing: connect Save Image to keep the result.

The Image Quality Enhance node with the standard version and a 2x multiple
Default values: standard version, output size set to a multiple of 2.
InputTypeDefaultWhat it does
imageoptionalIMAGEImage(s) to enhance; each image in a batch is enhanced separately. Uploaded to Comfy.org storage first (needs a Comfy.org login); or set image_url instead.

tool_version is required and decides which of the inputs below appear. 'standard' (up to 8x, PNG output): fast clean-up for thumbnails, UGC and OCR input. 'professional' (up to 30x): fine texture for AIGC fixes, product and portrait photos, old photos. 'max' (up to 30x): a generative model for the most detail on low-quality images. Pricing differs per version.

No extra inputs for this option.

output_size is required and decides which of the inputs below appear. Scale by a factor, or set a target width and/or height.

InputTypeDefaultWhat it does
multiplenumber2Scale factor for width and height: 1-8 for standard, 1-30 for professional and max.Range: 1–30
Advanced inputs (1)
InputTypeDefaultWhat it does
image_urloptionaltextPublic http(s) link to the image (png, jpg, jpeg or webp, up to 10 MB), instead of connecting an image. Nothing is uploaded to Comfy.org.
  • Source: use image or image_url, not both. A connected image is uploaded to Comfy.org storage first (Comfy.org login needed), as PNG, or as JPEG if the PNG is over 10 MB. image_url is a public http(s) link (png, jpg, jpeg or webp, up to 10 MB) and is sent as it is.
  • Batches: each image in a batch is enhanced on its own, up to 3 at a time. If one image fails, the node fails and cancels the others.
  • Versions: professional and max add generative_enhance_mode. max also has enable_correct_color.
  • Output size: multiple scales width and height by the same factor. target size takes target_width, target_height or both. With both set, the image fits inside that box at its own aspect ratio.
OutputTypeWhat it holds
IMAGEIMAGEThe enhanced image(s).
originalIMAGEThe input resized to the enhanced size; connect it and the enhanced image to Compare Images for a slider.
responsetextThe MediaKit result as JSON (a list for a batch).
  • original is your input resized to the enhanced size. Connect it and IMAGE to Compare Images for a slider (Nodes 2.0 only).
  • In a batch, results of a different size are resized to the first result, so the batch stays one tensor.
  • response is the MediaKit result as JSON, a list when the batch has more than one image.
  • Checked before upload for a connected image, standard takes 16 to 1440 px on the short side and 16 to 2160 px on the long side, with an output of at most 6144 px per side and at most 8x.
  • professional takes a short side of at least 256 px and a long side of at most 2048 px, with an output long side of at most 10240 px and at most 30x.
  • max takes a short side of at least 64 px, a long side of at most 6240 px and a ratio up to 32:1, with an output long side of at most 10240 px and at most 30x. A max output above 8000 px can time out.
  • With image_url the source size is unknown, so only the multiple and target ranges are checked. For a connected image, a target size for standard must also be at least the original size.
  • The call is synchronous and waits up to 600 seconds for each image. Interrupting a run stops the node’s wait. The node sends no cancel request, so a request that was already sent may still be billed.
  • The node downloads each result right away, because MediaKit links expire after 24 hours. Only the Singapore region (ap-southeast-1) is available.
Message What to do
[BytePlus] No AI MediaKit API key is set. Add it in Settings > BytePlus … Add the AI MediaKit key in Settings → BytePlus. See API keys.
[BytePlus] The … version takes images with …; this one is … The image is outside the version’s input size. Resize it, or pick another tool_version.
[BytePlus] The … output would be …, but … allows …. Lower the scale. The result would exceed the version’s size limit. Lower multiple or the target size.
[BytePlus] multiple must be between 1 and … for the … version, got … Use a smaller multiple (at most 8 for standard, 30 for professional and max), or for standard a smaller target size.
[BytePlus] Uploading the image to Comfy.org storage failed: … Log in to Comfy.org in ComfyUI, or set image_url to a public link.