adc~ inside a poly~
It is possible to specify logical channels received by adc~ by sending it a list.
Though, used inside a poly~, it won’t work correctly & causes crashes for various reasons (Max 6.0.8 on OSX.6.8).
Since these problems are not mentionned in the reference, can we consider that as a bug ?
Below are the poly~ and the patch for your tests.
----------begin_max5_patcher---------- 548.3ocyWFrbaBCDF9L7TnQmc6fDfA5s9bzoSGYPwVY.ACRN0oYRd1q1Ebra iowXSI9BxZk7p++OgVY+juGcU8NogR9B4aDOum787vPP.u99dzJwt7RgAmFs RZLh0R5htwrxcVLNivIg6iVu0VJs1GajcolRIeuen6p0Vi5W3.rvOGzGtQXy 2nzq+QqL218kh4L2vDFKAZByvNtmulJ81Jk1sNnv38AUEnbpWc+m3upGXQ0h JbQoesUIJoGxQmXwjvffO66COVbk.gGR3QDd7jxjnLjIoovykrQijP17fDqr 8kAM9ck0B6A2eps93Nqkjt2gN2FOjOYu0mraIyvuRyvWdC4l92.uB2DOctQK +oKku4nmnH+EBiDRhFznF0ZM7J+I9zkerjEgPIAgBrqe1PIYrGKCmNZ41xKV IzqGjU3fW.URiPnrL.Z5HznfR1GY46psVoSTjfIs9cGR3LrIKYz0uYAe3LAj 7jxDdTHxgzjKEJyxkZCb5wtQYZpKeb3ZpJsEpt.MWNc3IXSV3nOEw3ikN7in CtLzRk9u+UhnTg3+IxL0aay2679CwjChsPZrJsvpp0GMG3s5ilzFUQgDGeOW JTFwpRIZpfSt2ctxwUn0cyv+VNv8synbdO5.WXNixg+daVylZBYmAcRlM4.+ chaH4vNG5.G9mK8D7+TOc0gDMMOHaM84DkhqH880sP2kKvtJcWWLizV4Cp8y O0Gx1y9+FL65p8L -----------end_max5_patcher-----------
----------begin_max5_patcher---------- 481.3ocyUssbBCBD84juBFdVcBfwK8s9czoSGLAs3DgLAz5kQ+1KWRTaar1n VGeAxtKY4bNKrrIL.NRtjoffm.u.BB1DFD3bYcDTZG.mQWljQUtkAmwTJ5DF rkOllsT67i.X.oxqbtNio0qxY9TCgfWKCMVJzJ9ZW.DoSTo6bpN4ctXxaErD s+mP3HSX.F20NQFZGQlw8oRLeFWX1GGvvkN4oN3HGMsMdOdrapfNysovmK3z L3gb3AqKIHqysgg1gVWoffI.bW.N9lpICi7pPrcpGpwRBAcejDMqX2II93LI Uef80U5i8k9AwULzv13SwSTM77QhL3qjL3dOPrY30Rl3aGYDrOLo7G27noI6 .H.Az8j7TwmHrm3q4qK9VIN1oI8cZBF0.MoeSuTRt.whsNklruxWCKHCQGQi t6G+68aqGrQ2tJatLa0Nfo91VyT5NVSXcUK7uUsHDeSzd9Ijm0QMnd03lnGK AtcAlwEe+cWGTs9+ptnjyKRpN2VdZw7VaEVSMBAWP0bo3n0X5+ANvm24ooLW 3JYIkqnixXomt9zDzfNCZrMvtivI5bvI9tAG66smEO8uavAS9Ggi+fMMOeAq PUlRGRLWsmJKrl8Z4L4BuoKivB1Bd05GDZy11vOAGp0ZvC -----------end_max5_patcher-----------
Anyone would like to try this ?
Yes, you have to put your adc~/dac~ out of the poly~. Using in~/out~ to communicate with the main patch is the way to go.
Is there anywhere a set of recommendations about specific programming rules inside poly~ ?
E.J. is there a particular reason for this? Bit of a bummer on that one.
Poly~ has many options to do something like up sampling/downsampling, vector size that can be different from the main patcher, threading. All those things are handled by the poly~ object itself.
FWIW, the patch doesn’t crash here.
Not supported as in "parallel optimizations don’t work" or not support as in "will not be allowed in the future"? I strongly hope it’s the former and not the latter.
There are situations that don’t justify a full matrix mixer, but having the ability to add dynamic sends/receives with effects is helpful, and poly~ fits that bill perfectly. I’ve also been doing some stuff with running poly~ as a serial process (vox 1′s output into vox 2′s input and so forth), which makes a great testing rig for developing things like allpass spring reverbs and cascading feedback delays.
From as long as I can remember, send~/receive was not fully supported in/out of poly~. You might have some unexpected latency. Multi-threading just make things even trickier.