Trick-or-treat hours video for your street, Saturday Oct 31

A 10-second street announcement for Halloween 2026: one 9:16 poster, one 6-second Wan 3.0 backdrop and a Timeline render. About $0.91 on Sume, from docs.

5 min readSume
All posts

To announce trick-or-treat hours for your street, make one 9:16 poster that carries the exact times, generate a 6-second atmospheric backdrop with no text in it, and join them in one Timeline 1.0 render: 6 seconds of motion, then 4 seconds holding the poster. On Sume that is roughly $0.91 end to end, and the times stay legible because they live in a still, not in a video model's output.

Halloween 2026 lands on a Saturday, October 31. The NRF's 2026 survey (read 2026-10-04) says 61% of consumers plan to hand out candy, 42% will decorate their home or yard, and 74% celebrate. Neighbours who hand out candy want to know when to turn the porch light on.

Why keep the times in a still image?

Video models animate pixels; they do not proofread. Digits and colons in generated footage drift from frame to frame. A still image generated once and checked by you is stable, and Timeline holds a still as a static frame for as long as you ask. So the split is: the video model makes mood (porch lights, fog, leaves), the poster makes the information.

What does the pipeline cost?

Wan 3.0 on the Video Router lists $0.05, $0.10 and $0.20 per second by resolution, and Sume bills list x 1.25, so 720p is $0.125 a second (Video Router docs, read 2026-10-04). Timeline renders at $0.10 per output minute, rounded up (Timeline docs). The poster uses Ideogram 4.5, which lists $0.03, $0.06 or $0.22 per image by quality before Sume's margin (Image API docs).

Ten-second street announcement, rates read 2026-10-04
StepRateAmount
Poster, one 9:16 still, Ideogram 4.5 medium$0.06 list$0.06 before Sume margin
Backdrop, Wan 3.0, 6 s at 720p$0.125 per second$0.75
Timeline render, 10 s$0.10 per output minute$0.10
Totalabout $0.91 plus the poster margin

How do I write the poster prompt?

Quote every line you want on the poster and keep it short: the street name, the date, the hours, one line about porch lights. Check the generated times against your own before you render anything else. If a digit is wrong, regenerate the still; it costs cents.

Request it at aspect_ratio: "9:16" so it fills the frame without cropping. The same call shape works for the backdrop, with image_url pointing at a porch photo if you want your own street, or no image for pure text-to-video.

curl -X POST https://api.sume.com/v1/video-router/generate \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: street-backdrop-001" \
  -d '{
    "model": "wan-3.0",
    "prompt": "Quiet suburban street at dusk, glowing jack-o-lanterns on porches, low fog, drifting leaves. No people, no text.",
    "resolution": "720p",
    "duration": 6,
    "aspect_ratio": "9:16",
    "mode": "async"
  }'

How do I join the backdrop and the poster?

When both jobs complete, read each Sume-hosted URL from the job result and send them to Timeline with a silent spine. audio.mode: "silence" declares the length without a sound file, and the poster slot is just a still with a duration. Timeline requires media.sume.com URLs, which generated artifacts already are.

curl -X POST https://api.sume.com/v1/timeline-1.0/render \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: street-timeline-001" \
  -d '{
    "audio": { "mode": "silence", "duration_seconds": 10 },
    "video": [
      { "source_url": "BACKDROP_MEDIA_URL", "start": 0, "duration": 6 },
      { "source_url": "POSTER_MEDIA_URL", "start": 6, "duration": 4,
        "transition": { "type": "fade", "duration": 0.5 } }
    ]
  }'

What should I check before posting?

Read the poster's hours and street name against your notes, play the render once muted, and confirm the backdrop has no stray lettering. Poll with GET /v1/jobs/{id}/status and stop on completed, failed or canceled; never resubmit a paid request because a local timer ran out (Jobs and results). Post it to the neighbourhood group the morning of October 31 and pin it.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume