Skip to content

An application which provides a real-time visualisation of audio frequencies represented as colour.

License

Notifications You must be signed in to change notification settings

jxckgan/synesthesia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

synesthesia

Synesthesia is an application which provides a real-time visualisation of audio frequencies represented as colour. Features a rudimentary EQ, real-time frequency & wavelength information, and an audio input selection system.

Building & Running

Synesthesia runs on Windows (DirectX 12), macOS (Metal), and Linux (Vulkan). To run this project, make sure cmake is installed, and just clone this repository w/ submodules and run make run (we build app dependencies locally):

Note: For Windows clients, you must install VS Microsoft C++ Build Tools, here is a guide for installing and setting up your PATH.

# Clone the repository with submodules
git clone --recurse-submodules https://github.com/jxckgan/synesthesia
cd synesthesia

# Create (and enter) the build directory
mkdir build && cd build

# Configure and build
cmake ..
cmake --build .

# Run Synesthesia
./synesthesia

Building an App Bundle on macOS

In order to build a macOS Application Bundle, we use the following flags (-DBUILD_MACOS_BUNDLE) to enable our app-building option:

cmake .. -DBUILD_MACOS_BUNDLE=ON
cmake --build .

And your .app will be in the root of the build directory.

Building an Executable on Windows

To build a standalone/portable Windows executable, we use the following flags (-DCMAKE_BUILD_TYPE=Release) to build:

cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release

Your executable will then be placed in the Release folder (placed at the root of your build directory).

Todo

  • Cross-platform support
  • Better/granular EQ control
  • Ability for visualisation of multiple frequency bands
  • Vulkan port for Linux
  • Generally more control over settings
  • DAW-integration

Credits & Footnotes

⚠️ Warning:
This application may display rapidly changing colors when multiple frequencies are played. If you have photosensitive epilepsy, I strongly advise against using this application.

Note: This application is artistic in nature, and doesn't aim to replicate Synesthesia (Chromesthesia) or to be scientifically accurate.

About

An application which provides a real-time visualisation of audio frequencies represented as colour.

Topics

Resources

License

Stars

Watchers

Forks