Installation (Linux)
In addition to your compiler suite, shenidam's dependencies are cmake, fftw3 (with single precision support), libsamplerate and libsndfile. You may install them from your package manager or compiled from source.
After having downloaded/extracted the shenidam sources in a path writeable by you (e.g. /path/to/src), create a build directory (e.g. /path/to/build), change directory to it, and then type the commands.
$ cmake /path/to/src
$ make
$ sudo make install
basic shenidam usage
To map track T.wav to base B.wav and save the mapped result in track O.wav.
$ shenidam -b B.wav -i T.wav -o O.wav
Or, for N (>1) multiple files T_1.wav ... T_N.wav to (respectively) O_1.wav ... O_N.wav
$ shenidam -n N -b B.wav -i T_1.wav ... T_N.wav -o O_1.wav ... O_n.wav
Basic shenidam-av usage
This executable requires avconv and python 2.7 (not 3.x), so be sure to have them installed.
To map audio-visual files T.mov and T2.mov to base B.wav and save the mapped results in shenidam.T.mkv and shenidam.T2.mkv respectively.
$ shenidam-av -b B.wav -o "{dir}/shenidam.{base}.mkv" T.mov T2.mov
You should make sure the audio codec of the base, as well as the video codec of the track are valid for the destination format. If not, use parameters -arp "arguments to pass to avconv".
If instead of replacing audio you want to just determine the offset from the track to the base (divide the values by the sample rate of the base in order to get times in seconds), do the following instead:
$ shenidam-av -b B.wav -n -m offsets.csv T.mov T2.mov
QShenidam
Once everything is compiled, you may use QShenidam instead of the command lines. It requires avconv, python and PyQT. You may select the base and the tracks to map to the base, as well as the output templates.