- alt+mouse wheel: x zoom
- ctrl+mouse wheel: y zoom
- (mouse wheel) or (W, S): y move
- (shift+mouse wheel) or (A, D): x move
- left button drag: add note
- right button : delete note
- The core algorithm comes from Tom Baran's Autotalent(http://web.mit.edu/tbaran/www/autotalent.html) (pitch_detector_talent.cpp,pitch_shifter_talent.cpp,auto_tune.cpp)
- TalentedHack(http://code.google.com/p/talentledhack/)
- JUCE is licensed under the GPL v3 or a commercial license. See juce.com for more details.
pacman -S mingw-w64-x86_64-toolchain
pacman -S make cmake autoconf automake-wrapper libtool mingw-w64-x86_64-python3 mingw-w64-x86_64-waf mingw-w64-x86_64-fftw mingw-w64-x86_64-rubberband
-
Download Juce (https://github.com/juce-framework/JUCE 5.4.7)
-
modify:
JUCE/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp:2442
/* extern "C" BOOL WINAPI DllMain (HINSTANCE instance, DWORD reason, LPVOID) { if (reason == DLL_PROCESS_ATTACH) Process::setCurrentModuleInstanceHandle (instance); return true; } */
-
modify:
JUCE/modules/juce_audio_plugin_client/VST3/juce_VST3_Wrapper.cpp:3174
extern "C" __declspec (dllexport) IPluginFactory* GetPluginFactory()
-
-
run Projucer.exe
-
File->Open MXTune/JUCE/mx_tune.jucer
-
File->Global Paths
- modify "Path to JUCE" and "JUCE Modules"
-
File->Save All
-
Download the VST SDK (http://www.steinberg.net/en/company/developers.html)
-
copy vstsdk2.4/pluginterfaces to VST_SDK/VST3_SDK/
-
copy VST_SDK/VST3_SDK to MXTune/
-
modify:
-
VST3_SDK\base\source\fstring.cpp:226
#define vsnprintf _vsnprintf -> //#define vsnprintf _vsnprintf
-
VST3_SDK\pluginterfaces\base\ipluginbase.h:423
extern "C" __declspec (dllexport) Steinberg::IPluginFactory* GetPluginFactory ();
-
./bootstrap
./configure --prefix=/mingw64 --enable-static --disable-shared
make CXXFLAGS="-DSOUNDTOUCH_PREVENT_CLICK_AT_RATE_CROSSOVER=1"
make install
python3 /mingw64/bin/waf configure --enable-fftw3f --disable-tests --disable-examples --disable-wavread --disable-wavwrite --prefix=/mingw64
python /mingw64/bin/waf install -j4
mkdir build-cmake
cd build-cmake
cmake .. -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -G "Unix Makefiles"
make -j4
-
Prerequisites:
- CMake
- Git
- Xcode
- Xcode command-line tools
- Homebrew
-
Install Xcode from Mac App Store
-
Install Xcode command-line tools:
xcode-select --install
brew install pkg-config brew install autoconf brew install automake brew install libtool brew install cmake
### JUCE
Download Juce (https://github.com/juce-framework/JUCE 7.0.5)
run Projucer
File->Open MXTune/JUCE/mx_tune.jucer
File->Global Paths modify "Path to JUCE" and "JUCE Modules"
File->Save All
### VST SDK
Download the VST SDK (http://www.steinberg.net/en/company/developers.html)
copy vstsdk2.4/pluginterfaces to VST_SDK/VST3_SDK/
copy VST_SDK/VST3_SDK to MXTune/
### build Audio
./configure --enable-static --enable-float --enable-single ./waf configure --enable-fftw3f --disable-tests --disable-examples --disable-wavread --disable-wavwrite --notest sudo ./waf install
### build SoundTouch
make CXXFLAGS="-DSOUNDTOUCH_PREVENT_CLICK_AT_RATE_CROSSOVER=1 -fdata-sections -ffunction-sections" sudo make install
### build rubberband
make -f otherbuilds/Makefile.macos sudo cp -R rubberband /usr/local/include sudo cp lib/* /usr/local/lib sudo cp build/meson-private/rubberband.pc /usr/local/lib/pkgconfig/
### build MXTune
mkdir build-cmake cd build-cmake cmake .. make -j6 sudo cp libmx_tune.dylib /Library/Audio/Plug-Ins/VST/mx_tune.vst
## linux
- ```sudo apt install libfftw3-dev```
- ```./build_linux.sh```