I indexed 669 GB of my GoPro videos using my M1 Max computer and local ML models
TLDR: I had 2,207 GoPro videos, and I need to rewatch them to find interesting moments from my cycling journey. I built a project to index them locally on my M1 Max using open-source ML models, search for those moments, and send the best clips straight to my DaVinci Resolve timeline. I indexed 628 videos (668.68 GB, 15h 13m 18s of footage duration), more details in the metrics table in the last section of this article.
Full article: https://iliashaddad.com/blog/i-indexed-669-gb-of-my-gopro-videos-using-my-m1-max-computer
50 comments
[ 2.9 ms ] story [ 59.9 ms ] threadref: https://www.cpubenchmark.net/compare/4585vs4245/Apple-M1-Max...
https://news.ycombinator.com/item?id=48222733 https://blog.simbastack.com/indexed-a-year-of-video-locally/
I wasn't familiar with your project though, interesting stuff.
I'm trying to add more photography related features to Framedex but yeah there's so much we can do locally, exciting times.
Frame level embedding it covering a lot, but can miss out on a lot of action related searches.
comes with some nifty features like NLE- integrations, people search, MCP, API etc
Disclaimer: one of the co-founders
I'm really bullish on taking more video of my kids, with the thought that it will become easier and easier for AI to put them into little compilations I can enjoy later.
Google loves scanning stuff on in the cloud though.
Aha, it makes total sense. This number sounds much more reasonable than “669 GB”, since the actual total size of processed frames would be like 10-30 GB.
(Not downplaying anything. Doing-at-home always requires some math on practicality)
> Total compute time 67h 40m 42s
I’m just curious tho — is there any paying options that can accelerate this kind of process? Just spin up GPU instances?
Yep. I had the same problem.
> Then, run the frame analysis pipeline [...] I have a face recognition plugin using my custom faces data, object detection, on-screen text, shot type, and scene description [...] we will have three vector DB collections that have all the information about our videos, like video location metadata, camera name, faces recognized, objects detected, on-screen text, transcription, description of each scene, and many more [...] we can get better indexed data if you use the advanced mode indexing to use the Qwen2.5-VL-7B-Instruct model to understand and describe your video much better, but at a slower indexing speed
Yeah, uhm... ok :)
If anyone else has a similar problem, the real solution is as follows:
1. When recording, if you witness an interesting moment worth saving later, press the power button — this will mark the current moment in the video as a chapter.
2. Find the chapters later when editing and cut them into clips.
3. You're done :)
This has two main benefits over the insanity above:
1. It's trivially simple instead of insanely complex and inefficient.
2. It will reliably catch all the stuff you find interesting, since you're the one doing the marking.
The downsides:
1. Doesn't work retroactively.
2. It may miss interesting stuff if you miss it at the time as well.
3. Only works for this use case.
4. Nerds won't salivate over your usage of cutting edge tech.