I was wondering if their is a plan to support Asio in the near future? I would like to be able to run more that 2 external channels of audio into Touch and found when I run 3 at this moment I get dropouts on the third channel and strange phase distortion. Also DirectX doesn’t really work well at very low latencies (3 ms or 256 samples) which can make it difficult for live performance. I realize it might be a bit much to ask but Rewire support would also be amazing.
We don’t have plans for ASIO in the immediate future. ASIO and Rewire have both been requested a number of times and are on our RFE list, but their priority is low at this time.
I’m happy to hear it is planned for the future, I imagine it is not an easy task. I really hope it is sooner than later because I built this huge Max audio patch (3 audio out synth/seq) that is designed to be fed into Touch where I built a 3d Lissajous synth to analyze the audio and convert it to curves. It does not work very well at the moment because the third audio channel keeps going out of phase and dropping samples.
I did attempt to build an audio synth in Touch as well but I found that Touch doesn’t have the audio tools needed to build such a device (where Max doesn’t have the graphic capabilities Touch has). I also tried sending audio over OSC but that didn’t work very well either. If anyone has any suggestions I would totally appreciate it.
Thanks Nima for the tip. I would use OSC in that way but I’m using Touch to analyze audio and Max to Generate the audio so I really need the audio streaming into Touch. I did build a synth in Max where I analyzed the audio and generated a 2d image but then I built another synth that only produced audio to then send out for Touch to analyze and convert to a 3d image (I would use Max to display a 3d representation but I find Max tedious to work with in 3d). You did give me another idea though. I can use Max to analyze the audio and convert it to a matrix and then send the matrix data. The only problem with that though is that I would have to send 3 different streams of data (maybe using 3 different udp ports) with a least 512 messages each for each frame (I would need to iterate the matrix into a list, unpack the list, name each value in the list and then repack the list). Just as write this though I can see a way of doing it as long as OSC is fast enough.
You should be able to send audio streams from other applications to TouchDesigner using OSC and its bundles format.
This is cut/pasted from another forum post from one of our developers, and we can expand on it further if you are interested in audio streans into/out of TouchDesiger:
"You should find you can send 16 @ 16khz channels between two Touch’s on the network easily.
We also tried 6 channels @ 48khz.
One thing to keep in mind, is that we now have an option to send multiple samples per message at once. (Format: Timeslice)
The CHOP actually sends up to 90 samples per channel, not the 4 shown above.
This cuts down dramatically on the data pushed through compared to one sample at a time.
"
and what about if you send the 3 audio synth throw the sound card?
I don’t know if it’s possible but maybe you could use a 5.1 surround sound card so you can use left, right and central channel, but then i don’t if there’s a sound card with 3 LineIn.
If you find these kind of hardware, i think you could easely receive in touch 3 CHOP AudioIn and select the 3 different sources.
I think that receiving audio throw audio cables, could be another way…
OSC is strong enough to send all datas very fast, i’m using for the multitouch like 20 udp port, and processing sends 15 different zones with all the datas of position, scale, pressed, rotation etc… and it works fast no delay between the the 2 software…
Thanks Nima and Greg, I did try sending 3 channels into a 4 input soundcard. It did work but I experienced drop outs and phasing on the third channel. Which I think is due to Touch using Directx which it seems only supports 2 inputs of data into an application. If I were able to use Asio drivers I would then be able to have as many inputs/outputs as my hardware would support. (At least 48 in/out).
I think I will try OSC again. I did before and didn’t work to well but I am going to try Greg’s suggestion. I’m just not sure about how to format the message like in the post Greg copied for me. I’m in the middle of this UV struggle at the moment, when I resolve it I’ll get back into the audio OSC and give it another try.
Hi Greg, I’m not sure how to use the information you posted. I don’t know if your familiar with Max or not but I don’t really know how to format the message in the way you described with Touch or with Max. Could you elaborate further?
hey Keith,
did you get a solution to getting multiple audio channels into touch from Max or other applications?
one thing to remember is that maybe you don’t need high sample rate or bit depth for analysis in Touch. if you downsample the audio, you might stil have enough to analyse but not eat bandwidth on the way there - analysis will be faster too.
Thanks Rod, I never did get any further with that project. I did try another attempt last winter. I tried sampling the audio in Max and then sending OSC data which still didn’t work properly (I wasn’t able to send enough data to draw smooth lines). I was also able to get 3 channels into Touch by using the SPDIF connector as well as the analog but the third channel would keep going out of phase. So for now I gave up on my audio modulate-able 3 dimensional Lissajous synthesizer. But now I’m thinking that maybe I could just get 2 channels from Max and then use a Touch source for the third dimension (Hmm).