Overtone

协作式可编程音乐。Overtone 是一个用于设计合成器和音乐协作的开源工具包。「Collaborative Programmable Music. Overtone is an Open Source toolkit for designing synthesizers and collaborating with music.」

Github星跟蹤圖

                                                          888
                                                          888
         _ooooooooo._                                     888
      ,o888PP""""PP88   .d88b.  888  888  .d88b.  888d888 888888 .d88b.  88888b.   .d88b.
    d88P''          '  d88""88b 888  888 d8P  Y8b 888P"   888   d88""88b 888 "88b d8P  Y8b
  ,88P                 88    88 Y88  88P 88888888 888     888   88    88 888  888 88888888
 ,88                   Y88..88P  Y8bd8P  Y8b.     888     Y88b. Y88..88P 888  888 Y8b.
,88'                    "Y88P"    Y88P    "Y8888  888      "Y888 "Y88P"  888  888  "Y8888
d8P
d8b                        88[
`88                       J88
 Y8b                     ,88'
  Y8b.                  d88'
   `Y8b._            _o88P
     `Y888oo.____ooo888P'
        '"PP888888PP''

Collaborative Programmable Music.

Overtone is an Open Source toolkit for designing synthesizers and
collaborating with music. It provides:

  • A Clojure API to the SuperCollider synthesis engine
  • A growing library of musical functions (scales, chords, rhythms,
    arpeggiators, etc.)
  • Metronome and timing system to support live-programming and sequencing
  • Plug and play MIDI device I/O
  • A full Open Sound Control (OSC) client and server implementation.
  • Pre-cache - a system for locally caching external assets such as .wav
    files
  • An API for querying and fetching sounds from http://freesound.org
  • A global concurrent event stream

Quick Start

Installation

    # Install the clojure-cli tools
    # https://clojure.org/guides/getting_started

    # Create a deps.edn file with a minimum
    # {:deps {overtone/overtone {:mvn/version "0.10.6"}}}
    $ clojure
    $ (use 'overtone.live)
    # Or install leiningen
    # https://github.com/technomancy/leiningen

    $ lein new insane-noises

    # add the following dependencies to insane-noises/project.clj
    # [org.clojure/clojure "1.9.0"]
    # [overtone/overtone "0.10.6"]

    $ cd insane-noises
    $ lein repl

Making sounds

    ;; boot the server
    user=> (use 'overtone.live)

    ;; listen to the joys of a simple sine wave
    user=> (demo (sin-osc))

    ;; or something more interesting...
    user=> (demo 7 (lpf (mix (saw [50 (line 100 1600 5) 101 100.5]))
                   (lin-lin (lf-tri (line 2 20 5)) -1 1 400 4000)))

Linter (clj-kondo)

Run overtone.linter/emit! to emit clj-kondo configuration.

Do not commit the generated files, it's a bunch of data.

Detailed Instructions

For a more detailed set of setup instructions (including details
specific to Windows and Linux) head over to the
Overtone wiki installation page

We maintain documentation for all aspects of the system in the
project wiki, you'll
find tutorials and examples on topics such as synthesizing new sounds
from scratch, live-coding and generating musical scores on the fly. If
you see anything missing, please feel free to add it yourself, or hit us
up on the mailing list and
we'll sort something out.

Cheat Sheet

For a quick glance at all the exciting functionality Overtone puts at
your musical fingertips check out the cheat sheet:

https://github.com/overtone/overtone/raw/master/docs/cheatsheet/overtone-cheat-sheet.pdf

Overtone Powered Bands

A list of bands using Overtone to generate sounds:

Community

Mailing List

We encourage you to join the
mailing list to see what
other people are getting up to with Overtone. Use it to ask questions,
show off what you've made and even meet fellow Overtoners in your area
so you can meet up for impromptu jam sessions. All we ask is that you be
considerate, courteous and respectful and that you share as much of your
code as possible so we can all learn how to make crazy cool sounds
together.

Twitter

Follow @overtone on Twitter: http://twitter.com/overtone

Web

Our main website is hosted on GitHub: http://overtone.github.io

Videos

Introductions

Head over to Vimeo for a fast-paced 4 minute introduction to live-coding
with Overtone to see what's possible

http://vimeo.com/22798433

For a nice overview of the basics of creating and playing with
synthesized instruments in Overtone checkout Philip Potter's 20 minute
workshop:

http://skillsmatter.com/podcast/scala/clojurex-unpanel-2894

Chris Ford also delivers a beautifully paced introduction to fundamental music
concepts from basic sine waves to Bach's Goldberg Variations with live examples throughout:

http://skillsmatter.com/podcast/home/functional-composition

There are also the following tutorials:

Presentations

Interviews

Overtone has generated quite a bit of interest. Here's a list of
available interviews which go into further depth on the background and
philosophy of Overtone:

Performances

Source Repository

Downloads and the source repository can be found on GitHub:

http://github.com/overtone/overtone

Clone the repository on GitHub to get started developing, and if you are
ready to submit a patch then fork your own copy and do a pull request.

clojure.tools.deps and Leiningen Support

Overtone and its dependencies are on http://clojars.org, and the
dependency for your deps.edn is:

    {overtone/overtone {:mvn/version "0.10.6"}}

or for your project.clj (Leiningen)

    [overtone "0.10.6"]

Contributors

See: https://github.com/overtone/overtone/graphs/contributors

主要指標

概覽
名稱與所有者overtone/overtone
主編程語言Clojure
編程語言Clojure (語言數: 3)
平台
許可證Other
所有者活动
創建於2010-08-23 12:19:57
推送於2025-03-04 06:47:54
最后一次提交2025-03-04 07:47:51
發布數27
最新版本名稱v0.16.3331 (發布於 )
第一版名稱0.1.4 (發布於 2011-03-15 16:34:47)
用户参与
星數6k
關注者數217
派生數450
提交數3.4k
已啟用問題?
問題數343
打開的問題數92
拉請求數208
打開的拉請求數3
關閉的拉請求數38
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?