This repository has no description

vod: streaming pipeline from S3 upload to content-addressed muxl on S3 master

processVODProcessTask now runs the full pipeline: S3 ReaderAt -> RandomAccessSrcBin -> parsebin -> per-stream wiring (h264 passthrough; AAC passthrough; opus/vorbis/flac/mp3 -> fdkaacenc) -> mp4mux (fragmented MP4) -> appsink -> io.Pipe -> muxl Concatenator -> TeeReader(bdasl.Writer, S3 MultipartWriter) -> CopyObject staging -> vod/<bdasl-cid>.fmp4 -> DeleteObject staging End-to-end streaming: nothing is materialized to local disk. bdasl.Writer incrementally BLAKE3-hashes the output bytes so the content address is known the moment the last byte is written. pkg/statedb gets a VODProcessor function pointer (set by pkg/cmd at boot) rather than importing pkg/vod directly — pkg/vod transitively pulls in gstreamer, and we don't want the queue processor's existing non-media callers to grow that dep. Out of scope for this PR (deferred): - C2PA / muxl signing of the produced fMP4 (queue processor doesn't have access to the user's signing key yet; live-ingest gets it as the stream-key parameter from the client). - Creating place.stream.media.track / .origin / place.stream.video records from the result. Right now we just log the CID. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>