Skip to content

not-implemented/hardware-music

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hardware-Music

Toolset for making music on old hardware with MIDI files.

midi-editor

A compact MIDI parser/writer implementation in PHP for manipulation of MIDI files.

MidiFile:

  • Almost complete standalone implementation of MIDI-File-Reader/Writer
  • Simple object tree of MIDI tracks for easy manipulation
  • Many things are mapped from numbers into a readable form
  • Charset support (if set, all text events are converted from this charset to utf-8)
  • Very error-forgiving implementation (tries to recover from most cases - log errors only)
  • Most MIDI-files are bit-identical after parsing/writing

MidiEditor:

  • Automatic manipulation of MIDI files to fit old hardware
  • Merge all tracks into one (to make global events like setTempo and deltaTime handling easier/possible)
  • Track/Channel selection
  • Change instrument
  • Change volume
  • Transpose high notes down
  • Remove short pauses (for fluent playing)

BinaryNoteRenderer:

  • Render notes to a binary file for playing them with stepper-motor-player

MidiGenerator:

  • Convert notes in form "D5:1/8 D5:1/8 H4:1/8 C5:1/4 A4:1/4" to MIDI files
  • Set tempo in bpm
  • Set instrument

stepper-motor-player

C program to play a binary notes file (generated by midi-editor) on a stepper motor via GPIO on Raspberry Pi.

Features:

  • Automatic direction change
  • Tune notes (adjust delay overhead)

web-interface

Simple Web-Interface for midi-editor and stepper-motor-player

About

Toolset for making music on old hardware with MIDI files

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published