Engineering manager with nearly two decades in media & streaming. I own the end-to-end Media & Digital Infrastructure for the NRL and its 16 clubs — live ingest, encoding, MAM, CDN, CMS, apps, identity and the data/ad stack — and I build video infrastructure in Rust on the side: encoding optimizers, media metadata tooling, and the cloud pipelines that move it all.
🎬 viser — Video Encoding Optimizer
A multi-codec convex-hull optimization pipeline that computes per-content bitrate ladders from CRF sweep trial data. It combines shot detection and complexity analysis to drive per-title, per-shot, per-segment, and per-device encoding strategies — minimizing bitrate at any quality target.
Ships BD-Rate computation, VMAF measurement, fixed-ladder comparison, chart rendering, and a browser-based comparison player.
15 workspace crates · H.264 / H.265 / AV1 · Rust
📖 Measure, Don't Guess: Building viser →
🎧 cathar — Audio Restoration Toolkit (Pure Rust)
An audio toolkit for any recording that restores (denoise, de-hum, de-click, de-clip, de-reverb), enhances (de-ess, breath removal, voice isolation, bandwidth extension), and levels (LUFS + peak normalisation) — writing a clean 32-bit float WAV. Works on standalone audio (WAV, MP3, FLAC, OGG, M4A) or the audio track inside a video; video is never required.
No ffmpeg, no C/C++, no system libraries — decoding via
symphonia, FFT viarealfft/rustfft. Every effect is a plain function over&[f32], so the pipeline drops straight into any Rust program.Pure Rust · single
cargo build· MSRV 1.85 / edition 2024
🖼️ eligo — Best-of-N Image Selection (Pure Rust)
Image generators are random — eligo automates picking the best output. Give it a prompt and it generates n candidates (a pluggable Backend), scores each against the prompt (a pluggable Scorer), and selects the highest-scoring one. The smallest honest agentic loop: a numeric reward drives a decision.
Ships a Stable Diffusion backend on ONNX Runtime, a CLIP prompt-alignment scorer, no-reference quality scoring, and image-similarity search — with a bounded single re-roll of the worst candidate.
Pure Rust · ONNX Runtime · CLIP · Stable Diffusion
🔎 revelo — Pure-Rust MediaInfoLib Port
A safe, fast port of MediaInfoLib that reads technical and tag metadata from 177+ audio, video, image, and container formats. A drop-in libmediainfo replacement (C ABI + CLI), differential-tested byte-for-byte against the MediaInfo oracle.
AAC · AC-3 · AVI · AV1 · BPG · CineForm · DTS · DV · FLAC · H.263 · JPEG · MPEG · MP4/MOV · Matroska · MPEG-PS/TS · Ogg · Opus · PNG · ProRes · VC-1 · VP8/9 · WebP · WAV · and more
🍺
brew install vbasky/revelo/revelo
📖 Porting 300K lines of C++/Perl to Rust: a byte-identical MediaInfo replacement →
🗄️ somnia — Type-safe SurrealDB ORM for Rust
A typed query builder, a #[derive(SurrealRecord)] macro, schema generation, and Diesel-style migrations — bringing compile-time safety to SurrealDB.
🍺
brew install vbasky/somnia/somnia
📖 A Type-Safe ORM for SurrealDB That Feels Like Diesel →
🎨 sublime-vscode-plus — VS Code Colour Scheme for Sublime Text
Brings VS Code's Dark+ and Light+ syntax highlighting to Sublime Text. Installable via Package Control and tested across PHP, JavaScript/Vue, Python, HTML/Blade, CSS/Sass/SCSS/Less, JSON, XML, Markdown, and YAML.
⭐ 45 stars — my most-starred project
📓 patina — Rust-native Interactive Notebook
A Rust-native interactive notebook with kernel support for Rust, Python, and JavaScript. The entire stack — web server, kernels, wire protocol, and JavaScript engine — is written in Rust. No Jupyter, no external kernel plumbing.
Rust (evcxr) · Python (pyo3/CPython) · JavaScript (boa) · React UI · Axum
| Role | Where | When |
|---|---|---|
| Engineering Manager | National Rugby League — own the end-to-end Media & Digital Infrastructure for the NRL + 16 clubs: live ingest & encoding (AWS Elemental, Azure, Bitmovin), MAM/DAM (Dalet Flex), CDN (Akamai/Fastly), CMS (Optimizely), web & mobile apps, NRL ID, subscriptions, fantasy/tipping, ad stack (Google DFP) and CRM/marketing (Salesforce, Braze). Hands-on across the codebases: Dalet Flex automation (Groovy), Azure C#/.NET integration services driving Flex, and the NRL.com app (C#/.NET). Built NRL Studio, migrated 130K VOD assets to Shaka Packager, automated video-AI highlights | 2021–present |
| Lead Video Engineer | Kintell — WebRTC video conferencing & Twilio-based recording compositions | 2020–2021 |
| TV Platform Lead | Stan — connected-TV VOD apps (Smart TVs, PlayStation), Preact/TS, EME/PlayReady DRM | 2020 |
| OTT Video Engineer | SBS — launched SBS On Demand 2.0 on Telstra TV (Brightscript), Google DAI, CI/CD | 2018–2020 |
| Application Architect | Switch Media — media player & Chromecast/PS4 apps for Foxtel; DRM, ABR, analytics | 2017–2018 |
| Earlier | Optus · Vivant Digital · Alive Mobile · Target · Prowareness · Hewlett Packard · Cisco Systems | 2007–2017 |
Certified Scrum Master · Bachelor of Engineering, Computer Science
| Area | Technologies |
|---|---|
| Video streaming | DASH, HLS, LL-HLS, CMAF, MPEG-TS, MP4 fragmented, manifest generation |
| Cloud media (AWS) | Elemental MediaConvert, MediaLive, MediaPackage, MediaTailor, CloudFront |
| Cloud media (Azure) | Azure AI, AKS, Azure Functions, App Service, Event Hubs, Service Bus, Storage, Cosmos DB |
| Video encoding | H.264/AVC, H.265/HEVC, AV1, VP9, per-title optimization, quality metrics (VMAF, PSNR, SSIM, BD-Rate) |
| Infrastructure | Docker, Kubernetes, Terraform, CI/CD, monitoring, cost optimization |
| Software | Rust, C#/.NET, Groovy, Java, TypeScript, JavaScript, Laravel |




