Creative Plus

遊んで・学んで・試してみてクリエイティブをプラスする「デジタルアート系ブログメディア」

cp_blog_respo_01

FoxDot

FoxDotの「超基礎」第一弾!「テンポ設定&サンプルを鳴らす&シンセを鳴らす」で遊び始めろ!

更新日:



ナカジ(@cp_nakajun)です。

Python&SuperColliderで奏でる音楽ライブコーディング環境「FoxDot」について紹介し、インストールするとこまではできたと思います。

次は実際に音を出していきます。

その為のファーストステップ「超基礎」です。

公式サイトの「Getting Started:http://foxdot.org/start/」をベースにしていますが
僕の判断でその他のドキュメントからも必要なところもミックスしてます。

スポンサーリンク

FoxDotの「超基礎」

今回は次の3点がメインになります。

  • サンプルファイルを鳴らす
  • SuperColliderシンセを鳴らす
  • テンポ(tempo)設定

そして、始める前に簡単に復習しておきます。

  • 実行:cmd + enter
  • オブジェクト停止:p1.stop() ※p1の場合
  • 全て停止:cmd + .

サンプルファイルを鳴らす

セットアップと同時にFoxDot標準のサンプルファイルがインストールされます。

このファイルは
/usr/local/lib/python3.6/site-packages/FoxDot/snd/
に置かれています。

鳴らし方は play("")です。例えば

d1 >> play("x-o-")

とすると「バスドラ、ハイハット、スネア、ハイハット」となります。

この「x」「-」「o」は上記ディレクトリーのフォルダー名(だと思います)。

角カッコ[]で囲むと同時に鳴ります。

丸カッコ()で囲むと順番に鳴るようになります。例えば下のパターンだと

d1 >> play("x-o(-xo)")
  1. バスドラ、ハイハット、スネア、ハイハット
  2. バスドラ、ハイハット、スネア、バスドラ
  3. バスドラ、ハイハット、スネア、スネア

のループになります。

SuperColliderシンセを鳴らす

とりあえず、最初はFoxDotのセットアップ時に同時に設定されるFoxDotのSynthDefsを鳴らす方法です。
(※オリジナルのSuperColliderのシンセを鳴らす方法は別途)

まず、どんなシンセがあるのかを見て見ましょう。

print(SynthDefs)

実行すると

'loop', 'play1', 'play2', 'audioin', 'pads', 'noise', 'dab', 'varsaw', 'lazer', 'growl', 'bass', 'dirt', 'crunch', 'rave', 'scatter', 'charm', 'bell', 'gong', 'soprano', 'dub', 'viola', 'scratch', 'klank', 'ambi', 'glass', 'soft', 'quin', 'pluck', 'spark', 'blip', 'ripple', 'creep', 'orient', 'zap', 'marimba', 'fuzz', 'bug', 'pulse', 'saw', 'snick', 'twang', 'karp', 'arpy', 'nylon', 'donk', 'squish', 'swell', 'razz', 'sitar', 'star', 'piano', 'sawbass', 'prophet'

と表示されます。

これがとりあえず鳴らせるシンセの一覧です。

例えば使いたいSynthDefが "pluck"だった場合、オブジェクト "p1"を作成するには

p1 >> pluck()

となります。

シンセの鳴らし方を説明します。

p1 >> pluck([0,2,4], dur=[1,1/2,1/2], amp=[1,3/4,3/4])

音程(ノート)などの1ループは角カッコ[]で囲みます。

最初の[0,2,4]は音程です。後ほど説明しますがスケールの何番目かを表しています。

そのあとには「dur:長さ」「amp:音量」などのパラメーターが続きます。

選んだシンセがどんなパラメーターを持っているかを確認するにはSuperColliderのコードを読む必要があります。

print(pluck)

とするとpluckのSuperColliderのコードが表示されます。

サンプルを鳴らす時とは逆に
丸カッコ()で囲むと同時に鳴りつまり和音を鳴らすことができます。

テンポ(tempo)設定

テンポを設定する方法は

Clock.bpm = 144

です。

「cmd + enter」で実行します。

スケールの設定

個人的にこれ、FoxDotの特徴かなと思います。

標準のスケールを設定できます。

下のいづれかの方法で全体のスケールを設定できます。

Scale.default.set("minor")
Scale.default.set(Scale.minor)
Scale.default.set([0,2,3,5,7,8,10])

オブジェクト(トラック)ごとに設定することも可能です。

p1 >> pads([0,1,2,3,4,5,6,7],scale=Scale.minor)

また次回に


PR:ライブコーディング

ライブコーディング書籍がついにでます!


cp_blog_001

cp_blog_001

サイト運営者

運営者:ナカジ
PureDataやFoxDotで音楽やってます。
インタラクティブ映像の仕事してました。
メディアアート、テクノロジーアートが主軸です。
日本のメディアアーティスト大国化に貢献したい。

運営者プロフィール&当サイトの詳細

記事を検索



プログラミングで生み出す「創造表現」

cp_blog_respo_04

-FoxDot
-,

Copyright© Creative Plus , 2018 All Rights Reserved.