playlist~ question

Jake Marin's icon

Hello, I am wondering if there is any way to allow the playlist~ object to play more than one audio file at a time.

I am working on a patch where I want to use a dial to trigger separate recorded guitar note sound files depending on the number produced by the dial, and to allow the files to play all the way through so I can sort of play guitar chords with a dial.

If playlist~ can't do the job, which from what I can tell it can't, does anyone know of another way this might be achieved without just using multiple sfplay~ objects?

Patcher included for reference.

Dial Chords.maxpat
Max Patch
Source Audio's icon

no, use poly@ or simply, 6 players,

guitar can not produce more notes than number of strings.

Sébastien Gay's icon

Why not importing the playlist inside a [polybuffer~], in the appropriate order, save it with the patch, and use [mc.play~] ?

(Edited)

Alternatively, if you want to stay with [sfplay~], make it [mc.sfplay~] and collect sound files paths in a [coll] ?

Jake Marin's icon

Ah yes, I havent played around with poly very much but this is probably closer to what I will need to do. Thank you very much!

Jake Marin's icon

I'll want to make selection of notes and managing the files a little differently so i can change notes on the fly and create new chords dynamically but this is great.

Jake Marin's icon

Hello again! Hoping you may be able to help me with another question.

I've been using the method you (Sebastien Gay) suggested, but with some modifications...

One thing I'm interested in doing is using a scaled [cycle~], and [what~] object to trigger a [live.step] sequencer which in turn triggers samples contained in a [polybuffer~].

Something interesting is happening though. When the [cycle~] object reaches the peak of its scaled values, it seems like [what~] jumps back down to the opposite end of the scale before continuing through the values as expected.

Any thoughts about what is going on here?

Patcher included for reference.

Signal Sequencer with Livestep.maxpat
Max Patch