NewsWorksSoftwareTextBioContact
background image

Java coding

August 18, 2004

I’m starting to get a grip at Java coding. So far I’ve made four Java classes for the MaxMSP mxj object all relating to the CloudGenerator Jitter port:

  • tl_buffer2matrix: copy data from buffer~ to jit.matrix.
  • tl_matrix2buffer: copy data from jit.matrix to buffer~.
  • tl_paramsplit: slice lists or messages into a series of messages according to the types of atoms. Symbols indicate a new message. I’m not sure how useful this one will be. I’m currently thinking about protocols for control information and it might be that I abandon the solution I first thought of and developed this for.
  • tl_windows is a port of the Csound gen20 windows. I’ve also added a triangular window so that it’s now offering Hamming Hanning Bartlett Blackman Blackman-Harris Gaussian Kaiser Square Sinc and Triangle. It might be that I should have added a Trapezoid as well but that can wait.

While doing this I discovered that Orfanidis has a thorough discussion of the Kaiser window with a lot of information that is new to me (chapter 10.2)

The last major obstacle to solve is using lookup tables in jit.matrix float32 matrixes. Several posts on the MaxMSP list suggest I try to use jit.repos. I’ll check it out but I’m not sure if it will work. It might be that I’ll have to come up with a new object myself.

I want to get far enough on this development to be able to use it for generating and treating sound material in upcoming projects. For the installation in Trondheim I’d like to record Jon Arne spray painting and use those sounds as a source for further treatments. I’m also planning on using this kind of granulation for the collaboration with Asbjørn in October. Finally I hoped that I should have finished some sound examples several days ago for Kurt Ralske. He mailed me several videos a week ago and I hoped to be able to provide some examples for him by now. In other words: I’m very impatient about getting as far as possible now. I know that in a few days time I’ll have to shift from this kind of development to working on actual sounds and patches to use for Trondheim.

BTW: While porting the window functions I’ve discovered a bug in gen20 with the sinc window. If max amplitude differs from 1.000 it produce an artificial spike at the center. This can be seen clearly in Kevin Conder’s illustration of the various window functions. I’ve reported the problem to the Csound-dev list.