HulaLoop
Simple cross-platform audio loopback and recording.
HulaLoop Documentation

HulaLoop

Important Commands

A rough set of commands needed to build the project.

Git

Clone the project:

1 git clone --recurse-submodule https://github.com/symboxtra/HulaLoop

Update an already cloned submodule:

1 git submodule update --remote --merge

Dependencies

Debian-based Linux

Required:

1 sudo apt install g++ build-essential libgl1-mesa-dev cmake libasound2 libasound2-dev

IMPORTANT: Qt must be installed using the GUI installer since apt does not backport a recent enough version.

If you want to compile documentation:

1 sudo apt install python3-sphinx doxygen graphviz
2 python -m pip install recommonmark

OSX

Install brew:

1 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
1 brew install g++ qt build-essential cmake portaudio

IMPORTANT: JACK2 must be installed using the GUI installer since brew only includes JACK1.

If you want to compile documentation:

1 brew install sphinx-doc doxygen graphviz
2 python -m pip install recommonmark

Windows

CMake

1 mkdir build
2 cd build
3 cmake ..
4 cmake --build .
5 ./bin/<executable name>

CTest

1 cd build
2 ctest -C Debug -V

### Build Tutorials and Documentation ###

1 cd docs
2 make html # Runs Doxygen and Sphinx builds
3 cd build-docs/html
4 # python -m SimpleHTTPServer is a simple way to serve these
5 # Open localhost:8000 in your browser to view

Build Developer Documentation

This is built with the first option. To build separetly, use:

1 cd docs
2 doxygen # Finds default Doxyfile
3 cd build-doxygen/html