Skip to content
No description or website provided.
C++ C
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
alsa
README
command_dispatcher.h
constants.h
cui.h
eg.cpp
eg.h
inv_exp_table.cpp
main.cpp
midi_utility.cpp
midi_utility.h
mixer.cpp
mod_factory.cpp
mod_factory.h
mono_synth.cpp
mono_synth.h
parse.cpp
parse.h
synth.cpp
synth.h
synth_mod.h
synth_mod_base.h
tree.cpp
tree.h
type.h
vca.cpp
vcf.cpp
vco.cpp
waf
wrap_function.h
wscript

README

20110209

0. この文書の内容
    1. buildに必要なもの
    2. buildの仕方
    3. 使い方

1. buildに必要なもの
    - g++
    - libasound
    - libboost_thread
    - その他boost色々
    - python (buildにwafを使うため)

2. buildの仕方
    wafとwscriptがあるところで、

    $ ./waf configure build

    成功するとbuildというディレクトリにtsynthができるはず。

3. 使い方
    部品の組替えができるシンセサイザー。
    いまのところGUIとかはなくて、コマンドラインで動かす。
    
    $ ./tsynth
    
    と実行すると
    
    > 
    
    コマンド入力待ちの状態になる。
    コマンドを入力して動かす。
    使えるコマンドは今のところ quit, start, stop, compose
    
    quit: プログラムの終了。引数なし。
    start: 音がなる状態にする。引数なし。
    stop: 音が鳴らない状態にする。引数なし。
    compose: 部品を繋げて、シンセサイザを作る。引数に文字列をとって、その通り部品を繋ぐ。
    
    MIDI信号を受けて、音を鳴らすようになってる。
    MIDI入力デバイスとの接続にはaconnectを使う。
    
    $ aconnect -o
    
    とすると、TSynthという出力デバイスがあるはずなので、
    ここに入力デバイスを繋ぐ。
    
    シンセサイザの部品。
    いまのところ使えるのはMixer, SynthVCA, SynthVCO, SynthVCF。
    Mixer: 多引数
    SynthVCA: 単引数
    SynthVCO: 無引数
    SynthVCF: 単引数
    
    composeの書き方。
    例:
    
    > compose "(SynthVCA[0.02 0.08 0.1 0.6 0.8] ( SynthVCO[SIN 0.01 0.2 0.3 1.5] ))"
    
    > compose "(SynthVCA[0.02 0.08 0.1 0.6 0.8] ( SynthVCF[0.01 0.6 0.8 0.2] (Mixer SynthVCO[SIN 0.05 0.2 0.3 1.5] SynthVCO[SQU 0.01 0.2 0.3 1.5])))"
    
    SynthVCAの引数: [音声振幅のレベル アタック(秒) ディレイ(秒) サステイン(0.0~1.0) リリース(秒)]
        アタック、ディレイ、サステイン、リリースはSynthVCAが持っているエンベロープジェネレータのパラメーター。
    
    SynthVCOの引数: [波形の種類 アタック(秒) ディレイ(秒) サステイン(0.0~1.0) リリース(秒)]
        波形の種類で使えるのはSIN (サイン波), SAW(のこぎり波), TRI (三角波), SQU (矩形波)。
        アタック、ディレイ、サステイン、リリースはSynthVCOが持っているエンベロープジェネレータのパラメーター。
    
    SynthVCFの引数: [アタック(秒) ディレイ(秒) サステイン(0.0~1.0) リリース(秒)]
        アタック、ディレイ、サステイン、リリースはSynthVCFが持っているエンベロープジェネレータのパラメーター。
    
    一番出力に近い部分の部品は必ずSynthVCAになる。
    composeの引数がそうなってない場合は、デフォルト引数のSynthVCAが追加される。

Something went wrong with that request. Please try again.