An open-source show control system supporting synchronized multi-screen multimedia playback and lighting control.

What is Cedar?

Cedar is an in-development open-source show control system which allows network control of multiple displays, stage lighting installations, and more. Suitable for houses of worship, event venues, conferences, and anywhere easy network control of screens or lighting is needed.

Project Status

Cedar has been in development as a hobby project since 2015, but for now is dormat. Much of Cedar's functionality has been implemented as a prototype, but a proper implementation would require a few months of full-time coding. The project's creator has focused his attention on other projects but would like to complete Cedar some day.

Check out the code on GitHub

Demo

How Cedar Works

Cedar Server runs on an always-on server computer and stores all media files, light scenes, song lyrics, and other data for a Cedar install. Multiple Cedar servers can automatically sync content, which makes managing multiple servers at different locations easy.

The server is controlled via a browser or app and sends instructions to Minions.

Minions

Cedar Minions are programs that receive instructions from a Cedar server, such as lighting cues or media playback. There are currently two types of minions, Display and Lighting. A single Cedar server can support as many minions as network bandwidth allows.

Minions are organized into Stages, allowing venues with multiple stages (or other areas) to control each group of minions separately.

Display Minions

Display Minions show media files, song lyrics, and presentations. Each Stage has a customizable list of layers on which content can be shown, and each display minion can be set to display certain layers from that list. For example, the minion controlling a projector could show the foreground and background layers, a minion controlling a live video overlay could show just the foreground layer, and an environmental projection rig could display the environmental layer. Layers are completely user-configurable, allowing complex setups to be easily controlled.

Display Minions are easy to set up, just run a cross-platform app on any PC. All displayed content is automatically retrieved from the Cedar Server. Multimedia playback uses the GStreamer frameworks's network syncronization capability, so media playback on separate Minions will stay perfectly in sync.

The display output can be split into sections, scaled, rotated, shifted, and edge blended; perfect for projecting at angles or onto irregular surfaces.

The Display Minion can also output a luma key suitable for compositiong on live video, making overlays on livestreams easy.

Lighting Minions

Lighting Minions control light fixtures via the Open Lighting Projects's control framework. With very low resource usage, the software can be run on cheap, low-power devices such as the Raspberry Pi.

Content

Cedar supports several types of content: media files (images, audio, and video), song lyrics, presentations, and lighting scenes.

Media

Media files of nearly any type can be uploaded to a Cedar server, then played back on Display Minions. Uploaded files will automatically be converted into formats that can be easily streamed to the minions, as well as analyzed to provide optional volume normalization.

Presentations

Using a browser-based slide editor, users can collaboratively create and edit presentations. PowerPoint, Open Document, and PDF presentations can be imported and displayed but not edited.

Song Lyrics

Cedar supports importing and displaying songs lyrics and chord charts. Each song can have multiple arrangements.

Cedar's Music Stand displays lyrics and chords, and automatically scrolls to follow the currently-visible line of the song.

Lighting Scenes

Users can easily create and cue lighting scenes.

Control

Cedar centers around Actions: content being sent to a Minion. For example, an Action might instruct a certain video to play on a particular layer, or might cue a light scene.

Cedar has a few different interfaces for creating and triggering Actions, each useful in different situations.

Sets

Sets are lists of Actions. Multiple actions can be chained together to perform complex operations with a single click, like a presentation triggering a video to play and a light scene to run.

Consoles

Consoles are customizable control panels that let commonly-used Actions be triggered by buttons. Consoles also support other widgets, like manual control of a particular lighting fixture.

Sequences

Sequences put Actions at points on a timeline, which could be used for displaying lyrics and controling lights along with an audio track.

Schedules

Schedules trigger Actions at set times, so a light could be turned off or a video started at certain times. Schedules can recurr daily or on certain days of the week, or be set to a particular date and time.