Who are you and why are you sharing CasparCG?
CasparCG was developed by the Swedish Broadcasting Corporation (“SVT”) which is the license-fee funded public service television broadcaster in Sweden.
What started as an in-house tool quickly developed to become a corner-stone of our production. We hope that the community will build upon CasparCG and look forward to seeing what you come up with.
Is it really free?
Yes, the download of the installers and source code is free and shared under the GNU General Public License version 3.
Are there any competitors to CasparCG?
There are plenty of broadcast-ready play-out systems, but we aren’t aware of any that has such a broad feature set, support such a wide variety of video codecs and offer Flash playback (and that are free.)
Who is using CasparCG?
Swedish Broadcasting Corporation (SVT) has been using CasparCG for national television broadcasting since version 1.0 which was developed and launched in-house in 2005. Please check the Cases section and the forum for reference cases.
Is a free graphics system really suitable for professional work?
We are convinced it is; that’s why we are using it 24/7 for national broadcast in all our six TV channels.
Where can I download the source code?
The source code, the compiled installers and a variety of tools and templates are available under the Download section.
What video, audio and graphics formats and codecs can be played?
CasparCG has several “producers” that are used to playback and control media such as video, animations, audio and still images.
For video playback CasparCG uses the “FFmpeg Producer,” so everything that FFmpeg can play should be usable by CasparCG Server. This includes many of the standard Apple QuickTime codecs such as H.264 and PJPEG, as well as PNG and Animation, both with support for alpha channel. You can also play FLV that also supports alpha channel.
Dynamic media is played by CasparCG’s “Flash Producer,” so everything that the Adobe Flash Player can handle can be played. This includes Flash animations (SWF‘s) and Flash video (FLV‘s) as well as audio. Since you have full control over everything in Flash so that you can dynamically change texts and control individual animations, and since the rendering is done by Adobe’s own Flash Player, all ActionScript execution works (unlike when you import SWF‘s into other tools such as Adobe After Effects.)
If you want interlaced output to HDMI, SDI or HD-SDI you just set the frame rate of the Flash template to that frame rate and you will get interlaced output. Field dominance (upper/odd or lower/even) is set via the SDI and/or HDMI card’s controls.
There is also an Image Producer that can read 24 and 32 bit bitmaps from disk.
What video and audio codecs are recommended for video playback?
There’s even templates for rendering from Adobe After Effects available.
CasparCG uses FFmpeg for video playback, so everything that FFmpeg can decode can also be played by CasparCG. If you have shot video in a codec that is supported (such DV25, DVCPRO25 or DVCPRO50) you will be able to play it directly from disk/card. Otherwise you must first transcode to a supported codec.
What frame rates are supported?
CasparCG Server output to a video card via SD-SDI, HD-SDI and HDMI we support both PAL and NTSC resolutions (4:3 + 16:9) at 25p, 29.97p, 50p, 50i, 59.97p and 59.97i in SD, 50p and 59.94p in HD Ready (1280*720) and 25p, 29.97p, 50p, 50i and 59.97i in Full HD 1920*1080.
Does CasparCG play P2, DV25, DVCPRO25, DVCPRO50, DVCPROHD, MXF, AVCHD, HDV, XDCAM, HDCAM, RED, R3D and ProRes422 videos?
CasparCG uses FFmpeg for video playback, so everything that FFmpeg can decode can also be played by CasparCG. If you have video in a codec that is supported and tested (for example DV25, DVCPRO25, DVCPRO50, QuickTime Animation+, QuickTime None+) and in a proper resolution, you will be able to play it directly from disk/card. Otherwise you must first transcode to a supported codec.
What bitmap still formats can be played?
The built-in “Bitmap Producer” can display the following formats:
- BMP files
- Dr. Halo CUT files *
- DDS files
- EXR files
- Raw Fax G3 files
- GIF files
- HDR files
- ICO files
- IFF files
- JNG files
- JPEG/JIF files
- JPEG-2000 File Format
- JPEG-2000 codestream
- KOALA files
- Kodak PhotoCD files
- MNG files
- PCX files
- PBM/PGM/PPM files
- PFM files
- PNG files
- Macintosh PICT files
- Photoshop PSD files
- RAW camera files
- Sun RAS files
- SGI files
- TARGA files
- TIFF files
- WBMP files
- XBM files
- XPM files
* only grayscale
Does CasparCG play interlaced video?
Yes, both upper/odd and lower/even interlacing (as well as progressive) output is supported from all media, both Flash templates and video. If you play interlaced videos to a progressive output, you can choose to de-interlace the video in real-time.
Can I download and play Flash SWF files I find on the web?
Yes, almost. Many SWF‘s are built on the assumption that they will be stored on a web server and embedded in a web page. If they require any sort of interaction such as mouse clicks, they won’t be very suited for CasparCG playback. However, all features of the Flash Player (such as ActionScripted downloading of RSS feeds, for example) is fully functional when played by CasparCG.
What kinds of transitions can I use to go from one video to another?
You can do a cut, push, wipe, mix and slide over a user-controlled number of frames between two video files in the same “FFmpeg Producer.” The transitions also affect the alpha/key channels in the files.
Can I place transparent videos on top of other videos?
Yes, all media (whether it is Flash templates, videos or images) are played as separate layers that can be stacked, re-ordered, masked, blended and adjusted in real-time while playing.
What is included in the download, and what else do I need to get started?
You only need a Windows computer with administrator rights (so you can run the installer) to get you started. We’ve also included some Flash templates and videos, plus a controller application that will let you try them out on the local machine by playing on the computer monitor.
If you want to output via HDMI, SDI or HD-SDI you will need a compatible video output card, but you can also play all content to the attached computer monitor without any special hardware.
What kind of performance can I expect?
The performance of a CasparCG system is dependent on three things:
1. The computer hardware used.
2. The resolution, frame rate, bit depth, sampling rates, codecs and number of source media.
3. The type of “producer” used (i.e. playback type.) Please see the published cases and the the CasparCG forum for examples.
Can I run CasparCG on Windows XP / Windows Vista / Mac OS X / Linux / Unix?
Since a CasparCG play-out server communicates via public commands over TCP/IP, it can be controlled by applications running on almost any computer platform, including smartphones, tablets and embedded chips!
The CasparCG Server that renders and outputs the video/graphics/audio is developed primarily for 64-bit Windows 7, but it has been successfully been used on Windows XP (32-bit) and Windows Vista (32 & 64-bit) as well as Windows 7 (32-bit.)
However, with access to the source code and since the Adobe Flash Player and the FFmpeg libraries exist for several operating systems including 64-bit Linux, it is theoretically possible to port the consumers to other OS’es.
Blackmagic Design has published an SDK for Windows, OS X and Linux platforms, which should make it possible to output to the DeckLink cards on these platforms.
If you make such a port, make sure to share it in the CasparCG forum.
Can I use Mac OS X or Linux with CasparCG?
Yes, you can control a CasparCG play-out server from anything that can send Telnet commands over a TCP/IP network, including smart phones. An iPhone app that controls a play-out server would be kinda cool…
However, the CasparCG Server play-out was developed on the Windows platform.
Is there a 64-bit version available / planned?
The CasparCG play-out server is currently Windows 32-bit only (though it runs fine on 64-bit versions of Windows Vista and Windows 7.) You can however control a CasparCG play-out server from any device that can send Telnet commands.
Is HD-SDI and/or dual-link SDI output supported?
If I want to play out to SDI or HD-SDI, are there any consumers for other cards than DeckLink and Bluefish, such as Nvidia, ATI, BlackMagic Design or AJA?
CasparCG’s consumers for video cards are currently developed using Bluefish Technologies’ and BlackMagic Design’s Windows APIs. With access to the source code there’s nothing stopping you from developing and sharing interfaces for other cards and platforms.
What protocols and commands are used?
The main communication between the CasparCG play-out server and the client controller(s)is Telnet over TCP/IP. The protocol is described in full in the wiki.
What ports are used between the CasparCG play-out server and the controller(s) and must be opened in our firewall?
By default TCP/IP port 5250, but this is user-selectable.
What is a “producer?”
A technical term for the CasparCG components that renders and plays media such as video, animations, images and audio.
A producer listens for commands and data sent from a client controller application, loads and renders that media and then sends it to a “consumer” that displays that media in a variety of ways.
CasparCG currently ships with five producers:
1. “FFmpeg Producer” that can play all media that FFmpeg can play, which includes many QuickTime codecs such as Animation, PNG, PhotoJPEG, MotionJPEG, as well as H.264, WMV and several audio codecs as well as uncompressed audio.
3. “Image Producer” that displays bitmaps with alpha channel support.
4. “Color Producer” that generates a solid RGB color.
5. “DeckLink Producer” that accepts input video and audio.
What is a “consumer?”
A technical term for the CasparCG components that receive playing media such as video, animations, images and audio from a “producer” and displays that media on a specified output.
CasparCG currently ships with three consumers:
1. “Bluefish Consumer” that outputs the playing media on to video cards from Bluefish Technologies with full support for all PAL SD and HD resolutions, frame rates, pixel aspect-ratios, including support for separate fill + key + embedded audio.
All producers can output their media to the “Bluefish Consumer.”
2. “DeckLink Consumer” that outputs the playing media on to video cards from BlackMagic Design with full support for all PAL SD and HD resolutions, frame rates, pixel aspect-ratios, including support for separate fill + key + embedded audio.
All producers can output their media to the “DeckLink Consumer.”
3. “Screen Consumer” which displays the media in a standard Windows computer window, either windowed or fullscreen on one or several monitors.
Can I render animations to disk?
There is currently no “Harddisk consumer” that will let you save out media to disk, but this is a feature that is under consideration. It would for example let you use CasparCG to produce “lower-third” name signs that could then easily be imported into an editing system.
Why can’t CasparCG play all the codecs that Apple QuickTime can play?
Many QuickTime codecs are also handled by FFmpeg and can therefore be played by CasparCG, such as “Animation+” and PhotoJPEG.
Can CasparCG do multi-display shows where, for example one video moves from one screen to another?
There’s no ready-built feature that will let you create a “virtual canvas” but it’s easy to setup one server with several outputs (video cards or monitors,) or several playback servers with individual displays are controlled by a central template that sets the synchronization and coordinates of the videos. If you create such a system, please share it in the CasparCG forum.
Why the name “CasparCG?”
It’s named after the son of one of the creators, together with “CG” which is an old broadcast term for “character generator.” It’s as simple as that…
Is CasparCG an Adobe product since it uses Adobe Flash Player?
No, CasparCG is not in any way affiliated with Adobe Systems. Please see Open Screen Project, a partnership with companies working together to provide a consistent runtime environment for open web browsing and standalone applications.
Can CasparCG do 3D?
Using Adobe Flash Player 10 and later, you can use Flash’s built-in cameras and 2.5D abilities. There are also 3rd party Flash 3D engines such as Papervision that can be used. Flash Player 11′s “Molehill” is currently not supported since we can’t access the frame buffer rendered via the GPU.
Are there any real-time 3D camera tracking systems that work with CasparCG?
Not that we are aware of, but if you know of any or have interfaced with any camera tracking, remember to share it in the the CasparCG forum
Can interlaced video be de-interlaced for playback on non-interlaced displays?
Yes, this is done automatically if the meta data of a video file contains the correct information about interlacing. It can also be triggered manually via a simple command.
What’s the maximum video size / resolution that CasparCG can play?
CasparCG supports resolutions from 1×1 pixels to HDTV resolutions such as 1280×720 and 1920×1080.
The theoretical limit for Flash content (including bitmaps and similar media) played by the “Flash Producer” is a total of 16,769,025 pixels with a maximum width or height of 8191 pixels. The largest square media that can be used is therefore 4095×4095 pixels.
Don’t expect miracles when it comes to playing back content of these sizes, though.
What bit depth does CasparCG output? Does it output 10-bit, 12-bit, 16-bit or 32-bit data?
The output is 8-bits per color channel, plus 8-bit alpha (to supported video cards.)
Does CasparCG play on DisplayPort, DVI and HDMI monitors?
(Tip: DVI and HDMI can be actually be interchanged with a simple cable.)
Is the graphics card (GPU) used for acceleration of playback?
All playing media can be manipulated in real-time. You can move, scale, mask and change the opacity and video plus audio gain with the new real-time Mixer feature, and take advantage of the built-in animation types, just like with transitions. Other GPU-accelerated effects include image adjustments such as Brightness, Contrast, Saturation and Levels can also be applied, and the Mixer can even de-interlace video, transform it and then re-interlace it correctly. The “Screen Consumer” also supports GPU-accelerated scaling.
I have a separate file sequence with a greyscale alpha channel. Can CasparCG generate fill (RGB) from one media and key (alpha) from another media?
Use the embedded alpha channel of videos, Flashtemplates and images, or create the alpha channel with a separate file. You can cut a hole in a video file with an animated Flash template, or even an animated image! HD video codecs that are alpha-capable tend to generate very big files. CasparCG Server instead lets you use two small files with an alpha-free codec such as H.264; one for fill and one for alpha!
Does CasparCG play file sequences from disk?
What kind of key (alpha channel) should I set our vision mixer / production switcher to accept; pre-multiplied or straight?
Currently the “Flash Producer” only supports pre-multiplied alphas, since the Flash Player cannot generate straight alphas.
To be able to mix Flash and video content, we recommend sticking with pre-multiplied alphas on videos as well.
There is a guide to configuring vision mixers in the wiki.
Can I play DirectX media with CasparCG?
No, there’s currently no DirectX producer available. If you develop one, please share it in the CasparCG forum.
Can I play OpenGL media with CasparCG?
No, there’s currently no OpenGL producer. If you develop one, please share it in the CasparCG forum.
Can I sell CasparCG as my own product?
No. Even though you can charge money for the same CasparCG program that we provide for free, you must acknowledge that it is in fact based on CasparCG (and the other libraries that we use, such as Adobe Flash Player and FFmpeg, among others.)
Please see the GPLv3 license and the GPLv3 FAQ: Does the GPL allow me to sell copies of the program for money?
If I modify the CasparCG source code or add additional modules; do I have to share those modifications publicly?
No, even though we hope that you will share any improvements that you make – that’s why we’ll be sharing the source code, available from this site as soon as we get the OK from our lawyers. Please post your additions in the the CasparCG forum.
Can I build new modules on top of CasparCG and sell them?
Yes, even though we’d prefer that you share it for free. Please see the GPLv3 license and the GPLv3 FAQ: Does the GPL allow me to sell copies of the program for money?
Can I make videos and Flash templates loop?
Yes. The “FFmpeg Producer” has video/audio file looping built-in, and looping in a Flash template is created with a simple ActionScript keyframe.
I need to add subtitles at run-time using separate text files.
Does CasparCG respect the broadcast safe areas, such as action safe and title safe?
I have a video file that was made for broadcast but I want to play it back on a computer monitor that shows the unwanted content and black bars that was placed outside the action safe area. Can CasparCG be set to remove stuff around the edges?
Yes, you can mask any playing media with any other media, such as a bitmap.
Can CasparCG generate Flash SWF‘s on the fly?
Can I use any custom FFmpeg flags to do advanced customization of video playback?
The current version of CasparCG does not accept any extra flags passed to the “FFmpeg Producer.”
Does CasparCG generate motion blur?
All content played by the “Flash Producer” can use Flash’s built-in motion blur generation. You cannot generate motion blur inside a video that is pre-rendered, since that currently requires performance not available for real-time playback. The built-in video transitions in the “FFmpeg Producer” are not motion-blurred.
Do all the video, audio and Flash template files have to be stored in the same folder on the play-out server?
The current version of the CasparCG Client can’t see subfolders for video media, so in practice they need to be stored in the same folder. However, Flash templates can be sorted into subfolders.
When outputting to an SDI / HD-SDI card; can I — instead of outputting one key and one fill — output two different RGB / fill signals (coming from two separate media) on a single card?
Yes, that is possible.
Does CasparCG let me run more than one producer at the same time, and then outputting to several video cards and monitors on the same computer?
Yes, we’ve used several mixed producers (both Flash and FFmpeg) and then output those on up to three separate Bluefish cards installed in the same computer. Please see the “Vem Vet Mest?” game show case.
How is the alpha channel / key generated from a Flash file?
Everything that’s visible on the Flash stage is used to generate both fill (RGB pre-multiplied on black) and key (alpha) regardless of the stage’s background color.