Skip to content

brummer10/neuralrecord

Repository files navigation

Neural Record

A Neural Recorder plug to make the process of cloning external soft/hardware a bit more comfortable

NeuralRecord

Features a round trip measurement routine. This allows to load the plug, connect the output to the system output, loop over external gear (soft or hardware) and back to the Recorder input.

Simply press "Capture" to play the "input.wav" file to the output and record the returning input delayed by the measured round trip latency.

Resulting recorded "target.wav" file will be perfectly in sync with the used "input.wav" file. Currently, both files would be saved under "$(HOME)/profiles/". The "target.wav" file will be overwritten on each Capture run, so there will be always only one target file. You need to upload it from the device in order to use it with the AIDA-X or NAM trainer.

The "input.wav" file comes as resource with the plug (hence the big size of the binary packages) and get copied over to that folder, when no input.wav file was found there. This allows advanced users to use their own input.wav file by simply replace the one in that folder.

The target.wav file get checked during record and run to a normalisation function when needed. (Only when the max peek in target is above the max peek in input).

The record will be saved in the PCM24 wav format (same as the input.wav file).

Formats

Neural Record come in the following plug-in formats:

Compiling

Make sure you have installed the required build tools and libraries (see section "Prerequisites" below) and then clone this repository (including sub-modules) and simply run make in the project's root directory:

git clone --recursive https://github.com:brummer10/neuralrecord
cd neuralrecord
make

Installation

To install all plugin formats to their appropriate system-wide location, run the following command (root priviledges may be required):

make install

The makefiles support the usual PREFIX and DESTDIR variables to change the installation prefix and set an installation root directory (defaulty: empty). PREFIX defaults to /usr/local, but on macOS and Windows it is not used, since the system-wide installation directories for plugins are fixed.

Use make's -n option to see where the plugins would be installed without actually installing them.

You can also set the installation directory for each plugin format with a dedicated makefile variable.

  • LV2: LV2_DIR (<prefix>/lib/lv2)
  • VST3: VST3_DIR (<prefix>/lib/vst3)

Example:

make DESTDIR=/tmp/build-root PREFIX=/usr VST2_DIR=/usr/lib/lxvst install

To install the plugins only for your current user account, run:

make install-user

Again, you can also set the installation directory for each plugin format with a dedicated makefile variable.

  • LV2: USER_LV2_DIR ($HOME/.lv2)
  • VST3: USER_VST3_DIR ($HOME/.vst3)

Note: The given default values for all of the above listed environment variables differ depending on the target OS.

Prerequisites

  • The GCC C++ compiler, library and the usual associated software build tools (GNU make, etc.).

    Debian / Ubuntu users should install the build-essential package to get these, Arch users the base-devel package group.

  • pkgconf

The LV2 and [VST2] (vestige) headers are included in the DPF framework, which is integrated as a Git sub-module. These need not be installed separately to build the software in the respective plug-in formats.

Author

This software was created by brummer.

Acknowledgements

This project is built using the DISTRHO Plugin Framework (DPF) and set up with the cookiecutter-dpf-effect project template.

About

A Neural Recorder plug to make the process of cloning external soft/hardware a bit more comfortable

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published