Skip to content

New project: VOD 📼

VOD is a video player component that streams camera footage from R2, seamlessly covering timelines of arbitrary length. This is a plain React/Vite SPA with a Cloudflare Worker backend in front of a Turso/libSQL database. There’s an authenticated admin route for editing metadata, but since it’s only me, I just added some Cloudflare Access rules and called it a day.

There’s also a local command that ingests raw footage into Turso and R2. The whole package is an upgrade to my recent dash project and its video.sh command.

The source video is MP4, which makes playback a little sluggish. HLS is a possibility, especially since most of the video likely wouldn’t need to be re-encoded, but it would at least double the storage requirements.

I’m working on a better embedded experience for this blog and elsewhere. See the full site at https://vod.ohn.sh.