【お知らせ】6月20日の申込/更新分より、サンレコWebのサブスクリプション価格を改定いたします。詳細はこちらをご覧ください。また、6月17日までWeb+印刷版(年間)を約30%オフでご提供しています。

Maxで作る自分専用パッチ - Patch45 〜モジュールの増減が可能なステップ・シーケンサー

f:id:rittor_snrec:20210519205422j:plain

プレゼンテーション・モード

基礎的な機能ブロックをつなぎ合わせることで独自のソフトウェアを構築できるCYCLING '74 Max。現在ネット上では数え切れないほどのパッチがシェアされており、それらのプレーヤーとしても活用が可能だ。ここでは最先端のアーティストによるクールなパッチを紹介。ファイルをダウンロードして、新しい音楽の制作に役立ててほしい。

電子楽器開発のためのプロトタイプ

 筆者は、企業や大学で電子楽器開発・研究や体験型アート作品のサウンド・デザイン、プログラミングなどを日ごろから行っています。例えば、センサーを差し替えて操作用のインターフェースを変更することで、ユーザーが奏法を変更できる電子楽器Powder Boxや、センサー開発企業タッチエンスとの共同開発でたたく/押す/なぞるなどのさまざまな触り方で演奏できる電子楽器The Cell Music Gearを開発してきました。また、特別支援学校における音楽科教育用の電子打楽器を開発した際には、教員用の打楽器設定用ソフトウェアをMaxで制作しています。

 

 こういったハードウェアの電子楽器開発の際には、まずソフトウェアでプロトタイプを作って動かし、実現可能性や問題となり得るポイントを事前に把握しておくことが大切。また、“ハードウェアでできることの範囲内で物事を考えてしまう”ことを避けるためにも、一度ソフトウェアで簡単な実験をしておくとよいでしょう。このようなアイディアを形にする前段階のプロトタイピング作業の上でも、Maxなどのビジュアル・プログラミング環境は非常に頼もしい相棒になってくれます。

 

 筆者は“楽器経験者や未経験者の区別無く、音楽という枠組みの中で、さまざまな表現や工夫をやり取りができる”電子楽器やシステムの開発を目指しており、このコンセプトを実現するために以下の2点を重視しています。

①電子楽器同士の通信により、音楽理論および演奏技術的な側面をサポートする
②演奏者がさまざまな工夫ができるよう“余白”を作る

 ①を実現するために、まずは“途中から誰かが参加してきてもビートが同期しているので破たんしない”という仕組みを設計し、さらにその音楽表現がどういったものになるかを確認するためにも、簡単なプロトタイプを開発してテストしなければなりません。今回は電子楽器開発時にプロトタイプとして作成したパッチを再構成した、“モジュールの増減でバリエーションを生み出すステップ・シーケンサー”を紹介します。

 

後から追加したシーケンサーも同期される

 パッチの動作を説明しましょう。テンポ設定用ノブが表示されたメイン・パッチ上でキーボードのAキーを押すと、ステップ・シーケンサーのウィンドウが表示されます。シーケンサーをクリックして発音タイミングを入力していくと、上に表示されているカウンターのタイミングに合わせて音が出力される仕組みです。シーケンサー・ウィンドウは最大10個まで追加することができ、演奏を展開していくことができます。

 

 また、キーボードのDキーを押すと、後から追加した順にステップ・シーケンサーのウィンドウを閉じます。閉じた際には、同時にミュートがオンになり音が鳴らなくなりますが、再度Aキーを押すとウィンドウが復活してミュートもオフになります。

 

 パッチのテスト動画 

 

 上記のシーケンサー増減機能は[poly~]で実装しており、あらかじめ10個のインスタンスが用意されています。このシーケンサー自体は外部のサブパッチsoundObjects.maxpatで、サブパッチ内部には6種類の音色を実装しました。[poly~]によって10個のインスタンスが作られたときに、6種類の音色のうちどれかがランダムで選ばれる仕組みです。この音色設定は、シーケンサー・ウィンドウ内のメニューから変更することができます。また、選択された音色以外の5つの音色は、負荷軽減のため[mute~]によってミュートされます。

 

f:id:rittor_snrec:20210519210407j:plain

パッチング・モード

 

 パッチ内の音響合成はすべてMSPで記述しました。各シーケンサー・パッチからは、[send~]でメイン・ウィンドウの[dac~]にシグナルが送られ、音がまとめられます。また、各シーケンサーは、メイン・パッチから[send~]で送られてくる値を用いて音の出力タイミングをコントロールしています。このため、シーケンサー・ウィンドウを後から起動してもタイミングが同期される仕組みです。

 

 ユーザー・インターフェースは、[matrixctrl]や[slider]、[comment]、[panel]などを組み合わせて構成しています。パフォーマンスの際は、余計なコントローラーが出ていると混乱する原因になるので、基本的に必要最低限のインターフェースのみをプレゼンテーション・モードで表示するようにしました。シーケンサー・ウィンドウの設定色は、パッチ読み込み時にランダムで決定されます。また、不用意にウィンドウを削除してしまわないよう、サブパッチは[thispatcher]でwindow flag nocloseを設定し、閉じるボタンをオフにしました。

 

 このパッチ制作を通して、電子楽器のシステム・テストや、どんな音楽が作り出せるかなど、本番の制作に必要な情報の確認ができました。また、今回のようなMaxパッチの処理を参考に、実際に動作させるハードウェア用のプログラムを記述していくこともできます。

 

 複数のウィンドウを開けたり閉じたり、ソフトウェア的には比較的特殊な使い方を許容してくれるのも、Maxの良いところです。場合によっては、音響処理的エラーを表現にすることも可能ですし、Maxの懐の広さを感じます。今回のパッチは、サブパッチの音色やエフェクトを追加すれば、もっと複雑なパフォーマンスができると思います。ぜひ遊んでみてください。

 

 

f:id:rittor_snrec:20210519205901j:plain

中西宣人

多様な奏法に対応する共同演奏向けの音楽インターフェースや、デジタル楽器の開発と研究に従事。センサー開発企業や教育機関とのデジタル楽器の共同開発、開発した楽器での演奏を国内外で行うなど、多角的に活動する。A-KAK取締役、フェリス女学院大学音楽学部音楽芸術学科 准教授。

 

製品情報

www.mi7.co.jp

 

関連記事

www.snrec.jp

www.snrec.jp

www.snrec.jp

www.snrec.jp

www.snrec.jp