[livecode] Re: Vivid: Send a string (specifically a filesystem path) to a synth?

From: <amindfv_at_gmail.com>
Date: Sat, 7 Jul 2018 01:20:59 -0400

There are quicker ways to do it (e.g. check out the "play" function), but here's how to do it with lots of configurability:


{-# LANGUAGE DataKinds, ExtendedDefaultRules #-}

import Vivid

foo = sd (0 :: I "buf") $ do
   let buf = V::V "buf"
   s <- playBuf (buf_ buf, rate_ $ bufRateScale buf ~* 3, doneAction_ 2)
   out 0 [s,s]

main = do
   buf <- newBufferFromFile "the_letter.flac"
   synth foo (b2i buf :: I "buf")


A couple notes:
  - For fun we play it at 3x speed.
  - "doneAction_ 2" means when the buffer is done playing the Synth frees itself.
  - "bufRateScale" converts from the samplerate of the file to the samplerate of the sc server.
  - We can make a Buffer from lots of file formats, but notably not mp3. This is the SC server's limitation, as it can't use the patented mp3 decoder. ".wav" works, as does .flac, .ogg, and others.

Tom


> El 6 jul 2018, a las 21:38, Jeffrey Brown <jeffbrown.the_at_gmail.com> escribió:
>
> I'm imagining asking a synth to play some sample from a collection. Is it possible?
>
> --
> Jeff Brown | Jeffrey Benjamin Brown
> Website | Facebook | LinkedIn(spammy, so I often miss messages here) | Github
> _______________________________________________
> Livecode mailing list -- livecode_at_we.lurk.org
> To unsubscribe send an email to livecode-leave_at_we.lurk.org


_______________________________________________
Livecode mailing list -- livecode_at_we.lurk.org
To unsubscribe send an email to livecode-leave_at_we.lurk.org
Received on Sat Jul 07 2018 - 05:21:17 BST

This archive was generated by hypermail 2.4.0 : Sun Aug 20 2023 - 16:02:23 BST