NDI to JACK is an application that connects an NDI audio source to JACK for use as an audio output into other JACK compatible applications. The JACK to NDI application, which is included, creates an NDI source from a JACK input.
- Manage NDI connections using the integrated web server
- Support for up to 30 simultaneous 2 channel unique NDI audio sources
- Uses the latest version of NDI - NDI 5
- Nearly zero latency
This software is tested with a Raspberry Pi 4 (32 and 64-bit). This software does not require much CPU power and so other lower power devices could possibly work.
Make sure git is installed.
sudo apt update
sudo apt install git
Clone this repository and cd
into it.
git clone https://github.com/windows10luke/NDI-to-JACK.git && cd NDI-to-JACK
Run this compile and install script
sudo bash ./easy-install-rpi4-aarch64.sh
Installation is now complete!
Run this compile and install script
sudo bash ./easy-install-rpi4-armhf.sh
Installation is now complete!
Run this compile and install script
sudo bash ./easy-install-rpi3-armhf.sh
Installation is now complete!
Run this compile and install script
sudo bash ./easy-install-x86_64.sh
Installation is now complete!
Compiling on generic ARM64 requires use of the NDI Advanced SDK. Due to licensing restrictions, the NDI Advanced SDK must be downloaded manually from NDI's website: ndi.tv Extract the downloaded NDI Advanced SDK .tar file and copy it to the NDI-to-JACK directory on the target device. This can be achieved by using FTP, SCP, or Samba.
Compile and install
sudo bash ./easy-install-generic-aarch64.sh
Installation is now complete!
Compiling on generic ARM32 requires use of the NDI Advanced SDK. Due to licensing restrictions, the NDI Advanced SDK must be downloaded manually from NDI's website: ndi.tv Extract the downloaded NDI Advanced SDK .tar file and copy it to the NDI-to-JACK directory on the target device. This can be achieved by using FTP, SCP, or Samba.
Compile and install
sudo bash ./easy-install-generic-armhf.sh
Installation is now complete!
Once the installation process is complete, it will create an executable file located at /opt/ndi2jack/bin/ndi2jack
The installer also creates a symlink to /usr/bin so that it can be run from a normal terminal.
To run and start the web server:
sudo ndi2jack
Once the installation process is complete, it will create an executable file located at /opt/ndi2jack/bin/jack2ndi
The installer also creates a symlink to /usr/bin so that it can be run from a normal terminal.
To run (multiple instances can be run with different options for multiple NDI send instances):
sudo jack2ndi
By default this service file runs ndi2jack as the root user with realtime CPU scheduling. This also assumes that JACK is running as a service as the root user.
sudo cp ./ndi2jack.service /etc/systemd/system/
sudo systemctl enable ndi2jack.service
sudo systemctl start ndi2jack.service
By default this service file runs jack2ndi as the root user with realtime CPU scheduling. This also assumes that JACK is running as a service as the root user.
sudo cp ./jack2ndi.service /etc/systemd/system/
sudo systemctl enable jack2ndi.service
sudo systemctl start jack2ndi.service
sudo service jackd stop
sudo rm -R NDI-to-JACK
git clone https://github.com/windows10luke/NDI-to-JACK.git && cd NDI-to-JACK
Run the easy install for the CPU type it is running on (e.g. sudo bash ./easy-install-rpi4-aarch64.sh
). Reboot when finished
https://wiki.linuxaudio.org/wiki/list_of_jack_frame_period_settings_ideal_for_usb_interface