# Skill: Cinematic (best models)

The expensive one, and it should look it: Veo 3.1 clips, Nano Banana Pro stills, a graded picture and a
scored soundtrack. For a brand film, a launch, a showreel — not for weekly content.

**Price:** 1190–1430 credits per finished minute · 30 seconds ≈ 1075–1285 credits
**Uses:** `/v1/ai/video` · `/v1/ai/image` · `/v1/ai/music` · `/v1/studio/remove-silence` · `/v1/studio/edit`

Base URL: `https://apihub.co.il` · Auth: `Authorization: Bearer <key>` · Docs: `/docs`
Tag every call with the same `X-Tag: <job>` and read the bill from `GET /v1/usage?tag=<job>`.

**Model quality.** Every AI endpoint takes `quality`: `fast` · `balanced` (default) · `best`. Stay on
`balanced` unless the customer asked for the best — `best` on video is 4× the price.

---

**Before you start, say the price out loud.** At `quality: "best"`, one 4-second clip is ≈ 480 credits
and one image ≈ 42. A minute with two clips and three images lands near 1,300 credits.
On `balanced` the same edit is closer to 520 credits. Ask the customer which they want.

---

## 1. Cut, transcribe, plan

`POST /v1/studio/remove-silence` (`min_pause_ms: 450`, `padding_ms: 90`) → transcribe → sentences.
Plan **two** clip moments (the ones that need motion: a vehicle, a crowd, a machine working, weather) and
**three** still moments. Anything a photograph could carry should be a still or free stock.

## 2. Generate

```jsonc
POST /v1/ai/video { "quality": "best", "prompt": "<motion shot, camera move, lighting>", "aspect_ratio": "9:16", "resolution": "720p", "duration": "4" }
POST /v1/ai/image { "quality": "best", "prompt": "<still, photoreal, 9:16, no text>", "aspect_ratio": "9:16", "resolution": "1K" }
POST /v1/ai/music { "prompt": "cinematic orchestral build, no vocals", "duration": <len+2>, "instrumental": true }
```

Veo takes 1–3 minutes: send `x-wait-ms: 110000` and poll `GET /v1/executions/{id}`. Write prompts with a
camera in them — "slow dolly past", "aerial push-in", "handheld follow" — or you get a moving postcard.

## 3. Render

```jsonc
POST /v1/studio/edit
{
  "video_url": "<cut url>", "transcript_id": "<id>",
  "captions": { "style": { "font": "Heebo", "weight": 900, "size": 6.4, "color": "#FFFFFF",
    "active_color": "#FFFFFF", "outline": 0, "shadow": 8, "animation": "fade",
    "max_words": 5, "max_lines": 2, "position": "bottom", "margin": 15, "side_margin": 8 } },
  "hook": { "text": "<one line, understated>", "duration": 3.5,
    "style": { "preset": "clean", "font": "Heebo", "weight": 800, "size": 5.4, "margin": 10, "animation": "fade" } },
  "overlays": [
    { "url": "<veo clip>", "type": "video", "start": 6.0, "duration": 3.0, "mode": "full", "fade_ms": 400 },
    { "url": "<still>", "type": "image", "start": 15.0, "duration": 2.8, "mode": "full", "fade_ms": 350 }
  ],
  "zoom": [ { "start": 11.0, "end": 14.0, "to": 1.1, "ease": "smooth", "y": 0.35 } ],
  "color": { "preset": "cinematic", "vignette": 0.3, "sharpen": 0.25 },
  "music": { "url": "<music>", "volume": 0.3, "duck": false, "fade_in_ms": 1200, "fade_out_ms": 2500 },
  "audio": { "normalize": true },
  "output": { "aspect_ratio": "9:16", "resolution": "1080", "fit": "crop", "quality": "high" }
}
```

Long fades, few elements, no bouncing captions: at this budget restraint is the style. Grade the whole film
with one `color` preset so generated and filmed material belong to the same world.

## Spending less on the same video

- A generated **image** is ≈ 29 credits; a generated **4-second clip** is ≈ 120 (Fast) or ≈ 480 (Veo 3.1).
  A **Gemini Omni** clip (`model: "gemini-omni-1.1-flash"`: speech and sound made with the picture, readable
  text in the frame) runs 3–10 s, usually 10: ≈ 310 credits at 720p, ≈ 460 at 1080p — take it only when the shot
  must talk or show text.
  Two images and a zoom often read better than one clip that hides the speaker.
- A free photograph from `/v1/stock/search` costs nothing — use it for anything that exists in the real
  world (places, objects, documents) and generate only what does not exist.
- Music is ≈ 1.3 credits per second. One track reused across a series is the single easiest saving.
- Render `quality: "standard"` instead of `"high"` while you iterate; switch to `"high"` for the final.

**How to read the price.** Renders are billed per second of output, so cutting and captioning scale with
length. Everything that is *generated* — an image, a clip, a music track — is billed per asset, no matter how
long the video is. That is why half a minute is not half the price: a 30-second video with the same four
images and one music track costs nearly what a 60-second one costs. Real numbers, not estimates, come from
`GET /v1/usage?tag=<your tag>` after the job.
