[SHARE] pack~ externals and Max 6
I’ve made externals that allows you to pack/unpack signals. Everything seems to work with Max 5 but I’ve a problem with Max 6 and the new dsp function. Does anybody have an idea how to solve this problem?
I hope this objects can be useful for the Max 5 users, and thanks for any help.
link : http://cycling74.com/toolbox/pg-pack-library/
I had a look at your sources, and I have to say that you’re doing quite dangerous stuff here.
I’m not surprised that the tricks you’re playing with vector sizes don’t work in Max6 where, in general, you lose access to the very low-level implementation details of the audio signals, and you have a slightly higher-level API. You lose the ability to pass around signals with different vector sizes, and the old 32-bit dsp methods and perform routines are wrapped by 64-bit functions, whose details you don’t know…
So I might be wrong, but I have the feeling that you might never be able to get your objects working in Max6. And in general I would advise against what you do… unless you accept the risk of crashes and other bad stuff (which I usually don’t!). If anything, I’d say your project might be more suited to Pd, where you can actually see the source code of all the objects and the core, and work things around accordingly.
– just my 2 cents, anyway!
Thanks for reply,
I know it’s dangerous (that why I say to be careful in the help), it’s my wild geek side that had this idea to change the vector size… but it seems to me that it is the easiest way to do this (the trick is very easy and efficient). The other way would be to recreate all the objects of Msp with their own perform routine and dsp methods…look difficult. I try to find another way safer and that works on Max 6. I think, I’ll have to curb my secret desire of crashes.
If you are interested in this sort of thing, you might want to take a look at the Jamoma Audio Graph. The easiest introduction is probably the Plugtastic video I made (a long time ago) @ http://www.youtube.com/watch?v=8TQ_f1wmq0U
There is also a DAFX paper @ http://jamoma.org/papers/jamoma-audiograph-DAFx.pdf
The Jamoma crew would love to have more helping hands on this project ;-)
It’s exactly what I wanted to do with my externals. I didn’t know that Jamoma has externals that allow an easy way to create a multi-channel audio processing and Plugtastic is awesome and very interresting.
I will be pleased to support the Jamoma crew on this project.
I know that Max has the ability to pack and to unpack signals but I want to be allowed to apply a processing on the packed signals. The JamomaAudioGraph already provides this functionality and I think it’s the good way to do this. Try it, it’s really amazing.
I’m looking at their source codes to understand how it works.
if i had gotten it right, a Jamoma developper on another forum topic (i thought it was the one i linked to, but apparently no and i can’t remember where i read it) said that it was exactly how their signal packing worked : with this trick of non msp messages carrying signal. But it’s probably more than just that ! my comprehension of the subject is limited, i should indeed look through this more closely.
Initially we used simple prepend and route objects to pack signals on the same patch chord. But several years ago we started develop Jamoma AudioGraph, that implements functionalities as C++ code in a way that can be used beyond Max. Please check out the 2010 papers on Jamoma DSP and Jamoma AudioGraph that can be found here for further details:
You are also welcome to connect on the Jamoma devel mailing list if you want to query further or make use of AudioGraph yourself.
In fact, I’ve made the pack~ externals very quickly. It’s just a trick to pack signal and to perform multichannel audio processing. I didn’t read about it but I thought it could have been useful for someone. Then I’ve read the papers you wrote with Timothy Place and Nils Peter and try Jamoma AudioGraph. It’s very interesting and much more efficient than my pack~ externals. I would like to go more into detail but I’ve got a lot on the moment. However I keep watch your git repository (and now your mailing list) until better times to look through this more closely.
Thanks for your work.