Build log · LVGenStudio
I did not mean to end up architecting a video studio
Product architecture, orchestrated with Claude Code
Nothing ambitious. I wanted to make videos.
I pay ₹950 a month for Google Flow. That gets me 1000 credits. Each generated clip costs somewhere between 30 and 48 credits depending on which model I pick — so roughly twenty to thirty attempts a month, assuming nothing goes wrong.
Things went wrong. In my use, across those months, the same character would not stay the same character from one clip to the next. The prompt restrictions were heavy enough that I spent more time rewording than directing. And there were stretches where the service simply wasn't available to me when I sat down to work.
Twenty-odd attempts a month, and I could not keep one person's face the same across two shots.
So I looked at the alternatives, the way anyone would.
The free sites — Arena.ai and its neighbours — do work. They also mean handing my images to a company whose data policy I have not read, and would probably not agree to if I had.
ComfyUI runs on my own machine, which solves the privacy problem completely. It also asks me to understand nodes and gates and a graph of connections that assumes I already know what each piece does. I don't. And nothing about it promises it will behave on macOS, or that the output at the end of all that effort will actually be better.
I'm more familiar with this:
Both are boxes joined by lines, and both look alarming to anyone who doesn't work in them. The difference is that in mine I know what every box does and why it is wired that way. In the other I would be guessing — a bad place to start when the whole job is judging whether the output is any good.
That was the entire decision space.
Pay and get rationed. Go free and give away your work. Go local and become an engineer first.
None of the three was built for the person I was in that moment — someone who just wanted a specific character to walk through a specific scene, twice, and have it look like the same person both times.
That's where this started. Not with a technology I was excited about. With a bill I was paying and a result I wasn't getting.
What actually happened
I opened Claude Code and described what I wanted, in the plainest terms I had:
"I want to build a complete video making studio application. The generated video clips should have consistent characters with a dedicated scene by scene script connected to the characters and scenes. So that a creator should be able to make short to long videos. The application should generate the short length videos that later can be connected to full video short/long — user wish.
This is what I want to build as desktop studio. As of now, the RAM should be 16 GB for M1 Processors but should able to work smoothly on M2/M3 8 GB.
To start working, it can work for 32GB M1 Processors. Later we can optimise for 16 GB.
As I see it is a real product and viable."
Read that back and you'll notice something. There is nothing in it about models, architectures, or how any of this actually works. Because I didn't know. I still largely don't, at the level someone who builds these things does.
What I have is a basic logical understanding of how applications work and behave. That turns out to be enough to do the one thing that matters — question my own assumptions out loud, and keep questioning until something gives. I supply the problem and the interrogation. Claude supplies the implementation. The final call on architecture stays with me, except where I explicitly hand it over.
That sounds like a small distinction. It is the whole job.
The requirement that looked like an optimisation task
Look again at the RAM line in that brief. 16 GB on M1. Smoothly on 8 GB M2/M3.
I want to be clear about where that number came from, because it did not come from a technical consideration. It came from a user question.
People buy base-spec Macs. They buy the machine that was in the store, at the price they could afford, and they reasonably expect applications to run on it. When an application doesn't, the frustration is real — and a frustrated user with a real need is a paying user.
So minimum-spec support was never a nice-to-have on my list, and never an optimisation task to schedule for later. It was market sizing. A tool that needs 30 GB of memory isn't a slower product. It's a product that has deleted most of the people who would have bought it.
I wrote that requirement on day one and I did not move it. Everything that came afterwards got measured against it, including the answers that said it couldn't be done.
Where this goes next
That's the setup, and it's genuinely all I had on day one — a problem I was paying for, a description of what I wanted instead, and a hardware number I refused to negotiate.
What I did not have was any idea how to get there. I had never chosen a model. I did not know what the options were, what separated one from another, or what any of them would cost me in time or memory or quality. That part came next, and it went badly before it went well.
Next How I picked the first model, and what it got wrong about human faces
This is a running log of building LVGenStudio, a local video generation studio for Mac. Written as I go, including the parts that didn't work. Everything here is dated, and anything I later find out was wrong gets a retraction rather than a quiet edit.