The contents of tutorials is available here. In this tutorial we will install gtkIOStream and test that it is setup correctly.
Firstly, we will install the requirements:
Code: Select all
sudo apt-get install libsox-dev libeigen3-dev libfftw3-dev libasound2-dev libjack-jackd2-dev
Code: Select all
sudo apt install libsox-dev libeigen3-dev libfftw3-dev libasound2-dev libjack-jackd2-dev sox libgtk2.0-dev
eigen is a set of headers which allow array/vector/matrix math processing. They are setup to take advantage of CPU hardware acceleration and they also do fantastically complex math with very simple commands.
fftw3 is regarded as the fastest fft (fast Fourier Transform) library. It can convert time domain data to the frequency domain.
libasound2 is the Linux official sound system, which is built into the kernel. libasound2 is the library which allows you to interface ALSA in a fantastically low level manner.
libjack-jackd2 is great for low latency audio routing - it even lets you route audio over the web!
We also need the necessary development tools :
Code: Select all
sudo apt-get install git g++ autoconf libtool
Code: Select all
git clone https://github.com/flatmax/gtkiostream.git
Code: Select all
cd gtkiostream
./tools/autotools.sh
Now we are ready to configure the make system using autotools :
Code: Select all
./configure --disable-octave
Now if configure succeeded, then you are ready to compile :
Code: Select all
make -j2
At this point, after quite some time (on my Pi, around 30 minutes) gtkIOStream should have compiled.
Finally we install it :
sudo make install
We can test the installation by going to our home directory and running a command :
Code: Select all
cd
WSOLA -h
Code: Select all
pi@raspberrypi:~ $ WSOLA -h
Usage: WSOLA -h or --help
Usage: WSOLA fileName.wav rate
the fileName can be any readable audio file format.
the rate can be any number within a reasonable range where 0 < rate < 5 or some reasonable speed.
Outputs to the file fileName.wav.rate.wav