AI Video Generation API for Furniture and Home Decor — Room Showcase Clips
A furniture retailer refreshing its catalog for a seasonal collection has studio photos of 80 sofas, chairs, and side tables, but no footage of any piece sitting in a furnished room — and booking a set-dressed room shoot for each SKU costs far more than a single mid-range chair's margin covers. Turning existing product photos into short room-showcase clips via API answers the "what would this cost" question before committing to a photography budget for a seasonal refresh.
Direct answer: GenRelay's video models bill either per second of output or per generation, and a 5-second room-showcase clip costs between $0.05 and $0.30 depending on the model and resolution — low enough to generate a clip for most of a seasonal catalog rather than reserving video for a handful of flagship pieces.
How Much Does a Single Furniture Showcase Clip Cost?
A 5-second clip's cost depends entirely on which model and resolution generate it, since per-second models scale with duration while per-generation models charge a flat fee regardless of length. As of September 2026, GenRelay's video pricing: Grok Imagine 1.0 (text-to-video) $0.010/s, Grok Imagine 1.5 (image-to-video) $0.022/s, Veo 3.1 Lite $0.060/s at 720p or $0.120/s at 1080p, and Gemini Omni Flash a flat $0.10 per generation at 720p or $0.15 at 1080p.
| Model | Mode | Billing | 5s clip cost (720p) | Native audio |
|---|---|---|---|---|
| Grok Imagine 1.0 | Text-to-video | Per second | 5 × $0.010 = $0.050 | No |
| Grok Imagine 1.5 | Image-to-video | Per second | 5 × $0.022 = $0.110 | No |
| Veo 3.1 Lite | Image-to-video | Per second | 5 × $0.060 = $0.300 | Yes |
| Gemini Omni Flash | Image-to-video | Flat per generation | $0.10 (720p) | No |
For a studio photo of a sofa or chair with no existing room-set footage, image-to-video is the relevant mode — it places and animates the product photo within a described room setting rather than generating a scene from a text prompt with no product reference at all.
Which Model Fits Furniture and Home Decor Clips?
Grok Imagine 1.5's lower per-second rate fits a full seasonal catalog rollout where most SKUs get a short clip regardless of expected sales volume; Veo 3.1 Lite's native audio is a better fit for a smaller set of flagship room-showcase clips meant for paid social or the homepage, where ambient sound (a slow pan across a living room, soft footsteps) adds atmosphere rather than playing silently.
Gemini Omni Flash's flat per-generation price becomes cheaper than Grok Imagine 1.5 once a clip runs past roughly 4.5 seconds at 720p, which matters for a retailer standardizing on a fixed clip length across the catalog rather than varying duration per SKU.
How Do I Generate a Room-Showcase Clip From a Product Photo?
Submit the product photo with a prompt describing the room setting and camera motion — placing the piece within a furnished scene reads better than trying to animate the product photo in isolation against a blank background.
import requests
import time
API_KEY = "YOUR_GENRELAY_KEY"
BASE_URL = "https://genrelay.ai/v1"
def submit_job(image_url, prompt, duration=5, model="grok-imagine-1.5"):
r = requests.post(
f"{BASE_URL}/videos/generations",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"model": model,
"mode": "image-to-video",
"image_url": image_url,
"prompt": prompt,
"duration": duration,
},
timeout=30,
)
return r.json()["id"]
def poll_job(job_id, interval=5, timeout=180):
elapsed = 0
while elapsed < timeout:
r = requests.get(
f"{BASE_URL}/videos/generations/{job_id}",
headers={"Authorization": f"Bearer {API_KEY}"},
)
data = r.json()
if data["status"] in ("completed", "failed"):
return data
time.sleep(interval)
elapsed += interval
raise TimeoutError(f"job {job_id} did not finish in {timeout}s")
job_id = submit_job(
"https://cdn.example.com/products/sofa-charcoal-3seat.jpg",
"A charcoal grey 3-seat sofa in a sunlit modern living room, slow camera pan "
"across the room, warm afternoon light through a window, soft shadows",
)
result = poll_job(job_id)
print(result.get("output_url"))
What Does a Seasonal Catalog Rollout Cost?
An 80-SKU seasonal launch at 5-second clips via Grok Imagine 1.5 costs 80 × 5 × $0.022 = $8.80. Adding a flagship tier of 10 room-showcase clips through Veo 3.1 Lite at 720p with audio adds 10 × 5 × $0.060 = $3.00. A combined rollout — full catalog plus flagship tier — totals $8.80 + $3.00 = $11.80 for 80 SKUs with video.
from concurrent.futures import ThreadPoolExecutor
CATALOG = [
("sofa-charcoal-3seat", "https://cdn.example.com/products/sofa-charcoal-3seat.jpg"),
("armchair-mustard-01", "https://cdn.example.com/products/armchair-mustard-01.jpg"),
("side-table-oak-round", "https://cdn.example.com/products/side-table-oak-round.jpg"),
]
PROMPT_TEMPLATE = (
"This piece placed in a warmly lit modern living room, slow camera pan, "
"natural afternoon light, soft shadows, tidy styled setting"
)
def generate_and_wait(entry):
sku, image_url = entry
job_id = submit_job(image_url, PROMPT_TEMPLATE)
return sku, poll_job(job_id)
with ThreadPoolExecutor(max_workers=3) as pool:
results = list(pool.map(generate_and_wait, CATALOG))
for sku, r in results:
print(f"{sku}: {r.get('output_url')}")
| Package tier | Composition | Cost |
|---|---|---|
| Full catalog clips (Grok Imagine 1.5) | 80 × 5s | $8.80 |
| Flagship room clips (Veo 3.1 Lite, 720p) | 10 × 5s | $3.00 |
| Combined rollout | Both above | $11.80 |
| Flat-rate alternative (Gemini Omni Flash) | 80 × $0.10 | $8.00 |
At $11.80 for an 80-SKU seasonal launch with a flagship tier included, adding video to most of the catalog costs less than a single half-day room shoot for one sofa, without scheduling a set-dressed studio session around a seasonal launch calendar. See the image-to-video pipeline guide for the async polling and error-handling pattern this batch relies on at larger catalog sizes.
Internal Links
- Veo 3.1 on GenRelay
- AI video generation API for e-commerce
- How to build an image-to-video pipeline with API
FAQ
Can the API place a specific product photo into a fully custom room design?
Yes — the prompt can describe a specific room style, color palette, and layout, and the model composes the reference product image into that described setting rather than a generic backdrop.
Is per-second or per-generation billing cheaper for furniture showcase clips?
It depends on clip length — Grok Imagine 1.5 stays cheaper than Gemini Omni Flash's flat $0.10 (720p) up to roughly 4.5 seconds; past that, the flat rate wins regardless of duration.
Does Veo 3.1 Lite's audio track require a separate API call?
No. Audio generates synchronized with the video in the same request when using Veo 3.1 Lite — there's no separate audio generation step or additional endpoint.
How fast can an 80-SKU batch finish?
Individual clips typically complete within a few minutes; an 80-clip batch submitted with bounded concurrency finishes well within a same-day turnaround for a launch deadline.
Is there a free tier to compare models before committing to a full catalog?
Yes. GenRelay includes free credits on signup, enough to generate sample clips across Grok Imagine 1.5 and Veo 3.1 Lite before choosing a model for the full rollout.
As of September 2026. Pricing subject to change — verify current rates at genrelay.ai.