8000 GitHub - jaman/tuning_fork: Sound synthesised on the BEAM · GitHub
[go: up one dir, main page]

Skip to content

About

Sound synthesised on the BEAM

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

TuningFork

Sound synthesised on the BEAM. This repository holds the tuning_fork library and the packages around it, each published to hex.pm on its own.

Package What Hex
tuning_fork Voices, scores, live patterns, Sonic Pi and Strudel spellings, MIDI files, OSC. Pure Elixir, no dependencies {:tuning_fork, "~> 0.1.12"}
tuning_fork_speaker Playback through this machine's sound device (C, via miniaudio) {:tuning_fork_speaker, "~> 0.1.12"}
tuning_fork_midi MIDI devices: scores and live patterns out, a keyboard in (C, via minimidio) {:tuning_fork_midi, "~> 0.1.12"}
tuning_fork_samples Sonic Pi's 206 recordings by name, fetched as they play {:tuning_fork_samples, "~> 0.1.12"}
tuning_fork_composer A step sequencer as data, writing TuningFork source {:tuning_fork_composer, "~> 0.1.12"}
tuning_fork_kino Livebook: a streaming stage widget and five smart cells {:tuning_fork_kino, "~> 0.1.12"}
tuning_fork_mt32 MIDI played as a Roland MT-32 plays it, through your own installation of the Munt emulator {:tuning_fork_mt32, "~> 0.1.12"}
tuning_fork_wma xWMA audio (XACT wave banks and .xwma files) decoded in pure Elixir, no ffmpeg {:tuning_fork_wma, "~> 0.1.12"}
tuning_fork_drafter Terminal front ends drawn with Drafter; needs drafter ~> 0.5 {:tuning_fork_drafter, "~> 0.1.12"}

Start with tuning_fork/README.md, or hear it first: the tour notebook is one tune written three ways — a grid, Strudel's syntax, Sonic Pi's — on the same recordings, and opens straight into Livebook.

Run in Livebook

Contributing

Each package is an ordinary Mix project in its own directory; mix test, mix credo --strict and mix docs run inside each. Within the repository the packages depend on each other by path, so an edit in tuning_fork is seen by the others at once.

Thanks

Two projects shaped this library, and it plays their music as written:

  • Sonic Pi by Sam Aaron and contributors — live_loop, play, sleep, sample, with_fx and the rest of the vocabulary in TuningFork.SonicPi, the synth and effect names, and the 206 public-domain recordings tuning_fork_samples fetches.
  • Strudel by Felix Roos, Alex McLean and contributors, and Tidal Cycles by Alex McLean before it — the pattern model, the mini-notation, the control names, the chord dictionaries and voicing rules, and the sound design in superdough that TuningFork.Kit and the effects follow. The sample sets strudel.cc loads — uzu-drumkit, tidal-drum-machines, Dirt-Samples, VCSL by Versilian Studios, the mridangam recordings and the piano from dough-samples — are fetched from where they are published, under their own licences.

Also: WebAudioFont by Sergey Surikov for the General MIDI soundfonts behind gm_ sounds; Jezar at Dreampoint for Freeverb, which the reverb is; miniaudio by David Reid in tuning_fork_speaker and minimidio by Joseph Stewart in tuning_fork_midi.

Licence

MIT, see LICENSE. Sonic Pi's recordings are CC0; the soundfonts and sample sets fetched for Strudel pieces carry their own licences, listed where they are hosted.

About

Sound synthesised on the BEAM

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

0