About this project

caspar-AV is a live-events media server interface built to sit atop CasparCG Server. It transforms CasparCG's broadcast playout capabilities into a live-event workflow by introducing a "show" model that includes a virtual canvas for screen placement, corner-pinning (perspective warping), and the ability to trigger multiple output changes on a single frame using BEGIN/COMMIT batching. Because browsers cannot communicate via raw TCP (AMCP) or UDP (OSC), the project utilizes a Rust-based daemon (caspar-avd) that acts as a bridge. This daemon manages the connection to the CasparCG server, handles the show model and cue compilation, and serves a React-based web console via REST and WebSockets. Key features include: - Media Library: Integration with media-scanner for thumbnails and metadata. - Channels Page: Real-time state monitoring via OSC telemetry. - Cues & Grid: Frame-accurate cue execution and a trigger pad grid for rapid firing. - Templates: Data-driven graphics forms generated from GDD schemas. - Screens Page: Visual output mapping and perspective adjustment on a show canvas. - Command Logging: A persistent log to verify AMCP command delivery. The system is verified against CasparCG 2.5.0 and includes a fake-caspar Python script for testing without a physical server.