This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle.
What I Built
Highlight Generator turns a long event video into a short highlight reel, right on your own computer.
Think about the videos you record at a college fest, a trip, a birthday, or a wedding. The footage can be hours long, nobody wants to sit through all of it, and editing it manually takes time. Highlight Generator helps you turn that footage into a short reel with transitions, effects, and music.
Here’s how it works:
- Upload: Add a long video.
- Find: The app analyzes audio levels and visual motion to identify candidate moments.
- Smart pick: A local AI model reviews a frame from each candidate, writes a caption, rates how exciting the moment looks, and helps select the best clips.
- Direct: The AI acts as a director, choosing from predefined effects, transitions, music moods, and sound modes.
- Music: Use a built-in track or upload your own.
- Export: Download the finished reel as an MP4.
I built it for people who film events but don’t necessarily have the time or skills to edit them, including college fest media teams, small event videographers, and families. I haven’t yet validated whether people would pay for it, so finding out whether this solves a problem people are willing to pay to fix is still part of the journey.
The AI only sees one frame from each candidate moment and doesn’t hear the video, so its captions and excitement scores are suggestions rather than definitive judgments. You can adjust the music, sound mode, and reel length before exporting.
Demo
Watch the demo to see how Highlight Generator works, from uploading an event video to selecting highlights, choosing music and sound settings, and exporting the final MP4 reel.
Download the Highlight Generator Demo Video (MP4)
There is no live web link, and that is intentional. Highlight Generator runs on your own computer, so your footage doesn't need to be uploaded to a remote server for AI processing. The repository includes instructions to run it yourself.
Code
🎬 Highlight Generator
Turn a long video into a short highlight reel, privately, on your own computer.
Upload footage from a party, trip, college fest or wedding. The app finds the best moments, a local AI model reviews them, and your reel is cut and mixed with music. Nothing is uploaded to any server, and nothing costs money per video.
Built for the Hacktoberfest Open-Source AI Challenge, Week 2: Side Hustle.
Demo / How to Use
Watch the demo to see Highlight Generator in action.
Download the Highlight Generator Demo
How it works
- Find. FFmpeg and some simple maths score every second of the video by loudness and motion, then pick the strongest 6-second moments.
- Review. A local vision model (Gemma 3 4B, through Ollama) looks at one frame from each moment, writes a short caption and rates how exciting it is. Smart pick uses these ratings to choose better…
How I Built It
I built Highlight Generator with Node.js, Express, plain HTML, CSS and JavaScript, FFmpeg, and Gemma 3 4B running locally through Ollama.
- FFmpeg does the heavy work. It measures audio levels per second, compares frames to estimate visual motion, cuts clips, applies effects and transitions, and mixes the audio.
- Gemma does the judging. For each candidate moment, the model receives a frame and returns JSON containing a short caption, an excitement score from 1 to 10, and a reason for its score.
- The AI is the director; FFmpeg is the crew. Instead of letting a small model generate arbitrary video-editing commands, I restrict its creative choices to predefined menus: 6 effects, 8 transitions, 5 music moods, and 3 sound modes. The server validates the model’s responses and replaces invalid choices with safe defaults.
- Smart pick narrows things down. It finds twice as many candidates as the reel needs, asks Gemma to rate them, removes lower-scoring moments, and keeps the best-scoring clips.
- The built-in music is original. I wrote a script to generate 10 simple original tracks, with 2 for each mood. Users can also upload their own music.
One issue I encountered was uneven volume between clips taken from different parts of a source video. It made the reel sound inconsistent, so I added loudness leveling for individual clips and an option to mix music with the original sound.
Why Does Open Innovation Matter?
Event footage can be deeply personal. Weddings, family gatherings, trips, and college events aren’t necessarily the kind of videos people want to upload to a service they don’t control.
Using an open-weight model locally gives Highlight Generator a few important advantages:
- Privacy: Video processing and AI inference can happen on the user’s own computer, without sending footage to a remote AI API.
- No per-video AI API fee: There’s no cloud inference charge for every video processed, although the app still uses the computer’s resources and electricity.
- Flexibility: The model can be changed to another compatible vision model that supports the expected input and output format.
- Offline use: After the required dependencies and model have been installed, the processing workflow can run without an internet connection.
I haven’t benchmarked Highlight Generator against a paid cloud API, so I can’t honestly claim that local inference is faster, cheaper overall, or more accurate in a measured comparison.
What I can say is that local inference gives users more control over where their footage is processed and avoids a per-video model API bill. The trade-off is that processing speed depends on the user’s hardware, and a small model’s excitement scores can be rough. Testing it on more footage and measuring performance on different machines are still on my to-do list.
Prize Categories
Best Use of Gemma: Highlight Generator uses Gemma 3 4B locally through Ollama to caption and score candidate moments and help guide the creative direction of the final reel.
What’s Next
I’d like to add subtitles using a local speech model, a vertical video format for Reels and Shorts, and test Highlight Generator with more real event footage.
I also want to learn whether the people this tool is built for would use it regularly and whether the time it saves is valuable enough that they would pay for it.
Step back from editing. Let the best moments find you. 🎬


Top comments (0)