Home

Awesome

⚠️⚠️⚠️ Historical ⚠️⚠️⚠️

This repo is historical and go-vod has been merged into the Memories monorepo. This repo will be archived soon.

go-vod

Extremely minimal on-demand video transcoding server in go. Used by the FOSS photos app, Memories.

Filing Issues

Please file issues at the Memories repository.

Usage

Note: this package provides bespoke functionality for Memories. As such it is not intended to be used as a library.

You need go and ffmpeg/ffprobe installed

CGO_ENABLED=0 go build -ldflags="-s -w"
./go-vod

The server exposes all files as HLS streams, at the URL

http://localhost:47788/player-id/path/to/file/index.m3u8

Thanks

Partially inspired from go-transcode. The projects use different approaches for segmenting the transcodes.