Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 35s
Smoke Test / smoke (pull_request) Failing after 23s
Validate Config / YAML Lint (pull_request) Failing after 19s
Validate Config / JSON Validate (pull_request) Successful in 23s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m4s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 43s
Validate Config / Cron Syntax Check (pull_request) Successful in 8s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 8s
Validate Config / Playbook Schema Validation (pull_request) Successful in 27s
Validate Training Data / validate (pull_request) Successful in 23s
PR Checklist / pr-checklist (pull_request) Successful in 4m26s
Architecture Lint / Lint Repository (pull_request) Failing after 29s
- scripts/generate-pop-scenes.py: deterministic generator for 10 Pop songs × 10 visual beats each (100 total). Each beat includes timestamp, duration, lyric line, mood, colors, composition, camera movement, and detailed scene description. - training-data/scene-descriptions-pop.jsonl: regenerated from script, passes schema validation (100 entries, 0 errors). - Also mirrors output to ~/.hermes/training-data/ on generation. Closes #606
101 lines
47 KiB
JSON
101 lines
47 KiB
JSON
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "I saw your light through the pouring rain / A neon signal cutting through the pain", "scene": {"mood": "hopeful", "colors": ["pink", "cyan"], "composition": "wide establishing shot", "camera": "slow dolly in", "description": "Rain-slicked streets reflect neon signs in puddles. A lone figure stands under a flickering marquee, face half-lit by pink and cyan fluorescence."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "We're dancing on the edge of something real / The bass drops low and I can finally feel", "scene": {"mood": "euphoric", "colors": ["neon pink", "electric blue", "white"], "composition": "medium close-up", "camera": "handheld follow", "description": "Crowded dance floor, bodies moving in synchronized abandon. Laser beams cut through haze as the drop hits."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "Spin me faster through the galaxy / Every atom screaming you and me", "scene": {"mood": "euphoric", "colors": ["gold", "hot pink", "silver"], "composition": "dynamic tracking", "camera": "steady tracking", "description": "Cosmic visualization—two figures spin in zero gravity surrounded by stardust trails and holographic constellations."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "The morning comes like an unpaid debt / The glow sticks fade but I don't forget", "scene": {"mood": "bittersweet", "colors": ["purple", "grey"], "composition": "static intimate", "camera": "locked off", "description": "Empty warehouse at dawn. Discarded glow sticks scatter the floor like fallen stars. One person sits against the wall, head in hands."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "Sitting in the car with the engine off / Replaying every word, every laugh, every cough", "scene": {"mood": "reflective", "colors": ["midnight blue", "soft gold"], "composition": "low angle", "camera": "crane up", "description": "Interior car scene, dashboard glow illuminating tired eyes. Rain streaks the windshield. A cassette tape hangs from the rearview."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "Your silhouette against the vending machine glow / The only currency I want to know", "scene": {"mood": "tender", "colors": ["amber", "magenta"], "composition": "extreme close-up", "camera": "push in", "description": "Late-night convenience store. Fluorescent hum. Two people share a candy bar, laughter echoing off linoleum tiles."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "Radio static, your voice cuts through / Telling me things I already knew", "scene": {"mood": "intimate", "colors": ["steel blue", "pale yellow"], "composition": "overhead", "camera": "whip pan", "description": "Bedroom at 2 AM. Radio dial glows amber. One person lies on their back, phone pressed to ear, staring at ceiling cracks."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "Streetlights blur like watercolor tears / We've been running from our fears for years", "scene": {"mood": "nostalgic", "colors": ["violet", "teal"], "composition": "two-shot", "camera": "steadicam orbit", "description": "Rain-blurred windshield, streetlights smearing like wet paint. Hands grip steering wheel at ten and two, knuckles white."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "Hold my hand till the sunrise breaks / Promise me this is not a mistake", "scene": {"mood": "yearning", "colors": ["coral", "indigo"], "composition": "profile", "camera": "rack focus", "description": "Rooftop at sunrise. Two silhouettes against a gradient sky. City skyline behind them, steam rising from coffee cups."}}
|
|
{"song": "Neon Heartbeat", "artist": "Synthwave Collective", "genre": "Pop", "bpm": 120, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "The city exhales and we exhale too / Neon heartbeat, me and you", "scene": {"mood": "peaceful", "colors": ["rose", "sky blue"], "composition": "aerial", "camera": "drone pull-back", "description": "Wide cityscape at dawn. Neon signs flicker off one by one. Two figures walk away from camera down an empty boulevard."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "You taste like summer but you leave like winter / Sweet on the tongue, then the frost sets in", "scene": {"mood": "bittersweet", "colors": ["candy pink", "ice blue"], "composition": "close-up", "camera": "slow push in", "description": "Close-up of lips touching a popsicle, summer light streaming through window blinds. Ice crystals melting on warm skin."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "I keep your letters in a mason jar / Every word a sugar-coated scar", "scene": {"mood": "melancholic", "colors": ["pastel yellow", "dusty rose"], "composition": "medium shot", "camera": "static", "description": "Hands placing folded letters into a glass jar on a shelf. Dust motes dance in afternoon light."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "The carnival left town but I'm still here / Riding the Ferris wheel of fear", "scene": {"mood": "anxious", "colors": ["rust", "faded teal"], "composition": "wide shot", "camera": "gentle zoom", "description": "Abandoned carnival at dusk. A lone Ferris wheel car sways in wind. Ticket stubs scatter across dirt."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "Cotton candy dreams dissolve in rain / Sticky fingers, nothing to gain", "scene": {"mood": "defeated", "colors": ["lavender", "grey"], "composition": "intimate two-shot", "camera": "locked off", "description": "Rain dissolving cotton candy on a stick. Sticky rivulets run down a child's arm. Tears mix with rain."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "You called me darling then you called me gone / Left me humming the same old song", "scene": {"mood": "lonely", "colors": ["sepia", "burnt orange"], "composition": "extreme close-up", "camera": "handheld subtle", "description": "Empty hallway, one coat still on the hook. Shoes by the door. A phone buzzes unanswered on the table."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "Baking cookies at 3 AM / Pretending you're coming home again", "scene": {"mood": "nostalgic", "colors": ["warm amber", "cream"], "composition": "over-the-shoulder", "camera": "crane down", "description": "Kitchen at night. Flour dusts the counter. One person shapes dough alone, radio playing static."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "The recipe says two cups of trust / I measured wrong and now it's dust", "scene": {"mood": "resigned", "colors": ["charcoal", "pale peach"], "composition": "high angle", "camera": "dolly out", "description": "Measuring cups tipped over on tile. A broken eggshell. Crumbs scattered like promises."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "Pinwheel spinning in the garden bed / Childhood wishes, long since dead", "scene": {"mood": "wistful", "colors": ["sunbleached red", "mint green"], "composition": "low angle", "camera": "pan across", "description": "Garden at golden hour. A pinwheel spins lazily. Overgrown grass whispers against a rusted swing set."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "I wear your sweater like armor now / Too big, too warm, too full of how", "scene": {"mood": "guarded", "colors": ["oatmeal", "cranberry"], "composition": "profile", "camera": "tilt down", "description": "Oversized sweater sleeves covering hands. One person hugs themselves, looking out rain-streaked glass."}}
|
|
{"song": "Sugar Wounds", "artist": "Candy Knife", "genre": "Pop", "bpm": 128, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "Sugar wounds don't bleed, they ache / A cavity where love used to bake", "scene": {"mood": "aching", "colors": ["vanilla", "ash"], "composition": "silhouette", "camera": "pull focus", "description": "Empty baking sheet in an empty oven. Timer dings. No one comes to check."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "We walk the same street but opposite sides / Measured distance, parallel lives", "scene": {"mood": "longing", "colors": ["graphite", "pale blue"], "composition": "split frame", "camera": "static split", "description": "Split screen: two figures walking the same street, separated by a yellow line. Rain falls on one side, sun on the other."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "Your window faces mine across the alley / I count the seconds till your light goes daily", "scene": {"mood": "observational", "colors": ["warm white", "shadow grey"], "composition": "deep focus", "camera": "slow pan", "description": "Opposite apartment windows at night. Two silhouettes brush teeth in sync, separated by brick and glass."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "Same train, different cars, same destination / Silent calculation, endless hesitation", "scene": {"mood": "wistful", "colors": ["burnt sienna", "slate"], "composition": "symmetrical", "camera": "dolly parallel", "description": "Train platform. Two figures board different cars of the same train. Hands press against windows, never aligned."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "The geometry of almost touching / Close enough to feel the air rushing", "scene": {"mood": "frustrated", "colors": ["silver", "dusty pink"], "composition": "asymmetrical", "camera": "zoom", "description": "Close-up of two hands almost touching, separated by a thin glass partition. Breath fogging the surface."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "You order coffee the way I would / If I had the nerve to stand where you stood", "scene": {"mood": "timid", "colors": ["espresso", "cream"], "composition": "wide", "camera": "whip pan", "description": "Coffee shop queue. One person watches another order. Steam rises between them like a curtain."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "Two shadows on the pavement never meet / A mathematician's defeat", "scene": {"mood": "melancholic", "colors": ["charcoal", "amber"], "composition": "extreme wide", "camera": "tracking", "description": "Aerial shot of two shadows on pavement, walking parallel. The sun sets, stretching them impossibly long."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "I drew a line from my heart to yours / It went on forever, never reached the door", "scene": {"mood": "hopeful", "colors": ["navy", "copper"], "composition": "overhead", "camera": "crane up", "description": "Hand drawing a line on paper with a ruler. The pencil lead snaps at the edge of the page."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "Same playlist, same headphones, different ears / Soundtrack to twenty-seven years", "scene": {"mood": "nostalgic", "colors": ["black", "neon green"], "composition": "profile", "camera": "tilt", "description": "Two people on a bench, headphones in, eyes closed. A leaf falls between them. Neither moves."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "The map says we're zero miles apart / But zero's just a fancy way to say 'apart'", "scene": {"mood": "resigned", "colors": ["white", "pale gold"], "composition": "mirror shot", "camera": "mirror glide", "description": "Map spread on a table. Two pins, zero distance apart. A finger traces the gap, again and again."}}
|
|
{"song": "Parallel Lines", "artist": "Geometry Club", "genre": "Pop", "bpm": 115, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "Parallel lines at infinity / Maybe there is where you'll wait for me", "scene": {"mood": "transcendent", "colors": ["indigo", "starlight white"], "composition": "silhouette", "camera": "fade to white", "description": "Two lines of light converging at a vanishing point. A figure stands at the intersection, arms open."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "Everyone can see what we're not saying / The glass walls amplify the silence", "scene": {"mood": "tense", "colors": ["clear", "pale grey"], "composition": "extreme wide", "camera": "static observe", "description": "Modernist glass house at twilight. Two figures sit in silence at opposite ends of a long table, fully visible to the outside world."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "Throwing stones from inside the frame / We're the exhibit, we're the game", "scene": {"mood": "claustrophobic", "colors": ["silver", "white"], "composition": "fish-eye", "camera": "dolly zoom", "description": "Fish-eye lens: a figure stands in a room of mirrors, surrounded by infinite reflections. Stones in hand, hesitating."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "Dinner at eight, the neighbors watch / Every fork, every sip, every botched", "scene": {"mood": "performative", "colors": ["bone", "chrome"], "composition": "reflected", "camera": "mirror pan", "description": "Voyeuristic shot from outside: neighbors watch through binoculars as a couple eats dinner. Every gesture is staged."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "Smile for the camera, smile for the crowd / Smile till the cracks get too loud", "scene": {"mood": "desperate", "colors": ["porcelain", "charcoal"], "composition": "framed", "camera": "through-glass", "description": "Close-up of a forced smile, cracks spiderwebbing across porcelain skin. The smile stays but the eyes betray."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "I swept the shards beneath the rug / But glass shines through, no matter what", "scene": {"mood": "anxious", "colors": ["frost", "steel"], "composition": "voyeuristic", "camera": "peeping tom", "description": "Rug lifted slightly, revealing glittering glass shards underneath. A hand reaches to smooth the rug back down."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "The thermostat's set to 'pretend' / Comfortable lies with a dividend", "scene": {"mood": "resigned", "colors": ["ivory", "smoke"], "composition": "intimate", "camera": "rack focus", "description": "Hallway of mirrors. Seven reflections of the same person walk in imperfect sync. The real one stops; reflections continue."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "Your reflection multiplies in the hall / Seven versions of you, none of them real at all", "scene": {"mood": "surreal", "colors": ["mirror", "shadow"], "composition": "distorted", "camera": "kaleidoscope spin", "description": "Glass palace interior. Fossils embedded in translucent walls. Two small figures wander like museum visitors in their own home."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "We built this palace out of pride / Now we're just fossils trapped inside", "scene": {"mood": "trapped", "colors": ["glass green", "pale amber"], "composition": "symmetrical", "camera": "crane down", "description": "A bird's eye view of a glass roof. A small bird lies stunned on the surface. A hand presses against the glass from below."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "A bird flew straight into the pane / I felt the vibration, I felt the pain", "scene": {"mood": "empathetic", "colors": ["feather white", "blood red"], "composition": "close-up", "camera": "slow motion", "description": "Slow motion: a hammer swings toward a glass wall. The moment of impact suspended, fractures beginning to bloom."}}
|
|
{"song": "Glass House", "artist": "Transparent", "genre": "Pop", "bpm": 105, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "Let's break a window, let the air in / Better to bleed than to live in sin", "scene": {"mood": "liberating", "colors": ["sky blue", "shattered crystal"], "composition": "liberation wide", "camera": "explosive pull-back", "description": "Explosion of glass outward. Sunlight floods in. Two figures stand in the center, arms raised, bleeding and laughing."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "The radio hisses between the stations / Your voice cuts through like irrigation", "scene": {"mood": "nostalgic", "colors": ["sunbleached yellow", "ocean blue"], "composition": "wide beach", "camera": "slow drift", "description": "Beach at noon. A transistor radio hisses on a towel. A foot taps in the sand. Overexposed sky, bleached colors."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "Sand in the sheets, salt in the hair / We didn't go anywhere but we were there", "scene": {"mood": "lazy", "colors": ["sand", "salt white"], "composition": "intimate", "camera": "static lazy", "description": "Interior of a beach shack. Sand covers the floor like carpet. Two people lie on a bed, staring at a cracked ceiling."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "Popsicle sticks stacked like little bones / Monument to days without phones", "scene": {"mood": "playful", "colors": ["popsicle orange", "stick brown"], "composition": "macro", "camera": "macro focus", "description": "Close-up of popsicle sticks arranged in a tiny cairn on a picnic table. Melted juice stains the wood."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "Your tan line tells a story I can't read / A paperback abandoned in the weeds", "scene": {"mood": "curious", "colors": ["tan", "paperback yellow"], "composition": "environmental", "camera": "wide still", "description": "Overgrown weeds swallowing a discarded paperback. A tan line on an arm reaches for it, then withdraws."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "Fireflies in a mason jar / Released too soon, didn't get far", "scene": {"mood": "bittersweet", "colors": ["jar glass", "firefly gold"], "composition": "close-up", "camera": "handheld memory", "description": "Hands holding a mason jar of fireflies. The lid unscrews. Golden insects spiral upward into darkening air."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "The boardwalk creaks with memories / Of people we were, people we'll never be", "scene": {"mood": "melancholic", "colors": ["weathered wood", "sunset pink"], "composition": "establishing", "camera": "crane over", "description": "Boardwalk at dusk. Empty rides creak in wind. One person walks the planks, dragging fingers along railings."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "Static on the line, then your laugh / Half a conversation, broken in half", "scene": {"mood": "fragmented", "colors": ["static grey", "laughter pink"], "composition": "fragmented", "camera": "glitch cut", "description": "Phone screen showing a call in progress. Static waveform dances. A laugh crackles through, half-caught."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "We buried a time capsule in the dune / Marked it with a plastic spoon", "scene": {"mood": "hopeful", "colors": ["dune beige", "plastic red"], "composition": "nostalgic", "camera": "dune slide", "description": "Dune at sunset. Two figures kneel, burying a shoebox. A plastic spoon marks the spot like a flag."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "The ice cream truck plays a funeral dirge / Summer's over, nothing left to purge", "scene": {"mood": "resigned", "colors": ["ice cream white", "truck chrome"], "composition": "symbolic", "camera": "tracking truck", "description": "Ice cream truck parked in empty lot. Speaker plays distorted music. One person leans against it, eyes closed."}}
|
|
{"song": "Summer Static", "artist": "Beach Fossil", "genre": "Pop", "bpm": 98, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "I'll meet you where the static ends / Where the signal clears and the heart mends", "scene": {"mood": "optimistic", "colors": ["clear sky", "signal green"], "composition": "horizon", "camera": "fade to clear", "description": "Horizon line where sea meets sky. Static dissolves into clear blue. Two figures walk toward the water, hand in hand."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "Scrolling through your life at 3 AM / Liking moments I'll never touch again", "scene": {"mood": "isolated", "colors": ["screen blue", "black"], "composition": "screen reflection", "camera": "static glow", "description": "Face illuminated by phone screen in total darkness. Scroll thumb moves endlessly. Reflection in the glass shows tired eyes."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "The algorithm knows me better than you do / Serves me memories I never asked to view", "scene": {"mood": "cynical", "colors": ["notification red", "dark grey"], "composition": "extreme close-up", "camera": "zoom into iris", "description": "Phone interface close-up: 'We miss you' notification from a vintage app icon. Finger hovers, then dismisses."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "Blue light bathing my insomnia / A personalized coma, custom anesthesia", "scene": {"mood": "numb", "colors": ["neon white", "midnight"], "composition": "data visualization", "camera": "data stream", "description": "Server room corridor. Blinking LED lights reflect in the polished floor. A lone figure walks between the racks."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "Swipe right on a stranger who looks like your ghost / The machine learns what I need the most", "scene": {"mood": "obsessive", "colors": ["pixel green", "void"], "composition": "overhead server", "camera": "drone through racks", "description": "Online shopping interface: 'Broken Heart — 4.7 stars — Add to Cart'. Cursor clicks. Credit card autofill flashes."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "Notification: 'We miss you' / From an app I deleted in 2002", "scene": {"mood": "sardonic", "colors": ["amber alert", "ash"], "composition": "selfie mirror", "camera": "mirror flip", "description": "Infinite scroll animation: faces blur into faces, all slightly similar. Thumb swipes upward in perpetual motion."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "My data portrait hangs in a server farm / Every click a brushstroke, every like an arm", "scene": {"mood": "existential", "colors": ["server blinking", "concrete"], "composition": "macro pixel", "camera": "pixel push", "description": "Selfie camera view: face half-covered by phone. The background is a bedroom that hasn't been cleaned in weeks."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "Recommended for you: a broken heart / 4.7 stars, 12K reviews, add to cart", "scene": {"mood": "consumerist", "colors": ["shopping cart orange", "pale face"], "composition": "wide bedroom", "camera": "bedroom pan", "description": "Drone shot flying through server racks. Cables like vines. Blinking lights like bioluminescence in a digital forest."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "The infinite scroll of almost-love / Pixelated doves, none of them enough", "scene": {"mood": "defeated", "colors": ["scroll grey", "electric pink"], "composition": "split-screen", "camera": "screen recording", "description": "Split screen: left side shows a person crying, right side shows targeted ads for vacation packages and therapy apps."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "Cache cleared, history deleted / But the targeted ads say I'm not defeated", "scene": {"mood": "resigned", "colors": ["ad yellow", "blank"], "composition": "voyeuristic", "camera": "ad transition", "description": "Macro shot of a single pixel turning from grey to yellow. The transition takes ten seconds. Sound of a cash register."}}
|
|
{"song": "Midnight Algorithm", "artist": "Digital Native", "genre": "Pop", "bpm": 132, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "Log out, shut down, the screen goes black / The algorithm waits for me to come back", "scene": {"mood": "cyclical", "colors": ["power-off black", "standby red"], "composition": "void", "camera": "fade to black", "description": "Phone screen powers down. Face disappears into darkness. Only the standby LED remains, pulsing like a heartbeat."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "The subway hums my lullaby / Steel wheels singing me goodbye", "scene": {"mood": "tender", "colors": ["subway silver", "tunnel black"], "composition": "intimate wide", "camera": "subtle sway", "description": "Subway car interior at night. A sleeping head rests against a stranger's shoulder. Fluorescent lights flicker overhead."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "Neon moon through fire escape / A concrete cradle, a steel-scape", "scene": {"mood": "urban", "colors": ["neon orange", "rust red"], "composition": "framed", "camera": "static observe", "description": "Fire escape view. Neon sign glows through wrought iron. A figure sits on the metal grating, legs dangling into air."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "Pigeon coos on the window ledge / Nature's refugee on the city's edge", "scene": {"mood": "peaceful", "colors": ["pigeon grey", "brick brown"], "composition": "close-up", "camera": "gentle push", "description": "Close-up of a pigeon nesting on a windowsill. Behind it, the city skyline stretches into smog."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "The radiator hisses like the sea / A white noise symphony for you and me", "scene": {"mood": "bittersweet", "colors": ["radiator white", "pipe green"], "composition": "environmental", "camera": "locked off", "description": "Radiator hissing steam in a tiny apartment. Two figures lie on a mattress on the floor, sharing one pillow."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "Garbage trucks at 5 AM / The city's way of saying amen", "scene": {"mood": "industrial", "colors": ["garbage green", "dawn grey"], "composition": "low angle", "camera": "low drift", "description": "Street level at dawn. Garbage truck compressors grind. A figure in pajamas watches from a doorway, coffee in hand."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "Your breath syncs with the elevator chain / Rising and falling, again and again", "scene": {"mood": "intimate", "colors": ["elevator bronze", "skin tone"], "composition": "overhead", "camera": "high angle down", "description": "Elevator shaft view from below. Two faces look down through the open grate. Chains and pulleys move in darkness above."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "Sirens wail a distant song / Telling someone else they're wrong", "scene": {"mood": "observational", "colors": ["siren red", "distant blue"], "composition": "distant", "camera": "slow zoom", "description": "Distant sirens. A figure stands at a window, hand on glass. Red and blue lights paint the wall in slow rotation."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "Rain on AC units, tin drum choir / Nature and machine in a tangled wire", "scene": {"mood": "melancholic", "colors": ["rain grey", "aluminum silver"], "composition": "interior", "camera": "crane through", "description": "Rain falling on window AC units. Water streams down aluminum fins. One unit rattles like a snare drum."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "The key turns, the lock says click / Home is anywhere the noise is thick", "scene": {"mood": "grounded", "colors": ["brass gold", "door brown"], "composition": "macro", "camera": "macro focus", "description": "Key entering a lock. The deadbolt turns. The door opens to a dark hallway. A figure steps inside, shoulders dropping."}}
|
|
{"song": "Concrete Lullaby", "artist": "Urban Dreamer", "genre": "Pop", "bpm": 85, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "Sleep now, the city never does / But in your arms, the noise was ours", "scene": {"mood": "loving", "colors": ["streetlight amber", "embrace warmth"], "composition": "two-shot", "camera": "static hold", "description": "Two figures embracing in bed. Streetlight filters through blinds, striping the sheets. City sounds rumble below."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "We built a kite from unpaid bills / Flew it from the window sill", "scene": {"mood": "playful", "colors": ["bill white", "ink blue"], "composition": "wide", "camera": "handheld run", "description": "Hands folding a utility bill into a kite shape on a kitchen table. Twine and tape nearby. Laughter in the background."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "The string was twine from a flour sack / We laughed till our lungs nearly cracked", "scene": {"mood": "defiant", "colors": ["flour sack beige", "twine brown"], "composition": "close-up", "camera": "crane up", "description": "Kite launched from a fourth-story window. Two figures lean out, arms extended. The kite catches wind and soars."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "It caught a thermal near the bank / Danced above the tanks and tanks", "scene": {"mood": "euphoric", "colors": ["bank grey", "kite red"], "composition": "medium", "camera": "tracking", "description": "Kite dancing above a bank building. Surveillance cameras watch from corners. The kite dips and weaves like a dare."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "Your mother called, you let it ring / We had a kite, we had a string", "scene": {"mood": "rebellious", "colors": ["phone black", "sky blue"], "composition": "high angle", "camera": "static joy", "description": "Phone buzzing on a windowsill, ignored. Two figures on the roof, flying the kite higher, competing with the clouds."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "The tail was ribbon from a dress / You wore the day you said 'yes'", "scene": {"mood": "nostalgic", "colors": ["dress ribbon pink", "memory white"], "composition": "intimate", "camera": "zoom out", "description": "Close-up of a kite tail: a faded pink ribbon flutters. Flashback: the same ribbon in hair, a 'yes' whispered."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "It soared above the power lines / A paper bird between the signs", "scene": {"mood": "whimsical", "colors": ["power line black", "cloud white"], "composition": "dynamic", "camera": "dolly back", "description": "Kite soaring between power lines. Tense moment. The kite clears the last wire by inches. Exhale."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "The wind shifted, the kite went down / In the parking lot of the edge of town", "scene": {"mood": "anxious", "colors": ["asphalt grey", "kite crumpled"], "composition": "low angle", "camera": "freefall", "description": "Kite crashes in an empty parking lot. Two figures run toward it, shoes slapping asphalt. The kite lies crumpled."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "We ran to it like it was alive / Picked it up at 4:55", "scene": {"mood": "tender", "colors": ["parking lot yellow", "running shoe"], "composition": "ground level", "camera": "sprint follow", "description": "Hands smoothing creases from the kite. Tape applied to a tear. Fingers overlap. The kite is whole again."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "Creased and torn but still intact / Like us, like that, like fact", "scene": {"mood": "resilient", "colors": ["crease brown", "tape silver"], "composition": "two-shot", "camera": "macro texture", "description": "Two figures sit on the curb, kite between them. The sun rises. They hold the string like a promise."}}
|
|
{"song": "Paper Kites", "artist": "Wind & Wire", "genre": "Pop", "bpm": 110, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "Let's fly it again when the weather's right / Paper kites and paper light", "scene": {"mood": "hopeful", "colors": ["dawn pink", "paper thin"], "composition": "horizon", "camera": "sunrise hold", "description": "Wide shot: two figures launch the kite again at dawn. Paper catches golden light. The city wakes behind them."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "Tuning in to the frequency of your doubt / Static between what we said and what came out", "scene": {"mood": "frustrated", "colors": ["oscilloscope green", "black"], "composition": "macro circuit", "camera": "macro drift", "description": "Oscilloscope screen in darkness. Green waveform dances erratically. Two hands adjust knobs, never finding the right frequency."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "You broadcast love on a dying band / I receive it but I don't understand", "scene": {"mood": "technical", "colors": ["radio dial amber", "dark grey"], "composition": "close-up", "camera": "rack focus", "description": "Vintage radio dial glowing amber. A finger turns the knob slowly, searching. Static hisses between stations."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "The oscillator swings between hot and cold / A sine wave story, a thousandfold", "scene": {"mood": "anxious", "colors": ["sine wave blue", "white"], "composition": "abstract", "camera": "waveform scroll", "description": "Abstract visualization: a perfect sine wave splits into two, diverging. Colors shift from blue to cold white."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "Feedback loop of your silence / Amplified by my compliance", "scene": {"mood": "obsessive", "colors": ["feedback red", "silence black"], "composition": "intimate", "camera": "static shock", "description": "Recording studio. Red feedback light blinks. A microphone hangs abandoned. Cables coil on the floor like snakes."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "Equalize the highs, compress the lows / The mix is perfect but nobody knows", "scene": {"mood": "resigned", "colors": ["compressor grey", "neon"], "composition": "wide studio", "camera": "dolly through", "description": "Mixing board close-up. Faders move automatically. Compressor needles bounce. The sound is perfect; the room is empty."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "Phase cancellation when we kiss / Your lips are there but something's amiss", "scene": {"mood": "sardonic", "colors": ["out-of-phase purple", "lip pink"], "composition": "extreme close-up", "camera": "kiss blur", "description": "Two faces almost touching. A visual ripple effect distorts the kiss. Lips meet but the image cancels itself out."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "Modulate my heart to match your key / But the harmonics don't agree", "scene": {"mood": "confused", "colors": ["modulation rainbow", "key white"], "composition": "visualization", "camera": "frequency sweep", "description": "Kaleidoscope of sound waves. Colors clash and merge. A heart shape attempts to form but breaks into discordant shards."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "White noise bed where we used to sleep / Every frequency too shallow, too deep", "scene": {"mood": "numb", "colors": ["white noise static", "sleep blue"], "composition": "bedroom", "camera": "bedroom pan", "description": "Bedroom at night. TV static illuminates two sleeping figures. The snow on screen mirrors the chaos in the room."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "I'm scanning every station, every dial / Searching for the ghost of your smile", "scene": {"mood": "desperate", "colors": ["scan line white", "dial glow"], "composition": "scanning", "camera": "scan flicker", "description": "Rapid channel scan: faces, ads, news, cartoons flicker. A single smile lingers for one frame, then disappears."}}
|
|
{"song": "Frequency", "artist": "Signal Lost", "genre": "Pop", "bpm": 140, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "Tune out, drop off, the signal's gone / Static is the only truth from now on", "scene": {"mood": "defeated", "colors": ["static snow", "void"], "composition": "void", "camera": "fade to snow", "description": "Television snow fills the screen. Pull back to reveal the TV in an empty room. The static is the only light source."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 1, "timestamp": "0:00", "duration_seconds": 4.0, "lyric_line": "The tide went out but I stayed in / Breathing water, letting the light dim", "scene": {"mood": "surrender", "colors": ["sea green", "sand beige"], "composition": "underwater wide", "camera": "submerge slow", "description": "Underwater wide shot. A figure stands on the ocean floor, hair floating upward. Sunlight filters down in visible beams."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 2, "timestamp": "0:30", "duration_seconds": 4.0, "lyric_line": "Your name is written in the sand / Each wave erases where I stand", "scene": {"mood": "melancholic", "colors": ["foam white", "wet brown"], "composition": "surface", "camera": "surface float", "description": "Surface view from below. Feet tread water above. A name written in sand on the shore, each wave licking it away."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 3, "timestamp": "1:00", "duration_seconds": 4.0, "lyric_line": "Seaweed tangles round my ankles now / A gentle weight that won't allow", "scene": {"mood": "peaceful", "colors": ["kelp brown", "pale skin"], "composition": "below", "camera": "drift down", "description": "Close-up of seaweed wrapping around an ankle. Gentle, vegetative embrace. Small fish dart through the fronds."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 4, "timestamp": "1:30", "duration_seconds": 4.0, "lyric_line": "The surface shimmers like a lie / Too bright, too far, too high", "scene": {"mood": "desperate", "colors": ["surface silver", "depth black"], "composition": "looking up", "camera": "look up", "description": "Looking up at the water surface from deep below. The light shimmers and distorts like a broken mirror."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 5, "timestamp": "2:00", "duration_seconds": 4.0, "lyric_line": "I opened my mouth to call your name / Filled it with salt instead of shame", "scene": {"mood": "accepting", "colors": ["salt crystal", "blood warm"], "composition": "close-up", "camera": "bubble rise", "description": "Underwater close-up: bubbles escape from lips. Eyes closed. Salt crystals form on eyelashes."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 6, "timestamp": "2:30", "duration_seconds": 4.0, "lyric_line": "The fish don't judge, the crabs don't care / Down here it's quiet, down here it's fair", "scene": {"mood": "isolated", "colors": ["fish silver", "coral pink"], "composition": "environmental", "camera": "underwater pan", "description": "A crab scuttles past. A school of silver fish parts around the figure. The seabed is soft silt."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 7, "timestamp": "3:00", "duration_seconds": 4.0, "lyric_line": "My hair floats up like golden weed / I planted promises I didn't need", "scene": {"mood": "resigned", "colors": ["blonde float", "deep blue"], "composition": "surreal", "camera": "surreal tilt", "description": "Hair spreads in a golden halo. Tiny pearls scatter from a broken necklace, drifting down like slow-motion hail."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 8, "timestamp": "3:30", "duration_seconds": 4.0, "lyric_line": "The undertow has my hand in its grip / Pulling me home on a one-way trip", "scene": {"mood": "fatalistic", "colors": ["undertow navy", "hand pale"], "composition": "intimate", "camera": "sink", "description": "Hand reaching toward the surface. Fingers spread. The undertow pulls the other direction, gentle but insistent."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 9, "timestamp": "4:00", "duration_seconds": 4.0, "lyric_line": "Shells in my pockets, pearls in my eyes / The ocean teaches, the ocean lies", "scene": {"mood": "transformative", "colors": ["pearl white", "shell pink"], "composition": "macro", "camera": "macro shell", "description": "Eyes opening underwater. Pearls reflected in the irises. A seashell rests on the cheek like a tear."}}
|
|
{"song": "Undertow", "artist": "Deep Current", "genre": "Pop", "bpm": 95, "beat": 10, "timestamp": "4:30", "duration_seconds": 4.0, "lyric_line": "I'll wash up somewhere, smooth and white / A stone that once was holding tight", "scene": {"mood": "bittersweet", "colors": ["stone grey", "wave white"], "composition": "shoreline", "camera": "wash ashore", "description": "Shoreline at dawn. A smooth stone washes up, wet and gleaming. Footsteps approach, then stop."}}
|