# Tofupi > An image, video and voice generation studio (Kie, fal, Higgsfield and custom providers; users bring their own keys). Everything is priced in credits (1 credit = $0.005). > LLMs can't spend credits here directly. You write jobs; the human sees the credit total and confirms. ## Three ways to hand work to this app 1. **Job JSON** (best for batches). The user pastes it on the LLM Hub page (`#/llm`). ```json {"jobs":[{"model":"seedance-2","prompt":"...","params":{"resolution":"720p","duration":5}, "refs":["https://.../start.png",{"url":"https://.../moves.mp4","kind":"video","duration":6}], "count":1,"collection":"Berberine ads"}]} ``` It also accepts a bare array, a single job, or raw Kie `createTask` bodies (`{"model":"bytedance/seedance-2","input":{...}}`). Prose and ```json fences around the JSON are ignored. A video or audio reference with no `duration` is measured automatically. 2. **Deep link** (one job): `studio.html#/create?model=&prompt=&refs=&videos=&audios=&count=<1-8>&=` Batch link: `studio.html#/llm?jobs=` 3. **Browser agents**: `window.Tofupi.models()`, `.estimate(job)`, `.queue(jobs)` (opens a confirm dialog), `.library()`, `.compose()`. ## Pricing rules you must know - **Seedance 2.x "with video input" vs "no video input".** With no reference video, the cost is rate_no_video × output seconds. If any reference video is attached, the cost is rate_with_video × (input video seconds + output seconds). Adding a video usually costs more in total, even though the per-second rate is lower. Reference videos: max 15s total, 2–15s each, mp4/mov. - **Seedance modes.** 1–2 images and no video/audio = start/end frames. Otherwise everything goes in as references (reference_image/video/audio_urls). - **Motion Control** is charged per second of the motion video (3–30s). - **Kling AI Avatar** is charged per second of the audio (max 15s). ## Models (id → credits) Images - gpt-image-2-5-sunburst / gpt-image-2-5-flare / gpt-image-2: 1K 6 · 2K 10 · 4K 16 · images ≤16 - nano-banana-2: 1K 8 · 2K 12 · 4K 18 · images ≤14 - nano-banana-pro: 1K/2K 18 · 4K 24 · images ≤8 - seedream-5-pro: basic ≈7 · high ≈14 | seedream-4-5: 6.5 | flux-2-pro: 1K 5 · 2K 7 | z-image: 0.8 Seedance (credits per second: no video / with video) - seedance-2-5: 480p 28/17 · 720p 63/38 · 1080p 158/95 · 4–30s · images ≤30, videos ≤10, audio ≤10 - seedance-2: 480p 19/11.5 · 720p 41/25 · 1080p 102/62 · 4k 208/128 · 4–15s · images ≤9, videos ≤3, audio ≤3 - seedance-2-fast: 480p 11.7/6.8 · 720p 24.8/15 - seedance-2-mini: 480p 3.8/2.4 · 720p 8.2/5 - seedance-1-5-pro: per second, audio on/off: 480p 3.5/1.75 · 720p 7/3.5 · 1080p 15/7.5 · images ≤2 · 4–12s Kling - kling-3: per second: std(720p) 14 / 20 with sound · pro(1080p) 18 / 27 · 4K 67 · 3–15s · images ≤2 (first/last frame) - kling-3-turbo: 720p 18/s · 1080p 22.5/s · image ≤1 - kling-3-omni: ≈ Kling 3.0 rates (not on Kie's list) · images ≤4, video ≤1 (reference-to-video) - kling-3-omni-edit: transforms a video (video required) · ≈ Kling 3.0 rates × video seconds - kling-3-motion: mode 720p 20/s · 1080p 27/s of motion video · needs 1 character image + 1 motion video (mode must be "720p" or "1080p", not std/pro) - kling-2-6-motion: 720p 11/s · 1080p 18/s of motion video - kling-2-6: 5s 55 (110 with sound) · 10s 110 (220 with sound) - kling-2-5-turbo: 5s 42 · 10s 84 | kling-2-1-master: 5s 160 · 10s 320 - kling-2-1-pro: 5s 50 · 10s 100 (image required) | kling-2-1-std: 5s 25 · 10s 50 (image required) - kling-avatar-std: 8/s of audio (720p) | kling-avatar-pro: 16/s (1080p) · need 1 face image + 1 audio Wan Animate (no prompt; 1 character image + 1 driving video, each ≤10 MB; per second of driving video) - wan-2-2-animate-move: your character performs the video's movements · 480p 6 · 580p 9.5 · 720p 12.5 - wan-2-2-animate-replace: swaps the person in the video for your character · same prices Other video - veo-3-1: per clip, Fast tier: 720p 60 · 1080p 65 · 4k 180 (estimate) | wan-3: 480P 8 · 720P 16 · 1080P 32 per second - grok-video: 480p 2.4 · 720p 4.5 · 1080p 8 per second | hailuo-2-3-pro: 6s-768P 45 · 10s-768P 90 · 6s-1080P 80 (image required) Audio / tools - elevenlabs-v2: 12 credits per 1,000 characters ("prompt" is the script) - topaz-upscale: ×2 ≈10 · ×4 ≈20 (image required, no prompt) - topaz-video-upscale: ×1/×2 8 per second · ×4 14 per second of the input video (video required, mp4/mov/mkv ≤50 MB, no prompt) ## Rules for LLMs - Use only the ids, params and option values in the in-app brief (LLM Hub → Copy LLM brief has the full parameter list). - Reference URLs must be public https links. - State the estimated credit total before the JSON. - Kie deletes generated files after 14 days and uploaded references after 24 hours.