questions about java vs max
I got a process divided in four parts : clock / timing maintenance,
recording, buffer manipulation and playback. Buffer manipulation is in
Java, all the remaining is max only. I would like to have the whole
process into one single object (would be Java in this case) but i
remember : Be carefull with that axe, Eugene (sorry, be carefull with
timing in Java).
- Clock subpatch is dealing with tempo, metros, beats, and counters
(lots of) : would it be ok to be implemented in Java (i know, i know,
browse the archives) ?
- recording doesn’t really matter (record~ is ok), but what about
recording to disk with Java (just for info) ?
- does a Java playback object reading a buffer~ would be efficient as a
max only object ?
- Simply : does a Java object dealing with MSP can stand against MSP only ?
The whole things would be used as many as you need sound tracks, so it
could make a lot…
Thanks for your advices & cheers
f.e chanfrault | aka | personal computer music
> >>>>>> http://www.personal-computer-music.com
> >>>>>> |sublime music for a desperate people|
there is a java based tool kit for doing this kinda thing.
JMSL (java music specification language)
you can find it at http://www.algomusic.com
i recently worked with the main developer of JMSL on classes and max
patches that would allow for easy JMSL control of MSP patches.
Every time you cross from the Java world to the C++ world of MaxMSP
code you pay a price–elsewhere in the list I have seen this pegged at
2.5 milliseconds in MacOS. I suspect it is similar on PCs.
ISTR that Jitter Tutotrial Patch 38jPerformanceSetup.pat provides an
example of how Java can be optimized–to a point–to get around this.
It seems to be a System-level problem, not easily solved by tweaking
MaxMSP code–ie.e, not likely to get better in the future–unless
Cylcling74 has made some Great Discovery.
So, the answer to your question is that there are definite performance
limits on what Java can do. MaxsMSP and externals written in C++ will
not have the same latency problem. Though it is relatively small, it
can have a serious cumulative effect.
so, choosing Java to write an external designed to do looping playback from a buffer~ is not an issue ? especially if you plan to you use dozen of it in a single patch ?