summaryrefslogtreecommitdiff
path: root/src/scratch.clj
blob: 77eb6093a421f5ea9d1584a3ac0cbb3ac6c0bf4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
(ns scratch
  (:require [midi :refer [print-all-midi-devices >bus <bus] :as midi]
            [missionary.core :as m]))

#_(print-all-midi-devices)

(def midi-keyboard  "CoreMIDI4J - Minilab3 MIDI")

(def run
  (<bus
   midi-keyboard
   #_
   (fn [f] (m/ap
             (let [[i] ]
               (m/group-by #(.getCh %) ))
             (println (m/?< f))))
   (fn [f]
     (m/ap
       (let [[ch vs]
             (m/?> 128 (midi/|channels (midi/|short-messages f)))]
         (println "CH" ch (m/?< vs)))
       #_
       (let [[ch >ch-messages]
             (m/?> 128 (midi/|channels (midi/|short-messages f)))
             #_#_
             [note >note-messages]
             (m/?> 128 (midi/|notes >ch-messages))]
         (println "CH" ch)
         #_#_
         (println "HELLO")
         [ch note (m/?< >note-messages)])))))

(def cancel
  (run prn prn))
(cancel)