Skip to content
View JulienCr's full-sized avatar

Highlights

  • Pro

Block or report JulienCr

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
JulienCr/README.md

Julien Cruau

Video Engineer · Comédien · Code tinkerer


I build live streaming tools by day. At night I'm on stage — and somewhere between the two, I write the code that bridges them.

Why I code (off the clock)

My day job is large-scale live video — and, for the past two years, the LLMs we plug into it. Off the clock, I code mostly to outfit my own hobbies instead of bending under software designed for someone else. An impro Twitch channel deserves its own cameras, its own overlays, its own server.

What pulls me in is the hardware ↔ software bridge. An X-Touch fader changing an OBS scene. An iPhone turned into a zero-latency NDI camera. A Stream Deck watching a Claude Code session and surfacing its state. Wiring things that didn't talk to each other — that's the part I love.

Open-notebook mode: many projects in parallel, few clean v1.0s, the occasional fork of my own tools to try a different stack. Deliberate. It stays a hobby, not a roadmap.

Avolo — a Twitch channel and everything I had to code around it

@la_scene_avolo is a French impro channel. Off-the-shelf tools didn't cover what I needed as actor-and-engineer, so I ended up writing my own:

  • avolo-cam — Multi-iPhone → OBS over a homemade, open-source video transport. No NDI licence, lowest latency I could pull off. NDI and SRT modes as fallback, GPU zero-copy decode, Tauri controller.
  • obs-live-suite — Control room: real-time overlays, interactive quiz, dockview dashboard, presenter comms. A 26-tool MCP server to drive it from Claude.
  • xtouch-gw — Behringer X-Touch gateway for Voicemeeter / QLC+ / OBS, with motorised faders. TS v2 in production, Rust port underway to drop under 20 ms end-to-end.
  • rythmo-impro — Live dubbing reader (rythmo) for impro sessions. WhisperX transcription + pyannote diarisation in Docker, Next.js frontend.

A few more pieces of this stack — server, booking-contract generator, auto-framing camera, logo animation — live in private repos.

Outside Avolo

  • streamdeck-claude — Elgato plugin that surfaces live Claude Code session state on the deck. Useful when you've got three running in parallel.
  • Wolf Gang Paris — I designed and built the full show-control stack for this immersive escape-game venue: lighting, sound, network, scene logic, player interactivity. The website is mine too — currently mid v2 rebuild on Next.js.

Stack & playgrounds

  • Languages — TypeScript · Rust · Python · Swift · C# · Bash · PowerShell · PHP
  • Video & streaming — OBS · NDI · SRT · HLS/DASH · FFmpeg · WhisperX · Remotion
  • Hardware & MIDI — Behringer X-Touch · Stream Deck · Voicemeeter · QLC+
  • Infra & ops — Ansible · YunoHost · Terraform · k6 · Home Assistant
  • AI & agents — Claude Code · MCP · ONNX · CUDA · pyannote
  • Web — Next.js · Astro · Tauri · Tailwind · PrestaShop

Elsewhere

avolo.fr · twitch.tv/la_scene_avolo


Profile tinkered together — like most of the rest.

Pinned Loading

  1. avolo-cam avolo-cam Public

    Multi-iPhone streaming system for OBS with ultra-low latency Flash Mode, GPU zero-copy decoding, and desktop remote control

    Swift 2

  2. obs-live-suite obs-live-suite Public

    Live show production suite with real-time overlays, OBS integration, Stream Deck support, interactive quizzes, and presenter communication tools

    TypeScript 1

  3. xtouch-gw xtouch-gw Public

    Rust