Nodes/Polza AI Nodes/🎬 Polza Media
ComfyUI Node

🎬 Polza Media

One node for images, video and TTS — the pack's actual workhorse

By PioneerMNDR·Created 6 months ago·Updated 5 months ago· 2
🎬 Polza Media
  • image
  • video
  • images
  • video
  • audio
  • media_url
  • media_id
  • text_response
  • cost_rub
modelClick Load models
prompt
api_key
aspect_ratioauto
seed0
qualityauto
image_resolutionauto
output_formatpng
max_images1
guidance_scale0.0
strength0.80
is_enhancefalse
enable_safetytrue
durationauto
video_resolutionauto
kling_modestd
multi_shotsfalse
soundfalse
voice
speed1.00
language_code
extra_params_json

Polza Chat and Polza Vision are the flashy half of ComfyUI-Polza, but Polza Media is the node the pack is really built around - the README says so outright. It's a single node that generates images, video, and audio through Polza.ai's /v1/media API. Want a Seedream image, a Veo 3.1 clip, or an ElevenLabs TTS read of your prompt? Same node, different model value. This is the "closed frontier is one login away" pattern from the Comfy ecosystem: you're calling models that have no open weights and never will - Nano Banana, Veo, Kling, Sora, Seedream. Local isn't an option for these, so the API node is the only door.

How it works

The interesting part is model-type detection. The node sniffs the model ID you pick and builds a payload shaped for that family - kling, wan, veo, sora, seedance, audio, or generic image. Kling gets a mode (std/pro) and a numeric duration string; Wan gets a resolution and a multi_shots flag; TTS models get voice, speed, language_code instead of image params. You don't have to think about any of this - the dropdown does it for you.

Generation is asynchronous under the hood: POST a job, get a task id, then poll every 4 seconds for up to 10 minutes until it's completed, and finally download the result. Images come back as an IMAGE tensor; video and audio are streamed to ComfyUI's temp folder, classified by URL extension (.mp4/.webm → video, .mp3/.wav → audio), and handed back as native VIDEO and AUDIO outputs.

The inputs that matter

You'll touch a handful of these regularly:

  • model - the dropdown. Click Load models first (it needs your API key), then pick a family: seedream-3/gpt-image-1 for images, veo-3-1/kling-3-0/wan-2-6 for video, elevenlabs-tts-turbo for speech.
  • prompt - your text description. Required.
  • image - plug in an IMAGE to get img2img / image-to-video / editing. A batch means each frame goes in as a separate element, so you can feed several at once.
  • video - native VIDEO input for video-to-video. Wire any video node's output here.
  • aspect_ratio, quality, image_resolution (1K/2K/4K), duration (5s/10s/15s), video_resolution (480p→1080p) - the media-specific knobs; auto is a safe default for all of them.
  • extra_params_json - the escape hatch. Any API parameter the node doesn't expose goes here as a JSON object, and it merges over everything else.

Outputs

Seven: images (IMAGE), video (native VIDEO → wire into SaveVideo / GetVideoComponents), audio (AUDIO → wire into PreviewAudio / SaveAudio), media_url (raw URL, useful if you skip the native outputs), media_id (the task ID), text_response, and cost_rub. The node's widget reports what came back, the task ID, elapsed time, and the ruble cost.

Installing it

Same story as the rest of the pack. ComfyUI Manager → search ComfyUI-Polza → install → restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/PioneerMNDR/ComfyUI-Polza
cd ComfyUI-Polza
pip install -r requirements.txt

Then restart. Get a key at polza.ai and set it via the node's api_key field, POLZA_API_KEY, or a config.json in the node folder. No models to download - everything lives upstream.

Common issues

The README is blunt about the big one: some models may have parameter glitches; if the result isn't right, check the ComfyUI console first, then file an issue. Translation: per-model quirks are real, and the console log is where the pack logs its model-type detection and API payloads - that's your debugging window.

Two output gotchas are worth flagging up front. Audio only materializes as an AUDIO output if torchaudio is importable - it's not in the pack's requirements, so on a bare install you'll get media_url instead and the node logs a warning. Either install torchaudio or just use the URL. Video wants a recent ComfyUI: the native VIDEO output needs comfy_api.latest (ComfyUI ≥ 0.3). On an older build you still get the file saved to temp, but the output slot won't be usable - update ComfyUI.

And the economics. Video is where API metering bites hardest - Veo seconds add up fast, and the community's standard objection to these nodes ("small number of videos per year for 20–30 bucks a month") applies in full here. Your prompts and images also leave your machine, and whatever the vendor filters, the node filters. Polza is a Russian-market aggregator, so the cost reads out in rubles and the docs are mostly Russian; the code is MIT-licensed and readable if you want to see exactly what leaves your box before you wire it into your workflow.

Category🤖 Polza.ai

Inputs (24)

NameTypeDefaultDescription
modelCOMBOClick Load modelsID модели Polza.ai. Изображения: seedream-3, gpt-image-1, flux-1-1-ultra … Видео: veo-3-1, wan-2-6, kling-3-0, sora … Аудио/TTS: elevenlabs-tts-turbo, openai/gpt-audio …
promptSTRING
api_keyoptSTRINGAPI‑ключ Polza.ai (пусто → env POLZA_API_KEY / config.json)
imageoptIMAGEВходное изображение для img2img / img2vid / editing. Batch: каждый фрейм [B,H,W,3] → отдельный элемент images[].
videooptVIDEOВидео для video-to-video генерации (нативный VIDEO вход). Подключите выход VIDEO любого нода (LoadVideo, etc.).
aspect_ratiooptCOMBOauto11 options: auto, 1:1, 16:9, 9:16, 4:3, 3:4, +5
seedoptINT00–2147483647
qualityoptCOMBOauto4 options: auto, high, medium, basic
image_resolutionoptCOMBOauto4 options: auto, 1K, 2K, 4K
output_formatoptCOMBOpng3 options: png, jpeg, webp
max_imagesoptINT11–6
guidance_scaleoptFLOAT0.00–30
strengthoptFLOAT0.800–1
is_enhanceoptBOOLEANfalse
enable_safetyoptBOOLEANtrue
durationoptCOMBOauto4 options: auto, 5s, 10s, 15s
video_resolutionoptCOMBOauto5 options: auto, 480p, 580p, 720p, 1080p
kling_modeoptCOMBOstdРежим Kling 3.0: std (быстрее) или pro (качественнее)
multi_shotsoptBOOLEANfalseМульти-шоты для Wan 2.6 (несколько сцен в одном видео)
soundoptBOOLEANfalse
voiceoptSTRING
speedoptFLOAT1.000.7–1.2
language_codeoptSTRING
extra_params_jsonoptSTRING

Outputs (7)

NameTypeDescription
imagesIMAGE
videoVIDEO
audioAUDIO
media_urlSTRING
media_idSTRING
text_responseSTRING
cost_rubFLOAT