M4L Audio not send~ing to MIDI track
Another M4L problem I’m having has been with trying to send signal data from an audio track via send~/receive~ to a MIDI track to process there. Hooking up scope~, I see that the signal data is making it to the send~ object just fine. However, looking at the receive~ object’s scope~, it shows nothing. How might I better send Audio data to a MIDI track’s M4L patch for processing?
Quote from the documentation:
"The use of the send~ and receive~ objects to pass audio between Max for Live devices is not supported."
As far as I know there is no alternative.
I’ve set up a little test sending from an audio track using ‘plugsend~ left’ and ‘plugsend~ right’:
----------begin_max5_patcher---------- 419.3ocyU98aBBCDG+YLw+GZ5yLCE7m6M2aKwm1qKKKHTvaozRfxlal4e6iV DDmtohRhuzC91dG28okqq51w.OWrjlhQ2idFYXrJWwPqoTLJELvQtK8Xto5E h4zODyeCatYNIcoTqGyxBSob+0nDHbgrZA7rHfynRs2jR0.AWxcinZWml.tL zCBlecuDYxR2rJkAesC4IvcCv0iUJ7kNVDqdUKN1U5s.3gulP8jEEIwZb97H BgnLiGpeIWB8h1mu61QYyMlWQdvnAsONbZFNpQiQStBzvSDEQ4x8wwSMi.nG ktLv6XfHHIbdQIY0ywTMzWMlOPTkyA3kc+cxQOASjbBQ3rfqsBnN5Qxn1Dty t0fqcaCWG8IWGR6y1oY9f.EjHhPyf2o2Xjd3kCZxI.5hNDSJ5WNo05WB70Gl u1MqQYkaEZxOioEUENEB4tLrY0SGjtjlzTs+3s+1Ov4OOZV7AwLfu2Mv5fpl 3WbLUjk3UVAaxODYal6SSk.2UBBdsEkeQIp1d+Bv2mx24XWD3GK.tbSd7eat mUpYcrTy4hSMkPt4GbJ7ySD -----------end_max5_patcher-----------
The receiver is a Max Instrument on a MIDI track with ‘plugreceive~ left’ and ‘plugreceive~ right:
----------begin_max5_patcher---------- 478.3ocyVFrSiCCDF9bPh2AKetTE6j1lt2X0doRvEthPnzD2zA4XWk3rT.AO 6XOoA0tszsDZP8xXkeOyjweI1ie47y7nS0KEkTxuH2R77dwp3gZNEuFAOZd7 xDYbI5HUIdTO8AZuUyYDKMn9BYUVgHQ.+U7Fo.xla9vGUUNnjBCl.Vi5Lsxn hyEXzWV.wRxu0xz0iRWY1JrZMySKD00MsDxTwRJ4tFOfTLk1p7hAz0eakvyX PL+99M5KhMIyAU181Z2TmwwtoIQic1wibVVTeexcXDud9YtQ6PuiKxjhYmBD KnMDiE5nzPNRL+i.wRz44BkYajcS6PDYhIVBIeBo9XoMqHaZ8JxuePOmIzYs Fla4rCbwGrQMlnk5hCHCeE15iXkwqGF0kz8pSM5NrqoKezOFburJEzDilbkc +9IFnG884LaubNH.QaHR3HF9v3tgyWO4OSHyJz4mhfdXmC55ieQBGEcD379Z dYYxa6Fv710yh++5Y0a+cu3so6UXMl3H4FDzgM7ygT.T+Pc4A6licBIV6gT. dNY3m2hu9ERkfZq6UhI0Mw+PtRcUQRSQu5JHj094OUTZ.UrAzp0bhuoSygzT gZiMmVXuPagvp5XeeNO3RavgVZruUo4DrCuC8HalcA -----------end_max5_patcher-----------
As long as both devices are in edit mode or both are inside Live this works for me.
I did not test latency.
I did some testing with Wormhole and some other VST devices with the same functionality. I tried Virtual Audio Cable and ReaRoute ASIO (comes with Reaper) as well.
I got to two conclusions for all setups I’ve tried:
1. The latency is just not tolerable
2. The setup configurations are clumsy
With plugsend~’ – plugreceive~ the delay seems to be around 12 ms. This might be bearable in some situations.
Please read this.
PS. Just did a quick test and measured delay of 44ms!
I suppose we can agree that this is really a serious topic. Every attempt to send audio to some other location runs us into serious problems. This is caused by threads not being synchronized. I hope C’74 and Ableton will come up with a solution in the near future or at least with serious improvements.
Well, I think the root of the problem is the conventional inflexible architecture of Live (like most other DAWs), i.e. strict separation of midi vs. audio tracks and limited routing capabilities. The integration of Max would be much smoother if Live had generic tracks for midi and audio with arbitrary routing, as can be found for example in ‘Reaper’. So I think the developers should consider some basic redesign in the long term.