circuitmusiclabs / petra Goto Github PK
View Code? Open in Web Editor NEWMax package for granular synthesis with Max
License: GNU General Public License v3.0
Max package for granular synthesis with Max
License: GNU General Public License v3.0
cm.livecloud~ is very buggy and still in development. Do not use until this issue is closed.
Current method:
if ((x->tr_prev - tr_curr) > 0.9)
Change to:
if (x->tr_prev > tr_curr)
--> If the previous sample is greater than the current sample, the phasor~ signal has wrapped.
hey, it would be cool if it were possible to send a list of different pitch and have the granulation transposition process randomly choose between those pitches, rather than find any pitch in a given range, this way you could have a sort of granular chord. Wouldn't it ? :)
Zero-crossing detection must be corrected according to the following sources:
http://en.cppreference.com/w/c/numeric/math/signbit
http://stackoverflow.com/questions/34442710/options-for-detecting-zero-cross-of-audio
Write a buffer info method which is called when:
The method then updates channelcount and framecount.
Posting this for a general FYI in case you're wondering about weird behaviour on Windows:
The m4l device extras/petra for live.amxd
uses the wrong versions of the Windows compatible external objects. A simple re-freeze of the device will fix this issue.
Using the Max Package Manager version, cm.indexcloud~
plays with a lot of gaps if the buffer~
is being written into at the same time, as though it can only play one grain at a time, or as though the buffer is mostly empty. Tried with karma~
and record~
. It goes back to normal once recording is turned off. I haven't tried the other buffer~
based objects in the package.
When changing the buffer reference with the set method and the new sample is shorter than the old sample, the object inlet values can cause a buffer overflow.
Must find a way to reset object inlets when changing the buffer reference.
The size of the allocated memory must be adjusted analog to the new-instance routine.
MAXGRAINS as condition in playback for loop must be replaced with limit.
Hello,
I usually teach granular synthesis with both MuBu and Petra to my students.
Some students recently purchased M1 Mac computers and cannot use Petra. Do you plan to release some version compiled for M1?
The helpfile windows are too large on smaller screens. Make helpfile patchers smaller.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.