Digital-Scratch is a free software for DJs. It analyzes motions (rotation speed and direction) of a vinyl disc played by a turntable. It also provides a nice and simple player that play digital tracks allowing you to mix as you would do it with regular records.
In other words: with Digital-Scratch you can mix your digital music track collection with regular vinyl turntables.
- More informations at http://www.digital-scratch.org.
- Mailing list: digitalscratch@googlegroups.com (to subscribe, send a mail to digitalscratch+subscribe@googlegroups.com)
- Up to 3 timecoded vinyl disc, (Serato Scratch Live, Final Scratch,...)
- Up to 3 vinyl turntables and a mixer
- A GNU/Linux or MS Windows computer (not supported anymore)
- A sound card driven by JACK a stereo input/output for each turntable
- An optionnal external Novation Dicer controller
The core motion detection is done by an SDK built as a shared library: libdigitalscratch. It can be integrated with various kind of controlable software player.
There is also a player which uses the library: digitalscratch. This player is able to play one or two tracks. The playback parameters (speed and direction) could be changed in real time. It also provides a file explorer for music track management.
libdigitalscratch (motion detection) is based on:
digitalscratch (audio player) is based on:
sudo add-apt-repository ppa:julien-rosener/digitalscratch
sudo apt-get update
sudo apt-get install digitalscratch
apt-get install software-properties-common
wget -qO - http://www.digital-scratch.org/debian/julien.rosener@digital-scratch.org.gpg.key | apt-key add -
add-apt-repository "deb http://www.digital-scratch.org/debian/ stable main"
apt-get update
apt-get install digitalscratch
Go to the download page: http://www.digital-scratch.org/download.html
sudo apt install build-essential \
qtmultimedia5-dev libqt5multimedia5-plugins qtbase5-dev qtbase5-dev-tools \
libjack-jackd2-dev libasound2-dev \
libsamplerate0-dev \
libfftw3-dev cmake \
libavformat-dev libavcodec-dev libavutil-dev libswresample-dev
apt-get install software-properties-common
wget -qO - http://www.digital-scratch.org/debian/julien.rosener@digital-scratch.org.gpg.key | apt-key add -
add-apt-repository "deb http://www.digital-scratch.org/debian/ stable main"
apt-get update
apt-get install build-essential git \
qt5-default qtmultimedia5-dev \
libjack-jackd2-dev libasound2-dev \
libsamplerate0-dev \
libkeyfinder-dev \
libavformat-dev libavcodec-dev libavutil-dev libswresample-dev
git clone https://github.com/mixxxdj/libkeyfinder.git
cd libkeyfinder
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/ -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTING=OFF -S . -B build
cmake --build build
sudo cmake --install build
cd libdigitalscratch
qmake
make
sudo make install
cd ../digitalscratch
qmake
make
sudo make install
- Install Visual Studio 2013 Community
- Install Qt 5.x for Windows 32-bit (MSVC 2013, OpenGL), including QtCreator
- Start Qt Creator.
- Load project
libdigitalscratch.pro
anddigitalscratch.pro
. - For each projects, use the build kit which uses the compiler from Visual Studio 2013 Community.
- For
libdigitalscratch
set the output directory tolibdigitalscratch\
(Debug and Release build configuration). - For
digitalscratch
set the output directory todigitalscratch\
(Debug and Release build configuration). - For both projects (starting from
libdigitalscratch
), right click on the project name, then "Run qmake", then "Build".
Digital-Scratch player and library are released under GNU GPL license.