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.
@Nicolas, yes just use in~/out~ ;-) The use of send~/receive~ from< ->to poly~ (within it’s fine) is not supported either for the same reasons.
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.