Live Video Mixing
vimix performs graphical mixing and blending of several movie clips and computer generated graphics, with image processing effects in real-time.
Its intuitive and hands-on user interface gives direct control on image opacity and shape for producing live graphics during concerts and VJ-ing sessions.
The output image is typically projected full-screen on an external monitor or a projector, and can be streamed live (SRT, Shmdata) or recorded (without audio).
vimix is the successor for GLMixer - https://sourceforge.net/projects/glmixer/
GPL-3.0-or-later See LICENSE
Check the Quick Installation Guide
Download and install a released flatpak package
flatpak install --user vimix
NB: Build your flatpak package to get the latest beta version; instructions are here.
Download and install a released snap package
snap install vimix
Install the stable debian package (slower release frequency)
sudo apt install vimix
Download and open a release package from https://github.com/brunoherbelin/vimix/releases
NB: You'll need to accept the exception in OSX security preference.
git clone --recursive https://github.com/brunoherbelin/vimix.git
This will create the directory 'vimix', download the latest version of vimix code, and (recursively) clone all the internal git dependencies.
First time after git clone:
mkdir vimix-build
cd vimix-build
cmake -DCMAKE_BUILD_TYPE=Release ../vimix
cmake --build .
This will create the directory 'vimix-build', configure the program for build, and compile vimix.
If successful, the compilation will have produced the executable vimix
in the src
directory.
You can run vimix with ./src/vimix
:
...
[100%] Built target vimix
./src/vimix
Run these commands from the vimix-build
directory if you did 'Clone' and 'Compile' previously and only want to get the latest update and rebuild.
git -C ../vimix/ pull
cmake --build .
This will pull the latest commit from git and recompile.
Run this commands from the vimix-build
directory before runing 'Update clone and re-compile above'
git -C ../vimix/ checkout beta
It should say;
branch 'beta' set up to track 'origin/beta'.
Switched to a new branch 'beta'
Compiling tools:
- gcc
- make
- cmake
- git
Libraries:
- gstreamer
- gst-plugins (libav, base, good, bad & ugly)
- libglfw3
- libicu (icu-i18n icu-uc icu-io)
Optionnal:
- glm
- stb
- TinyXML2
- AbletonLink
- Shmdata
apt-get install build-essential cmake libpng-dev libglfw3-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-libav libicu-dev libgtk-3-dev
Optionnal:
apt-get install libglm-dev libstb-dev libtinyxml2-dev ableton-link-dev
Follow these instructions to install Shmdata.
git clone https://gitlab.com/sat-metalab/shmdata.git
mkdir shmdata-build
cd shmdata-build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_BUILD_TYPE=Release -DWITH_PYTHON=0 -DWITH_SDCRASH=0 -DWITH_SDFLOW=0 ../shmdata-build
cmake --build . --target package
sudo dpkg -i ./libshmdata_1.3*_amd64.deb
brew install cmake libpng glfw gstreamer icu4c