Build journal · 9 September 2026

I wanted an ocean view.
I built Hollywood.

A voice request became an audio, video and broadcasting agent. The useful part emerged after the first forest looked terrible—and I stopped treating a completed render as a finished product.

01 — The artifacts

A little window into somewhere else

These are current development demonstrations: three 30-second, 720p programs. Short generated takes repeat with dissolves; their synthesized sound beds run separately. They are not location recordings or thirty seconds of unique generated footage. Start a player to hear its soundtrack.

Ocean. Four guided takes form a roughly fourteen-second visual rotation. Waves move through a fixed composition while the surf bed continues. Download the 30-second film.
Forest. An authored environment supplied the reference; guided motion and a wind bed turn it into a short repeating program. Download.
Cabin. Fire and weather move within a held viewpoint. The rain is synthesized; it is not a recording of this setting. Download.
02 — The request grew

It started with my voice

I wanted to talk to my computer and have useful work happen. Accessibility speech was my starting point because it worked well for the interaction I wanted. Soon the request was larger: make music, change its mood, add nature sounds, build visuals, and eventually keep a channel playing.

Classical music led to workout and techno experiments. Nature soundscapes led to ocean views. I wanted one place to direct the work, with projects and outputs that would still be there when I returned.

That became Hollywood: my production skill and the agent system behind it. The skill tells an assistant how to inspect media, choose an operation and review the result. The backend owns the jobs, files and playback. Instructions alone cannot provide that machinery.

03 — The bad forest

The file existed.
I still would not use it.

The early ocean views restarted their camera move every few seconds. Holding a still image in place avoided that reset, but the water did not feel alive. The first forest rendered successfully and looked like a rough game prototype. I withdrew the showcase.

More moving clouds and foliage helped, but each small improvement left the larger problem intact. I was asking a few visual effects to do the work of a complete environment: materials, light, composition and believable motion.

That changed the investigation. Godot and Blender offered real scene tools. Authored environments offered a stronger starting point. Public Poly Haven assets helped with scene quality. A better scene still needed a rendering strategy that fit the machine.

04 — Choosing the job for each tool

A beautiful frame can be too expensive to animate

A dense native forest produced a much stronger still. Direct animation took about 51 seconds per frame in one experiment. That makes it useful as an offline source environment; it does not make it a practical live renderer.

I also tested Infinigen for an editable interior, Hunyuan3D-Swift for a prop shape, and ComfyUI for a basic image-processing graph. Each earned a specific role. Those tests did not establish a finished virtual film studio.

For the nature demonstrations, the useful route was a strong reference image plus structurally guided video generation through the public LTX MLX implementation. The guidance helps hold the composition while water, foliage or fire moves. Ordinary image-to-video had allowed the camera to drift; extending its last frame carried that drift forward.

05 — The failures underneath

“Runtime failure” was not a diagnosis

One run timed out in video decoding. Another failed earlier, during the large projection that connects the text representation to the video model. Both surfaced as Apple Metal GPU timeouts. Neither error, by itself, established that the machine had run out of RAM.

The fixes targeted the work being dispatched: smaller independent token batches for the projection, and temporal tiles for decoding. I also checked whether tiling actually happened. An earlier configured memory threshold had not activated it for the tested clip.

In the four-second comparisons, measured peak MLX allocation fell from about 65.5 GiB to 24.0 GiB for guided video and 27.1 GiB for standard video. Those are renderer allocation measurements, not whole-machine RAM use. The exact guided request that had crashed subsequently completed and passed full decoding.

06 — Making the waiting useful

The library is small.
The soundtrack keeps going.

The improved guided clip still took about seven minutes to generate four seconds of video. A channel cannot wait for a new render at every transition.

Hollywood can assemble selected takes into a circular rotation, with short dissolves at the joins. Four ocean takes give me roughly fourteen seconds of varied wave motion before the sequence repeats. The 30-second demonstration assembled in about eleven seconds and occupies about 16 MB.

Audio has its own clock, so switching visuals does not restart the soundtrack. The selected audio repeats when it reaches its own end. Keeping that separate gives me more room to change the visual library without rebuilding everything around it.

This is deliberately reusable footage. Repeating a compact program can cover rendering latency; it cannot turn a slow model into real-time generation. The live preview retains a bounded set of segments rather than accumulating hours of intermediate video.

07 — Beyond the first successful clip

I tested the interruptions

The current development build passed 45 automated tests. Twenty-four duplicate submissions produced one job. Invalid requests were rejected, cancellation worked, and ordinary CPU work remained available while the GPU was occupied.

A one-hour private broadcast test checked the running channel 354 times and retained no more than seven preview segments. Separate tests killed the playback worker and restarted or killed the service. The channel recovered with its independent soundtrack clock preserved. An explicit stop stayed stopped.

Desktop and phone-sized browser tests covered saved state, real submissions and complete playback. Fifteen MCP tools let compatible assistants direct the same backend. Shared jobs and assets do not imply shared conversations between clients.

These are useful boundaries on what I can claim. They do not prove every device, invisible repetition, uninterrupted recovery on every network, or artistic quality. The measurement summary records the scope alongside the numbers.

08 — Where it stands

A working production agent.
Still a developing studio.

Hollywood now brings audio workflows, scene tools, reusable media and broadcasting controls into one durable production system. The current nature workflow is much more useful than the prototype I first tried to show.

I still need to earn the next claims: broader visual quality, physical-device voice testing and more demanding production workloads. Fresh real-time 4K neural generation is not qualified. These scenes are demonstrations, not a finished commercial film library.

The lesson I am carrying forward is to judge the entire result: what it looks like, what happens when something fails, what survives the next session, and how much work it takes to make the next piece. Hollywood became useful when all four mattered.

Public work and credits

Explore Hollywood

My contribution is the production orchestration, durable workflows, controls and integration. The engines, models and assets have their own authors and licenses. The linked public notices accompany the source snapshot. Poly Haven publishes its assets under CC0.

The public repository is an earlier source-available snapshot. This article introduces newer development results; the snapshot is not a turnkey installation of the exact demonstration build.