Code Monkey home page Code Monkey logo

scratcher's Introduction

Scratcher

Scratcher is a dedicated sound-effect generator simulating the DJ Scratching technique.

The sound-effect is generated by editing 2 curves using the UI provided by the software.

The first curve is a time-map. It controls the back and forth movement of the audio sample being scratched.

The second curve controls the volume of the sound effect.

A control points can be added to a curve by a double-click, and can be edited by dragging. The time-map curve is a Cubic Hermite Spline (C1 continuous). Therefore, a slope value can be set for each control-point in addition to its position, where a value 0 is most common. The volume curve is simpler. It is piecewise linear (C0 continuous).

Optionally, the sound-effect can be mixed with a BGM in real time.

DJ Scratching resources can be found on internet, for example: https://soundsozai.com/dj-scratch-samples/

Binary Releases

https://github.com/fynv/Scratcher/releases/

Building from Source-code

Download Dependencies

  • Qt5

For Windows:

https://www.qt.io/download

For Linux:

Install qt5-default using the system package manager, for example:

$ sudo apt install qt5-default
  • FFMpeg 4.3

For Windows:

A prebuilt package can be found at https://www.gyan.dev/ffmpeg/builds/.

For Linux:

Install ffmpeg and libavformat-dev using the system package manager, for example:

$ sudo add-apt-repository ppa:jonathonf/ffmpeg-4
$ sudo apt update
$ sudo apt install ffmpeg
$ sudo apt install libavformat-dev

Clone the repository

git clone https://github.com/fynv/Scratcher.git

Create a "build" folder and build with CMake

For Windows, the variables "FFMPEG_ROOT" and "QT_ROOT" need to be set according to where the dependencies are installed. For Linux, these are not needed if the dependencies are installed to system locations (/usr/ for example).

After "make install", the binary can be found in the "bin" folder.

License

Scratcher is licensed under GPL 2.0

scratcher's People

Contributors

fynv avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

tayraynay

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.