環境/macOS Montery Apple Silicon Mac

前半では下記内容にて、送信側の設定や解析などを学んでいきます。
ーーーーー
Index/目次
Tidal CyclesのOSC接続方法
SuperColliderにてOSC接続コードを実行

解析ツール OSC Data Monitor をインストール
OSCを解析しメッセージを確認する
あとがき

ーーーー

TidalCyclesの演奏をリアルタイムで他のアプリに接続させるには、Open Sound Control (OSC)という通信プロトコルを利用します。

Open Sound Control (OSC) は、音楽演奏データをネットワークで共有するための標準的な通信プロトコルです。DAW(デジタルオーディオワークステーション)、ビジュアライザー、ミキサーを含む様々なライブコーディングやその他のシステムとの通信に利用します。

今回OSCにて接続する Processing 以外でもMax, PureData, Sonic Pi, openFrameworks, TouchDesigner など様々なアプリケーションにも利用できます。

Tidal CyclesのOSC接続方法

TidalCyclesは、そもそもTidalCycles自体が音を出力しているわけでなく、パターン化されたOSCメッセージをSuperCollider(SuperDirtライブラリ)へ送信し音を出しています。

今現在、TidalCyclesを利用している人は既にTidalCyclesとSuperColiider間にてOSCを利用しています。

TidalCycles から他アプリケーションへメッセージを送る方法は、

1. TidalCyclesから直接OSCメッセージを送信する方法と、
2. SuperColliderからOSCメッセージを送信する方法2通りあります。

今回は、2.SuperColliderからProcessingへOSCメッセージを送信する方法を試します。

前編では、SuperColliderからOSCメッセージを送信するまでを行い、
後編で、Processingで受信、処理を行いビジュアライズさせる方法を学んでいきます。

SuperColliderにてOSC接続コードを実行

まずは、下記コードを startup.scd に追加記載し再起動します。既に他にコードがある場合、一番最初に追加してください。

startup.scd は、Fileから「Open startup file」を選択すると開きます。


var addr = NetAddr.new("127.0.0.1", 2020);
OSCFunc({
 arg msg, time;
 var latency = time - Main.elapsedTime;
 addr.sendBundle(latency, msg)
},
'/dirt/play').fix;

上記では、127.0.0.1 2020ポート を利用しメッセージを送信します。
127.0.0.1 というのはローカル・ループバック・アドレスと呼ばれ、自分自身を指す特別なIPアドレスです。ポート番号は任意にて使用されてないポートであれば指定できます。

また、コード内の最後(.fixの前)には OSC Address というものを記載しています。環境によって異なるようで、上記では、 ‘/dirt/play’ ですが 、’/play 2′ などの場合もあります。

自身のOSC Addressの確認は、SuperColliderエディタを新規で開き、 OSCFunc.trace(true); と打ち込み実行します。true を false に変え実行すると停止します。


OSCFunc.trace(true); /*start*/
OSCFunc.trace(false); /*stop*/

TidalCyclesで音を鳴らすとOSCメッセージが右下のコンソールに出力されるので確認してください。

解析ツール OSC Data Monitor をインストール

先ほどの OSCFunc.trace(true); でOSCメッセージの確認はできますが、Kasper Kamperman氏によるOSC Data Monitor というアプリを利用し解析します。下記Webサイトよりダウンロードできます。

OSC Data Monitor / Kasper Kamperman

OSCを解析し送信されたメッセージを確認する

ダウンロードした OSCDataMonitor-masterフォルダから、2017の新しい方 Current 2017 Version Applications を開き、application.macosx のフォルダを開くとOSC_Data_Moniterのアプリケーションがあるので開きます。(筆者の環境はMac)

1に先ほどSuperColliederコードで追加した、ポート番号2020を打ち込み、ADD PORTをクリックしリストにポートを加えます。

2にリスト内の2020をクリックすると3に追加され、TidalCyclesで音を出すとコンソールにOSCメッセージが記載されます。

3をのポート番号をクリックすると解析が停止され、リストに戻ります。

あとがき

OSC (Open Sound Control) を利用すると様々なアプリケーションへの接続が可能になります。TidalCyclesのライブコーディングを音だけでなく、別のアプリに拡張することで、アイディア次第で面白い表現ができるかと思います。

後半では、受信する側のProcessingでの設定・解析・描画方法を学んでいきます。
Tidal Cycles の演奏を Processing でビジュアライズする方法 〜後編〜 Processingの設定と描画

barbe_generative_library

サウンドプロダクション入門 DAWの基礎と実践

SoundProduction_DTM-header

初版/ 2021.3.23
ページ数/208ページ
出版社/ビー・エヌ・エヌ
言語/日本語

【Amazon.co.jp で購入】

ーーーーー
”Books”では、”barbe_generative_Library”として、
barbe_generative_diary の創作において実際に購入し、読んだ本を紹介します。

ーーーーー