• cfry

    Hi,

    can you use Pd to convert audio to numeric values and store it in a text file?

    I am trying out this project in order to store/play a snippet of audio from an Arduino uno/nano.

    https://www.arduino.cc/reference/en/libraries/pcm/

    Following this guide you can use a Processing app or script to convert the audio to numeric values.

    http://highlowtech.org/?p=1963

    This is not working, probably since I am on OSX Monterey. I will try to get the Processing script working but then I though that maybe there is a way to do this in Pd. I need to get the data as numbers in a text file, so not streamed real time.

    ?

    posted in technical issues read more
  • cfry

    Hi,

    I am to enter a project where I need to use multiple webcams to show my performance in close up combined with some video processing. I use physical objects to control sound synthesis in Pd.

    I have been thinking about using Processing in tandem with Pd but I came across:

    https://forum.pdpatchrepo.info/topic/12790/fast-prototyping-for-ofelia/22

    by @60hz

    What route would quickly get me up and running?

    posted in pixel# read more
  • cfry

    @ddw_music thank you for this excellent input. I would actually prefer to just use the equation inside an expression object, feels it should be more intuitive.

    posted in technical issues read more
  • cfry

    Thank you for the input @oid @lacuna, [pow] was all that I needed but curver is a keeper.

    posted in technical issues read more
  • cfry

    Hi,

    I need to be able to convert a value within a given range to an exponential value within the same range. I made an abstraction "autoscale" which remap the highest and lowest received values to a given range.

    If incoming is 0.3 and the lowest value so far been 0.2, the highest so far has been 1.2, and the range is set to 3 and 7 the output will be 4.

    I would like to be able modify the output value to an exponential or logarithmic curve where you can set the curve steepness.

    What options would there be to solve this? Could I have a function within an expression object? Or use an array? Please show me.

    Once I got that going I need to be able to set the curve so that a given value will end up as the exact half of the scaled range. Using the values in the example above incoming value 0.3 should then output 5 after the exponential curve has been set.

    autosclr-pic.png

    autosclr.pd

    Cheers!

    posted in technical issues read more
  • cfry

    @jameslo said:

    @cfry There are several ways to get Pd to process audio offline:
    https://forum.pdpatchrepo.info/topic/13125/batch-processing-audio-faster-than-realtime
    https://forum.pdpatchrepo.info/topic/13525/banging-switch-performs-audio-computations-offline
    https://forum.pdpatchrepo.info/topic/12788/offline-analysis-on-a-song/10

    Thanks. While browsing those threads I realised I can look into timbreID and there is an example patch called segment.pd that "use BFCC deltas to find sudden changes in timbre", non-realtime. It seems really solid, worked perfect while testing it out. And there is bark~ in there which also could work. It is similar to bonk~.

    I may have to re-think the flow of the whole operation since I may not really need to do this during performance, when switching audio files, as long as I have analysed the files I may use beforehand, and stored the peak index arrays/lists, and linked them to respectively audio file. And then switch peak location list when I load the audio file. But the purpose is also to make this smooth while trying out what audio material to use, I need to minimise preparation steps.

    posted in technical issues read more
  • cfry

    @alexandros said:

    Perhaps [bonk~]?

    What I would like to do is detect peaks in an audio file at the same time as I load it into a table. Not realtime, or just as fast as possible.

    As of now I have a patch where one table holds the sound file, another one holds 12 positions in ms, (and another one holds these 12 positions in percent.)

    Either I use a list with predefined positions to load with a specific sound, or I divide the positions evenly across the sound file. In this latter case I would like a function where the locations are upon load nudged to transients to make each location more useful. Later on I would like to try to select positions by spectral content also/instead.

    I attach my patch where I can load the 3 arrays on the fly. To maybe add some clarity.

    sound-0-wip.pd

    Could [bonk~] be used to do this offline type of action?

    posted in technical issues read more
  • cfry

    @whale-av said:

    @cfry @katjav has updated her Slice//Jockey for vanilla. It is made to be used with a microphone.... but it is Pd so could be modified......... https://www.katjaas.nl/slicejockey/slicejockey.html
    David.

    I tried to get it to work but once I had told my Mac to allow every single lib file to be used (Apple...) the slicejockey patch crash pd. However, it is fine since I do not intend to use a beat slicer like this. Maybe I can look inside to see if I find something I can use.

    posted in technical issues read more
  • cfry

    Hi,

    I would like to detect peaks in an audiofile and and be able to trigger the parts. Is there a fav patch out there? Just want to explore a bit.

    I will be fine with just being able to get the peaks listed in an array by time of occurrence.

    posted in technical issues read more
  • cfry

    Thank you all, this will come handy. Then I will replace my awkward improvisation ->
    listprocess.png

    posted in technical issues read more

Internal error.

Oops! Looks like something went wrong!