{
  "version": 5,
  "opening": "01 first notification → 02 second notification on the same lock screen → tap → 03 first Seedance clip.",
  "tool": "Seedance video only. No Suno generation.",
  "duration": 113.133333,
  "aiFrames": [
    3,
    4,
    5,
    10,
    11,
    12,
    13
  ],
  "aiSeconds": 62,
  "shots": [
    {
      "title": "Rich son, poor son",
      "seconds": 10,
      "reference": "production/references/frame-03-clean.png",
      "identity": "Banana family A. Match these same father and sons when they return in frame 10.",
      "prompt": "Generate 10 seconds of picture. Final edit uses only the first 9.700 seconds for an existing 9.474-second reading, starting at 0.10s. Do not stretch the reading or add a silent hold to use the whole generated file. Any rounded duration surplus is discarded.\n\nOpen already mid-argument with the father pointing at the navy-suited rich son, who instantly smirks. At 2.39s snap his pointing hand toward the hoodie-wearing poor son. At 4.73s the poor son throws one incredulous palm upward. At 6.95s the rich son bursts into a mocking laugh while his brother glares. One readable reaction per spoken beat; no waiting between gestures. Cut away immediately after the last spoken word.\n\nVertical 9:16 silent image-to-video. Use the existing supplied image unchanged as the identity and composition reference. Immediate action from the first frame, brisk natural gestures, clear reactions timed to the listed narration cues, subtle handheld smartphone movement. One continuous shot with a restrained quick push-in on its strongest reaction; no slow motion, establishing shot, fades or outro. Keep faces and hands inside the central crop for a 393:852 iPhone screen. Maintain faces, wardrobe, props and background. No phone frame, status bar, app UI, notifications, captions, generated text, logo or watermark. No extra characters, morphing or wardrobe changes. Generate no speech, music or incidental dialogue. The existing ElevenLabs recording supplies every spoken word verbatim; do not invent or paraphrase any words.",
      "frame": 3,
      "status": "revised-prompt-only",
      "previousGeneratedSeconds": 12,
      "audioSeconds": 9.473741,
      "editSeconds": 9.7,
      "editFrames": 291,
      "audioStartFrames": 3,
      "tailFrames": 3,
      "existingGeneratedFile": "production/seedance/clips/frame-03.mp4",
      "poem": "You son: are going to grow up rich son\nand you son: will grow up poor.\n\"Daddy why can't I have anything?\"\nhahahah, look at you brother, so poor!"
    },
    {
      "title": "Twenty thousand",
      "seconds": 7,
      "reference": "frames/frame-04-influencer-v3.png",
      "identity": "Human influencer B, Asian man, 24, sleeve tattoos on both arms, sunglasses, cigar. This is a human replacement for the orange character.",
      "prompt": "Generate 7 seconds of picture. Final edit uses only the first 6.300 seconds for an existing 6.084-second reading, starting at 0.10s. Do not stretch the reading or add a silent hold to use the whole generated file. Any rounded duration surplus is discarded.\n\nOpen with the 24-year-old Asian human influencer already leaning toward the selfie lens and pointing with his free hand. At 2.02s he opens that palm to emphasize starting from zero. At 3.71s he jabs toward the lens once, then gives a knowing smirk at 4.73s. Hold a smoking cigar in the other hand with a small curl of smoke throughout; omit the slow draw-and-exhale sequence. Preserve sunglasses, black short-sleeved shirt, gold watch and full sleeve tattoos on both arms. Use a brisk natural sales pitch gesture, then cut immediately after the final line.\n\nVertical 9:16 silent image-to-video. Use the existing supplied image unchanged as the identity and composition reference. Immediate action from the first frame, brisk natural gestures, clear reactions timed to the listed narration cues, subtle handheld smartphone movement. One continuous shot with a restrained quick push-in on its strongest reaction; no slow motion, establishing shot, fades or outro. Keep faces and hands inside the central crop for a 393:852 iPhone screen. Maintain faces, wardrobe, props and background. No phone frame, status bar, app UI, notifications, captions, generated text, logo or watermark. No extra characters, morphing or wardrobe changes. Generate no speech, music or incidental dialogue. The existing ElevenLabs recording supplies every spoken word verbatim; do not invent or paraphrase any words.",
      "frame": 4,
      "status": "revised-prompt-only",
      "previousGeneratedSeconds": 10,
      "audioSeconds": 6.083628,
      "editSeconds": 6.3,
      "editFrames": 189,
      "audioStartFrames": 3,
      "tailFrames": 3,
      "existingGeneratedFile": "production/seedance/clips/frame-04.mp4",
      "poem": "How I'd make 20k per month\nstarting from zero\nhere's how I'd do it\nin 50 seconds"
    },
    {
      "title": "Selfie confession, part one",
      "seconds": 7,
      "reference": "frames/frame-05-11-brunch-selfie-v4.png",
      "identity": "Selfie character C: the mixed-race woman previously shown in frame 12, warm medium-brown skin, brown eyes, curly dark brunette ponytail, floral brunch dress. Frame 11 reuses this exact portrait.",
      "prompt": "Generate 7 seconds of picture. Final edit uses only the first 6.400 seconds for an existing 6.177-second reading, starting at 0.10s. Do not stretch the reading or add a silent hold to use the whole generated file. Any rounded duration surplus is discarded.\n\nStart mid-blush stroke, face filling the front-facing selfie camera. At 1.25s her eyes flick straight into the lens; at 2.42s stop the brush and raise an eyebrow at the engagement confession. At 4.81s point once with the brush and lean slightly closer. Cut on the unfinished confession after the recorded line ends. Same adult mixed-race woman with warm medium-brown skin, brown eyes, curly dark brunette ponytail and light floral brunch dress. Show the dress neckline, not a mirror or reflected phone. No introductory posing or slow setup.\n\nVertical 9:16 silent image-to-video. Use the existing supplied image unchanged as the identity and composition reference. Immediate action from the first frame, brisk natural gestures, clear reactions timed to the listed narration cues, subtle handheld smartphone movement. One continuous shot with a restrained quick push-in on its strongest reaction; no slow motion, establishing shot, fades or outro. Keep faces and hands inside the central crop for a 393:852 iPhone screen. Maintain faces, wardrobe, props and background. No phone frame, status bar, app UI, notifications, captions, generated text, logo or watermark. No extra characters, morphing or wardrobe changes. Generate no speech, music or incidental dialogue. The existing ElevenLabs recording supplies every spoken word verbatim; do not invent or paraphrase any words.",
      "frame": 5,
      "status": "revised-prompt-only",
      "previousGeneratedSeconds": 10,
      "audioSeconds": 6.176508,
      "editSeconds": 6.4,
      "editFrames": 192,
      "audioStartFrames": 3,
      "tailFrames": 3,
      "existingGeneratedFile": "production/seedance/clips/frame-05.mp4",
      "poem": "Get ready with me\nwhile I talk about how\nI almost ruined my engagement\nso my fiance and I"
    },
    {
      "title": "Rich brother returns",
      "seconds": 9,
      "reference": "production/references/frame-10-clean.png",
      "identity": "Banana family A from frame 03; keep the faces and room consistent. The poorer son now wears the ivory suit.",
      "prompt": "Generate 9 seconds of picture. Final edit uses only the first 8.400 seconds for an existing 8.173-second reading, starting at 0.10s. Do not stretch the reading or add a silent hold to use the whole generated file. Any rounded duration surplus is discarded.\n\nOpen on the navy-suited banana brother already wide-eyed at the ivory-suited brother. At 2.23s he points at him in disbelief. At 3.66s the ivory-suited brother snaps a single stable stack of money into view, prompting a short recoil. At 5.93s the ivory-suited brother leans forward with a proud grin and one confident gesture. Cut immediately after the hard-work line. Preserve the banana family faces, stems and room from frame 03. No extra money reveal or empty reaction hold.\n\nVertical 9:16 silent image-to-video. Use the existing supplied image unchanged as the identity and composition reference. Immediate action from the first frame, brisk natural gestures, clear reactions timed to the listed narration cues, subtle handheld smartphone movement. One continuous shot with a restrained quick push-in on its strongest reaction; no slow motion, establishing shot, fades or outro. Keep faces and hands inside the central crop for a 393:852 iPhone screen. Maintain faces, wardrobe, props and background. No phone frame, status bar, app UI, notifications, captions, generated text, logo or watermark. No extra characters, morphing or wardrobe changes. Generate no speech, music or incidental dialogue. The existing ElevenLabs recording supplies every spoken word verbatim; do not invent or paraphrase any words.",
      "frame": 10,
      "status": "revised-prompt-only",
      "previousGeneratedSeconds": 12,
      "audioSeconds": 8.173424,
      "editSeconds": 8.4,
      "editFrames": 252,
      "audioStartFrames": 3,
      "tailFrames": 3,
      "existingGeneratedFile": "production/seedance/clips/frame-10.mp4",
      "poem": "Wait, it's you?\nBrother, you were poor.\nNo way you have all this money.\nI learned the value of hard work"
    },
    {
      "title": "Selfie confession, part two",
      "seconds": 8,
      "reference": "frames/frame-05-11-brunch-selfie-v4.png",
      "identity": "Exactly character C from frame 05: same mixed-race adult woman, face, brown eyes, curly brunette ponytail, floral brunch dress, brush, room, lighting and selfie crop.",
      "prompt": "Generate 8 seconds of picture. Final edit uses only the first 7.467 seconds for an existing 7.245-second reading, starting at 0.10s. Do not stretch the reading or add a silent hold to use the whole generated file. Any rounded duration surplus is discarded.\n\nSame exact woman, face, brunette curly ponytail, floral brunch dress, brush, room, lighting and front-camera crop as frame 05. Start with the brush raised and a knowing look directly into the lens. At 1.06s give one tiny nod, then at 3.12s stop applying makeup and lift an eyebrow. At 4.66s point once with the brush and lean in with an incredulous expression. Cut as the unfinished recorded confession ends. No mirror, outfit change or repeated establishing shot.\n\nVertical 9:16 silent image-to-video. Use the existing supplied image unchanged as the identity and composition reference. Immediate action from the first frame, brisk natural gestures, clear reactions timed to the listed narration cues, subtle handheld smartphone movement. One continuous shot with a restrained quick push-in on its strongest reaction; no slow motion, establishing shot, fades or outro. Keep faces and hands inside the central crop for a 393:852 iPhone screen. Maintain faces, wardrobe, props and background. No phone frame, status bar, app UI, notifications, captions, generated text, logo or watermark. No extra characters, morphing or wardrobe changes. Generate no speech, music or incidental dialogue. The existing ElevenLabs recording supplies every spoken word verbatim; do not invent or paraphrase any words.",
      "frame": 11,
      "status": "revised-prompt-only",
      "previousGeneratedSeconds": 11,
      "audioSeconds": 7.244626,
      "editSeconds": 7.466667,
      "editFrames": 224,
      "audioStartFrames": 3,
      "tailFrames": 3,
      "existingGeneratedFile": "production/seedance/clips/frame-11.mp4",
      "poem": "Part two,\nsince y'all kept asking.\nSo after I caught him cheating\non me with my best friend I"
    },
    {
      "title": "Day fifty: van-life update",
      "seconds": 8,
      "reference": "frames/frame-12-brunette-traveler-v4.png",
      "identity": "Traveler D: petite white adult woman, age 25, fair skin, blue eyes and dark brunette ponytail, with the delicate facial features of the former frame-11 character. Keep the forest-green leggings and matching crop top.",
      "prompt": "Generate 8 seconds of picture. Final edit uses only the first 7.367 seconds for an existing 7.152-second reading, starting at 0.10s. Do not stretch the reading or add a silent hold to use the whole generated file. Any rounded duration surplus is discarded.\n\nThe camper-van door is already open on the first frame. The petite white adult brunette woman with a ponytail immediately turns toward the camera, preserving her forest-green leggings and matching crop top. At 1.82s give a quick shrug; at 2.98s gesture once toward the unfinished van interior. At 4.45s point out toward the valley and grin at the camera. A small breeze moves her ponytail. Cut right after day fifty. No slow door-opening reveal, landscape pan or lingering pose.\n\nVertical 9:16 silent image-to-video. Use the existing supplied image unchanged as the identity and composition reference. Immediate action from the first frame, brisk natural gestures, clear reactions timed to the listed narration cues, subtle handheld smartphone movement. One continuous shot with a restrained quick push-in on its strongest reaction; no slow motion, establishing shot, fades or outro. Keep faces and hands inside the central crop for a 393:852 iPhone screen. Maintain faces, wardrobe, props and background. No phone frame, status bar, app UI, notifications, captions, generated text, logo or watermark. No extra characters, morphing or wardrobe changes. Generate no speech, music or incidental dialogue. The existing ElevenLabs recording supplies every spoken word verbatim; do not invent or paraphrase any words.",
      "frame": 12,
      "status": "revised-prompt-only",
      "previousGeneratedSeconds": 10,
      "audioSeconds": 7.151746,
      "editSeconds": 7.366667,
      "editFrames": 221,
      "audioStartFrames": 3,
      "tailFrames": 3,
      "existingGeneratedFile": "production/seedance/clips/frame-12.mp4",
      "poem": "I just quit my 9-5\nwith no backup plan\nto renovate a van and\ntravel the world: day 50."
    },
    {
      "title": "Still running",
      "seconds": 13,
      "reference": "production/references/frame-13-clean.png",
      "identity": "Fruit fitness pair E. Preserve the strawberry bodybuilder and banana runner from the reference.",
      "prompt": "Generate 13 seconds of picture. Final edit uses only the first 12.933 seconds for an existing 12.725-second reading, starting at 0.10s. Do not stretch the reading or add a silent hold to use the whole generated file. Any rounded duration surplus is discarded.\n\nThe strawberry bodybuilder is already flexing and the banana is already running on the treadmill on the first frame. At 2.49s the strawberry points at the running banana; at 5.00s both briefly glance toward the lens. At 6.61s the strawberry breaks into a smug laugh and hits one bigger flex. The banana answers with one exasperated side-eye while maintaining a coherent stride. Keep the final spoken taunt visually active with small natural reactions; no repeated flex routine or dead hold. End immediately after the running question. Maintain the original fruit identities, treadmill contacts and gym. This passage needs about thirteen seconds to retain every poem word; make its actions brisk without shortening the narration.\n\nVertical 9:16 silent image-to-video. Use the existing supplied image unchanged as the identity and composition reference. Immediate action from the first frame, brisk natural gestures, clear reactions timed to the listed narration cues, subtle handheld smartphone movement. One continuous shot with a restrained quick push-in on its strongest reaction; no slow motion, establishing shot, fades or outro. Keep faces and hands inside the central crop for a 393:852 iPhone screen. Maintain faces, wardrobe, props and background. No phone frame, status bar, app UI, notifications, captions, generated text, logo or watermark. No extra characters, morphing or wardrobe changes. Generate no speech, music or incidental dialogue. The existing ElevenLabs recording supplies every spoken word verbatim; do not invent or paraphrase any words.",
      "frame": 13,
      "status": "revised-prompt-only",
      "previousGeneratedSeconds": 14,
      "audioSeconds": 12.724535,
      "editSeconds": 12.933333,
      "editFrames": 388,
      "audioStartFrames": 3,
      "tailFrames": 3,
      "existingGeneratedFile": "production/seedance/clips/frame-13.mp4",
      "poem": "You will get in shape with steroids and\nyou will get in shape by running\nLet's see who looks better\nhahahah, look at me! I'm fit, and you're still running?"
    }
  ],
  "audio": {
    "frame": 6,
    "type": "Soft ambient / dreamscape instrumental",
    "track": "snowfall",
    "artist": "Øneheart & reidenshi",
    "url": "https://www.youtube.com/watch?v=U1m46getoEw",
    "evidence": "https://viralhunt.io/tiktok/sounds/snowfall",
    "cue": "If an instrumental is added later, use only the 3.900-second frame-06 slot under its exact existing reading. Quick fade in and out; no competing voice. Reference only, not embedded.",
    "status": "Reference annotation only; music is not embedded."
  },
  "remotion": {
    "frames": [
      14,
      15,
      16,
      17,
      18
    ],
    "seconds": 23.766667,
    "video": "video/notification-closing-14-18.mp4",
    "source": "remotion/src/Full.tsx"
  },
  "fullDraft": {
    "video": "video/notification-combined.mp4",
    "duration": 183.5,
    "visuals": "Seven generated clips with native UI transitions and power-off ending",
    "voiceover": "production/voiceover-manifest.json",
    "speech": "Exact original poem; custom fictional ElevenLabs voice for all 18 frames.",
    "status": "Existing preview has old timing. This revision changes prompts and proposed timings only."
  },
  "status": "prompt-revision-only",
  "timing": {
    "status": "proposed-not-applied-to-existing-preview",
    "fps": 30,
    "basis": "Measured existing verbatim ElevenLabs MP3 files before revising any video request.",
    "reelsAudioLeadSeconds": 0.1,
    "lockAudioLeadSeconds": 0.4,
    "tailSeconds": 0.1,
    "shutdownSeconds": 2,
    "frames": [
      {
        "frame": 1,
        "audioFile": "production/audio/frame-01.mp3",
        "audioSha256": "666923e7c06004d566fc1c565b7649a29032d37355116094f0c854456b3b240b",
        "audioSeconds": 3.854512,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 131,
        "editSeconds": 4.366667
      },
      {
        "frame": 2,
        "audioFile": "production/audio/frame-02.mp3",
        "audioSha256": "be458c78bcbfcfcfb9b19203fda7de56f358e71e471fa4d3cf3c3822d3d6ae11",
        "audioSeconds": 3.993832,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 135,
        "editSeconds": 4.5
      },
      {
        "frame": 3,
        "audioFile": "production/audio/frame-03.mp3",
        "audioSha256": "537f22e54400423d596b081be6f7d86c1e77e7b6f297c80412634b71ebae3868",
        "audioSeconds": 9.473741,
        "audioStartFrames": 3,
        "tailFrames": 3,
        "editFrames": 291,
        "editSeconds": 9.7
      },
      {
        "frame": 4,
        "audioFile": "production/audio/frame-04.mp3",
        "audioSha256": "375b47cc35fa81eb65d4830b895ffc209e1059faefa0c5a28d2546a70482c3b6",
        "audioSeconds": 6.083628,
        "audioStartFrames": 3,
        "tailFrames": 3,
        "editFrames": 189,
        "editSeconds": 6.3
      },
      {
        "frame": 5,
        "audioFile": "production/audio/frame-05.mp3",
        "audioSha256": "83f2f1fd19d7d26ce8c0c2683c2b33b79fa31d81417b26ac3d1e7185a5b9029e",
        "audioSeconds": 6.176508,
        "audioStartFrames": 3,
        "tailFrames": 3,
        "editFrames": 192,
        "editSeconds": 6.4
      },
      {
        "frame": 6,
        "audioFile": "production/audio/frame-06.mp3",
        "audioSha256": "2ea43192e9e244b00f2c87891e482af857221994656153654fca726a74bcc058",
        "audioSeconds": 3.668753,
        "audioStartFrames": 3,
        "tailFrames": 3,
        "editFrames": 117,
        "editSeconds": 3.9
      },
      {
        "frame": 7,
        "audioFile": "production/audio/frame-07.mp3",
        "audioSha256": "464bed2f6156504dd23047f58807182102dee482d60b5f1b5f39bcbbf82ebc04",
        "audioSeconds": 8.498503,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 270,
        "editSeconds": 9.0
      },
      {
        "frame": 8,
        "audioFile": "production/audio/frame-08.mp3",
        "audioSha256": "5230b3da7311274351af975ace52e5e45413fb315e54dc890a61e49afb7e07b4",
        "audioSeconds": 4.96907,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 165,
        "editSeconds": 5.5
      },
      {
        "frame": 9,
        "audioFile": "production/audio/frame-09.mp3",
        "audioSha256": "35dd400bfa6d02c56f85d7d8e70a1323e0274f153b6f305a06beff0acbf92e58",
        "audioSeconds": 3.018594,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 106,
        "editSeconds": 3.533333
      },
      {
        "frame": 10,
        "audioFile": "production/audio/frame-10.mp3",
        "audioSha256": "fe59f4342a4e015693d697973bb034f7c01f5cb4b760bd9ba4e08a181a64b268",
        "audioSeconds": 8.173424,
        "audioStartFrames": 3,
        "tailFrames": 3,
        "editFrames": 252,
        "editSeconds": 8.4
      },
      {
        "frame": 11,
        "audioFile": "production/audio/frame-11.mp3",
        "audioSha256": "dad5319e3809824ead531252f250b89856fb41f023f004b97fbed2869a096e88",
        "audioSeconds": 7.244626,
        "audioStartFrames": 3,
        "tailFrames": 3,
        "editFrames": 224,
        "editSeconds": 7.466667
      },
      {
        "frame": 12,
        "audioFile": "production/audio/frame-12.mp3",
        "audioSha256": "59227dadae5a56936ca701c666a0cb2607cde4ba04461c2baa0afa19fce8557e",
        "audioSeconds": 7.151746,
        "audioStartFrames": 3,
        "tailFrames": 3,
        "editFrames": 221,
        "editSeconds": 7.366667
      },
      {
        "frame": 13,
        "audioFile": "production/audio/frame-13.mp3",
        "audioSha256": "caa0e83293069219137fd2df11b4a855a6dcf142c657e497307e4265415485cd",
        "audioSeconds": 12.724535,
        "audioStartFrames": 3,
        "tailFrames": 3,
        "editFrames": 388,
        "editSeconds": 12.933333
      },
      {
        "frame": 14,
        "audioFile": "production/audio/frame-14.mp3",
        "audioSha256": "5af42bff92cca0f52b5b3750a09312cc3659ed460cb0cdd0146f3efca2453fce",
        "audioSeconds": 2.507755,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 91,
        "editSeconds": 3.033333
      },
      {
        "frame": 15,
        "audioFile": "production/audio/frame-15.mp3",
        "audioSha256": "25a70014ce6b9ea910fbf12d84e92befdb5fa357739efd1ea3df8d598ef189d8",
        "audioSeconds": 6.594467,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 213,
        "editSeconds": 7.1
      },
      {
        "frame": 16,
        "audioFile": "production/audio/frame-16.mp3",
        "audioSha256": "c2e7fea072d2afb0c60f068d50f6c2f95a15e6a367713f4c3709bd9e5cca143d",
        "audioSeconds": 2.600635,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 94,
        "editSeconds": 3.133333
      },
      {
        "frame": 17,
        "audioFile": "production/audio/frame-17.mp3",
        "audioSha256": "8ddb60a7a9a20e63bf63cee5a0cb353873e9f18b5a50de0dd2fb8a82579634e5",
        "audioSeconds": 6.130068,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 199,
        "editSeconds": 6.633333
      },
      {
        "frame": 18,
        "audioFile": "production/audio/frame-18.mp3",
        "audioSha256": "a2c0c4db5c8b7f2b1b0873bc6c5ba769bd06a5c8bfd2e8f420253db51775b923",
        "audioSeconds": 3.343673,
        "audioStartFrames": 12,
        "tailFrames": 3,
        "editFrames": 116,
        "editSeconds": 3.866667
      }
    ]
  },
  "plannedFullDuration": 115.133333
}
