Diwali greeting video from photos: music bed and Timeline render

Make a 20-second Diwali greeting video from four photos: generate an instrumental bed with Music Router, add fades, and render vertically for status posts.

4 min readSume
All posts

A Diwali greeting video is four to six family or shop photos, an instrumental music bed and one Timeline 1.0 render. Four photos at 5 seconds each makes a 20-second vertical clip for a status or story post. The cost is about $0.23: $0.125 for one Music Router track and $0.10 for one rendered minute. Diwali's main day this year is Sunday 8 November 2026 per this festival calendar, so there is time to prepare several versions.

Step 1: the music bed

Call POST /v1/music-router/generate. There is no duration field, so steer length in the prompt. Describe the instruments you want and ask for an instrumental: "Warm festive instrumental, 96 BPM, sitar and tabla with soft bells, gentle build, a 30-second track, no vocals." Music Router prices every model at a fixed $0.125 per accepted generation. Ask for a bed a little longer than 20 seconds and let fade_out_seconds end it.

Step 2: the render

Upload the photos (POST /v1/assets/upload-url, PUT the bytes, then POST /v1/assets/{id}/complete; the ready asset's url is the media.sume.com URL Timeline accepts), then list them in video[] with a short fade between slots. Timeline outputs 1080 x 1920 by default, which suits vertical posts. Use fit: "blur" for landscape photos so they sit on a blurred fill instead of being cropped to a face. The soundtrack goes in soundtrack; with no voice there is nothing to duck, so leave duck_db out (it needs a real audio spine anyway).

{
  "audio": { "mode": "silence", "duration_seconds": 20 },
  "video": [
    { "source_url": "https://media.sume.com/artifacts/artf_demo/p1.jpg", "start": 0, "duration": 5, "fit": "blur" },
    { "source_url": "https://media.sume.com/artifacts/artf_demo/p2.jpg", "start": 5, "duration": 5, "fit": "blur",
      "transition": { "type": "fade", "duration": 0.5 } },
    { "source_url": "https://media.sume.com/artifacts/artf_demo/p3.jpg", "start": 10, "duration": 5, "fit": "blur",
      "transition": { "type": "fade", "duration": 0.5 } },
    { "source_url": "https://media.sume.com/artifacts/artf_demo/p4.jpg", "start": 15, "duration": 5, "fit": "blur",
      "transition": { "type": "fade", "duration": 0.5 } }
  ],
  "soundtrack": { "url": "https://media.sume.com/artifacts/artf_demo/bed.mp3", "fade_out_seconds": 2 }
}

Add the greeting text

Photos alone say little. Burn the greeting with POST /v1/video-captions using cues, each with text, start and end in seconds. Cues skip speech-to-text, which a music-only video needs, because speech captions on a silent clip fail with caption_no_speech. A caption job is $0.20, so the full video is about $0.43.

Limits

Generated music will not reproduce a specific traditional piece, and you cannot request an exact timestamp for a change. Review the track before sending it to elders or customers; an instrumental labelled festive can still sound wrong for the occasion. Use photos of people only with their permission. For a spoken greeting, add a TTS voice on the spine and set duck_db on the soundtrack so the music dips under the voice.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume