UltraGrid Modules macOS - CESNET/UltraGrid GitHub Wiki

If you are willing to use some of the additional modules, you must compile them prior to compiling UltraGrid:


Portaudio

To use Portaudio, you will need Portaudio library installed inside your system including headers. When recognize with configure script, Portaudio support will be automatically added.

FastDXT

To use FastDXT, navigate to the ultragrid/FastDXT directory and compile it:

 cd FastDXT && make

The feature will be automatically recognized by UltraGrid.

SPEEX

Note: This setup aplies only for UltraGrid versions less than 1.1-rc3. With 1.1-rc3 and latter this is not needed - UG builds needed SPEEX modules by itself.

If you intend to send a audio captured by CoreAudio you should consider compiling also SPEEX module in order to resample audio (CoreAudio doesn't do it automatically). Otherwise, you won't need it.

To compile SPEEX, follow these steps:

  • enter directory with SPEEX

cd speex-1.2rc1

  • compile it (note that it has to be 32-bit)

CFLAGS='-arch i386' ./configure && make

(you don't have to install it)

JPEG

Obtaining CUDA

For JPEG compression you will need to have CUDA-capable NVidia card (a reasonably recent one, eg. GeForce 8800 or better). You will also need development drivers and Cuda Toolkit, both can be obtained from NVidia web pages. In order to use JPEG compression you have to have CUDA Toolkit 4.0 installed (UltraGrid 1.1-rc1 and prior). For UltraGrid 1.1-rc2 and later, choose CUDA Toolkit 4.1.

Compiling GPUJPEG library

needed only for UltraGrid 1.1-rc2 and higher

Enter the libgpujpeg directory and compile the library:

cd libgpujpeg && make

If you use gcc > 4.4 (most major Linux distributions) you will need to use an older gcc version. It can be achieved in Ubuntu with this commands (as root, eg. with sudo):

apt-get install gcc-4.4 g++-4.4

rm /usr/bin/gcc /usr/bin/g++ # these are symlinks in Ubuntu

update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-<current_gcc_version> 40 --slave /usr/bin/g++ g++ /usr/bin/g++-<current_gcc_version>

update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.4

Then, you can switch between different versions easily with the following command:

update-alternatives --config gcc

Configuring UltraGrid

UltraGrid configuration script expects that CUDA Toolkit installation is located in /usr/local/cuda (default). If so, no other action is required. If it is located in other place, you can pass its directory to UltraGrid configuration script with --with-cuda=<dir> parameter. E.g.:

./configure --with-cuda=/opt/cuda/

You should verify if JPEG is going to be compiled from the script output. Look for line like this:

 Configuration summary:
 <--- output omitted -->
 JPEG ........................ yes
 <--- output omitted -->

If you have supported NVidia Toolkit and have passed its output to the script (if needed) and you still don't see JPEG support enabled, consider reporting a bug to us.

⚠️ **GitHub.com Fallback** ⚠️