HELP with Sound Morphing with jitter matrices patch
I'm implementing a patch out of several Jean-François Charles Spectral patches for morphing two sounds stored in jitter matrices using the jit.xfade object.
When Jean-François Charles uses the jit.xfade object in the "interpolate-2frames" patch atached, it works perfectly crossfading the audio from jitter matrices. Also in the jitter.xfade help, two video matrices are connected to it and it corossfades just fine.
When I use it in the second patch, I'm trying to interpolate between my 2 matrices, but It's clearly not working, I'm just getting click noises.
So I don't get what am I doing wrong.
*My patch consist of two sound sources (one from the microphone of the computer and a second one from a sound file), recorded in separate matrices using the pfft- record object. The content of both matrices is displayed to check they’re recording properly. Then the xfade object is used to crosfade between those to matrices, and the crossfade factor goes from 0 to 1 according to the playback in order to playback the sound starting from matrix A smoothly changing to matrix B.
Hi Victor, thanks for your interest.
Just had a quick look: I believe there is a typo in your matrix [jit.matrix morphed 2 float32 2048]: you probably want to write [jit.matrix morphed 2 float32 1 2048] (vertical matrix instead of horizontal one).
Now, does it work as expected?
Hello Mr. Charles, thanks a lot for your answer.
Eventhough you're right, I corrected the typo but still not sounding as expected (is barely sounding at all).
At the beggining I was feeding both recorded matrices straight to the jit matrix object, because in the jit.xfade help file, they connect two video matrices and it seems to work just fine. Didn't work so I added the "jit.submatrix @dim" object as you do in the frame-interpolation patch, but no result.
Your tutorial is fantastic by the way!
Hi, thanks.
I had a look, and here is what happens:
You are indeed making a 1-column matrix, a correct interpolation from 2 frames taken in two source matrices/sounds.
You are playing back from this 1-column matrix with [pfft~ playvic 4096 4]. The problem is that you give this little player a column number as an audio input. But your matrix is just 1-column: if you just delete this audio connection ("frame to play"), it will actually give a "0", which is the column number (the only one) in your interpolated "morphed" matrix.
And that should work (it does here).