DIY BROADCAST
: How to build your own Internet TV Channel with Open-Source & other goodies
Scenario : you are the technical director of a web startup, already having proven your talents with your thematic VOD streaming channel – and your boss suddenly thinks you’re a grown enough company to jump on the broadcast wagon and manage your own 24/7 live TV channel, targeting IPTV and multiplatform OTT, with a mix of some live studio shows and mainly pre-recorded programs. And of course readify it for later iTV DTT distribution. Quite an exciting challenge !
But once you passed the wow effect, you just realize that despite his high expectations for the TV channel, your boss has got just a web budget – which is close to 0$ – and of course a tight launch schedule. Therefore, your first duty is to be creative on how to build the platform for the lowest possible cost : that’s why, using your web reflexes, you naturally turn yourself towards the open-source world to achieve this impossible mission. Inexpensive or free closed-source software will eventually fill the gaps (and obviously there are some).
Fortunately, the web attitude has contaminated many industries with its desire to promote interoperability and avoid vendor lock-in with full-IP standard worflows. The BBC has shown the way for a long-time, funding many developments like the Dirac codec for its own needs of tapeless workflows and open-sourcing them quickly afterwards. Other TV channels like SVT from Sweden (with CasparCG) and many independent developers have jumped onboard, and by combining their efforts with your usual web video tools like FFmpeg or other free tools, you can for sure build the target platform.
Apart from this software layer, you’ll just need :
– commodity IT hardware to run all the software
– some inexpensive SDI cards
– the minimalistic general audio/
_ video routing hardware & cables
– a reasonable amount of time to configure and interface all pieces
and of course the right IT/dev skills to bring it all together…
OK, Let’s build it now !
– commodity IT hardware to run all the software
– some inexpensive SDI cards
– the minimalistic general audio/
_ video routing hardware & cables
– a reasonable amount of time to configure and interface all pieces
and of course the right IT/dev skills to bring it all together…
OK, Let’s build it now !
DIY Broadcast Platform
Pre-Production
Screenwriting : Celtx
Website : www.celtx.com
Twitter : @celtx
Languages : JS, XUL
Licence : CePL
Platforms : Windows, Linux, Mac
Price : free (desktop app), with addons for $9.99
Commercial equivalents : Adobe Story and many others
Celtx is an all-in-one media pre-production system, allowing you to write scripts for shows and films, to build storyboards and sketch setups, to schedule production and prepare roadbooks for the crew. While the desktop app is free, three addons are available for purchase (Plot view, Full screen mode and Performance tracker). Interestingly, you can also work on the go with their iOS mobile version ($4.99) or use their online service Studio to manage collaborative team work ($4.99 per month up to 5 users), all the desktop and mobile apps datas being synchronized with the Studio service. So their overall offer, while partly open-sourced, is very complete and affordable. What seems to lack here is a real community engagement around the product.
Non-Linear Production
NLE : EditShare Lightworks
Website : www.lightworksbeta.com
Twitter : @ESLightworks
Languages : Probably C/C++
Licence : Unknwown yet
Platforms : Windows, Linux & Mac (planned for Q4 2011)
Price : Core version free, Edu & Pros £20/£40 per year for pro features (Avid DNxHD codec is £36 one-shot)
Commercial equivalents : Final Cut Pro, Avid Media Composer
With Avid Media Composer also released in 1989, Lightworks is one of the veteran NLE systems on the market. In 2009, EditShare acquired it and during the NAB10 they announced their plans for open-sourcing Lightworks. Since that time they have had many request from Linux/Mac users so they decided to port the software to those platfoms before open-sourcing (this is now replanned for Q3 2012). When ported, Lightworks will be the first cross-platform NLE, but for the moment, Lightworks is downloadable as a binary release and works on Windows only.
Lightworks is really playing in first division (The King’s Speech and Martin Scorcese’s Hugo were edited on it) with FCP and Media Composer, as it offers multicam editing, realtime effects in SD/HD/2K, MXF Op1a and OpAtom support, extensive third party integration (like AE, Combustion, Digital Fusion…) and pro codecs support like RED, DNxHD and ProRes. The pro features for which you have to subscribe are the licensable pro codecs, EDL features, shared projects, titling module, hardware I/O support and stereoscopic support.
Supported hardware includes specific Matrox and Blackmagic cards, and more AJA and DVS models coming in 2012. The Q4 2011 roadmap includes AVC intra and MPEG-2 long-gop support, DVD/BR timeline export, XDCAM HD/EX support, support for Tangent Element control surfaces, and Linux/OSX beta releases. In 2012, the main plans apart from open-sourcing are full 64bits support, audio plugins and remote editing with proxy files. All these current and upcoming features, combined to the predictable forthcoming community support after open-sourcing of the software definitely make Lightworks a worthy long-term choice.
3D modeling and rendering : Blender
Website : www.blender.org
Twitter : @blender3d
Languages : C/C++ with Python API
Licence : GPL
Platforms : Windows, Linux, Mac, FreeBSD
Price : Free
Commercial equivalents : 3DS Max, Maya
Blender has also a long track-record of production, as it was a ray tracer back in 1989 when owned by Not A Number Technologies. Open-sourced in 2003, Blender is a full-blended 3D authoring environment including modelin, shading, animation, physics & particles, with extensive file format compatibility and support for frameserving and external renderers like Renderman, Poverman or Virtualight.
With its very mature codebase, extensive API, strong documentation and wide international users community, Blender has managed to place itself as a major actor in 3D production, and thus can be used without any difficulty in a TV workflow.
Color-correction : DaVinci Resolve Lite
Website : blackmagic-design.com
Twitter : @Blackmagic_News
Languages : unknown
Licence : Commercial with features restrictions
Platforms : Mac
Price : Free (pro version is $995)
Commercial equivalents : DaVinci Resolve, Autodesk Lustre
This one is not an open-source tool, but it can enter the goodies category. After having purchased Da Vinci Systems in 2009, Blackmagic Design started providing a free version of Resolve that you can use for color-correction in production with some features limitations. Resolve is the result of 25 years of color-correction and it includes many useful features like multipe video tracks conforming, color-grading by curve/RGB mixer/HDRX, RT noise reduction, image stabilizer, OpenCL/CUDA support, FCP integration, AVID MXF compatibility and extensive format support.
The limitations of the lite version of the software are that you can work on HD max (that shouldn’t be a problem in our context), that you can have a maximum of two color correction nodes, only a single GPU and RED socket. Other features are disabled too : 3D workflow, noise reduction, power mastering (multiple resolution deliverables from a single master session), remote grading and external database.
So here you got a free solution which allows some simple color-correction operations on a Mac – this can be enough for simple video production workflows as we imagine them in the present case. Even if you upgrade to the Resolve pro, the main source of expense won’t be the software but rather the dedicated equipment like the control panels that you must use to be really productive in grading.
Live Production
Multicam ingest : Ingex Studio
Website : ingex.sourceforge.net
Twitter : @ingextv
Languages : C/C++, Perl
Licence : GPL
Platforms : Linux
Price : Free
Commercial equivalents : EditShare Flow Ingest, ToolsOnAir Just:In, Avid AirSpeed Multi Stream
Built on top of FFmpeg, the Ingex Studio application suite from the BBC is designed to build low-cost flexible tapeless recording workflows. It can handle 4 SD or 2 HD SDI feeds and outputs MXF OP-Atom with various video essences (DNxHD, DVCPro-HD, IMX, DV50…) while creating video proxies in real-time. The default application has been built for DVS Centaurus II SD/HD SDI cards but it can easily changed in the code to support your Blackmagic or AJA cards if needed.
Ingex Studio uses CORBA for communication between modules and the recorders can remotely controlled through the network. After capture, the video segments can be exported directly to Avid AAF or Final Cut XML through a web interface which also allows search features on the recorders’ assets pool. The player can be used in Director’s Cut mode to record the final live program and you can even multicast any of the captured streams during the live session.
Ingex Studio can be configured in various operation modes and is well documented – definitely a very flexible and powerful platform for multicam recording.
Prompter : Telekast
Website : telekast.sourceforge.net
Languages : JS, XUL
Licence : GPL, MPL 1.1
Platforms : Windows, Linux
Price : Free
Commercial equivalents : Promptdog, uPrompt2
Telekast is a simple script editor and teleprompter based on the Mozilla Framework. Doing the job, but not more.
It’s good for simple setups, obviously very light for shows with complex sequences structure.
You can also check Teleprompter Freeware – not open source but free.
Vision mixer : OpenPlayout
Website : sourceforge.net/projects/openplayout/
Languages : C++
Licence : unknwown
Platforms : Linux
Price : Free
Commercial equivalents : CutFourHD, VidBlaster
Very few (if none) informations are available on OpenPlayout’s website. Browsing the code, we can see that it’s based on GStreamer – it handles live switching between two inputs with a crossfade. It’s compatible with GStreamer v4l2src pluginso it should work when used with the Blackmagic DeckLink GStreamer Plugin and a DeckLink card, as well as with the DVEO HD-SDI QuadPort H/i card thanks to David Schleef’s work. Let’s point out here that DVEO cards drivers are open source (a very rare and precious exception in the broadcast equipment world – kudos to them !) and that their API allows low level access to the hardware, including SDI clocking and raw VANC and HANC data.
There are other open-source alternatives for vision mixing : use CasparCG (see HowTo here) with a DeckLink Quad card or the old open-sourced VideoToaster code if you still find a card compatible with it…
Live Graphics : CasparCG
Website : www.casparcg.com
Twitter : @CasparCG
Languages : C++
Licence : GPL
Platforms : Windows
Price : Free
Commercial equivalents : Vidigo Graphics
Built over FFmpeg, CasparCG is developed by a team from the Swedish Broadcasting Corporation (“SVT”) where it is in use 24/7 for national broadcast in six TV channels (40 graphic servers). It handles the layering of video (live input and file-based like QUicktime, MPEG-2, AVI, DNxHD and all MPEG-4/H.264 flavours), dynamic graphics (developed in Flash, and linkable to any dynamic data source) and images with fine-grain control on each layer (playback, loop, transparency, posit
Screenwriting : Celtx
Website : www.celtx.com
Twitter : @celtx
Languages : JS, XUL
Licence : CePL
Platforms : Windows, Linux, Mac
Price : free (desktop app), with addons for $9.99
Commercial equivalents : Adobe Story and many others
Celtx is an all-in-one media pre-production system, allowing you to write scripts for shows and films, to build storyboards and sketch setups, to schedule production and prepare roadbooks for the crew. While the desktop app is free, three addons are available for purchase (Plot view, Full screen mode and Performance tracker). Interestingly, you can also work on the go with their iOS mobile version ($4.99) or use their online service Studio to manage collaborative team work ($4.99 per month up to 5 users), all the desktop and mobile apps datas being synchronized with the Studio service. So their overall offer, while partly open-sourced, is very complete and affordable. What seems to lack here is a real community engagement around the product.
Non-Linear Production
NLE : EditShare Lightworks
Website : www.lightworksbeta.com
Twitter : @ESLightworks
Languages : Probably C/C++
Licence : Unknwown yet
Platforms : Windows, Linux & Mac (planned for Q4 2011)
Price : Core version free, Edu & Pros £20/£40 per year for pro features (Avid DNxHD codec is £36 one-shot)
Commercial equivalents : Final Cut Pro, Avid Media Composer
With Avid Media Composer also released in 1989, Lightworks is one of the veteran NLE systems on the market. In 2009, EditShare acquired it and during the NAB10 they announced their plans for open-sourcing Lightworks. Since that time they have had many request from Linux/Mac users so they decided to port the software to those platfoms before open-sourcing (this is now replanned for Q3 2012). When ported, Lightworks will be the first cross-platform NLE, but for the moment, Lightworks is downloadable as a binary release and works on Windows only.
Lightworks is really playing in first division (The King’s Speech and Martin Scorcese’s Hugo were edited on it) with FCP and Media Composer, as it offers multicam editing, realtime effects in SD/HD/2K, MXF Op1a and OpAtom support, extensive third party integration (like AE, Combustion, Digital Fusion…) and pro codecs support like RED, DNxHD and ProRes. The pro features for which you have to subscribe are the licensable pro codecs, EDL features, shared projects, titling module, hardware I/O support and stereoscopic support.
Supported hardware includes specific Matrox and Blackmagic cards, and more AJA and DVS models coming in 2012. The Q4 2011 roadmap includes AVC intra and MPEG-2 long-gop support, DVD/BR timeline export, XDCAM HD/EX support, support for Tangent Element control surfaces, and Linux/OSX beta releases. In 2012, the main plans apart from open-sourcing are full 64bits support, audio plugins and remote editing with proxy files. All these current and upcoming features, combined to the predictable forthcoming community support after open-sourcing of the software definitely make Lightworks a worthy long-term choice.
3D modeling and rendering : Blender
Website : www.blender.org
Twitter : @blender3d
Languages : C/C++ with Python API
Licence : GPL
Platforms : Windows, Linux, Mac, FreeBSD
Price : Free
Commercial equivalents : 3DS Max, Maya
Blender has also a long track-record of production, as it was a ray tracer back in 1989 when owned by Not A Number Technologies. Open-sourced in 2003, Blender is a full-blended 3D authoring environment including modelin, shading, animation, physics & particles, with extensive file format compatibility and support for frameserving and external renderers like Renderman, Poverman or Virtualight.
With its very mature codebase, extensive API, strong documentation and wide international users community, Blender has managed to place itself as a major actor in 3D production, and thus can be used without any difficulty in a TV workflow.
Color-correction : DaVinci Resolve Lite
Website : blackmagic-design.com
Twitter : @Blackmagic_News
Languages : unknown
Licence : Commercial with features restrictions
Platforms : Mac
Price : Free (pro version is $995)
Commercial equivalents : DaVinci Resolve, Autodesk Lustre
This one is not an open-source tool, but it can enter the goodies category. After having purchased Da Vinci Systems in 2009, Blackmagic Design started providing a free version of Resolve that you can use for color-correction in production with some features limitations. Resolve is the result of 25 years of color-correction and it includes many useful features like multipe video tracks conforming, color-grading by curve/RGB mixer/HDRX, RT noise reduction, image stabilizer, OpenCL/CUDA support, FCP integration, AVID MXF compatibility and extensive format support.
The limitations of the lite version of the software are that you can work on HD max (that shouldn’t be a problem in our context), that you can have a maximum of two color correction nodes, only a single GPU and RED socket. Other features are disabled too : 3D workflow, noise reduction, power mastering (multiple resolution deliverables from a single master session), remote grading and external database.
So here you got a free solution which allows some simple color-correction operations on a Mac – this can be enough for simple video production workflows as we imagine them in the present case. Even if you upgrade to the Resolve pro, the main source of expense won’t be the software but rather the dedicated equipment like the control panels that you must use to be really productive in grading.
Live Production
Multicam ingest : Ingex Studio
Website : ingex.sourceforge.net
Twitter : @ingextv
Languages : C/C++, Perl
Licence : GPL
Platforms : Linux
Price : Free
Commercial equivalents : EditShare Flow Ingest, ToolsOnAir Just:In, Avid AirSpeed Multi Stream
Built on top of FFmpeg, the Ingex Studio application suite from the BBC is designed to build low-cost flexible tapeless recording workflows. It can handle 4 SD or 2 HD SDI feeds and outputs MXF OP-Atom with various video essences (DNxHD, DVCPro-HD, IMX, DV50…) while creating video proxies in real-time. The default application has been built for DVS Centaurus II SD/HD SDI cards but it can easily changed in the code to support your Blackmagic or AJA cards if needed.
Ingex Studio uses CORBA for communication between modules and the recorders can remotely controlled through the network. After capture, the video segments can be exported directly to Avid AAF or Final Cut XML through a web interface which also allows search features on the recorders’ assets pool. The player can be used in Director’s Cut mode to record the final live program and you can even multicast any of the captured streams during the live session.
Ingex Studio can be configured in various operation modes and is well documented – definitely a very flexible and powerful platform for multicam recording.
Prompter : Telekast
Website : telekast.sourceforge.net
Languages : JS, XUL
Licence : GPL, MPL 1.1
Platforms : Windows, Linux
Price : Free
Commercial equivalents : Promptdog, uPrompt2
Telekast is a simple script editor and teleprompter based on the Mozilla Framework. Doing the job, but not more.
It’s good for simple setups, obviously very light for shows with complex sequences structure.
You can also check Teleprompter Freeware – not open source but free.
Vision mixer : OpenPlayout
Website : sourceforge.net/projects/openplayout/
Languages : C++
Licence : unknwown
Platforms : Linux
Price : Free
Commercial equivalents : CutFourHD, VidBlaster
Very few (if none) informations are available on OpenPlayout’s website. Browsing the code, we can see that it’s based on GStreamer – it handles live switching between two inputs with a crossfade. It’s compatible with GStreamer v4l2src pluginso it should work when used with the Blackmagic DeckLink GStreamer Plugin and a DeckLink card, as well as with the DVEO HD-SDI QuadPort H/i card thanks to David Schleef’s work. Let’s point out here that DVEO cards drivers are open source (a very rare and precious exception in the broadcast equipment world – kudos to them !) and that their API allows low level access to the hardware, including SDI clocking and raw VANC and HANC data.
There are other open-source alternatives for vision mixing : use CasparCG (see HowTo here) with a DeckLink Quad card or the old open-sourced VideoToaster code if you still find a card compatible with it…
Live Graphics : CasparCG
Website : www.casparcg.com
Twitter : @CasparCG
Languages : C++
Licence : GPL
Platforms : Windows
Price : Free
Commercial equivalents : Vidigo Graphics
Built over FFmpeg, CasparCG is developed by a team from the Swedish Broadcasting Corporation (“SVT”) where it is in use 24/7 for national broadcast in six TV channels (40 graphic servers). It handles the layering of video (live input and file-based like QUicktime, MPEG-2, AVI, DNxHD and all MPEG-4/H.264 flavours), dynamic graphics (developed in Flash, and linkable to any dynamic data source) and images with fine-grain control on each layer (playback, loop, transparency, posit