PureData のラッパーである libPd を使用しようとしています。しかし、ドキュメンテーションは貧弱で、私は C++ にはあまり興味がありません.浮動小数点値を Pd パッチに単純に送信する方法を知っていますか?
libPd をインストールする必要がありますか?それとも、単にファイルを含めることができますか?
Pd (スタンドアロン アプリケーション) の実行中のインスタンスに値を送信する場合は、Pd のネットワーク機能を介して送信できます。
例えば
[netreceive 65432 1]
|
[route value]
|
[print]
以下を介してコマンドラインから送信されたデータを受け取ります。
echo "value 1.234567;" | pdsend 65432 localhost udp
一度に複数の値を送信することもできます。
echo "value 1.234567 3.141592;" | pdsend 65432 localhost udp
目的のために遅いことがわかった場合(たとえば、送信するメッセージごとに実行可能ファイルを起動すると、かなりのオーバーヘッドが発生します!)、アプリケーションで直接メッセージを作成し、通常のUDP ソケットを使用してFUDIpdsend
を送信できます。 Pd へのメッセージ。
FUDI メッセージは実際には単純なテキスト文字列であり、アトムは空白で区切られ、セミコロンで終了します。
accelerator 1.23 3.14 2.97; button 1;
OSC の使用を検討することもできますが、そのためには Pd 側にいくつかの外部 (mrpeach による OSC、mrpeach (または iemnet) によるネット) が必要になります。
パフォーマンスに関しては、後者を複雑な追跡データ (125 fps でフレームごとに数百の値) とマルチチャンネル オーディオのストリーミングに使用しているので、これは問題ではないと思います。
すでに libPd を使用していて、ホスト アプリケーションからのみ通信したい場合は、Adam のソリューションを使用してください (ただし、あなたの質問はそれについて少し漠然としているため、念のためこの回答を含めています)