;; scheme helper functions
(define *midi-note-off* #x80) ;; args: key, velocity
(define *midi-note-on* #x90) ;; args: key, velocity
(define *midi-poly-touch* #xA0) ;; args: key, touch
(define *midi-ctrl* #xB0) ;; args: controller, value
(define *midi-ch-program* #xC0) ;; args: value, ignored
(define *midi-touch* #xD0) ;; args: value, ignored
(define *midi-bend* #xE0) ;; args: lsb (7 bits), msb (7 bits)
Portmidi: found 1 devices
---- device 0 ----
<PmDeviceInfo: interface=CoreMIDI name=Alchemy I/O?:O>
--
You received this message because you are subscribed to the Google Groups "Extempore" group.
To unsubscribe from this group and stop receiving emails from it, send an email to extemporelan...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
(bind-val midi_out PmStream* (pm_create_output_stream 1)
Type Error calling pm_create_output_stream, got i64, was expecting i32
the default integer size is i64, so int literals in the code will be interpreted as i64, unless the function signature suggests otherwise e.g. if the signature is [double,i32]*, then a (single) int literal argument will be read as an i32.
(lambda (dev)
(bind-func pm_create_output_stream
(lambda (dev:i32)
(bind-val midi_out PmStream* (pm_create_output_stream 1)
(bind-func get_midi_out
(lambda ()
midi_out))
Compiler Error cannot find symbol midi_out
Ok, so it looks like you CAN choose the device, but it has to be an i32. integers are by default i64 in extempore so(bind-val midi_out PmStream* (pm_create_output_stream 1)
(bind-func get_midi_out
(lambda ()
midi_out))
However, as far as I can see, once the typos are under control you will already be well on your way ;)
(homo-play-midi-note (now) *midi-out* (random 50 62) (random 60 90) 44100 1)
(homo-play-midi-note (now) *midi-out* (random 50 62) (random 60 90) 44100 (PmChannel 1))
Error in scheme->xtlang wrapper: check the arg arity and types
;; i.e. to set receive only input on channel 1, call with
;; Pm_SetChannelMask(Pm_Channel(1));
(Pm_SetChannelMask (Pm_Channel 1 ))
eval: unbound variable: Pm_SetChannelMask
--
You received this message because you are subscribed to the Google Groups "Extempore" group.
To unsubscribe from this group and stop receiving emails from it, send an email to extemporelan...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jasons-MacBook-Pro:bin jasonlevine$ brew install --HEAD extempore
Warning: benswift/extempore/extempore-0.6.0 already installed
Jasons-MacBook-Pro:bin jasonlevine$ brew install --HEAD extempore --with-extended
==> Installing extempore from benswift/homebrew-extempore
==> Cloning https://github.com/digego/extempore.git
Updating /Library/Caches/Homebrew/extempore--git
==> Checking out branch master
==> cmake -DIN_TREE=OFF . -DCMAKE_C_FLAGS_RELEASE= -DCMAKE_CXX_FLAGS_RELEASE= -DCM
==> make install
==> AOT-compiling the Extempore standard library. This may take several minutes..
==> make aot
Last 15 lines from /Users/jasonlevine/Library/Logs/Homebrew/extempore/03.make:
Compiled: notch_mc_c >>> [[float,i64,float,float,float]*,i64]* zone size: 8192 (default)
Compiled: peak_c >>> [[float,float,float,float]*]* zone size: 8192 (default)
Compiled: peak_mc_c >>> [[float,i64,float,float,float]*,i64]* zone size: 8192 (default)
Compiled: lshelf_c >>> [[float,float,float,float,float]*]* zone size: 8192 (default)
Compiled: lshelf_mc_c >>> [[float,i64,float,float,float,float]*,i64]* zone size: 8192 (default)
Compiled: hshelf_c >>> [[float,float,float,float,float]*]* zone size: 8192 (default)
Compiled: hshelf_mc_c >>> [[float,i64,float,float,float,float]*,i64]* zone size: 8192 (default)
Compiled: skf_c >>> [[float,float,float,float]*]* zone size: 8192 (default)
Compiled: skf_mc_c >>> [[float,i64,float,float,float]*,i64]* zone size: 8192 (default)
Compiled: granulator_c >>> [[float,i64,i64,float]*,i64]* zone size: 8192 (default)
Compiler Error cannot find symbol hermite_interp
make[3]: *** [CMakeFiles/aot_audio_dsp] Error 2
make[2]: *** [CMakeFiles/aot_audio_dsp.dir/all] Error 2
make[1]: *** [CMakeFiles/aot.dir/rule] Error 2
make: *** [aot] Error 2
READ THIS: https://git.io/brew-troubleshooting
If reporting this issue please do so at (not Homebrew/homebrew):
;; A midi-specific play macro
(impc:aot:do-or-emit
(define-macro (mplay . args)
(if (symbol? (car args))
`(play-midi-note (*metro* beat) ,(car args)
(real->integer ,(cadr args))
(real->integer ,(caddr args))
(*metro* 'dur ,(car (cdddr args)))
(real->integer , (car (cddddr args))))
`(play-midi-note (*metro* (+ beat ,(car args))) ,(cadr args)
(real->integer ,(caddr args))
(real->integer ,(car (cdddr args)))
(*metro* 'dur ,(cadr (cdddr args)))
(real->integer , (cadr (cddddr args)))))))
--
You received this message because you are subscribed to the Google Groups "Extempore" group.
To unsubscribe from this group and stop receiving emails from it, send an email to extemporelan...@googlegroups.com.