< Back to IRCAM Forum

Mubu.granular transposition and playback

Hello List,

I had a question about the transposition setting of mubu.granular. While looking at the help file and trying out the synchronous mode section, it’s not clear to me how the transposition feature works.

It’s explained that “set transposition (sets relative period) [0]”, but what does that do exactly? I didn’t find any explanation anywhere else. Does it mean I could also just edit the relative grain period?

Also, when using a transposition different than 0, the sound output is ok if I use the command “position 0, position 3000 3000”; but it has more artifacts if I send the discrete values with a line (also prepended with “position”). What is the difference in method?

So, to play a sound randomly around a buffer and also transpose it while keeping sound quality, how should go at it?

Best,

jmmmp

 

 

Hi jmmmp,

Apologizes for the very late answer (won’t happen anymore when the automatic notifications are added to this Forum)…

The “transposition” message is actually an alternative way to control the relative period in cent instead of a linear factor.

This doesn’t really make sense for conventional asychronous granular synthesis, but for the synchronous mode that is enabled when you assign a marker track to mubu.granular~

You can produce such a marker track with mubu.process using the pipo.psy analysis plugin (see patch below).

Please, note that synchronous granular synthesis just works for harmonic sounds – that can also include noise segments – such as voice or monophonic instruments. For other sounds you may want to try SuperVP for Max.

About controlling the position:

When you use the line object, the temporal resolution of the output ramp position depends on the second argument that you give to line.

If this value is equal or less than the grain period of mubu.granular~, controlling the position with line should produce a comparable sound quality to adding a second argument to the position message.

You should also be able to send a list to mubu.granular~. The latest version of the external reacts on this list in the same way as the position method but stops playing when reaching the requested position.

Best

Norbert


  

  
----------begin_max5_patcher----------
  

  
1447.3oc2YksbihCE8Y6uBJd1sKjvr34oL+DyKolJkLH6nNXDiDjktqNe6i1
  

  
.CNrH6331yTUBXDfz8dtamq3mym4tg9Jl657GN26La1OmOalZH4.yLWOycO5
  

  
0jLDW8XtapJKo4tKz2pfg437RTIgl+.CmTpmJ+f3kdKb7iijm7LGb9ayaQqJ
  

  
yvkkuUf0Ot6FT9N2laWfJSdjjuqyDtROgpSPu5iMuCIUIczMe+a.+ZoKuZOI
  

  
WrRJIGbXP85qGUN3ulOWdXgkPPN9Ew5TuHk3WUBoaJdKlkQewcHszFMbEXs7
  

  
TP3nZHrdM1RyKyQ6Uqf6exHnrSQ2aMIbxOTSB.tz6Lfj8XNGsC+AL4YB9EGO
  

  
GTUIcCsJOk6.lv0AtV4yDGammynXZm4B.ApSwCfofSDSge0X51LpXtmBt.AJ
  

  
2lvU1gWhIEU5tvhPNPz5Vgb5.5gbHCmF6JPLw3kX1C3bzlL0S3YuuJ7xgqCD
  

  
9J.3BbdpSICkyKnbhDoOuXYCzYhkAvQCl+OSrbRFVXCyxNOLYk2g7ZAdiEIB
  

  
it0hDGBQXXTJpP40j7HlQeBiWhHactSJzhjdoD54AVq0gdPkeCLXTzZ0sFZM
  

  
P7kHwSpDHcJozLmjJFmxNSWIkSDv3EoSqOTz05yL55QRZJN+pDuM.dwDqF1f
  

  
SNG7zFFxVX9eLnKT6XsRSxHd8XPWvIBc98BT9eUED+Dk1BsuxV7+ipr84JpE
  

  
1tl15Q8bfg2Z0zv+HEk7t6TZWXnJk6pf5i8ocQMUrynIBEpq7OUh1uhLp.X7
  

  
YRTABWFHBAhT4PiCF0nt9VyntCQxeePEmS1kKkLGWRd43Ua0jRh.G5sLJreP
  

  
vO9ji562M.9aTei7rVeAA+F02Ab62WsoZ4NAK8pLD6cGnSBsR7mycJBWZZWN
  

  
2sGwdBy3NE75ec2yTRBNMQv93uT+x4tNb8E8oZdDtHrV.YNqb9l2Rn3wRIG5
  

  
aUbGrX4xKaWcaDqg4WVjZ0r4FgQ5qFvhbYxsBupri+zDhA.E1DpoBG3OFiX+
  

  
aMBwDoGa8RK2JjphTToYFkgeFGKzah0ucbkl72CBOVAUYMNztK+ExKaPfT5d
  

  
Q9AVUlHDcytiemNG58cpxIcVbZAJgT9lZnFYTxceCh8vyDNwjDnFnDgR6v5o
  

  
ZGSaN7l1VeXmgZ+B7hLRok5csHYqNuoZ6VLK4QJkeBHkwTzPgRp3fHg+Pf+p
  

  
vndfyssmXO6LasP0VPWQU4S325fOsv5ZeS+fZDMSjvQtuaCAq0uA7H.ritUC
  

  
VmEnZqtOXpPfOnSCJ9ezRzn28fiG6+ouGOgQyTZpc5jF5E4D3crHknM7I7+6
  

  
wN1NCtaGyQOSUsEoQGaJzVmMSWxysWzuO6nAz5YsZiaseygvtlbgc8P43LgM
  

  
7n2s25PTFodeLa+rc0gdPPFdmbqOO3Ue+G2tSksoOs3ERdJCWK60ih2uAmNr
  

  
PveDoyXY9nGb2NXxGEEXbvpkQAvv3vdiuavtfA.2drOZ38YTVEleD11S0piT
  

  
fl5VcwvNQmwRHLxb.bLX1jrv6BSfqfQSj8tXHuoYsUveyvUnEsMwfKSoujyQ
  

  
6KTzxfupGT3bskg+GIEVy.nWMC3s7znqUu4IRpyKr7K0Xnqs1eL5ZWlcma0z
  

  
jQTKtRaO5y4oz.43cMTbZEKoV8q+nRNspKg4kj7lvz6aTmVOygMIqIaAgKaN
  

  
Hc3NcsVb7sPbNRl+JkGQiPNfoDG+qG7XA5DbUAmojl3qG1XC3.tZhiMwUxt5
  

  
tRhSnEhy0KrZ8mvTAt3RSrMXy0yT4ai7H2NxVYl9Rkmaq3Jq7ctdIAke2xaI
  

  
3I71JuCb0ME7nz7oJn6OUQq8jzBpfzngykOLTse5A5lI8zefofN86eY0faH+
  

  
ePfsYqthxym1BOj7n4aiJJdVzjhYNUhhnEnuq6tJbg5RRt9R0LJZAS1jm94C
  

  
lKmseM+eAa1cZEA
  

  
-----------end_max5_patcher-----------
  

  

 

Thanks for the patch.
And sorry for reviving this topic.
It does feel really tedious and weird for “just” transposing grains. I had to search a looooong way to find a solution. That would be cool if there was an automated process for this, in my opinion.

Can you explain what you’re trying to do? Note that the example patch uses synchronous granular synthesis (PSOLA).