2

このパッケージを使用して、github.com/hypebeast/go-osc/oscOSC メッセージを OSC サーバーに送信しています。このために、データを MIDI として Abelton Live にルーティングできるように、OSCulator を使用しています。

私が抱えている問題は、ノートオン、ノートオフ、デュレーションなどのメッセージフォーマットに関する情報が見つからないことです.OSCulator Webサイトで少し役立つガイドを見つけましたが、詳細には触れていません.メッセージングについて: http://s3.amazonaws.com/osculator/doc/OSCulator+2.12+Manual.pdf

たとえば、次の関数は問題なく動作しますが、メッセージが実際に何をしているのかわかりません。

func note(pitch float32 , velocity float32) {

    // TODO: Pass client into function. Find out it's type.
    client := osc.NewClient("localhost", 8765)     

    noteMsg := osc.NewMessage("/4/toggle2")
    client.Send(noteMsg)

    msg := osc.NewMessage("/4/xy")
    msg.Append(pitch)
    msg.Append(velocity)
    client.Send(msg)
}

つまり、これは何を目的とした4芝居で、何なのxyか?また、他にどのようなメッセージが利用できますtoggle2か? 私は、MIDI タイプのアプリケーションで使用できるさまざまなタイプのメッセージがすべて掲載された何らかのドキュメントがオンラインにあると考えていました。

4

1 に答える 1

0

あなたの質問は、OSC 自体に関連しているようです。

OSC は次のように機能します。

サーバーにメッセージを送信します。メッセージは、アドレスといくつかの値で構成されます。

この場合/4/xyはアドレスです。4 とスラッシュは、何がどうなるかを定義します。反対側でそれを受け取ると、何を受け取りたいか、つまり送信するアドレスがわかります。したがって、サーバーまたは受信者が特定のアドレスからメッセージを受信したときに何かを行うように構成します。

同様に、メッセージに値を追加します。あなたがすでに知っている値の量なので、受け取ったときにやりたいことをするだけです。

基本的に、キーボードからメモを送信する場合は、アドレスのようなものを使用/keyboard/noteして一度に 1 つの値を送信し、この値を読み取って何かを実行します。

于 2016-03-27T03:12:00.247 に答える