Introduction
Supported distributions
The only officially supported Linux distribution is Ubuntu.
The latest release requires Ubuntu 22.04 or newer.
(While Composer has successfully been used on other distributions - no official guidance or responsibility are given or held by the Composer team for the compatibility or functionality)
It is always recommended to install or upgrade to the latest version of Composer for stability, performance and feature availability.
If - for some reason - an older version is required. Please refer to the additional tabs below (for each segment).
Prerequisites
1 - System packages
The following packages must be installed in order to run Composer.
sudo apt-get update
sudo apt-get install dotnet-runtime-8.0 yasm gcc libunistring-dev libgnutls28-dev libvorbis-dev libx264-dev libx265-dev libfontconfig1-dev libssl-dev build-essential make cmake
sudo apt-get update
sudo apt-get install dotnet-runtime-6.0 yasm gcc libunistring-dev libgnutls28-dev libvorbis-dev libx264-dev libx265-dev libfontconfig1-dev build-essential make cmake
The following tools and libraries are all required by Composer.
2 - NVIDIA driver with CUDA support
Composer only works with NVIDIA graphic cards, and require CUDA support from the proprietary drivers.
NVidia GPU driver supporting Cuda 12.8:
You need at least Nvidia driver >=570.26 - which is shipped with the proprietary Nvidia drivers.
CLI-based install: sudo apt-get install nvidia-driver-570
GUI-based install: Open Software and Updates
and install nvidia-driver-570
(or later)
NVidia GPU driver supporting Cuda 12.4:
You need at least Nvidia driver >=550.54.14 - which is shipped with the proprietary Nvidia drivers.
CLI-based install: sudo apt-get install nvidia-driver-550
GUI-based install: Open Software and Updates
and install nvidia-driver-550
(or later)
NVidia GPU driver supporting Cuda 11.6:
You need at least Nvidia driver >=515 - which is shipped with the proprietary Nvidia drivers.
CLI-based install: sudo apt-get install nvidia-driver-515
GUI-based install: Open Software and Updates
and install nvidia-driver-515
(or later)
3 - FFMPEG
Composer requires FFMPEG to work with specific library and codec support.
Non-free licenses
It is the responsibility of the user to acquire all necessary licenses for the below listed libraries and codecs.
wget https://github.com/FFmpeg/nv-codec-headers/releases/download/n12.1.14.0/nv-codec-headers-12.1.14.0.tar.gz
tar -xvf nv-codec-headers-12.1.14.0.tar.gz
cd nv-codec-headers-12.1.14.0
make
sudo make install
cd ..
git clone -b v1.5.3 --depth 1 https://github.com/Haivision/srt.git
cd srt
cmake .
make -j12
sudo make install
cd ..
rm -rf srt/
wget https://ffmpeg.org/releases/ffmpeg-6.1.tar.xz
tar -xvf ffmpeg-6.1.tar.xz
cd ffmpeg-6.1
./configure \
--enable-libx264 \
--enable-libx265 \
--enable-gpl \
--enable-libvorbis \
--enable-shared \
--enable-gnutls \
--enable-pic \
--enable-ffplay \
--enable-gnutls \
--disable-stripping \
--enable-libfontconfig \
--enable-libfreetype \
--enable-nvenc \
--enable-libsrt
make -j 12
sudo make install
sudo ldconfig
Verify installation
Issuing the command
ffmpeg
should yield output like belowffmpeg version 6.1 Copyright (c) 2000-2023 the FFmpeg developers built with gcc 14 (Ubuntu 14.2.0-4ubuntu2) configuration: --enable-libx264 --enable-libx265 --enable-gpl --enable-libvorbis --enable-shared --enable-gnutls --enable-pic --enable-ffplay --enable-gnutls --disable-stripping --enable-libfontconfig --enable-libfreetype --enable-nvenc --enable-libsrt libavutil 58. 29.100 / 58. 29.100 libavcodec 60. 31.102 / 60. 31.102 libavformat 60. 16.100 / 60. 16.100 libavdevice 60. 3.100 / 60. 3.100 libavfilter 9. 12.100 / 9. 12.100 libswscale 7. 5.100 / 7. 5.100 libswresample 4. 12.100 / 4. 12.100 libpostproc 57. 3.100 / 57. 3.100
sudo add-apt-repository ppa:savoury1/ffmpeg4
sudo apt-get update
sudo apt-get install ffmpeg
wget https://github.com/FFmpeg/nv-codec-headers/releases/download/n12.0.16.0/nv-codec-headers-12.0.16.0.tar.gz
tar -xvf nv-codec-headers-12.0.16.0.tar.gz
cd nv-codec-headers-12.0.16.0
make
sudo make install
cd ..
wget https://ffmpeg.org/releases/ffmpeg-5.1.3.tar.xz
tar -xvf ffmpeg-5.1.3.tar.xz
cd ffmpeg-5.1.3
./configure \
--enable-libx264 \
--enable-libx265 \
--enable-gpl \
--enable-libvorbis \
--enable-shared \
--enable-gnutls \
--enable-pic \
--enable-ffplay \
--enable-gnutls \
--disable-stripping \
--enable-libfontconfig \
--enable-libfreetype \
--enable-nvenc
make -j 12
sudo make install
sudo ldconfig
Verify installation
Issuing the command
ffmpeg
should yield output like belowffmpeg version 5.1.3 Copyright (c) 2000-2022 the FFmpeg developers built with gcc 11 (Ubuntu 11.3.0-1ubuntu1~22.04.1) configuration: --enable-libx264 --enable-libx265 --enable-gpl --enable-libvorbis --enable-shared --enable-gnutls --enable-pic --enable-ffplay --enable-gnutls --disable-stripping --enable-libfontconfig --enable-libfreetype --enable-nvenc libavutil 57. 28.100 / 57. 28.100 libavcodec 59. 37.100 / 59. 37.100 libavformat 59. 27.100 / 59. 27.100 libavdevice 59. 7.100 / 59. 7.100 libavfilter 8. 44.100 / 8. 44.100 libswscale 6. 7.100 / 6. 7.100 libswresample 4. 7.100 / 4. 7.100 libpostproc 56. 6.100 / 56. 6.100
Using a different / preexisting FFMPEG installation
While not recommended (it is possible to adjust the path to ffmpeg in the .vindralcomposerruntime configuration file found in the application root path:
#On Linux, set the ffmpeg.rootpath variable to the installation path of your FFmpeg X.X installation
ffmpeg.rootpath="/path/to/ffmpeg/libs"
Installation
Vindral Composer is distributed as gzipped tar file (.tgz).
Extract the contents
tar xfvz VindralComposerRuntime-Linux.tgz
Run the application
./vindralcomposerruntime
Optional packages and third-party tools
Desktop Video - Decklink capture
If a Decklink capture card is to be used.
Please refer to https://www.blackmagicdesign.com/support/family/capture-and-playback
Object detection
Requires Composer R2 2025
The Object detection modules require at least Composer R2 2025.
In order to utilize Composer’s add-on object detection features, the following additional libraries are needed:
Install CUDA ToolKit 12.8 for your Linux version
Install cuDNN for your Linux version
Restart your system.
Speech-to-text
Requires Composer R2 2025
The Speech-to-text optional module requires at least Composer R2 2025.
In order to utilize Composer’s add-on speech-to-text, the following additional libraries are needed:
Install CUDA ToolKit 12.8 for your Linux version
Restart your system.
TensorRT - Optimize models for speed
Requires Composer R3 2025
The TensorRT optional packages only work in conjunction with cuDNN and requires Composer R3 2025 (Cuda 12.8).
version="10.9.0.34-1+cuda12.8"
sudo apt-get install \
libnvinfer-bin=${version} \
libnvinfer-dev=${version} \
libnvinfer-dispatch-dev=${version} \
libnvinfer-dispatch10=${version} \
libnvinfer-headers-dev=${version} \
libnvinfer-headers-plugin-dev=${version} \
libnvinfer-lean-dev=${version} \
libnvinfer-lean10=${version} \
libnvinfer-plugin-dev=${version} \
libnvinfer-plugin10=${version} \
libnvinfer-samples=${version} \
libnvinfer-vc-plugin-dev=${version} \
libnvinfer-vc-plugin10=${version} \
libnvinfer10=${version} \
libnvonnxparsers-dev=${version} \
libnvonnxparsers10=${version} \
python3-libnvinfer-dev=${version} \
python3-libnvinfer-dispatch=${version} \
python3-libnvinfer-lean=${version} \
python3-libnvinfer=${version} \
tensorrt-dev=${version} \
tensorrt-libs=${version} \
tensorrt=${version}
sudo apt-mark hold \
libnvinfer-bin \
libnvinfer-dev \
libnvinfer-dispatch-dev \
libnvinfer-dispatch10 \
libnvinfer-headers-dev \
libnvinfer-headers-plugin-dev \
libnvinfer-lean-dev \
libnvinfer-lean10 \
libnvinfer-plugin-dev \
libnvinfer-plugin10 \
libnvinfer-samples \
libnvinfer-vc-plugin-dev \
libnvinfer-vc-plugin10 \
libnvinfer10 \
libnvonnxparsers-dev \
libnvonnxparsers10 \
python3-libnvinfer-dev \
python3-libnvinfer-dispatch \
python3-libnvinfer-lean \
python3-libnvinfer \
tensorrt-dev \
tensorrt-libs \
tensorrt
Ultralight - HTML renderer
If a HTML renderer is to be used, the following packages are required:
Ultralight requires Ubuntu 22+
Due to dependencies, Ultralight requires at least Ubuntu 22+ to work with Composer.
sudo apt-get install libgstreamer1.0-0 libgtk-3-dev
OpenBLAS - Face Detection
If the face detection module / function is to be used, the following packages are required:
sudo apt-get install libopenblas0
sudo apt-get install libopenblas-base
NDI support
To discover NDI sources, the following packages are required:
sudo apt-get install avahi-daemon
Updates
Composer does not have a predefined release schedule - but historically, there have been a few big releases per year.
The ambition is to avoid breaking changes, but it is always recommended that a clean install is performed when updating from one major release to another.
Please refer to the below checklist for backup and restoring content for a Composer update.
Be sure to backup;
All project files (.prj)
All media files (used within projects)
settings.xml
license.lic
FAQ
Nvidia-smi shows “No devices were found” after installation
This either means that the installation failed, or that conflicting kernels are found.
Try purging all nvidia-related packages and re-do the installation from the CLI:
sudo apt purge '*nvidia*'
sudo apt-get install nvidia-driver-xxx
Composer says no CUDA compatible device found
Double check that
a) nvidia-smi
shows output (or refer to the FAQ-entry above)
b) the correct driver and cuda version for the Composer version is installed. This page has several sections with different instructions based on the Composer version.
Missing or faulty FFMPEG installation
If Composer can not find the (correct version of, refer to the FFMPEG installation section) libraries an error will occur. Double check the FFMPEG installation instructions above.
If using a custom-compiled (not recommended) FFMPEG version; please consider following the instructions in this guide. It is possible to install and configure multiple FFMPEG versions (if absolutely necessary) and configure its rootpath in .vindralcomposerruntime (in the application root)