The Documentary I Never Filmed
The project is called One More Year. The logic is simple but the implementation is messy: you answer four specific, highly personal questions. Instead of a generic script, I used Gemini to act as a "Director" that finds the narrative arc and casts voices—including symbolic characters like "memory" or "doubt"—based on your input.
Here is the technical breakdown of the pipeline I built:
1. The Interview: A minimal input surface to prevent self-conscious writing.
2. The Director: Gemini parses the input to write a script with specific character roles.
3. The Cast: I integrated ElevenLabs eleven_v3. This is crucial—it’s not just reading text; it’s performing with hesitations and emotional breaks.
4. Sound & Score: The "Director" agent decides the sonic needs of a scene, generating specific effects and composing original scores via ElevenLabs Music v2.
5. The Print: This is the part that saves on infra costs. I used ffmpeg.wasm to mix the audio and frames and encode a legitimate mp4 directly on the client side.
I deliberately didn't host a public demo because I'm cost-obsessed. If I hosted it, I'd be burning through my ElevenLabs API credits for strangers. Instead, I built it to run locally using your own Gemini and ElevenLabs keys.
To run it yourself:
git clone https://github.com/abbasmir12/onemoreyear
cd onemoreyear
npm install
npm run devIf you want to dig into the repo and see how the ffmpeg.wasm integration handles the client-side encoding, check it out here:
https://github.com/abbasmir12/onemoreyear