<div dir="ltr"><div><div><div>Hi Scott,<br><br></div>The way I handle multiple instances is to open new patches via C# and store the dollar zero variable in a game object.<br><br>The PdAudioSource component can be attached to a prefab and you can instantiated the prefab via C#. PdAudioSource also stores the dollar zero variable of the associated patch, so you can directly send messages to a particular instance by calling methods in PdAudioSource. However, all send and receive objects in your patches need to start with a dollar zero (e.g. [send $0-Frequency], [receive $0-isPlaying]). <br><br>For audio signals, all patches need to have appropriate [throw~ ] objects (e.g. [throw~ out5] [throw~ out6]) in order to be heard. Audio signals from all instances will go through the [catch~ ] object in pdManager.pd, which is mapped to the Unity audio mixer. Getting audio input from Unity to libpd is a little bit tricky in this case. If someone need audio input from Unity, one might modify the OnAudioFilterRead method in PdStereo.cs.<br><br></div><div>My project isn't complete and I always welcome for suggestions or comments.<br></div><div><br></div>Best,<br></div>Wing<br></div>