All Projects â†’ ojacques â†’ SynthesiaKontrol

ojacques / SynthesiaKontrol

Licence: MIT license
🎹 Use Native Instruments Komplete Kontrol mk2 light guide in Synthesia

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to SynthesiaKontrol

cabl
Controller ABstraction Layer
Stars: ✭ 111 (+21.98%)
Mutual labels:  native-instruments, komplete-kontrol
viano
MIDI piano app, written in V. Visualizes and plays back a MIDI file (similarly to Synthesia)
Stars: ✭ 42 (-53.85%)
Mutual labels:  synthesia
syn2midi
Create pianobooster midi from youtube piano video lessons (Synthesia).
Stars: ✭ 42 (-53.85%)
Mutual labels:  synthesia
Neothesia
Flashy Synthesia Like Software For Linux,Windows and MacOs
Stars: ✭ 483 (+430.77%)
Mutual labels:  synthesia
Kazedan
A Synthesia styled MIDI visualization.
Stars: ✭ 18 (-80.22%)
Mutual labels:  synthesia
stempeg
Python I/O for STEM audio files
Stars: ✭ 70 (-23.08%)
Mutual labels:  native-instruments
rebellion
Rebellion is an ongoing project which lets you use Native Instruments devices (such as a Maschine MK3 or the Komplete Kontrol MK2 keyboards) outside the Komplete Kontrol or Maschine software.
Stars: ✭ 26 (-71.43%)
Mutual labels:  komplete-kontrol
FLNI KK
Creating a FL Midi Script for the Komplete Kontrol M-Series and A-Series
Stars: ✭ 44 (-51.65%)
Mutual labels:  komplete-kontrol

Synthesia Kontrol Guide

Use Native Instruments Komplete Kontrol MK1 and MK2 light guide in Synthesia to learn keyboard.

Synthesia Kontrol

This is a project for my son, which you may find useful.

This program listens to light events from Synthesia sent to a virtual LoopBe1 midi port and lights the keys on Komplete Kontrol keyboard accordingly.

Install

Pre-requisites

  • Install LoopBe1 virtual midi port driver.

    💡 On Mac, you can use the built in "IAC Driver" - open "Audio midi setup" to create a device named "LoopBe" as explained by D-One

    🆕New: Since January 2023, check out KompleteSynthesia: a MAC native project from @tillt

  • In Synthesia:

    • Go to settings/Music Devices
    • Select "LoopBe Internal MIDI" from "Music Output"
    • In Keylight section of that output, select "Finger-based channel" (the last mode after 'channel 16')

SynthesiaKontrol

Windows

  • Download the Windows package locally on your PC from releases
  • Extract in a new folder
  • Run SynthesiaKontrol

Linux, MAC

Use the Developer method.

Developer

If you want to contribute to the project, you need to setup your Python environment.

âš  SynthesiaKontrol only works with Python3. One of the symptom when using Python2 is that you will get an error message saying that the keyboard is not supported yet.

SynthesiaKontrol

  • Install Python's module:
pip3 install -r requirements.txt
  • Run the program:
python3 SynthesiaKontrol.py
  • Build executable (Windows)

    • Install cx_Freeze: pip3 install cx_Freeze
    • Run build
      python3 setup.py build
      
    • Result is in build directory.

Status

  • Proof of concept: light keys from Komplete Kontrol MK2 S61
  • Figure out all the possible colors - see color_scan.py
  • Python app to listen to midi events from Synthesia and light keys - see SynthesiaKontrol.py
  • Leverage finger based channel light mode from Synthesia, introduced in r4376 to show left and right hands on KK
  • Address issue where notes are turned off too quickly (Forum post here)
  • Package as simple executable
  • All notes off
  • Customizable note colors
  • Rainbow mode: when playing a note, make a rainbow on that note
  • Simpler / better instructions
  • Support all Komplete Kontrol MK2 keyboard sizes (currently only S61)
  • Support Komplete Kontrol MK1 keyboards
  • Use different colors per channel

Getting help

I prefer GitHub issues. Otherwise, there is a Synthesia forum thread here.

Acknowledgements

Thanks to

  • Nicholas Piegdon for his dedication to Synthesia, and the great help he provides for his user community
  • AnykeyNL to figure out an initial scheme for Komplete Kontrol MK1 USB protocol as well as the structure of an app
  • Jason Bret to have figured out the MK2 version, and the 0x81 endpoint which I use.
  • a1vv for the fork, and figuring out the changes for MK1 - which allowed me to create a version with support of MK1 and MK2
  • Nabume for the S88 MK2 info.
  • KompleteSynthesia: a MAC native project from @tillt
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].