⭐ この記事は、Pro 機能を中心に展開しています。
このチュートリアルは、OSCプロトコルを使用して遠隔無線デバイスやアプリからHeavyMを制御する方法を理解する手助けをすることを目的としています。
このガイドでは、iOSまたはAndroidアプリからHeavyMを制御する方法に主に焦点を当て、迅速かつ簡単にセットアップできるツールを使用します。 しかし、OSCを介したさらに多くの接続が可能であることを知ってください。たとえば、タイムラインベースのシーケンサーアプリVezérや、モジュラー機械Chataigneも使用することができます。
OSCとは何ですか?
OSC は “Open Sound Control” の略です。 これは、多媒体デバイス間の通信に使用されるプロトコルであり、MIDIプロトコルに似ていますが、より大きなデータの転送を可能にし、より高速で、WiFiやイーサネットのようなネットワークを介して行います。 要するに、このプロトコルによりHeavyMのいくつかの機能を遠隔で制御することが可能になります。 良いニュースは、すべてをキロメートルのケーブルで接続する必要はなく、デバイスは単に同じネットワークに接続されるだけでいいということです。
これにより、インタラクティブインストールの可能性が無限に広がります!
レイアウトを見つける
HeavyMをスマートフォン上で直接使用しない場合、スライダーやボタンを使用する実用的なユーザーインターフェースを持つために、特別なレイアウトのアプリを使用する必要があります。 これらのコントロールパネルを作成するか、レイアウトテンプレートを持つことを可能にする多くのアプリがあります。 ここにTouchOSCにおけるレイアウトの例があります:
レイアウトを取得するには2つのオプションがあります:
オプション1:レイアウトをゼロから構築する
ここでレイアウトを作成する方法について詳細は述べませんが、インターネット上でこのテーマに関する多くのリソースを見つけることができます。 スキルと勇気があれば、コードを書くこともできますし、またはWYSIWYGエディタを使用することも できます。例えば、TouchOSCや、Lemur Editor などです。 これらの場合、エディタはコンピュータに無料でインストールできますが、作成したレイアウトは、アプリストアで購入した関連アプリケーションでのみ動作します。 (通常、モバイルやタブレットのアプリから直接レイアウトを構築することもできます!)
レイアウトを構築するには、ユーザーインターフェースの要素を作成し、パソコンで作成した場合はアプリにレイアウトをインポートし、それらにHeavyMコマンドを割り当てます。 レイアウトのインポート方法について学ぶには、関連するアプリのマニュアルを参照してください。
独自のレイアウトを作成するのは手間がかかるかもしれませんが、各要素の機能、HeavyMに送る情報やその送信タイミングなどに対する制御が増えます。
オプション2:既存のテンプレートを設定する
いくつかのアプリはレイアウトテンプレートを提供します。 これは初めのステップが完了したことを意味します。ボタン、スライダー、その他のインターフェース要素はタブに既に整理されていますが、それらを設定する必要があります。 実際、これらの要素は「空」であり、まだHeavyM機能にリンクされていないので、割り当てがありません。
既存のレイアウトを使用することは、単にHeavyMコマンドを要素に割り当てるだけです。
⚠️ 独自のテンプレートとメッセージを作成している場合、HeavyMが 0.0から1.0までの浮動小数点数の引数 をOSCメッセージで認識することを知っておいてください。 スライダーの場合、0.0は最小値を表し、1.0は最大値を表します。 トグルの場合、0.0はOFFを意味し、1.0はONを意味します。
TouchOSCとHeavyMを接続する
次の段落では、TouchOSCアプリとHeavyMをセットアップするための具体的な指示を提供します。 (このアプリからのスポンサーではないことをお約束します。)
これらの指示に従うには、HeavyM、TouchOSCを開き、レイアウトを準備する必要があります。 他のアプリを使用している場合でも、多くの類似点を見つけることができるため、依然として役立つかもしれません。 そうでない場合は、アプリのマニュアルを参照してください。
注意: デバイスが通信するためには同じネットワークに接続される必要がありますが、必ずしも無線接続である必要はありません:たとえば、スマートフォンがWiFiを使用し、コンピュータがイーサネットを使用することができます。
TouchOSCで
注意:これらの指示は、アプリのiOSバージョンで従う手順を説明しています。 Androidのインターフェースは少し異なりますが、特に指定がない限り、操作は似ています。
- まず、エディターツールバーのチェーンリンクアイコンのボタンを押して接続設定を開き、「OSC」タブに移動します。
- そこで、最初の接続の「ホスト」入力フィールドに、コンピュータのIPアドレスを入力する必要があります。 通常、設定 または システム環境設定 の ネットワーク プロパティで見つけることができます。
- 「送信ポート」 および 「受信ポート」 入力フィールドに、7 000 から 10 000 の間の任意の数値を入力します。 (ただし、2つのフィールドでは異なるものを使用してください。)
- このタブは開いたままにしておき、HeavyMに移動してください。情報が必要です。
HeavyMで
- 「コントロール設定」ウィンドウをコントロール → コントロール設定... または
から開き、「OSC」タブに移動します。 上部のトグルスイッチでOSCコントロールがオンになっていることを確認してください。
- 次に、「受信ポート」に、TouchOSCの「送信ポート」フィールドに入力した番号を入力します。 逆に、「送信ポート」には、TouchOSCの「受信ポート」フィールドに示されている番号を入力します。
- 「送信IPアドレス」には、携帯電話やタブレットのIPアドレスを入力します。 通常はネットワーク設定で見つけることができ、OSCアプリの中にはそれを直接表示するものもあります。
現在、レイアウトに戻り、このチュートリアルの次のセクションに従って、HeavyMコマンドに要素を接続する方法を学びます。
注意: これらの指示に従った後に問題が発生した場合は、彼らのウェブサイトにある TouchOSC ドキュメント を参照してください。非常に詳細で、iOSデバイスおよびアプリ内の他の高度な機能に関する手順が説明されています。
割り当ての管理
OSC学習の有効化
接続が設定されると、レイアウトに含まれるボタン、フェーダー、パッドなどをHeavyMのコマンドに割り当てることができます。 そのためには、ソフトウェアインターフェースの要素に、OSCレイアウトのどのアイテムに反応するかを「学習」させる必要があります。
そのためには、コントロールウィンドウ(「OSC学習モード」ボタン)またはメニュー(コントロール→OSC割り当てを編集)からOSC学習インターフェースを切り替える必要があります。 インターフェースでマッピング可能な要素の上にカラフルなオーバーレイが表示されます。
割り当ての追加
マウスまたはトラックパッドでオーバーレイ要素を選択し(黄色で囲まれます)、それに使用したいOSCレイアウトの制御項目を移動またはヒットします。 これにより、OSCとインターフェースのコントロールが関連付けられ、「コントロール」設定ウィンドウのリストに表示されます。
完了したら、同じボタン/メニューまたは[Esc]で学習モードをオフにすることができます。
注意: 同じOSCレイアウト要素を複数のコマンドに同時に割り当てることができます。 例えば、デバイス上の単一のボタンを複数のエフェクト切り替えにリンクすることができ、それを押すとすべてのエフェクトが一度にオンになります!
⚠️ 自分のテンプレートとメッセージを作成している場合、HeavyMは OSCメッセージ内の0.0から1.0の間のフロート引数に反応することを知っておいてください。 スライダーの場合、0.0は最小値、1.0は最大値を表します。 トグルの場合、0.0はオフ、1.0はオンを意味します。
割り当ての編集
割り当てを編集するには、もう一度学習モードをオンにするだけです。 次に、希望する割り当てを選択し、使用したい新しいOSCコントロールをトリガーします。
割り当ての削除
割り当てを削除するには3つの可能性があります:
- 学習モードがオンの場合は、オーバーレイを選択し[Delete/Backspace]を押します。 これにより、選択した割り当てが削除されます。
-
コントロールウィンドウのテーブル内の単一の割り当てを右クリックし、「割り当てを削除」オプションをクリックします。 これにより、選択した割り当てが削除されます。
-
「すべての割り当てを削除」ボタンをコントロールウィンドウのテーブルの上に使用します。 これにより、プロジェクト内のすべてのOSC割り当てが削除されます。
割り当ての保存
設定したOSC割り当ては、.hmプロジェクトファイルに直接保存されます。
割り当て設定
設定した各割り当てには一連の設定があり、「コントロール」ウィンドウの割り当てテーブルで見ることができます。
OSC割り当ての場合、以下を編集できます:
- 範囲: この設定は、スライダーやスピンボックスに表示されます。 最小値と最大値を設定することで、HeavyMでインターフェース要素の範囲をオーバーライドできます。 例えば、Borderエフェクトの厚みを1 - 15に設定すると、割り当てたフェーダーを動かすと、その値は1から15の間でしか変わりません!