Installation#

For the First steps with Splash tutorial, you only need to install Splash.

The other featured examples in the Tutorials section relies on the Blender exporter. You need to install Blender as well as the Blender addon on top of installing Splash. After successfully completing the installation, you will be ready for the Single projector example tutorial.

Download and install Splash#

To get started with Splash on your workstation, you will first need to download Splash before installing it.

Here you will find instructions on how to do these two steps depending on your set-up and usecase.


Information about Splash dependencies#

Splash relies on a few libraries to get the job done. The mandatory libraries are:

  • External dependencies:

    • FFmpeg to read and write video files,

    • OpenGL, which should be installed by the graphic driver,

    • GSL (GNU Scientific Library) to compute calibration,

  • External dependencies bundled as submodules:

    • GLFW to handle the GL context creation,

    • GLM to ease matrix manipulation,

    • Snappy to handle Hap codec decompression,

    • cppzmq for its C++ bindings of ZMQ

    • JsonCpp to load and save the configuration,

    • stb_image to read images.

    • stduuid to handle UUIDs.

  • Dependencies built at compile-time from submodules:

    • doctest to do some unit testing,

    • ImGui to draw the GUI,

    • ZMQ to communicate between the various process involved in a Splash session,

Some other libraries are optional:

  • External dependencies:

    • libshmdata to read video flows from a shared memory,

    • portaudio to read and output audio,

    • Python for scripting capabilities,

    • GPhoto to use a camera for color calibration.

  • Dependencies built at compile-time from submodules:

    • libltc to read timecodes from an audio input,

Also, the Roboto font and the DSEG font family are used and distributed under the Apache license.

By default Splash is built and linked against the libraries included as submodules, but it is possible to force it to use the libraries installed on the system. This is described in the Manual compilation section.