Advertisement
Guest User

Untitled

a guest
Jan 5th, 2013
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (ns hello-world.core
  2.   (:import (com.synthbot.jasiohost
  3.              AsioDriver
  4.              AsioDriverListener
  5.              AsioChannel)))
  6.  
  7. (defn simple-asio-listener
  8.   "fun must take following args: (systemTime: Long, samplePosition: Long,
  9.        channels: java.util.Set[AsioChannel])"
  10.   [fun]
  11.   (reify AsioDriverListener
  12.     (bufferSwitch [_ systemTime samplePosition channels]
  13.       (fun systemTime samplePosition channels))
  14.     (sampleRateDidChange [_ sr] nil)
  15.     (resetRequest [_] nil)
  16.     (resyncRequest [_] nil)
  17.     (bufferSizeChanged [_ bufferSize] nil)
  18.     (latenciesChanged [_ inputLatency outputLatency] nil)))
  19.  
  20. (defn -main
  21.   [& args]
  22.   (let [asio-driver (AsioDriver/getDriver
  23.                       (.get (AsioDriver/getDriverNames) 0))
  24.         sample-rate (.getSampleRate asio-driver)
  25.         asio-buffer-size (.getBufferPreferredSize asio-driver)
  26.         buffer (float-array asio-buffer-size)
  27.         active-channels #{
  28.                           (.getChannelOutput asio-driver 0)
  29.                           (.getChannelOutput asio-driver 1)}
  30.         ]
  31.       (pprint active-channels)
  32.     ))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement